Compare commits
4 Commits
8d27622312
...
f639f6eff5
Author | SHA1 | Date | |
---|---|---|---|
f639f6eff5 | |||
6fcba8642e | |||
81f5bbbd1e | |||
81d61deb9b |
@@ -1,4 +1,4 @@
|
|||||||
set(MYX_CMAKE_PACKAGE_VERSION "2.4.11")
|
set(MYX_CMAKE_PACKAGE_VERSION "2.4.12")
|
||||||
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()
|
||||||
|
@@ -7,17 +7,20 @@ myx_download_content
|
|||||||
myx_download_content(NAME
|
myx_download_content(NAME
|
||||||
[ DOWNLOAD_DIR dir ] |
|
[ DOWNLOAD_DIR dir ] |
|
||||||
[ GIT_REPOSITORY url ] |
|
[ GIT_REPOSITORY url ] |
|
||||||
[ GIT_TAG tag ] )
|
[ GIT_TAG tag ] |
|
||||||
|
[ AUTOFETCH ] | [ AUTOPULL ] )
|
||||||
|
|
||||||
Обязательный параметр: `NAME` - имя целевого каталога.
|
Обязательный параметр: `NAME` - имя целевого каталога.
|
||||||
Параметр `DOWNLOAD_DIR` содержит имя каталога, в который будет загружаться
|
Параметр `DOWNLOAD_DIR` содержит имя каталога, в который будет загружаться
|
||||||
содержимое (по умолчанию `downloads`).
|
содержимое (по умолчанию `_downloads`).
|
||||||
Параметр `GIT_REPOSITORY` содержит адрес внешнего проекта, который нужно
|
Параметр `GIT_REPOSITORY` содержит адрес внешнего проекта, который нужно
|
||||||
загрузить с помощью git.
|
загрузить с помощью git.
|
||||||
Параметр `GIT_TAG` содержит используемые метку, идентификатор коммита или
|
Параметр `GIT_TAG` содержит используемые метку, идентификатор коммита или
|
||||||
ветку в загружаемом репозитории.
|
ветку в загружаемом репозитории.
|
||||||
Если указана опция `AUTOPULL`, то загруженный репозиторий будет
|
Если указана опция `AUTOFETCH`, то на этапе конфигурирования для загруженного
|
||||||
обновляться автоматически.
|
репозитория будут скачиваться изменения.
|
||||||
|
Если указана опция `AUTOPULL`, то на этапе конфигурирования из загруженного
|
||||||
|
репозитория будет изменяться рабочий каталог.
|
||||||
|
|
||||||
#]=======================================================================]
|
#]=======================================================================]
|
||||||
|
|
||||||
@@ -26,7 +29,7 @@ find_package(Git QUIET)
|
|||||||
option(ENABLE_DOWNLOAD_CONTENT "Enable download content" ON)
|
option(ENABLE_DOWNLOAD_CONTENT "Enable download content" ON)
|
||||||
|
|
||||||
function(myx_download_content NAME)
|
function(myx_download_content NAME)
|
||||||
set(options AUTOPULL)
|
set(options AUTOFETCH AUTOPULL)
|
||||||
set(oneValueArgs)
|
set(oneValueArgs)
|
||||||
set(multiValueArgs DOWNLOAD_DIR GIT_REPOSITORY GIT_TAG)
|
set(multiValueArgs DOWNLOAD_DIR GIT_REPOSITORY GIT_TAG)
|
||||||
cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||||
@@ -55,27 +58,30 @@ function(myx_download_content NAME)
|
|||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${ARG_DOWNLOAD_DIR})
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${ARG_DOWNLOAD_DIR})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(WORK_DIR "${ARG_DOWNLOAD_DIR}/${NAME}")
|
||||||
if(ENABLE_DOWNLOAD_CONTENT AND GIT_EXECUTABLE AND ARG_GIT_REPOSITORY)
|
if(ENABLE_DOWNLOAD_CONTENT AND GIT_EXECUTABLE AND ARG_GIT_REPOSITORY)
|
||||||
if(NOT IS_DIRECTORY ${ARG_DOWNLOAD_DIR}/${NAME})
|
if(NOT IS_DIRECTORY ${WORK_DIR})
|
||||||
execute_process(COMMAND ${GIT_EXECUTABLE} clone ${ARG_GIT_REPOSITORY} ${NAME}
|
execute_process(COMMAND ${GIT_EXECUTABLE} clone ${ARG_GIT_REPOSITORY} ${NAME}
|
||||||
WORKING_DIRECTORY ${ARG_DOWNLOAD_DIR})
|
WORKING_DIRECTORY ${ARG_DOWNLOAD_DIR})
|
||||||
else()
|
else()
|
||||||
execute_process(COMMAND ${GIT_EXECUTABLE} fetch
|
if(ARG_AUTOFETCH)
|
||||||
WORKING_DIRECTORY ${ARG_DOWNLOAD_DIR}/${NAME})
|
execute_process(COMMAND ${GIT_EXECUTABLE} fetch
|
||||||
|
WORKING_DIRECTORY ${WORK_DIR})
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(ARG_GIT_TAG)
|
if(ARG_GIT_TAG)
|
||||||
execute_process(COMMAND ${GIT_EXECUTABLE} checkout ${ARG_GIT_TAG}
|
execute_process(COMMAND ${GIT_EXECUTABLE} checkout ${ARG_GIT_TAG}
|
||||||
WORKING_DIRECTORY ${ARG_DOWNLOAD_DIR}/${NAME})
|
WORKING_DIRECTORY ${WORK_DIR})
|
||||||
else()
|
else()
|
||||||
if(ARG_AUTOPULL)
|
if(ARG_AUTOPULL)
|
||||||
execute_process(COMMAND ${GIT_EXECUTABLE} pull
|
execute_process(COMMAND ${GIT_EXECUTABLE} pull
|
||||||
WORKING_DIRECTORY ${ARG_DOWNLOAD_DIR}/${NAME})
|
WORKING_DIRECTORY ${WORK_DIR})
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_SCRIPT_MODE_FILE)
|
if(NOT CMAKE_SCRIPT_MODE_FILE AND EXISTS "${WORK_DIR}/CMakeLists.txt")
|
||||||
add_subdirectory(${ARG_DOWNLOAD_DIR}/${NAME} EXCLUDE_FROM_ALL)
|
add_subdirectory(${WORK_DIR} EXCLUDE_FROM_ALL)
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
@@ -76,7 +76,7 @@ function(myx_target_setup_qt TARGET_NAME)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(ARG_UI)
|
if(ARG_UI)
|
||||||
if(NOT COMMAND qt${myx_ver_qt}_wrap_ui)
|
if(NOT COMMAND qt${myx_qt_ver}_wrap_ui)
|
||||||
message(WARNING "MyxCMake: Widgets is required to process UI")
|
message(WARNING "MyxCMake: Widgets is required to process UI")
|
||||||
else()
|
else()
|
||||||
if(myx_qt_ver EQUAL 5)
|
if(myx_qt_ver EQUAL 5)
|
||||||
@@ -100,7 +100,7 @@ function(myx_target_setup_qt TARGET_NAME)
|
|||||||
|
|
||||||
# Формирование файла ресурсов с переводами
|
# Формирование файла ресурсов с переводами
|
||||||
if(tr AND ARG_LANGS)
|
if(tr AND ARG_LANGS)
|
||||||
if(NOT COMMAND qt${myx_ver_qt}_create_translation)
|
if(NOT COMMAND qt${myx_qt_ver}_create_translation)
|
||||||
message(WARNING "MyxCMake: LinguistTools is required to process LANGS")
|
message(WARNING "MyxCMake: LinguistTools is required to process LANGS")
|
||||||
else()
|
else()
|
||||||
# Заглавие файла ресурсов
|
# Заглавие файла ресурсов
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
## Установка
|
## Установка
|
||||||
|
|
||||||
В корневом каталоге проекта создать каталог `cmake` и распаковать в него
|
В корневом каталоге проекта создать каталог `cmake` и распаковать в него
|
||||||
[архив](../../../releases/download/2.4.11/myx-cmake-local-2.4.11.tar.xz ).
|
[архив](../../../releases/download/2.4.12/myx-cmake-local-2.4.12.tar.xz ).
|
||||||
|
|
||||||
## Использование
|
## Использование
|
||||||
|
|
||||||
|
2
debian/CMakeLists.txt
vendored
2
debian/CMakeLists.txt
vendored
@@ -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.4.11 LANGUAGES)
|
project(myx-cmake VERSION 2.4.12 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
2
debian/changelog
vendored
@@ -1,4 +1,4 @@
|
|||||||
myx-cmake (2.4.11) unstable; urgency=medium
|
myx-cmake (2.4.12) unstable; urgency=medium
|
||||||
|
|
||||||
* New version.
|
* New version.
|
||||||
|
|
||||||
|
@@ -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.4.11 REQUIRED CONFIG PATHS ${MYX_CMAKE_DIR} NO_DEFAULT_PATH)
|
find_package(MyxCMake 2.4.12 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.4.11 REQUIRED)
|
find_package(MyxCMake 2.4.12 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)
|
||||||
|
Reference in New Issue
Block a user