summaryrefslogtreecommitdiffstats
path: root/Tests/Qt4And5Automoc/CMakeLists.txt
blob: ad74961d9f98ac2d8afb8a751d9301fe7554f5b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
cmake_minimum_required(VERSION 2.8.12)

project(Qt4And5Automoc)

if (QT_REVERSE_FIND_ORDER)
  find_package(Qt5Core REQUIRED)
  find_package(Qt4 REQUIRED)
else()
  find_package(Qt4 REQUIRED)
  find_package(Qt5Core REQUIRED)
endif()

set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

macro(generate_main_file VERSION)
  configure_file("${CMAKE_CURRENT_SOURCE_DIR}/main.cpp.in" "${CMAKE_CURRENT_BINARY_DIR}/main_qt${VERSION}.cpp" COPYONLY)
  file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/main_qt${VERSION}.cpp"
    "#include \"main_qt${VERSION}.moc\"\n"
  )
endmacro()

generate_main_file(4)
generate_main_file(5)

add_executable(qt4_exe "${CMAKE_CURRENT_BINARY_DIR}/main_qt4.cpp")
target_link_libraries(qt4_exe Qt4::QtCore)
add_executable(qt5_exe "${CMAKE_CURRENT_BINARY_DIR}/main_qt5.cpp")
target_link_libraries(qt5_exe Qt5::Core)