Update to CMake 3.10 so that AUTOMOC scans generated files
parent
c5b09ca04c
commit
c4d9b04083
|
@ -1,4 +1,4 @@
|
|||
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
|
||||
|
||||
project (rust_qt_binding_generator)
|
||||
|
||||
|
@ -14,9 +14,8 @@ if (ECM_FOUND)
|
|||
include(KDECompilerSettings NO_POLICY_SCOPE)
|
||||
include(ECMPoQmTools)
|
||||
else()
|
||||
if (POLICY CMP0063)
|
||||
cmake_policy(SET CMP0063 NEW)
|
||||
endif()
|
||||
cmake_policy(SET CMP0063 NEW)
|
||||
cmake_policy(SET CMP0071 NEW)
|
||||
enable_testing()
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
endif()
|
||||
|
|
|
@ -8,16 +8,15 @@ function(rust_test NAME DIRECTORY)
|
|||
set(SRC "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
set(DIR "${SRC}/${DIRECTORY}")
|
||||
|
||||
set_property(SOURCE "${SRC}/${NAME}_rust.h" PROPERTY SKIP_AUTOGEN OFF)
|
||||
add_custom_command(
|
||||
OUTPUT "${DIR}/src/interface.rs"
|
||||
"${SRC}/${NAME}_rust.h"
|
||||
# if the cpp file is marked GENERATED, CMake will not check it for moc
|
||||
# "${SRC}/${NAME}_rust.cpp"
|
||||
"${SRC}/${NAME}_rust.cpp"
|
||||
COMMAND "${GENERATOR}" "${SRC}/${NAME}.json"
|
||||
MAIN_DEPENDENCY "${NAME}.json"
|
||||
DEPENDS rust_qt_binding_generator
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${DIR}/${RUST_TARGET_DIR}/librust.a"
|
||||
COMMAND ${Cargo_EXECUTABLE} build ${RUST_BUILD_FLAG}
|
||||
|
@ -41,9 +40,6 @@ function(rust_test NAME DIRECTORY)
|
|||
"${DIR}/${RUST_TARGET_DIR}/librust.a"
|
||||
Threads::Threads ${DL_LIBRARY}
|
||||
)
|
||||
set_property(TARGET ${NAME}
|
||||
APPEND PROPERTY AUTOGEN_TARGET_DEPENDS "${SRC}/${NAME}_rust.h"
|
||||
APPEND PROPERTY AUTOGEN_TARGET_DEPENDS "${SRC}/${NAME}_rust.cpp")
|
||||
|
||||
add_test("build_${NAME}"
|
||||
"${CMAKE_COMMAND}" --build ${CMAKE_BINARY_DIR} --target "${NAME}")
|
||||
|
|
Loading…
Reference in New Issue