From 2f228e89fd015247284cb45313a223fb30bb891c Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Thu, 23 Jan 2025 16:03:50 -0600 Subject: [PATCH] Update CMake in the filters --- .github/workflows/daily-build.yml | 6 +- .github/workflows/publish-branch.yml | 9 +- .github/workflows/publish-release.yml | 7 +- .github/workflows/release-files.yml | 28 +-- .github/workflows/remove-files.yml | 8 +- BLOSC/config/cmake/CTestScript.cmake | 89 +++++--- BLOSC/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 BLOSC/config/cmake/HDFPluginMacros.cmake | 2 +- BLOSC/config/cmake/SignPackageFiles.cmake | 2 + BLOSC2/config/cmake/CTestScript.cmake | 89 +++++--- BLOSC2/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 BLOSC2/config/cmake/HDFPluginMacros.cmake | 2 +- BLOSC2/config/cmake/SignPackageFiles.cmake | 2 + BSHUF/config/cmake/CTestScript.cmake | 89 +++++--- BSHUF/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 BSHUF/config/cmake/HDFPluginMacros.cmake | 2 +- BSHUF/config/cmake/SignPackageFiles.cmake | 2 + BZIP2/config/cmake/CTestScript.cmake | 89 +++++--- BZIP2/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 BZIP2/config/cmake/HDFPluginMacros.cmake | 2 +- BZIP2/config/cmake/SignPackageFiles.cmake | 2 + CMakePresets.json | 4 +- JPEG/config/cmake/CTestScript.cmake | 89 +++++--- JPEG/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 JPEG/config/cmake/HDFPluginMacros.cmake | 2 +- JPEG/config/cmake/SignPackageFiles.cmake | 2 + LZ4/config/cmake/CTestScript.cmake | 89 +++++--- LZ4/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 LZ4/config/cmake/HDFPluginMacros.cmake | 2 +- LZ4/config/cmake/SignPackageFiles.cmake | 2 + LZF/config/cmake/CTestScript.cmake | 89 +++++--- LZF/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 LZF/config/cmake/HDFPluginMacros.cmake | 2 +- LZF/config/cmake/SignPackageFiles.cmake | 2 + ZFP/config/cmake/CTestScript.cmake | 89 +++++--- ZFP/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 ZFP/config/cmake/HDFPluginMacros.cmake | 2 +- ZFP/config/cmake/SignPackageFiles.cmake | 2 + ZSTD/config/cmake/CTestScript.cmake | 89 +++++--- ZSTD/config/cmake/H5PL_Examples.cmake.in | 4 +- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 ZSTD/config/cmake/HDFPluginMacros.cmake | 2 +- ZSTD/config/cmake/SignPackageFiles.cmake | 2 + config/cmake/CTestScript.cmake | 25 ++- config/cmake/H5PL_Examples.cmake.in | 4 +- config/cmake/HDF5PLconfig.cmake | 208 +++++++++--------- .../{HDFoptions.cmake => HDFPLoptions.cmake} | 0 config/cmake/HDFPluginMacros.cmake | 2 +- docs/INSTALL_With_CMake.txt | 22 +- 57 files changed, 742 insertions(+), 454 deletions(-) rename BLOSC/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename BLOSC2/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename BSHUF/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename BZIP2/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename JPEG/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename LZ4/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename LZF/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename ZFP/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename ZSTD/config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) rename config/cmake/{HDFoptions.cmake => HDFPLoptions.cmake} (100%) mode change 100755 => 100644 diff --git a/.github/workflows/daily-build.yml b/.github/workflows/daily-build.yml index 4f7fc822..358ee3ac 100644 --- a/.github/workflows/daily-build.yml +++ b/.github/workflows/daily-build.yml @@ -95,7 +95,7 @@ jobs: AZURE_ENDPOINT: ${{ secrets.AZURE_ENDPOINT }} AZURE_CODE_SIGNING_NAME: ${{ secrets.AZURE_CODE_SIGNING_NAME }} AZURE_CERT_PROFILE_NAME: ${{ secrets.AZURE_CERT_PROFILE_NAME }} - if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-base-names.outputs.run-ignore == 'ignore')) }} + if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }} call-workflow-release: needs: [get-old-names, call-workflow-tarball, call-workflow-ctest] @@ -108,7 +108,7 @@ jobs: file_sha: ${{ needs.call-workflow-tarball.outputs.file_sha }} use_tag: snapshot use_environ: snapshots - if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-base-names.outputs.run-ignore == 'ignore')) }} + if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) }} call-workflow-remove: needs: [get-old-names, call-workflow-tarball, call-workflow-ctest, call-workflow-release] @@ -119,7 +119,7 @@ jobs: file_base: ${{ needs.get-old-names.outputs.plugin-name }} use_tag: snapshot use_environ: snapshots - if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-base-names.outputs.run-ignore == 'ignore')) && (needs.get-old-names.outputs.hdf5-name != needs.call-workflow-tarball.outputs.file_base) }} + if: ${{ ((needs.call-workflow-tarball.outputs.has_changes == 'true') || (needs.get-old-names.outputs.run-ignore == 'ignore')) && (needs.get-old-names.outputs.hdf5-name != needs.call-workflow-tarball.outputs.file_base) }} call-workflow-versions: uses: ./.github/workflows/check-releases.yml diff --git a/.github/workflows/publish-branch.yml b/.github/workflows/publish-branch.yml index b6549b16..5e32577c 100644 --- a/.github/workflows/publish-branch.yml +++ b/.github/workflows/publish-branch.yml @@ -12,8 +12,9 @@ on: description: 'hdf5 plugins target bucket directory' type: string required: true - permissions: - contents: read + +permissions: + contents: read jobs: publish-tag: @@ -21,7 +22,7 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - name: Get Sources - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@9a9194f87191a7e9055e3e9b95b8cfb13023bb08 # v4.1.7 with: fetch-depth: 0 ref: '${{ github.head_ref || github.ref_name }}' @@ -29,7 +30,7 @@ jobs: - name: List files for the space run: | ls -l ${{ github.workspace }} - ls ${{ github.workspace }}/HDF4 + ls ${{ github.workspace }}/HDF5_plugins - name: Setup AWS CLI uses: aws-actions/configure-aws-credentials@v4 diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 3862aedc..dc5828fa 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -12,8 +12,9 @@ on: description: 'HDF5 Plugins target bucket directory' type: string required: true - permissions: - contents: read + +permissions: + contents: read jobs: publish-tag: @@ -21,7 +22,7 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - name: Get Sources - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@9a9194f87191a7e9055e3e9b95b8cfb13023bb08 # v4.1.7 with: fetch-depth: 0 ref: '${{ github.head_ref || github.ref_name }}' diff --git a/.github/workflows/release-files.yml b/.github/workflows/release-files.yml index 6584082f..bb3eee72 100644 --- a/.github/workflows/release-files.yml +++ b/.github/workflows/release-files.yml @@ -117,19 +117,19 @@ jobs: - name: Get published binary (Linux) uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: - name: tgz-ubuntu-2204_gcc-binary + name: tgz-ubuntu-2404_gcc-binary path: ${{ github.workspace }} - name: Get published deb binary (Linux) uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: - name: deb-ubuntu-2204_gcc-binary + name: deb-ubuntu-2404_gcc-binary path: ${{ github.workspace }} - name: Get published rpm binary (Linux) uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: - name: rpm-ubuntu-2204_gcc-binary + name: rpm-ubuntu-2404_gcc-binary path: ${{ github.workspace }} - name: Create sha256 sums for files @@ -138,9 +138,9 @@ jobs: sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}.zip >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.tar.gz >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.dmg >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt - sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt - sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt - sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt + sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt + sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt + sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt sha256sum ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.msi >> ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt @@ -151,7 +151,7 @@ jobs: - name: PreRelease tag id: create_prerelease if: ${{ (inputs.use_environ == 'snapshots') }} - uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8 + uses: softprops/action-gh-release@01570a1f39cb168c169c802c3bceb9e93fb10974 # v2.1.0 with: tag_name: "${{ inputs.use_tag }}" prerelease: true @@ -161,9 +161,9 @@ jobs: ${{ steps.get-file-base.outputs.FILE_BASE }}.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.tar.gz ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.dmg - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.msi ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt @@ -172,7 +172,7 @@ jobs: - name: Release tag id: create_release if: ${{ (inputs.use_environ == 'release') }} - uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8 + uses: softprops/action-gh-release@01570a1f39cb168c169c802c3bceb9e93fb10974 # v2.1.0 with: tag_name: "${{ inputs.use_tag }}" prerelease: false @@ -181,9 +181,9 @@ jobs: ${{ steps.get-file-base.outputs.FILE_BASE }}.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.tar.gz ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.dmg - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.msi ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt diff --git a/.github/workflows/remove-files.yml b/.github/workflows/remove-files.yml index a3a7ec5e..f7ff554e 100644 --- a/.github/workflows/remove-files.yml +++ b/.github/workflows/remove-files.yml @@ -45,14 +45,14 @@ jobs: token: ${{ github.token }} tag: "${{ inputs.use_tag }}" assets: | + ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt ${{ steps.get-file-base.outputs.FILE_BASE }}.tar.gz ${{ steps.get-file-base.outputs.FILE_BASE }}.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.tar.gz ${{ steps.get-file-base.outputs.FILE_BASE }}-macos14_clang.dmg - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.deb - ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.rpm + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.tar.gz + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.deb + ${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2404_gcc.rpm ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip ${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.msi - ${{ steps.get-file-base.outputs.FILE_BASE }}.sha256sums.txt \ No newline at end of file diff --git a/BLOSC/config/cmake/CTestScript.cmake b/BLOSC/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/BLOSC/config/cmake/CTestScript.cmake +++ b/BLOSC/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/BLOSC/config/cmake/H5PL_Examples.cmake.in b/BLOSC/config/cmake/H5PL_Examples.cmake.in index a0d65fde..b48aaf25 100644 --- a/BLOSC/config/cmake/H5PL_Examples.cmake.in +++ b/BLOSC/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/BLOSC/config/cmake/HDFoptions.cmake b/BLOSC/config/cmake/HDFPLoptions.cmake similarity index 100% rename from BLOSC/config/cmake/HDFoptions.cmake rename to BLOSC/config/cmake/HDFPLoptions.cmake diff --git a/BLOSC/config/cmake/HDFPluginMacros.cmake b/BLOSC/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/BLOSC/config/cmake/HDFPluginMacros.cmake +++ b/BLOSC/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/BLOSC/config/cmake/SignPackageFiles.cmake b/BLOSC/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/BLOSC/config/cmake/SignPackageFiles.cmake +++ b/BLOSC/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/BLOSC2/config/cmake/CTestScript.cmake b/BLOSC2/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/BLOSC2/config/cmake/CTestScript.cmake +++ b/BLOSC2/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/BLOSC2/config/cmake/H5PL_Examples.cmake.in b/BLOSC2/config/cmake/H5PL_Examples.cmake.in index c29783ab..0f154039 100644 --- a/BLOSC2/config/cmake/H5PL_Examples.cmake.in +++ b/BLOSC2/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/BLOSC2/config/cmake/HDFoptions.cmake b/BLOSC2/config/cmake/HDFPLoptions.cmake similarity index 100% rename from BLOSC2/config/cmake/HDFoptions.cmake rename to BLOSC2/config/cmake/HDFPLoptions.cmake diff --git a/BLOSC2/config/cmake/HDFPluginMacros.cmake b/BLOSC2/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/BLOSC2/config/cmake/HDFPluginMacros.cmake +++ b/BLOSC2/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/BLOSC2/config/cmake/SignPackageFiles.cmake b/BLOSC2/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/BLOSC2/config/cmake/SignPackageFiles.cmake +++ b/BLOSC2/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/BSHUF/config/cmake/CTestScript.cmake b/BSHUF/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/BSHUF/config/cmake/CTestScript.cmake +++ b/BSHUF/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/BSHUF/config/cmake/H5PL_Examples.cmake.in b/BSHUF/config/cmake/H5PL_Examples.cmake.in index 5204f78d..165fe99e 100644 --- a/BSHUF/config/cmake/H5PL_Examples.cmake.in +++ b/BSHUF/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/BSHUF/config/cmake/HDFoptions.cmake b/BSHUF/config/cmake/HDFPLoptions.cmake similarity index 100% rename from BSHUF/config/cmake/HDFoptions.cmake rename to BSHUF/config/cmake/HDFPLoptions.cmake diff --git a/BSHUF/config/cmake/HDFPluginMacros.cmake b/BSHUF/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/BSHUF/config/cmake/HDFPluginMacros.cmake +++ b/BSHUF/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/BSHUF/config/cmake/SignPackageFiles.cmake b/BSHUF/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/BSHUF/config/cmake/SignPackageFiles.cmake +++ b/BSHUF/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/BZIP2/config/cmake/CTestScript.cmake b/BZIP2/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/BZIP2/config/cmake/CTestScript.cmake +++ b/BZIP2/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/BZIP2/config/cmake/H5PL_Examples.cmake.in b/BZIP2/config/cmake/H5PL_Examples.cmake.in index 56f3d9fc..bb4cb2ba 100644 --- a/BZIP2/config/cmake/H5PL_Examples.cmake.in +++ b/BZIP2/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/BZIP2/config/cmake/HDFoptions.cmake b/BZIP2/config/cmake/HDFPLoptions.cmake similarity index 100% rename from BZIP2/config/cmake/HDFoptions.cmake rename to BZIP2/config/cmake/HDFPLoptions.cmake diff --git a/BZIP2/config/cmake/HDFPluginMacros.cmake b/BZIP2/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/BZIP2/config/cmake/HDFPluginMacros.cmake +++ b/BZIP2/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/BZIP2/config/cmake/SignPackageFiles.cmake b/BZIP2/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/BZIP2/config/cmake/SignPackageFiles.cmake +++ b/BZIP2/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/CMakePresets.json b/CMakePresets.json index 8b0acaeb..cae2b635 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -9,8 +9,8 @@ "hidden": true, "inherits": "ci-base", "cacheVariables": { - "H5PL_VERS_MAJOR": {"type": "STRING", "value": "1"}, - "H5PL_VERS_MINOR": {"type": "STRING", "value": "16"}, + "H5PL_VERS_MAJOR": {"type": "STRING", "value": "2"}, + "H5PL_VERS_MINOR": {"type": "STRING", "value": "0"}, "H5PL_VERS_RELEASE": {"type": "STRING", "value": "0"}, "H5PL_ALLOW_EXTERNAL_SUPPORT": {"type": "STRING", "value": "TGZ"}, "H5PL_COMP_TGZPATH": {"type": "STRING", "value": "${sourceDir}/libs"}, diff --git a/JPEG/config/cmake/CTestScript.cmake b/JPEG/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/JPEG/config/cmake/CTestScript.cmake +++ b/JPEG/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/JPEG/config/cmake/H5PL_Examples.cmake.in b/JPEG/config/cmake/H5PL_Examples.cmake.in index 0cf8f94d..63fbcd76 100644 --- a/JPEG/config/cmake/H5PL_Examples.cmake.in +++ b/JPEG/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/JPEG/config/cmake/HDFoptions.cmake b/JPEG/config/cmake/HDFPLoptions.cmake similarity index 100% rename from JPEG/config/cmake/HDFoptions.cmake rename to JPEG/config/cmake/HDFPLoptions.cmake diff --git a/JPEG/config/cmake/HDFPluginMacros.cmake b/JPEG/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/JPEG/config/cmake/HDFPluginMacros.cmake +++ b/JPEG/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/JPEG/config/cmake/SignPackageFiles.cmake b/JPEG/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/JPEG/config/cmake/SignPackageFiles.cmake +++ b/JPEG/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/LZ4/config/cmake/CTestScript.cmake b/LZ4/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/LZ4/config/cmake/CTestScript.cmake +++ b/LZ4/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/LZ4/config/cmake/H5PL_Examples.cmake.in b/LZ4/config/cmake/H5PL_Examples.cmake.in index 055a690f..7f5b1453 100644 --- a/LZ4/config/cmake/H5PL_Examples.cmake.in +++ b/LZ4/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/LZ4/config/cmake/HDFoptions.cmake b/LZ4/config/cmake/HDFPLoptions.cmake similarity index 100% rename from LZ4/config/cmake/HDFoptions.cmake rename to LZ4/config/cmake/HDFPLoptions.cmake diff --git a/LZ4/config/cmake/HDFPluginMacros.cmake b/LZ4/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/LZ4/config/cmake/HDFPluginMacros.cmake +++ b/LZ4/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/LZ4/config/cmake/SignPackageFiles.cmake b/LZ4/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/LZ4/config/cmake/SignPackageFiles.cmake +++ b/LZ4/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/LZF/config/cmake/CTestScript.cmake b/LZF/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/LZF/config/cmake/CTestScript.cmake +++ b/LZF/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/LZF/config/cmake/H5PL_Examples.cmake.in b/LZF/config/cmake/H5PL_Examples.cmake.in index ca76d424..ba48147f 100644 --- a/LZF/config/cmake/H5PL_Examples.cmake.in +++ b/LZF/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/LZF/config/cmake/HDFoptions.cmake b/LZF/config/cmake/HDFPLoptions.cmake similarity index 100% rename from LZF/config/cmake/HDFoptions.cmake rename to LZF/config/cmake/HDFPLoptions.cmake diff --git a/LZF/config/cmake/HDFPluginMacros.cmake b/LZF/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/LZF/config/cmake/HDFPluginMacros.cmake +++ b/LZF/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/LZF/config/cmake/SignPackageFiles.cmake b/LZF/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/LZF/config/cmake/SignPackageFiles.cmake +++ b/LZF/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/ZFP/config/cmake/CTestScript.cmake b/ZFP/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/ZFP/config/cmake/CTestScript.cmake +++ b/ZFP/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/ZFP/config/cmake/H5PL_Examples.cmake.in b/ZFP/config/cmake/H5PL_Examples.cmake.in index 2bc8b93d..a4fdbc98 100644 --- a/ZFP/config/cmake/H5PL_Examples.cmake.in +++ b/ZFP/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/ZFP/config/cmake/HDFoptions.cmake b/ZFP/config/cmake/HDFPLoptions.cmake similarity index 100% rename from ZFP/config/cmake/HDFoptions.cmake rename to ZFP/config/cmake/HDFPLoptions.cmake diff --git a/ZFP/config/cmake/HDFPluginMacros.cmake b/ZFP/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/ZFP/config/cmake/HDFPluginMacros.cmake +++ b/ZFP/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/ZFP/config/cmake/SignPackageFiles.cmake b/ZFP/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/ZFP/config/cmake/SignPackageFiles.cmake +++ b/ZFP/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/ZSTD/config/cmake/CTestScript.cmake b/ZSTD/config/cmake/CTestScript.cmake index 1e6e40ff..483afd84 100755 --- a/ZSTD/config/cmake/CTestScript.cmake +++ b/ZSTD/config/cmake/CTestScript.cmake @@ -9,10 +9,9 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -cmake_minimum_required (VERSION 3.12) +cmake_minimum_required (VERSION 3.18) ######################################################## -# This dashboard is maintained by The HDF Group -# For any comments please contact cdashhelp@hdfgroup.org +# For any comments please contact help@hdfgroup.org # ######################################################## # ----------------------------------------------------------- @@ -23,23 +22,22 @@ if (NOT SITE_OS_NAME) ## -- set hostname ## -------------------------- find_program (HOSTNAME_CMD NAMES hostname) - exec_program (${HOSTNAME_CMD} ARGS OUTPUT_VARIABLE HOSTNAME) + execute_process (COMMAND ${HOSTNAME_CMD} OUTPUT_VARIABLE HOSTNAME OUTPUT_STRIP_TRAILING_WHITESPACE) set (CTEST_SITE "${HOSTNAME}${CTEST_SITE_EXT}") find_program (UNAME NAMES uname) macro (getuname name flag) - exec_program ("${UNAME}" ARGS "${flag}" OUTPUT_VARIABLE "${name}") + execute_process (COMMAND "${UNAME}" "${flag}" OUTPUT_VARIABLE "${name}" OUTPUT_STRIP_TRAILING_WHITESPACE) endmacro () getuname (osname -s) + string(STRIP ${osname} osname) getuname (osrel -r) + string(STRIP ${osrel} osrel) getuname (cpu -m) + string(STRIP ${cpu} cpu) message (STATUS "Dashboard script uname output: ${osname}-${osrel}-${cpu}\n") set (CTEST_BUILD_NAME "${osname}-${osrel}-${cpu}") - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS}") else () ## machine name provided ## -------------------------- @@ -48,14 +46,25 @@ else () else () set (CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}") endif () - if (SITE_BUILDNAME_SUFFIX) - set (CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}") - endif () - set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") +endif () +if (SITE_BUILDNAME_SUFFIX) + set (CTEST_BUILD_NAME "${SITE_BUILDNAME_SUFFIX}-${CTEST_BUILD_NAME}") +endif () +set (BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}") + +# Launchers work only with Makefile and Ninja generators. +if (NOT "${CTEST_CMAKE_GENERATOR}" MATCHES "Make|Ninja" OR LOCAL_SKIP_TEST) + set (CTEST_USE_LAUNCHERS 0) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 0) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=OFF") +else () + set (CTEST_USE_LAUNCHERS 1) + set (ENV{CTEST_USE_LAUNCHERS_DEFAULT} 1) + set (BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_USE_LAUNCHERS:BOOL=ON") endif () #----------------------------------------------------------------------------- -# MAC machines need special option +# MacOS machines need special options #----------------------------------------------------------------------------- if (APPLE) # Compiler choice @@ -72,10 +81,10 @@ set (CTEST_CMAKE_COMMAND "\"${CMAKE_COMMAND}\"") ## Clear the build directory ## -------------------------- set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE) -if (EXISTS "${CTEST_BINARY_DIRECTORY}" AND IS_DIRECTORY "${CTEST_BINARY_DIRECTORY}") - ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) -else () +if (NOT EXISTS "${CTEST_BINARY_DIRECTORY}") file (MAKE_DIRECTORY "${CTEST_BINARY_DIRECTORY}") +else () + ctest_empty_binary_directory (${CTEST_BINARY_DIRECTORY}) endif () # Use multiple CPU cores to build @@ -117,22 +126,24 @@ endforeach () #----------------------------------------------------------------------------- # Initialize the CTEST commands #------------------------------ -set (CTEST_CONFIGURE_TOOLSET "") -if(CMAKE_GENERATOR_TOOLSET) - set (CTEST_CONFIGURE_TOOLSET "-T${CMAKE_GENERATOR_TOOLSET}") +if (CMAKE_GENERATOR_TOOLSET) + set (CTEST_CONFIGURE_TOOLSET "\"-T${CMAKE_GENERATOR_TOOLSET}\"") +else () + set (CTEST_CONFIGURE_TOOLSET) endif() -set (CTEST_CONFIGURE_ARCHITECTURE "") -if(CMAKE_GENERATOR_ARCHITECTURE) - set (CTEST_CONFIGURE_ARCHITECTURE "-A${CMAKE_GENERATOR_ARCHITECTURE}") +if (CMAKE_GENERATOR_ARCHITECTURE) + set (CTEST_CONFIGURE_ARCHITECTURE "\"-A${CMAKE_GENERATOR_ARCHITECTURE}\"") +else () + set (CTEST_CONFIGURE_ARCHITECTURE) endif() set (CTEST_CONFIGURE_COMMAND - "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" \"${CTEST_CONFIGURE_ARCHITECTURE}\" \"${CTEST_CONFIGURE_TOOLSET}\" \"${CTEST_SOURCE_DIRECTORY}\"" + "${CTEST_CMAKE_COMMAND} -C \"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake\" -DCMAKE_BUILD_TYPE:STRING=${CTEST_CONFIGURATION_TYPE} ${BUILD_OPTIONS} \"-G${CTEST_CMAKE_GENERATOR}\" ${CTEST_CONFIGURE_ARCHITECTURE} ${CTEST_CONFIGURE_TOOLSET} \"${CTEST_SOURCE_DIRECTORY}\"" ) #----------------------------------------------------------------------------- #----------------------------------------------------------------------------- ## -- set output to english -set ($ENV{LC_MESSAGES} "en_EN") +set (ENV{LC_MESSAGES} "en_EN") # Print summary information. foreach (v @@ -142,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -159,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- - ctest_start (${MODEL} TRACK ${MODEL}) + ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -182,11 +204,16 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (LOCAL_SUBMIT) + ctest_submit (PARTS Done) endif () #----------------------------------------------------------------------------- diff --git a/ZSTD/config/cmake/H5PL_Examples.cmake.in b/ZSTD/config/cmake/H5PL_Examples.cmake.in index 51f9192a..9d101851 100644 --- a/ZSTD/config/cmake/H5PL_Examples.cmake.in +++ b/ZSTD/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/ZSTD/config/cmake/HDFoptions.cmake b/ZSTD/config/cmake/HDFPLoptions.cmake similarity index 100% rename from ZSTD/config/cmake/HDFoptions.cmake rename to ZSTD/config/cmake/HDFPLoptions.cmake diff --git a/ZSTD/config/cmake/HDFPluginMacros.cmake b/ZSTD/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/ZSTD/config/cmake/HDFPluginMacros.cmake +++ b/ZSTD/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/ZSTD/config/cmake/SignPackageFiles.cmake b/ZSTD/config/cmake/SignPackageFiles.cmake index b23a0a05..0e18c7a2 100644 --- a/ZSTD/config/cmake/SignPackageFiles.cmake +++ b/ZSTD/config/cmake/SignPackageFiles.cmake @@ -8,6 +8,8 @@ elseif (CPACK_GENERATOR MATCHES "WIX" OR CPACK_GENERATOR MATCHES "NSIS") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/libraries") elseif (CPACK_GENERATOR MATCHES "ZIP") set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}") +elseif (CPACK_GENERATOR MATCHES "DragNDrop") + set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/ALL_IN_ONE/${CPACK_PACKAGE_INSTALL_DIRECTORY}") else () set (CPACK_TARGET_FILE_DIRECTORY "${CPACK_TEMPORARY_INSTALL_DIRECTORY}/${CPACK_PACKAGE_INSTALL_DIRECTORY}") endif () diff --git a/config/cmake/CTestScript.cmake b/config/cmake/CTestScript.cmake index 6b3996b1..483afd84 100755 --- a/config/cmake/CTestScript.cmake +++ b/config/cmake/CTestScript.cmake @@ -153,6 +153,8 @@ foreach (v CTEST_BINARY_DIRECTORY CTEST_CMAKE_GENERATOR CTEST_CONFIGURATION_TYPE + CTEST_GIT_COMMAND + CTEST_CHECKOUT_COMMAND CTEST_CONFIGURE_COMMAND CTEST_SCRIPT_DIRECTORY CTEST_USE_LAUNCHERS @@ -170,11 +172,20 @@ if (NOT DEFINED MODEL) set (MODEL "Experimental") endif () +set (ENV{CI_SITE_NAME} ${CTEST_SITE}) +set (ENV{CI_BUILD_NAME} ${CTEST_BUILD_NAME}) +set (ENV{CI_MODEL} ${MODEL}) + #----------------------------------------------------------------------------- ## NORMAL process + ## -- LOCAL_UPDATE updates the source folder from svn ## -- LOCAL_SUBMIT reports to CDash server + ## -- LOCAL_SKIP_TEST skips the test process (only builds) ## -------------------------- ctest_start (${MODEL} GROUP ${MODEL}) + if (LOCAL_UPDATE) + ctest_update (SOURCE "${CTEST_SOURCE_DIRECTORY}") + endif () configure_file (${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake) ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}") ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) @@ -193,12 +204,14 @@ endif () file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n") endif () - ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) - if (LOCAL_SUBMIT) - ctest_submit (PARTS Test) - endif () - if (${res} LESS 0 OR ${res} GREATER 0) - file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + if (NOT LOCAL_SKIP_TEST) + ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args} RETURN_VALUE res) + if (LOCAL_SUBMIT) + ctest_submit (PARTS Test) + endif () + if (${res} LESS 0 OR ${res} GREATER 0) + file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n") + endif () endif () if (LOCAL_SUBMIT) ctest_submit (PARTS Done) diff --git a/config/cmake/H5PL_Examples.cmake.in b/config/cmake/H5PL_Examples.cmake.in index 3089ec0f..364c8f89 100644 --- a/config/cmake/H5PL_Examples.cmake.in +++ b/config/cmake/H5PL_Examples.cmake.in @@ -118,10 +118,10 @@ endif() # ############################################################################################################### if(WIN32) - include(${CTEST_DASHBOARD_ROOT}\\HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}\\HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}\\CTestScript.cmake) else() - include(${CTEST_DASHBOARD_ROOT}/HDFoptions.cmake) + include(${CTEST_DASHBOARD_ROOT}/HDFPLoptions.cmake) include(${CTEST_DASHBOARD_ROOT}/CTestScript.cmake) endif() ############################################################################################################## diff --git a/config/cmake/HDF5PLconfig.cmake b/config/cmake/HDF5PLconfig.cmake index 70c887ff..d8e8984b 100644 --- a/config/cmake/HDF5PLconfig.cmake +++ b/config/cmake/HDF5PLconfig.cmake @@ -12,7 +12,7 @@ ############################################################################################# ### ${CTEST_SCRIPT_ARG} is of the form OPTION=VALUE ### ### BUILD_GENERATOR required [Unix, VS2022, VS202264, VS2019, VS201964] ### -### ctest -S HDF5config.cmake,BUILD_GENERATOR=VS202264 -C Release -VV -O hdf5.log ### +### ctest -S HDF5config.cmake,BUILD_GENERATOR=VS202264 -C Release -VV -O hdf5plugins.log ### ############################################################################################# cmake_minimum_required (VERSION 3.18) @@ -20,6 +20,7 @@ cmake_minimum_required (VERSION 3.18) # Usage: # ctest -S HDF5config.cmake,OPTION=VALUE -C Release -VV -O test.log # where valid options for OPTION are: +# NINJA - Use Ninja build system # BUILD_GENERATOR - The cmake build generator: # MinGW * MinGW Makefiles # Unix * Unix Makefiles @@ -37,15 +38,15 @@ cmake_minimum_required (VERSION 3.18) # CTEST_SOURCE_NAME - source folder ############################################################################## -set (CTEST_SOURCE_VERSION "1.15.0") +set (CTEST_SOURCE_VERSION "2.0.0") set (CTEST_SOURCE_VERSEXT "") ############################################################################## # handle input parameters to script. #BUILD_GENERATOR - which CMake generator to use, required -#INSTALLDIR - HDF5-1.15.x root folder +#INSTALLDIR - HDF5-2.0.x root folder #CTEST_CONFIGURATION_TYPE - Release, Debug, RelWithDebInfo -#CTEST_SOURCE_NAME - name of source folder; HDF5PL-1.15.x +#CTEST_SOURCE_NAME - name of source folder; HDF5PL-2.0.x #MODEL - CDash group name #HPC - run alternate configurations for HPC machines; sbatch, bsub, raybsub, qsub #MPI - enable MPI @@ -61,6 +62,11 @@ if (DEFINED CTEST_SCRIPT_ARG) endforeach () endif () +#HPC - run alternate configurations for HPC machines +if (DEFINED HPC) + set (BUILD_GENERATOR "Unix") +endif () + # build generator must be defined if (NOT DEFINED BUILD_GENERATOR) message (FATAL_ERROR "BUILD_GENERATOR must be defined - Unix, VS2022, VS202264, VS2019, VS201964") @@ -74,9 +80,9 @@ set (CTEST_CONFIGURATION_TYPE "$ENV{CMAKE_CONFIG_TYPE}") if (NOT DEFINED INSTALLDIR) if (WIN32) - set (INSTALLDIR "%ProgramFiles%/HDF_Group/HDF5/lib/plugins/${CTEST_SOURCE_VERSION}") + set (INSTALLDIR "%ProgramFiles%/HDF_Group/HDF5/lib/plugin/${CTEST_SOURCE_VERSION}") else () - set (INSTALLDIR "${CTEST_SCRIPT_DIRECTORY}/HDF_Group/HDF5/lib/plugins/${CTEST_SOURCE_VERSION}") + set (INSTALLDIR "${CTEST_SCRIPT_DIRECTORY}/HDF_Group/HDF5/lib/plugin/${CTEST_SOURCE_VERSION}") endif () endif () if (NOT DEFINED CTEST_CONFIGURATION_TYPE) @@ -98,101 +104,109 @@ endif () ################################################################### ######### Following describes compiler ############ -if (WIN32 AND NOT MINGW) - set (SITE_OS_NAME "Windows") - set (SITE_OS_VERSION "WIN10") - if (BUILD_GENERATOR STREQUAL "VS202264") - set (CTEST_CMAKE_GENERATOR "Visual Studio 17 2022") - set (CMAKE_GENERATOR_ARCHITECTURE "x64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2022") - set (SITE_COMPILER_VERSION "17") - elseif (BUILD_GENERATOR STREQUAL "VS2022") - set (CTEST_CMAKE_GENERATOR "Visual Studio 17 2022") - set (CMAKE_GENERATOR_ARCHITECTURE "Win32") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2022") - set (SITE_COMPILER_VERSION "17") - elseif (BUILD_GENERATOR STREQUAL "VS201964") - set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019") - set (CMAKE_GENERATOR_ARCHITECTURE "x64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2019") - set (SITE_COMPILER_VERSION "16") - elseif (BUILD_GENERATOR STREQUAL "VS2019") - set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019") - set (CMAKE_GENERATOR_ARCHITECTURE "Win32") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2019") - set (SITE_COMPILER_VERSION "16") - elseif (BUILD_GENERATOR STREQUAL "VS201764") - set (CTEST_CMAKE_GENERATOR "Visual Studio 15 2017 Win64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2017") - set (SITE_COMPILER_VERSION "15") - elseif (BUILD_GENERATOR STREQUAL "VS2017") - set (CTEST_CMAKE_GENERATOR "Visual Studio 15 2017") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2017") - set (SITE_COMPILER_VERSION "15") - elseif (BUILD_GENERATOR STREQUAL "VS201564") - set (CTEST_CMAKE_GENERATOR "Visual Studio 14 2015 Win64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2015") - set (SITE_COMPILER_VERSION "14") - elseif (BUILD_GENERATOR STREQUAL "VS2015") - set (CTEST_CMAKE_GENERATOR "Visual Studio 14 2015") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2015") - set (SITE_COMPILER_VERSION "14") - elseif (BUILD_GENERATOR STREQUAL "VS201364") - set (CTEST_CMAKE_GENERATOR "Visual Studio 12 2013 Win64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2013") - set (SITE_COMPILER_VERSION "12") - elseif (BUILD_GENERATOR STREQUAL "VS2013") - set (CTEST_CMAKE_GENERATOR "Visual Studio 12 2013") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2013") - set (SITE_COMPILER_VERSION "12") - elseif (BUILD_GENERATOR STREQUAL "VS201264") - set (CTEST_CMAKE_GENERATOR "Visual Studio 11 2012 Win64") - set (SITE_OS_BITS "64") - set (SITE_COMPILER_NAME "vs2012") - set (SITE_COMPILER_VERSION "11") - elseif (BUILD_GENERATOR STREQUAL "VS2012") - set (CTEST_CMAKE_GENERATOR "Visual Studio 11 2012") - set (SITE_OS_BITS "32") - set (SITE_COMPILER_NAME "vs2012") - set (SITE_COMPILER_VERSION "11") - else () - message (FATAL_ERROR "Invalid BUILD_GENERATOR must be - Unix, VS2022, VS202264, VS2019, VS201964") - endif () -## Set the following to unique id your computer ## - if(NOT DEFINED CTEST_SITE) - set (CTEST_SITE "WIN10${BUILD_GENERATOR}-${CTEST_SITE_EXT}") - endif() -else () - if (MINGW) - set (CTEST_CMAKE_GENERATOR "MinGW Makefiles") - else () - set (CTEST_CMAKE_GENERATOR "Unix Makefiles") +if (NOT DEFINED HPC) + if (NOT DEFINED BUILD_GENERATOR) + message (FATAL_ERROR "BUILD_GENERATOR must be defined - Unix, VS2022, VS202264, VS2019, VS201964") endif () -## Set the following to unique id your computer ## - if (APPLE) + if (WIN32 AND NOT MINGW) + set (SITE_OS_NAME "Windows") + set (SITE_OS_VERSION "WIN10") + if (BUILD_GENERATOR STREQUAL "VS202264") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 17 2022") + set (CMAKE_GENERATOR_ARCHITECTURE "x64") + endif () + set (SITE_OS_BITS "64") + set (SITE_COMPILER_NAME "vs2022") + set (SITE_COMPILER_VERSION "17") + elseif (BUILD_GENERATOR STREQUAL "VS2022") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 17 2022") + set (CMAKE_GENERATOR_ARCHITECTURE "Win32") + endif () + set (SITE_OS_BITS "32") + set (SITE_COMPILER_NAME "vs2022") + set (SITE_COMPILER_VERSION "17") + elseif (BUILD_GENERATOR STREQUAL "VS201964") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019") + set (CMAKE_GENERATOR_ARCHITECTURE "x64") + endif () + set (SITE_OS_BITS "64") + set (SITE_COMPILER_NAME "vs2019") + set (SITE_COMPILER_VERSION "16") + elseif (BUILD_GENERATOR STREQUAL "VS2019") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 16 2019") + set (CMAKE_GENERATOR_ARCHITECTURE "Win32") + endif () + set (SITE_OS_BITS "32") + set (SITE_COMPILER_NAME "vs2019") + set (SITE_COMPILER_VERSION "16") + elseif (BUILD_GENERATOR STREQUAL "VS201764") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 15 2017 Win64") + endif () + set (SITE_OS_BITS "64") + set (SITE_COMPILER_NAME "vs2017") + set (SITE_COMPILER_VERSION "15") + elseif (BUILD_GENERATOR STREQUAL "VS2017") + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + set (CTEST_CMAKE_GENERATOR "Visual Studio 15 2017") + endif () + set (SITE_OS_BITS "32") + set (SITE_COMPILER_NAME "vs2017") + set (SITE_COMPILER_VERSION "15") + else () + message (FATAL_ERROR "Invalid BUILD_GENERATOR must be - Unix, VS2022, VS202264, VS2019, VS201964") + endif () + ## Set the following to unique id your computer ## if(NOT DEFINED CTEST_SITE) - set (CTEST_SITE "MAC-${CTEST_SITE_EXT}") + set (CTEST_SITE "WIN10${BUILD_GENERATOR}-${CTEST_SITE_EXT}") endif() else () - if(NOT DEFINED CTEST_SITE) - set (CTEST_SITE "LINUX-${CTEST_SITE_EXT}") - endif() - endif () - if (APPLE) - execute_process (COMMAND xcrun --find cc OUTPUT_VARIABLE XCODE_CC OUTPUT_STRIP_TRAILING_WHITESPACE) - set (ENV{CC} "${XCODE_CC}") - set (CTEST_USE_LAUNCHERS 1) + if (DEFINED NINJA) + set (CTEST_CMAKE_GENERATOR "Ninja") + else () + if (BUILD_GENERATOR STREQUAL "MINGW") + set (CTEST_CMAKE_GENERATOR "MinGW Makefiles") + else () + set (CTEST_CMAKE_GENERATOR "Unix Makefiles") + endif () + endif () + ## Set the following to unique id your computer ## + if (APPLE) + if(NOT DEFINED CTEST_SITE) + set (CTEST_SITE "MAC-${CTEST_SITE_EXT}") + endif() + else () + if(NOT DEFINED CTEST_SITE) + set (CTEST_SITE "LINUX-${CTEST_SITE_EXT}") + endif() + endif () + if (APPLE) + execute_process (COMMAND xcrun --find cc OUTPUT_VARIABLE XCODE_CC OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process (COMMAND xcrun --find c++ OUTPUT_VARIABLE XCODE_CXX OUTPUT_STRIP_TRAILING_WHITESPACE) + set (ENV{CC} "${XCODE_CC}") + set (ENV{CXX} "${XCODE_CXX}") + set (CTEST_USE_LAUNCHERS 1) + endif () endif () +else () + set (CTEST_SITE "${SITE_OS_NAME}") + set (CTEST_CMAKE_GENERATOR "Unix Makefiles") endif () ################################################################### @@ -201,8 +215,6 @@ endif () #set (LOCAL_SUBMIT "TRUE") ##### Following controls test process ##### #set (LOCAL_SKIP_TEST "TRUE") -#set (LOCAL_MEMCHECK_TEST "TRUE") -#set (LOCAL_COVERAGE_TEST "TRUE") ##### Following controls cpack command ##### #set (LOCAL_NO_PACKAGE "TRUE") ##### Following controls source update ##### diff --git a/config/cmake/HDFoptions.cmake b/config/cmake/HDFPLoptions.cmake old mode 100755 new mode 100644 similarity index 100% rename from config/cmake/HDFoptions.cmake rename to config/cmake/HDFPLoptions.cmake diff --git a/config/cmake/HDFPluginMacros.cmake b/config/cmake/HDFPluginMacros.cmake index aba24d7f..38e77ef1 100644 --- a/config/cmake/HDFPluginMacros.cmake +++ b/config/cmake/HDFPluginMacros.cmake @@ -338,7 +338,7 @@ macro (INSTALL_SUPPORT varname) FILES ${${PLUGIN_PACKAGE_NAME}_BINARY_DIR}/H5PL_Examples.cmake ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/CTestScript.cmake - ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFoptions.cmake + ${${PLUGIN_PACKAGE_NAME}_RESOURCES_DIR}/HDFPLoptions.cmake DESTINATION ${${PLUGIN_PACKAGE_NAME}_INSTALL_DATA_DIR} COMPONENT hdfdocuments ) diff --git a/docs/INSTALL_With_CMake.txt b/docs/INSTALL_With_CMake.txt index 012d61ac..52169648 100644 --- a/docs/INSTALL_With_CMake.txt +++ b/docs/INSTALL_With_CMake.txt @@ -24,7 +24,7 @@ Obtaining HDF5 Filter source code 2. Obtain HDF5 Filter source from Github development branch: https://github.com/HDFGroup/hdf5_plugins last release: https://github.com/HDFGroup/hdf5_plugins/releases/latest - hdf5_plugins-1.16."X".tar.gz or hdf5_plugins-1.16."X".zip + hdf5_plugins-2.0."X".tar.gz or hdf5_plugins-2.0."X".zip and put it in "myhdfstuff". Uncompress the file. There should be a hdf5_plugins-1."Y.X" folder. @@ -58,7 +58,7 @@ CMake build script from https://github.com/HDFGroup/hdf5_plugins/blob/master/con Configuration files from https://github.com/HDFGroup/hdf5_plugins/blob/master/config/cmake: HDF5PLconfig.cmake - HDFoptions.cmake + HDFPLoptions.cmake External compression libraries are in the source libs folder. @@ -75,7 +75,7 @@ To build HDF5 Filter libraries you will need to: 3. Change to the source directory "hdf5_plugins-1.y.x". CTestScript.cmake file should not be modified. - 4. Edit the platform configuration file, HDFoptions.cmake, if you want to change + 4. Edit the platform configuration file, HDFPLoptions.cmake, if you want to change the default build environment. The file is a compilation of the most used options and by commenting/uncommenting lines the options can easily be changed. @@ -306,7 +306,7 @@ IV. Further considerations See the CMake help for more information on using toolchain files. To use a toolchain file with the supplied cmake scripts, see the - HDFoptions.cmake file under the toolchain section. + HDFPLoptions.cmake file under the toolchain section. Notes: CMake and HDF5 @@ -783,15 +783,15 @@ For instance, to change the support files to use a local directory, edit CMakeUs "version": 6, "configurePresets": [ { - "name": "my-HDF5116", + "name": "my-HDF5200", "hidden": true, "environment": { - "HDF5_ROOT": "${sourceParentDir}/HDF_Group/HDF5/1.16.0" + "HDF5_ROOT": "${sourceParentDir}/HDF_Group/HDF5/2.0.0" }, "cacheVariables": { - "HDF5_ROOT": {"type": "STRING", "value": "${sourceParentDir}/HDF_Group/HDF5/1.16.0"}, - "H5PL_VERS_MAJOR": {"type": "STRING", "value": "1"}, - "H5PL_VERS_MINOR": {"type": "STRING", "value": "16"}, + "HDF5_ROOT": {"type": "STRING", "value": "${sourceParentDir}/HDF_Group/HDF5/2.0.0"}, + "H5PL_VERS_MAJOR": {"type": "STRING", "value": "2"}, + "H5PL_VERS_MINOR": {"type": "STRING", "value": "0"}, "H5PL_VERS_RELEASE": {"type": "STRING", "value": "0"}, "H5PL_BUILD_TESTING": "ON", "H5PL_BUILD_EXAMPLES": "ON" @@ -801,10 +801,10 @@ For instance, to change the support files to use a local directory, edit CMakeUs "name": "my-HDF5Dev", "hidden": true, "environment": { - "HDF5_ROOT": "${sourceParentDir}/HDF_Group/HDF5/1.17.0" + "HDF5_ROOT": "${sourceParentDir}/HDF_Group/HDF5/2.0.0" }, "cacheVariables": { - "HDF5_ROOT": {"type": "STRING", "value": "${sourceParentDir}/HDF_Group/HDF5/1.17.0"}, + "HDF5_ROOT": {"type": "STRING", "value": "${sourceParentDir}/HDF_Group/HDF5/2.0.0"}, "H5PL_BUILD_TESTING": "ON", "H5PL_BUILD_EXAMPLES": "ON" }