diff --git a/qad/CMakeLists.txt b/qad/CMakeLists.txt index 77e3200..c8a5ee3 100644 --- a/qad/CMakeLists.txt +++ b/qad/CMakeLists.txt @@ -24,7 +24,6 @@ if(STATIC_LIB) message(STATUS "Building QAD static libraries") else() set(QAD_LIB_TYPE SHARED) - add_definitions(-DQAD_SHARED_DEFINE) message(STATUS "Building QAD shared libraries") endif() @@ -116,6 +115,9 @@ macro(qad_project NAME _MODULES _LIBS) qt_sources(SRC) qt_wrap(${SRC} HDRS out_HDR CPPS out_CPP QMS ${PROJ_NAME}_QM) qt_add_library(${PROJ_NAME} ${QAD_LIB_TYPE} out_CPP ${EXPORT_HEADER}) + if(NOT STATIC_LIB) + qt_target_compile_definitions(${PROJ_NAME} PRIVATE QAD_SHARED_DEFINE) + endif() qt_target_link_libraries(${PROJ_NAME} ${_LIBS}) qad_install(${PROJ_NAME} "${out_HDR}" ${PROJ_NAME}_QM) set(${NAME}_UTILS 1) diff --git a/qad/QtWraps.cmake b/qad/QtWraps.cmake index 27566cd..ee185f8 100644 --- a/qad/QtWraps.cmake +++ b/qad/QtWraps.cmake @@ -426,6 +426,18 @@ macro(qt_target_link_libraries _NAME) endmacro() +# usage: qt_target_compile_definitions(...), syntax similar to original "target_compile_definitions()" +# Specify compile definitions to use when compiling a given +macro(qt_target_compile_definitions _NAME) + foreach(_v ${_QT_VERSIONS_}) + if (LOCAL_FOUND${_v}) + set(_TARGET ${_NAME}${TARGET_SUFFIX_Qt${_v}}) + target_compile_definitions(${_TARGET} ${ARGN}) + endif() + endforeach() +endmacro() + + # usage: qt_install(...), syntax similar to original "install()" # install targets for founded Qt versions # if DESTINATION set to "QtBin" files will be installed