Compare commits

...

5 Commits

10 changed files with 21 additions and 10 deletions

View File

@ -1,4 +1,4 @@
set(MYX_CMAKE_PACKAGE_VERSION "2.3.1") set(MYX_CMAKE_PACKAGE_VERSION "2.3.5")
if(MYX_CMAKE_PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) if(MYX_CMAKE_PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
set(PACKAGE_VERSION_COMPATIBLE FALSE) set(PACKAGE_VERSION_COMPATIBLE FALSE)
else() else()

View File

@ -3,7 +3,9 @@ include_guard(GLOBAL)
if(${CMAKE_VERSION} VERSION_LESS 3.21) if(${CMAKE_VERSION} VERSION_LESS 3.21)
get_property(__parent_directory DIRECTORY PROPERTY PARENT_DIRECTORY) get_property(__parent_directory DIRECTORY PROPERTY PARENT_DIRECTORY)
if(NOT __parent_directory) if(NOT __parent_directory)
set(PROJECT_IS_TOP_LEVEL true) set(PROJECT_IS_TOP_LEVEL TRUE)
else()
set(PROJECT_IS_TOP_LEVEL FALSE)
endif() endif()
unset(__parent_directory) unset(__parent_directory)
endif() endif()

View File

@ -83,7 +83,11 @@ function(myx_add_interface_library TARGET_NAME)
# При этом сама цель `${TARGET_NAME}` может участвовать в сборке, # При этом сама цель `${TARGET_NAME}` может участвовать в сборке,
# если окажется в перечне зависимостей. # если окажется в перечне зависимостей.
if(NOT PROJECT_IS_TOP_LEVEL) if(NOT PROJECT_IS_TOP_LEVEL)
if(${CMAKE_VERSION} VERSION_GREATER "3.17.0")
set_target_properties(${TARGET_NAME} PROPERTIES EXCLUDE_FROM_ALL True) set_target_properties(${TARGET_NAME} PROPERTIES EXCLUDE_FROM_ALL True)
else()
set_target_properties(${TARGET_NAME} PROPERTIES INTERFACE_EXCLUDE_FROM_ALL True)
endif()
return() return()
endif() endif()

View File

@ -19,7 +19,10 @@ function(myx_qt5_target_setup TARGET_NAME)
if(__target_type STREQUAL "EXECUTABLE") if(__target_type STREQUAL "EXECUTABLE")
target_link_libraries(${TARGET_NAME} PRIVATE "Qt5::${iter}") target_link_libraries(${TARGET_NAME} PRIVATE "Qt5::${iter}")
endif() endif()
if((__target_type STREQUAL "SHARED_LIBRARY") OR (__target_type STREQUAL "OBJECT_LIBRARY")) if(__target_type STREQUAL "SHARED_LIBRARY")
target_link_libraries(${TARGET_NAME} PUBLIC "Qt5::${iter}")
endif()
if((${CMAKE_VERSION} VERSION_GREATER "3.8.0") AND (__target_type STREQUAL "OBJECT_LIBRARY"))
target_link_libraries(${TARGET_NAME} PUBLIC "Qt5::${iter}") target_link_libraries(${TARGET_NAME} PUBLIC "Qt5::${iter}")
endif() endif()
endif() endif()

View File

@ -108,6 +108,8 @@ function(myx_target_setup TARGET_NAME)
endif() endif()
endif() endif()
endif() endif()
else()
target_link_libraries(${TARGET_NAME} PRIVATE ${__link_library})
endif() endif()
endforeach() endforeach()
endif() endif()

View File

@ -3,7 +3,7 @@
## Установка ## Установка
В корневом каталоге проекта создать каталог `cmake` и распаковать в него В корневом каталоге проекта создать каталог `cmake` и распаковать в него
[архив](../../../releases/download/2.3.1/myx-cmake-local-2.3.1.tar.xz ). [архив](../../../releases/download/2.3.5/myx-cmake-local-2.3.5.tar.xz ).
## Использование ## Использование

View File

@ -1 +1 @@
2.3.1 2.3.5

View File

@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.6 FATAL_ERROR) cmake_minimum_required(VERSION 3.6 FATAL_ERROR)
project(myx-cmake VERSION 2.3.1 LANGUAGES) project(myx-cmake VERSION 2.3.5 LANGUAGES)
include(GNUInstallDirs) include(GNUInstallDirs)
file(WRITE ${CMAKE_SOURCE_DIR}/MyxCMake/MyxCMakeConfigVersion.cmake file(WRITE ${CMAKE_SOURCE_DIR}/MyxCMake/MyxCMakeConfigVersion.cmake

2
debian/changelog vendored
View File

@ -1,4 +1,4 @@
myx-cmake (2.3.1) unstable; urgency=medium myx-cmake (2.3.5) unstable; urgency=medium
* New version. * New version.

View File

@ -20,11 +20,11 @@ if(ENV{MYX_CMAKE_DIR})
set(MYX_CMAKE_DIR $ENV{MYX_CMAKE_DIR}) set(MYX_CMAKE_DIR $ENV{MYX_CMAKE_DIR})
endif() endif()
if(MYX_CMAKE_DIR) if(MYX_CMAKE_DIR)
find_package(MyxCMake 2.3.1 REQUIRED CONFIG PATHS ${MYX_CMAKE_DIR} NO_DEFAULT_PATH) find_package(MyxCMake 2.3.5 REQUIRED CONFIG PATHS ${MYX_CMAKE_DIR} NO_DEFAULT_PATH)
myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===") myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===")
else() else()
if(MYX_CMAKE_USE_SYSTEM) if(MYX_CMAKE_USE_SYSTEM)
find_package(MyxCMake 2.3.1 REQUIRED) find_package(MyxCMake 2.3.5 REQUIRED)
myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===") myx_message_notice("=== MyxCMake directory: ${MyxCMake_CONFIG} ===")
else() else()
include(${PROJECT_SOURCE_DIR}/cmake/myx/MyxCMakeConfig.cmake) include(${PROJECT_SOURCE_DIR}/cmake/myx/MyxCMakeConfig.cmake)