From 5dd973f90094cb091c6e7e81ebb3291b81b456a9 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 27 Feb 2025 15:29:32 -0500 Subject: ci: Convert sunos packaging jobs to build sunos-{x86_64,sparc64} binaries --- .gitlab-ci.yml | 20 ++++++++++---------- .gitlab/artifacts.yml | 4 ++-- .gitlab/os-linux.yml | 12 ++++++------ Help/release/4.0.rst | 2 +- Source/CMakeLists.txt | 2 +- Tests/RunCMake/CMakeRelease/FileTable-stdout.txt | 14 ++++++++------ Tests/RunCMake/CMakeRelease/FileTable.cmake | 2 +- Utilities/Release/files-v1.json.in | 16 ++++++++-------- Utilities/Release/files-v1.rst | 2 +- Utilities/cmlibuv/CMakeLists.txt | 2 +- 10 files changed, 39 insertions(+), 37 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c8c5bfd..ebe939d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -830,10 +830,10 @@ u:linux-aarch64-package: needs: - b:linux-aarch64-package -b:sunos-i386-package: +b:sunos-x86_64-package: extends: - .sunos_package - - .sunos_release_i386 + - .sunos_release_x86_64 - .cmake_build_sunos_release - .cmake_release_artifacts - .linux_x86_64_tags @@ -841,19 +841,19 @@ b:sunos-i386-package: needs: - p:doc-package variables: - CMAKE_CI_ARTIFACTS_NAME: "artifacts-sunos-i386" + CMAKE_CI_ARTIFACTS_NAME: "artifacts-sunos-x86_64" -u:sunos-i386-package: +u:sunos-x86_64-package: extends: - .rsync_upload_package - .run_only_for_package needs: - - b:sunos-i386-package + - b:sunos-x86_64-package -b:sunos-sparc-package: +b:sunos-sparc64-package: extends: - .sunos_package - - .sunos_release_sparc + - .sunos_release_sparc64 - .cmake_build_sunos_release - .cmake_release_artifacts - .linux_x86_64_tags @@ -861,14 +861,14 @@ b:sunos-sparc-package: needs: - p:doc-package variables: - CMAKE_CI_ARTIFACTS_NAME: "artifacts-sunos-sparc" + CMAKE_CI_ARTIFACTS_NAME: "artifacts-sunos-sparc64" -u:sunos-sparc-package: +u:sunos-sparc64-package: extends: - .rsync_upload_package - .run_only_for_package needs: - - b:sunos-sparc-package + - b:sunos-sparc64-package ## Sanitizer builds diff --git a/.gitlab/artifacts.yml b/.gitlab/artifacts.yml index 0750634..97b8f38 100644 --- a/.gitlab/artifacts.yml +++ b/.gitlab/artifacts.yml @@ -78,8 +78,8 @@ - ${CMAKE_CI_BUILD_DIR}/cmake-*-linux-x86_64.* - ${CMAKE_CI_BUILD_DIR}/cmake-*-linux-aarch64.* - ${CMAKE_CI_BUILD_DIR}/cmake-*-macos*-universal.* - - ${CMAKE_CI_BUILD_DIR}/cmake-*-sunos-i386.* - - ${CMAKE_CI_BUILD_DIR}/cmake-*-sunos-sparc.* + - ${CMAKE_CI_BUILD_DIR}/cmake-*-sunos-x86_64.* + - ${CMAKE_CI_BUILD_DIR}/cmake-*-sunos-sparc64.* - ${CMAKE_CI_BUILD_DIR}/cmake-*-windows-x86_64.* - ${CMAKE_CI_BUILD_DIR}/cmake-*-windows-i386.* - ${CMAKE_CI_BUILD_DIR}/cmake-*-windows-arm64.* diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml index 93223bb..534bdb8 100644 --- a/.gitlab/os-linux.yml +++ b/.gitlab/os-linux.yml @@ -30,19 +30,19 @@ variables: BOOTSTRAP_ARGS: '-- "-DCMake_DOC_ARTIFACT_PREFIX=$CI_PROJECT_DIR/build/install-doc"' -.sunos_release_i386: - image: "kitware/cmake:build-sunos-i386-deps-2025-02-14" +.sunos_release_x86_64: + image: "kitware/cmake:build-sunos-x86_64-deps-2025-02-27" variables: GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci" - CMAKE_ARCH: i386 + CMAKE_ARCH: x86_64 -.sunos_release_sparc: - image: "kitware/cmake:build-sunos-sparc-deps-2025-02-14" +.sunos_release_sparc64: + image: "kitware/cmake:build-sunos-sparc64-deps-2025-02-27" variables: GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci" - CMAKE_ARCH: sparc + CMAKE_ARCH: sparc64 .sunos_package: variables: diff --git a/Help/release/4.0.rst b/Help/release/4.0.rst index 9122798..95b1c0b 100644 --- a/Help/release/4.0.rst +++ b/Help/release/4.0.rst @@ -239,7 +239,7 @@ Other Changes or ``TRACE`` via the :option:`cmake --log-level` option or the :variable:`CMAKE_MESSAGE_LOG_LEVEL` cache variable. -* Precompiled SunOS ``sparc`` and ``i386`` binaries are now provided +* Precompiled SunOS ``sparc64`` and ``x86_64`` binaries are now provided on `cmake.org`_. .. _`cmake.org`: https://cmake.org/download/ diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index 94fa62a..c6d562a 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -1030,7 +1030,7 @@ if(WIN32 AND NOT CYGWIN) list(APPEND _tools cmcldeps) endif() -if(CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND CMAKE_SYSTEM_VERSION STREQUAL "5.10" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "i386") +if(CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND CMAKE_SYSTEM_VERSION STREQUAL "5.10" AND CMAKE_SYSTEM_PROCESSOR MATCHES "^(i386|x86_64)$") set_property(SOURCE cmSystemTools.cxx APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_NO_MKDTEMP) endif() diff --git a/Tests/RunCMake/CMakeRelease/FileTable-stdout.txt b/Tests/RunCMake/CMakeRelease/FileTable-stdout.txt index b8e2639..4370bf5 100644 --- a/Tests/RunCMake/CMakeRelease/FileTable-stdout.txt +++ b/Tests/RunCMake/CMakeRelease/FileTable-stdout.txt @@ -13,10 +13,10 @@ "cmake-@version@-macos-universal\.tar\.gz" "cmake-@version@-macos10\.10-universal\.dmg" "cmake-@version@-macos10\.10-universal\.tar\.gz" -"cmake-@version@-sunos-i386\.sh" -"cmake-@version@-sunos-i386\.tar\.gz" -"cmake-@version@-sunos-sparc\.sh" -"cmake-@version@-sunos-sparc\.tar\.gz" +"cmake-@version@-sunos-x86_64\.sh" +"cmake-@version@-sunos-x86_64\.tar\.gz" +"cmake-@version@-sunos-sparc64\.sh" +"cmake-@version@-sunos-sparc64\.tar\.gz" "cmake-@version@-windows-i386\.msi" "cmake-@version@-windows-i386\.zip" "cmake-@version@-windows-x86_64\.msi" @@ -32,8 +32,8 @@ "cmake-@version@-macos-universal\.dmg" -- query: \.files\[\] \| select\(\(\.os\[\] \| \. == "macos10\.10"\) and \(\.class == "archive"\)\) \| \.name "cmake-@version@-macos10\.10-universal\.tar\.gz" --- query: \.files\[\] \| select\(\(\.os\[\] \| \. == "sunos"\) and \(\.architecture\[\] \| \. == "sparc"\) and \(\.class == "archive"\)\) \| \.name -"cmake-@version@-sunos-sparc\.tar\.gz" +-- query: \.files\[\] \| select\(\(\.os\[\] \| \. == "sunos"\) and \(\.architecture\[\] \| \. == "sparc64"\) and \(\.class == "archive"\)\) \| \.name +"cmake-@version@-sunos-sparc64\.tar\.gz" -- query: \.files\[\] \| select\(\(\.os\[\] \| \. == "windows"\) and \(\.architecture\[\] \| \. == "i386"\) and \(\.class == "installer"\)\) \| \.name "cmake-@version@-windows-i386\.msi" -- query: \.files\[\] \| select\(\.architecture\[\] \| \. == "x86_64"\) \| \.name @@ -43,6 +43,8 @@ "cmake-@version@-macos-universal\.tar\.gz" "cmake-@version@-macos10\.10-universal\.dmg" "cmake-@version@-macos10\.10-universal\.tar\.gz" +"cmake-@version@-sunos-x86_64\.sh" +"cmake-@version@-sunos-x86_64\.tar\.gz" "cmake-@version@-windows-x86_64\.msi" "cmake-@version@-windows-x86_64\.zip" -- query: \.files\[\] \| select\(\[\.macOSmin\] \| inside\(\["10\.10", "10\.11", "10\.12"\]\)\) \| \.name diff --git a/Tests/RunCMake/CMakeRelease/FileTable.cmake b/Tests/RunCMake/CMakeRelease/FileTable.cmake index a579457..c9d34d3 100644 --- a/Tests/RunCMake/CMakeRelease/FileTable.cmake +++ b/Tests/RunCMake/CMakeRelease/FileTable.cmake @@ -11,7 +11,7 @@ foreach(query ".files[] | select(.os[] | . == \"source\") | .name" ".files[] | select((.os[] | . == \"macOS\") and (.class == \"volume\")) | .name" ".files[] | select((.os[] | . == \"macos10.10\") and (.class == \"archive\")) | .name" - ".files[] | select((.os[] | . == \"sunos\") and (.architecture[] | . == \"sparc\") and (.class == \"archive\")) | .name" + ".files[] | select((.os[] | . == \"sunos\") and (.architecture[] | . == \"sparc64\") and (.class == \"archive\")) | .name" ".files[] | select((.os[] | . == \"windows\") and (.architecture[] | . == \"i386\") and (.class == \"installer\")) | .name" ".files[] | select(.architecture[] | . == \"x86_64\") | .name" ".files[] | select([.macOSmin] | inside([\"10.10\", \"10.11\", \"10.12\"])) | .name" diff --git a/Utilities/Release/files-v1.json.in b/Utilities/Release/files-v1.json.in index 05561c7..55f68cc 100644 --- a/Utilities/Release/files-v1.json.in +++ b/Utilities/Release/files-v1.json.in @@ -61,27 +61,27 @@ }, { "os": ["sunos", "SunOS"], - "architecture": ["i386"], + "architecture": ["x86_64"], "class": "installer", - "name": "cmake-@version@-sunos-i386.sh" + "name": "cmake-@version@-sunos-x86_64.sh" }, { "os": ["sunos", "SunOS"], - "architecture": ["i386"], + "architecture": ["x86_64"], "class": "archive", - "name": "cmake-@version@-sunos-i386.tar.gz" + "name": "cmake-@version@-sunos-x86_64.tar.gz" }, { "os": ["sunos", "SunOS"], - "architecture": ["sparc"], + "architecture": ["sparc64"], "class": "installer", - "name": "cmake-@version@-sunos-sparc.sh" + "name": "cmake-@version@-sunos-sparc64.sh" }, { "os": ["sunos", "SunOS"], - "architecture": ["sparc"], + "architecture": ["sparc64"], "class": "archive", - "name": "cmake-@version@-sunos-sparc.tar.gz" + "name": "cmake-@version@-sunos-sparc64.tar.gz" }, { "os": ["windows", "Windows"], diff --git a/Utilities/Release/files-v1.rst b/Utilities/Release/files-v1.rst index b8dbe6f..0ed3170 100644 --- a/Utilities/Release/files-v1.rst +++ b/Utilities/Release/files-v1.rst @@ -82,7 +82,7 @@ The members are: On Windows, architecture names include ``x86_64``, ``i386``, and ``arm64``. On macOS, universal binary packages list all architectures, e.g. ``["arm64","x86_64"]``. - On SunOS, architecture names include ``i386`` and ``sparc``. + On SunOS, architecture names include ``x86_64`` and ``sparc64``. ``class`` A JSON string naming the class of package. The value is one of: diff --git a/Utilities/cmlibuv/CMakeLists.txt b/Utilities/cmlibuv/CMakeLists.txt index 69e31e9..c00145e 100644 --- a/Utilities/cmlibuv/CMakeLists.txt +++ b/Utilities/cmlibuv/CMakeLists.txt @@ -299,7 +299,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "SunOS") endif() if(CMAKE_SYSTEM_VERSION STREQUAL "5.10") list(APPEND uv_defines SUNOS_NO_IFADDRS) - if(CMAKE_SYSTEM_PROCESSOR STREQUAL "i386") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i386|x86_64)$") list(APPEND uv_defines CMAKE_NO_MKDTEMP) endif() endif() -- cgit v0.12