CMake: make include dirs target-specific and private

This commit is contained in:
blaze 2018-07-29 13:41:18 +03:00
parent aa7b4b622a
commit 37b24ebce4
4 changed files with 15 additions and 22 deletions

View File

@ -12,16 +12,12 @@ set(CRONTAB_V "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
set(QT_MIN_VERSION "5.2.0")
find_package (Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
Core
Gui
Widgets
Test
)
set(CMAKE_AUTOMOC ON)
include_directories(
${Qt5Core_INCLUDE_DIRS}
${Qt5Widgets_INCLUDE_DIRS}
)
add_subdirectory(crontablib)
add_subdirectory(src)

View File

@ -1,7 +1,3 @@
include_directories(
${CMAKE_CURRENT_BINARY_DIR}
)
set(crontablib_SRCS
cthost.cpp
ctcron.cpp
@ -40,7 +36,10 @@ set(crontablib_HDRS
add_library(crontab SHARED ${crontablib_SRCS})
target_link_libraries(crontab Qt5::Core)
target_link_libraries(crontab Qt5::Core Qt5::Gui)
target_include_directories(crontab PRIVATE ${Qt5Core_INCLUDE_DIRS}
${Qt5Gui_INCLUDE_DIRS}
${CMAKE_CURRENT_BINARY_DIR})
target_compile_features(crontab PRIVATE cxx_lambdas cxx_nullptr cxx_unicode_literals)
set_target_properties(crontab PROPERTIES VERSION ${CRONTAB_V} SOVERSION ${VERSION_MAJOR})

View File

@ -1,11 +1,6 @@
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.in
${CMAKE_CURRENT_BINARY_DIR}/config.h)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/../crontablib
${CMAKE_CURRENT_BINARY_DIR}
)
set(zeit_SRCS
aboutdialog.cpp
alarmdialog.cpp
@ -36,12 +31,16 @@ SET(TRANSLATION
find_package(Qt5LinguistTools REQUIRED)
qt5_add_translation(QM_FILES ${TRANSLATION})
set(qt_LIBS Qt5::Core Qt5::Widgets)
set(qt_LIBS Qt5::Core Qt5::Gui Qt5::Widgets)
qt5_wrap_ui(zeit_FORMS_HEADERS ${zeit_FRMS})
qt5_add_resources(zeit_RESOURCES_RCC ${zeit_RSRCS})
add_executable(zeit ${zeit_SRCS} ${zeit_HEADERS_MOC} ${zeit_FORMS_HEADERS}
${QM_FILES} ${zeit_RESOURCES_RCC})
target_include_directories(zeit PRIVATE ${Qt5Core_INCLUDE_DIRS}
${Qt5Widgets_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR}/../crontablib
${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(zeit crontab ${qt_LIBS})
target_compile_features(zeit PRIVATE cxx_lambdas cxx_nullptr cxx_unicode_literals)

View File

@ -1,10 +1,9 @@
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/../crontablib
${CMAKE_CURRENT_BINARY_DIR}
)
set(test_LIBS Qt5::Core Qt5::Test)
set(test_LIBS Qt5::Core Qt5::Gui Qt5::Test)
set(tests_SRCS tests.cpp)
add_executable(tests ${tests_SRCS})
target_include_directories(tests PRIVATE ${Qt5Core_INCLUDE_DIRS}
${Qt5Gui_INCLUDE_DIRS}
${CMAKE_CURRENT_SOURCE_DIR}/../crontablib
${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(tests crontab ${test_LIBS})
target_compile_features(tests PRIVATE cxx_nullptr)