diff options
author | Ben Boeckel <ben.boeckel@kitware.com> | 2020-09-15 13:34:21 (GMT) |
---|---|---|
committer | Ben Boeckel <ben.boeckel@kitware.com> | 2020-09-16 18:03:31 (GMT) |
commit | 8ff3ce730d7a7c89c719caeac4ba7970f35565df (patch) | |
tree | 6c4a3bc35a00330ffde243ab1e26c10d9cfdec20 /.gitlab | |
parent | 7d4ec05c6f5b4d7f2b27ded68003eab2d0126199 (diff) | |
download | CMake-8ff3ce730d7a7c89c719caeac4ba7970f35565df.zip CMake-8ff3ce730d7a7c89c719caeac4ba7970f35565df.tar.gz CMake-8ff3ce730d7a7c89c719caeac4ba7970f35565df.tar.bz2 |
gitlab-ci: add a job to make macOS packages
Diffstat (limited to '.gitlab')
-rw-r--r-- | .gitlab/artifacts.yml | 1 | ||||
-rw-r--r-- | .gitlab/ci/configure_macos_package.cmake | 24 | ||||
-rw-r--r-- | .gitlab/os-macos.yml | 35 |
3 files changed, 60 insertions, 0 deletions
diff --git a/.gitlab/artifacts.yml b/.gitlab/artifacts.yml index fb33ca7..2eadcb1 100644 --- a/.gitlab/artifacts.yml +++ b/.gitlab/artifacts.yml @@ -72,6 +72,7 @@ paths: # Any packages made. - build/cmake-*-Linux-x86_64.* + - build/cmake-*-Darwin-x86_64.* .cmake_test_artifacts: artifacts: diff --git a/.gitlab/ci/configure_macos_package.cmake b/.gitlab/ci/configure_macos_package.cmake new file mode 100644 index 0000000..424bc2b --- /dev/null +++ b/.gitlab/ci/configure_macos_package.cmake @@ -0,0 +1,24 @@ +set(CMake_DOC_ARTIFACT_PREFIX "$ENV{CI_PROJECT_DIR}/build/install-doc" CACHE PATH "") + +# Set up install destinations as expected by the packaging scripts. +set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "") +set(CMAKE_DOC_DIR "doc/cmake" CACHE STRING "") + +# Settings for CMake packages for macOS. +set(CPACK_DMG_FORMAT "UDBZ" CACHE STRING "") +set(CMAKE_CXX_FLAGS "-stdlib=libc++" CACHE STRING "") +set(CMAKE_C_STANDARD "11" CACHE STRING "") +set(CMAKE_CXX_STANDARD "14" CACHE STRING "") +set(CMAKE_OSX_ARCHITECTURES "x86_64" CACHE STRING "") +set(CMAKE_OSX_DEPLOYMENT_TARGET "10.7" CACHE STRING "") +set(CMAKE_SKIP_BOOTSTRAP_TEST "TRUE" CACHE STRING "") +set(CPACK_SYSTEM_NAME "Darwin-x86_64" CACHE STRING "") +set(BUILD_CursesDialog "ON" CACHE BOOL "") +set(BUILD_QtDialog "TRUE" CACHE BOOL "") +set(CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL "3" CACHE STRING "") +set(CMake_INSTALL_DEPENDENCIES "ON" CACHE BOOL "") +set(CMAKE_SKIP_RPATH "TRUE" CACHE BOOL "") +set(CMake_TEST_NO_FindPackageModeMakefileTest "TRUE" CACHE BOOL "") + +include("${CMAKE_CURRENT_LIST_DIR}/configure_macos_common.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/configure_common.cmake") diff --git a/.gitlab/os-macos.yml b/.gitlab/os-macos.yml index 9d123ec..de1093d 100644 --- a/.gitlab/os-macos.yml +++ b/.gitlab/os-macos.yml @@ -37,6 +37,14 @@ CTEST_NO_WARNINGS_ALLOWED: 1 CMAKE_GENERATOR: "Unix Makefiles" +.macos_package: + extends: .macos_build + + variables: + CMAKE_CONFIGURATION: macos_package + CTEST_NO_WARNINGS_ALLOWED: 1 + CMake_SKIP_INSTALL: 1 + ### External testing .macos_xcode: @@ -56,6 +64,15 @@ - xcode-11.5 - nonconcurrent +.macos_builder_tags_package: + tags: + - cmake # Since this is a bare runner, pin to a project. + - macos + - shell + - xcode-11.5 + - nonconcurrent + - finder + .macos_builder_ext_tags: tags: - cmake # Since this is a bare runner, pin to a project. @@ -91,6 +108,24 @@ interruptible: true +.cmake_build_macos_package: + stage: package + + script: + - *before_script_macos + - .gitlab/ci/sccache.sh + # Allow the server to already be running. + - "sccache --start-server || :" + - sccache --show-stats + - ctest -VV -S .gitlab/ci/ctest_configure.cmake + - ctest -VV -S .gitlab/ci/ctest_build.cmake + - sccache --show-stats + - cd build + - cpack -G TGZ + - cpack -G DragNDrop + + interruptible: true + .cmake_test_macos: stage: test |