From dc8352c80947536729ba49b81c5f8a0f254dad38 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 15:04:48 +0200 Subject: [PATCH 01/34] use vcpkg w/ auto-bootstrap --- CMakeLists.txt | 23 +++++++++---- CZICheck/CMakeLists.txt | 2 +- modules/bootstrapVcpkg.cmake | 65 ++++++++++++++++++++++++++++++++++++ vcpkg.json | 9 +++++ 4 files changed, 92 insertions(+), 7 deletions(-) create mode 100644 modules/bootstrapVcpkg.cmake create mode 100644 vcpkg.json diff --git a/CMakeLists.txt b/CMakeLists.txt index c505a62..2367f5a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,11 +4,21 @@ cmake_minimum_required(VERSION 3.15) +option(CZICHECK_ENABLE_VCPKG_BOOTSTRAP + "Automatically fetch and bootstrap vcpkg if no toolchain is defined" ON) + +# Include the bootstrap script if the option is enabled +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + include(modules/bootstrapVcpkg.cmake) +endif() + project(CZICheck VERSION 0.6.3 HOMEPAGE_URL "https://github.com/ZEISS/czicheck" DESCRIPTION "CZICheck is a validator for CZI-documents") + + if(WIN32) # use "static C-runtime" -> https://stackoverflow.com/questions/14172856/compile-with-mt-instead-of-md-using-cmake # Note: this requires CMAKE version 3.15+ @@ -21,12 +31,13 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/modules" ${CMAKE_MODULE_PATH}) -include("${CMAKE_SOURCE_DIR}/modules/libCZI.cmake") -include("${CMAKE_SOURCE_DIR}/modules/rapidJSON.cmake") -include("${CMAKE_SOURCE_DIR}/modules/pugiXML.cmake") -FetchContent_GetProperties(libCZI) -set(LIBCZI_INCLUDE_DIR "${libczi_SOURCE_DIR}/Src/libCZI") - +if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + include("${CMAKE_SOURCE_DIR}/modules/libCZI.cmake") + include("${CMAKE_SOURCE_DIR}/modules/rapidJSON.cmake") + include("${CMAKE_SOURCE_DIR}/modules/pugiXML.cmake") + FetchContent_GetProperties(libCZI) + set(LIBCZI_INCLUDE_DIR "${libczi_SOURCE_DIR}/Src/libCZI") +endif() # This option enables/disables the tests for the CZICheck-application. If enabled, the test # runs with a ctest run (and test-data is being downloaded) option(CZICHECK_BUILD_TESTS "Run the tests-suite with CTest (requires external files)" OFF) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index 434b560..e36a38f 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -14,7 +14,7 @@ function(embed_resource resource_file_name source_file_name variable_name) file(WRITE "${source_file_name}" "${source}") endfunction() -find_package(XercesC QUIET) +find_package(XercesC CONFIG QUIET) if (XercesC_FOUND) set(CZICheck_XercesCAvailable 1) message("XercesC library available -> version: ${XercesC_VERSION}") diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake new file mode 100644 index 0000000..bf88b74 --- /dev/null +++ b/modules/bootstrapVcpkg.cmake @@ -0,0 +1,65 @@ +if(NOT DEFINED CMAKE_TOOLCHAIN_FILE) + + set(VCPKG_DIR "${CMAKE_SOURCE_DIR}/external/vcpkg") + + if(WIN32) + set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg.exe") + else() + set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg") + endif() + + if(EXISTS "${VCPKG_EXECUTABLE}") + message(STATUS "Found existing vcpkg executable at ${VCPKG_EXECUTABLE}") + set(VCPKG_IS_CLONED TRUE) + set(VCPKG_IS_BOOTSTRAPPED TRUE) + else() + set(VCPKG_IS_CLONED FALSE) + if(EXISTS "${VCPKG_DIR}/.git" OR EXISTS "${VCPKG_DIR}/README.md") + set(VCPKG_IS_CLONED TRUE) + endif() + + if(VCPKG_IS_CLONED) + message(STATUS "Found vcpkg folder at ${VCPKG_DIR}") + else() + message(STATUS "vcpkg not found - cloning into ${VCPKG_DIR}...") + execute_process( + COMMAND git clone --depth 1 https://github.com/microsoft/vcpkg.git "${VCPKG_DIR}" + RESULT_VARIABLE GIT_CLONE_RESULT + ) + if(NOT GIT_CLONE_RESULT EQUAL 0) + message(FATAL_ERROR "Failed to clone vcpkg from GitHub.") + endif() + set(VCPKG_IS_CLONED TRUE) + endif() + + if(NOT EXISTS "${VCPKG_EXECUTABLE}") + message(STATUS "Bootstrapping vcpkg...") + if(WIN32) + execute_process( + COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" cmd /c bootstrap-vcpkg.bat + RESULT_VARIABLE BOOTSTRAP_RESULT + ) + else() + execute_process( + COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" ./bootstrap-vcpkg.sh + RESULT_VARIABLE BOOTSTRAP_RESULT + ) + endif() + + if(NOT BOOTSTRAP_RESULT EQUAL 0) + message(FATAL_ERROR "Failed to bootstrap vcpkg.") + endif() + message(STATUS "vcpkg bootstrapped successfully.") + else() + message(STATUS "vcpkg already bootstrapped.") + endif() + endif() + + set(CMAKE_TOOLCHAIN_FILE "${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" + CACHE STRING "Vcpkg toolchain file") + + set(VCPKG_FEATURE_FLAGS "manifests" CACHE STRING "") + + message(STATUS "vcpkg is ready. Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") + +endif() diff --git a/vcpkg.json b/vcpkg.json new file mode 100644 index 0000000..5c4cf17 --- /dev/null +++ b/vcpkg.json @@ -0,0 +1,9 @@ +{ + "name": "czicheck", + "version-string": "1.0.0", + "dependencies": [ + "libczi", + "pugixml", + "xerces-c" + ] +} \ No newline at end of file From 4d2656a2cafd5a0fe6558a85a33724e0adc6f3c9 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 18:22:52 +0200 Subject: [PATCH 02/34] use pugixml header only and don't get xerces-c via vcpkg by default --- CMakeLists.txt | 6 +- CZICheck/CMakeLists.txt | 46 +++++++++++---- CZICheck/inc_libCZI.h | 2 +- CZICheck/pugiconfig.hpp | 40 +++++++++++++ CZICheck/resultgathererxml.h | 1 + modules/bootstrapVcpkg.cmake | 105 +++++++++++++++++++---------------- modules/pugiXML.cmake | 2 +- vcpkg.json | 17 +++--- 8 files changed, 148 insertions(+), 71 deletions(-) create mode 100644 CZICheck/pugiconfig.hpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 2367f5a..1d641db 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,7 @@ if(WIN32) # use "static C-runtime" -> https://stackoverflow.com/questions/14172856/compile-with-mt-instead-of-md-using-cmake # Note: this requires CMAKE version 3.15+ cmake_policy(SET CMP0091 NEW) - set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + #set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") endif(WIN32) set(CMAKE_CXX_STANDARD 17) @@ -34,10 +34,12 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/modules" ${CMAKE_MODULE_PATH}) if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) include("${CMAKE_SOURCE_DIR}/modules/libCZI.cmake") include("${CMAKE_SOURCE_DIR}/modules/rapidJSON.cmake") - include("${CMAKE_SOURCE_DIR}/modules/pugiXML.cmake") FetchContent_GetProperties(libCZI) set(LIBCZI_INCLUDE_DIR "${libczi_SOURCE_DIR}/Src/libCZI") endif() + +include("${CMAKE_SOURCE_DIR}/modules/pugiXML.cmake") + # This option enables/disables the tests for the CZICheck-application. If enabled, the test # runs with a ctest run (and test-data is being downloaded) option(CZICHECK_BUILD_TESTS "Run the tests-suite with CTest (requires external files)" OFF) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index e36a38f..f96e9b8 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -14,7 +14,9 @@ function(embed_resource resource_file_name source_file_name variable_name) file(WRITE "${source_file_name}" "${source}") endfunction() -find_package(XercesC CONFIG QUIET) + +find_package(XercesC QUIET) + if (XercesC_FOUND) set(CZICheck_XercesCAvailable 1) message("XercesC library available -> version: ${XercesC_VERSION}") @@ -29,15 +31,21 @@ else() message("XercesC library not found, the checker 'xmlmetadataschema' will **not** be available") endif() -include(FetchContent) -FetchContent_Declare( - cli11 - GIT_REPOSITORY https://github.com/CLIUtils/CLI11 - GIT_TAG v2.3.2 -) +if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + include(FetchContent) + FetchContent_Declare( + cli11 + GIT_REPOSITORY https://github.com/CLIUtils/CLI11 + GIT_TAG v2.3.2 + ) -FetchContent_MakeAvailable(cli11) + FetchContent_MakeAvailable(cli11) +endif() +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + find_package(libczi CONFIG REQUIRED) + find_package(CLI11 CONFIG REQUIRED) +endif() set(CZICHECKSRCFILES "checkers/checkerbase.h" @@ -97,6 +105,7 @@ runchecks.cpp runchecks.h utils.h utils.cpp +pugiconfig.hpp ) add_executable(CZICheck ${CZICHECKSRCFILES} ) @@ -104,7 +113,24 @@ add_executable(CZICheck ${CZICHECKSRCFILES} ) set_target_properties(CZICheck PROPERTIES CXX_STANDARD 17) target_compile_definitions(CZICheck PRIVATE _LIBCZISTATICLIB) -target_link_libraries(CZICheck PRIVATE libCZIStatic CLI11::CLI11 pugixml) +target_link_libraries(CZICheck PRIVATE CLI11::CLI11) + +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + if(TARGET libczi::libCZI) + add_library(libczi::libCZI_selected ALIAS libczi::libCZI) + elseif(TARGET libczi::libCZIStatic) + add_library(libczi::libCZI_selected ALIAS libczi::libCZIStatic) + else() + message(FATAL_ERROR "No suitable libCZI target found (neither shared nor static).") + endif() + + target_link_libraries(CZICheck PRIVATE libczi::libCZI_selected) +else() + target_link_libraries(CZICheck PRIVATE libCZIStatic) +endif() + +target_link_libraries(CZICheck PRIVATE pugixml) + target_include_directories(CZICheck PRIVATE ${LIBCZI_INCLUDE_DIR} PRIVATE ${RAPIDJSON_INCLUDE_DIRS}) @@ -118,7 +144,7 @@ endif() IF(UNIX) # seems to be problem with glibc I'd reckon -> https://stackoverflow.com/questions/51584960/stdcall-once-throws-stdsystem-error-unknown-error-1 - target_link_libraries(CZICheck PUBLIC pthread) + target_link_libraries(CZICheck PUBLIC pthread) ENDIF(UNIX) IF(WIN32) diff --git a/CZICheck/inc_libCZI.h b/CZICheck/inc_libCZI.h index fc95f11..a0d4103 100644 --- a/CZICheck/inc_libCZI.h +++ b/CZICheck/inc_libCZI.h @@ -4,4 +4,4 @@ #pragma once -#include +#include diff --git a/CZICheck/pugiconfig.hpp b/CZICheck/pugiconfig.hpp new file mode 100644 index 0000000..528ce14 --- /dev/null +++ b/CZICheck/pugiconfig.hpp @@ -0,0 +1,40 @@ + +#ifndef HEADER_PUGICONFIG_HPP +#define HEADER_PUGICONFIG_HPP + +// Uncomment this to enable wchar_t mode +#define PUGIXML_WCHAR_MODE + +// Uncomment this to enable compact mode +// #define PUGIXML_COMPACT + +// Uncomment this to disable XPath +// #define PUGIXML_NO_XPATH + +// Uncomment this to disable STL +// #define PUGIXML_NO_STL + +// Uncomment this to disable exceptions +// #define PUGIXML_NO_EXCEPTIONS + +// Set this to control attributes for public classes/functions, i.e.: +// #define PUGIXML_API __declspec(dllexport) // to export all public symbols from DLL +// #define PUGIXML_CLASS __declspec(dllimport) // to import all classes from DLL +// #define PUGIXML_FUNCTION __fastcall // to set calling conventions to all public functions to fastcall +// In absence of PUGIXML_CLASS/PUGIXML_FUNCTION definitions PUGIXML_API is used instead + +// Tune these constants to adjust memory-related behavior +// #define PUGIXML_MEMORY_PAGE_SIZE 32768 +// #define PUGIXML_MEMORY_OUTPUT_STACK 10240 +// #define PUGIXML_MEMORY_XPATH_PAGE_SIZE 4096 + +// Tune this constant to adjust max nesting for XPath queries +// #define PUGIXML_XPATH_DEPTH_LIMIT 1024 + +// Uncomment this to switch to header-only version +// #define PUGIXML_HEADER_ONLY + +// Uncomment this to enable long long support +#define PUGIXML_HAS_LONG_LONG + +#endif \ No newline at end of file diff --git a/CZICheck/resultgathererxml.h b/CZICheck/resultgathererxml.h index 4b458a7..9ce4786 100644 --- a/CZICheck/resultgathererxml.h +++ b/CZICheck/resultgathererxml.h @@ -12,6 +12,7 @@ #include "pugiconfig.hpp" #include + class CResultGathererXml : public IResultGatherer { private: diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake index bf88b74..b300f84 100644 --- a/modules/bootstrapVcpkg.cmake +++ b/modules/bootstrapVcpkg.cmake @@ -1,65 +1,72 @@ -if(NOT DEFINED CMAKE_TOOLCHAIN_FILE) +if(DEFINED CMAKE_TOOLCHAIN_FILE) + message(STATUS "CMAKE_TOOLCHAIN_FILE already set to '${CMAKE_TOOLCHAIN_FILE}', skipping vcpkg bootstrap.") + return() +endif() - set(VCPKG_DIR "${CMAKE_SOURCE_DIR}/external/vcpkg") +set(BUILDING_IN_VISUAL_STUDIO OFF) +if(DEFINED CMAKE_GENERATOR_INSTANCE OR DEFINED CMAKE_VS_INSTANCE) + set(BUILDING_IN_VISUAL_STUDIO ON) +endif() +set(VCPKG_DIR "${CMAKE_SOURCE_DIR}/external/vcpkg") +if(WIN32) + set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg.exe") +else() + set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg") +endif() + +if(DEFINED ENV{VCPKG_ROOT} AND EXISTS "$ENV{VCPKG_ROOT}/vcpkg") + set(VCPKG_DIR "$ENV{VCPKG_ROOT}") if(WIN32) set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg.exe") else() set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg") endif() + message(STATUS "Using pre-existing vcpkg at ${VCPKG_DIR}") +endif() - if(EXISTS "${VCPKG_EXECUTABLE}") - message(STATUS "Found existing vcpkg executable at ${VCPKG_EXECUTABLE}") - set(VCPKG_IS_CLONED TRUE) - set(VCPKG_IS_BOOTSTRAPPED TRUE) - else() - set(VCPKG_IS_CLONED FALSE) - if(EXISTS "${VCPKG_DIR}/.git" OR EXISTS "${VCPKG_DIR}/README.md") - set(VCPKG_IS_CLONED TRUE) - endif() +if(NOT EXISTS "${VCPKG_EXECUTABLE}") + if(BUILDING_IN_VISUAL_STUDIO AND DEFINED ENV{VCPKG_ROOT}) + message(STATUS "Visual Studio detected with VCPKG_ROOT, skipping local bootstrap.") + return() + endif() - if(VCPKG_IS_CLONED) - message(STATUS "Found vcpkg folder at ${VCPKG_DIR}") - else() - message(STATUS "vcpkg not found - cloning into ${VCPKG_DIR}...") - execute_process( - COMMAND git clone --depth 1 https://github.com/microsoft/vcpkg.git "${VCPKG_DIR}" - RESULT_VARIABLE GIT_CLONE_RESULT - ) - if(NOT GIT_CLONE_RESULT EQUAL 0) - message(FATAL_ERROR "Failed to clone vcpkg from GitHub.") - endif() - set(VCPKG_IS_CLONED TRUE) + if(NOT EXISTS "${VCPKG_DIR}/.git") + message(STATUS "vcpkg not found - cloning into ${VCPKG_DIR}...") + execute_process( + COMMAND git clone --depth 1 https://github.com/microsoft/vcpkg.git "${VCPKG_DIR}" + RESULT_VARIABLE GIT_CLONE_RESULT + ) + if(NOT GIT_CLONE_RESULT EQUAL 0) + message(FATAL_ERROR "Failed to clone vcpkg from GitHub.") endif() + else() + message(STATUS "Found vcpkg folder at ${VCPKG_DIR}, skipping clone.") + endif() - if(NOT EXISTS "${VCPKG_EXECUTABLE}") - message(STATUS "Bootstrapping vcpkg...") - if(WIN32) - execute_process( - COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" cmd /c bootstrap-vcpkg.bat - RESULT_VARIABLE BOOTSTRAP_RESULT - ) - else() - execute_process( - COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" ./bootstrap-vcpkg.sh - RESULT_VARIABLE BOOTSTRAP_RESULT - ) - endif() - - if(NOT BOOTSTRAP_RESULT EQUAL 0) - message(FATAL_ERROR "Failed to bootstrap vcpkg.") - endif() - message(STATUS "vcpkg bootstrapped successfully.") - else() - message(STATUS "vcpkg already bootstrapped.") - endif() + message(STATUS "Bootstrapping vcpkg...") + if(WIN32) + execute_process( + COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" cmd /c bootstrap-vcpkg.bat + RESULT_VARIABLE BOOTSTRAP_RESULT + ) + else() + execute_process( + COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" ./bootstrap-vcpkg.sh + RESULT_VARIABLE BOOTSTRAP_RESULT + ) endif() - set(CMAKE_TOOLCHAIN_FILE "${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" - CACHE STRING "Vcpkg toolchain file") + if(NOT BOOTSTRAP_RESULT EQUAL 0) + message(FATAL_ERROR "Failed to bootstrap vcpkg.") + endif() +else() + message(STATUS "Found vcpkg executable at ${VCPKG_EXECUTABLE}, skipping bootstrap.") +endif() - set(VCPKG_FEATURE_FLAGS "manifests" CACHE STRING "") +set(CMAKE_TOOLCHAIN_FILE "${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" + CACHE STRING "Vcpkg toolchain file") - message(STATUS "vcpkg is ready. Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") +set(VCPKG_FEATURE_FLAGS "manifests" CACHE STRING "") -endif() +message(STATUS "vcpkg is ready. Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") diff --git a/modules/pugiXML.cmake b/modules/pugiXML.cmake index e99e31e..72ed5a9 100644 --- a/modules/pugiXML.cmake +++ b/modules/pugiXML.cmake @@ -16,8 +16,8 @@ if (NOT pugixml_POPULATED) set(pugixml_BUILD_TESTS OFF CACHE BOOL "" FORCE) FetchContent_MakeAvailable(pugixml) - set(PUGIXML_INCLUDE_DIRS ${pugixml_SOURCE_DIR}/include) + target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) endif() message(STATUS "PugiXML include dir at " ${PUGIXML_INCLUDE_DIRS}) diff --git a/vcpkg.json b/vcpkg.json index 5c4cf17..5892527 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,9 +1,10 @@ { - "name": "czicheck", - "version-string": "1.0.0", - "dependencies": [ - "libczi", - "pugixml", - "xerces-c" - ] -} \ No newline at end of file + "name": "czicheck", + "version-string": "1.0.0", + "dependencies": [ + "libczi", + "cli11", + "rapidjson" + ], + "builtin-baseline": "b0190b451303865b89ced9767caaab140c39f980" +} From f404722782b6f00a636b39e84d65a579a634b6e8 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 18:58:02 +0200 Subject: [PATCH 03/34] bump version --- CMakeLists.txt | 2 +- vcpkg.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1d641db..8ec7fd6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,7 +13,7 @@ if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) endif() project(CZICheck - VERSION 0.6.3 + VERSION 0.6.4 HOMEPAGE_URL "https://github.com/ZEISS/czicheck" DESCRIPTION "CZICheck is a validator for CZI-documents") diff --git a/vcpkg.json b/vcpkg.json index 5892527..fdf474f 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,6 +1,6 @@ { "name": "czicheck", - "version-string": "1.0.0", + "version-string": "0.6.4", "dependencies": [ "libczi", "cli11", From 3f61f1c13b21c00d09d8998a9231761ea62dda6e Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 18:58:29 +0200 Subject: [PATCH 04/34] conditionally use static msvc --- CMakeLists.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8ec7fd6..890f4c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,10 @@ if(WIN32) # use "static C-runtime" -> https://stackoverflow.com/questions/14172856/compile-with-mt-instead-of-md-using-cmake # Note: this requires CMAKE version 3.15+ cmake_policy(SET CMP0091 NEW) - #set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP OR VCPKG_TARGET_TRIPLET MATCHES "-static$") + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() + endif(WIN32) set(CMAKE_CXX_STANDARD 17) From f284769abd4d379643ed3eb55400c2207dc5e1e5 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 18:59:01 +0200 Subject: [PATCH 05/34] consume xerces-c via vcpkg when bootstrapped --- CZICheck/CMakeLists.txt | 14 +++++++++++--- vcpkg.json | 3 ++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index f96e9b8..e1da77a 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -14,8 +14,11 @@ function(embed_resource resource_file_name source_file_name variable_name) file(WRITE "${source_file_name}" "${source}") endfunction() - -find_package(XercesC QUIET) +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + find_package(XercesC CONFIG REQUIRED) +else() + find_package(XercesC QUIET) +endif() if (XercesC_FOUND) set(CZICheck_XercesCAvailable 1) @@ -134,11 +137,16 @@ target_link_libraries(CZICheck PRIVATE pugixml) target_include_directories(CZICheck PRIVATE ${LIBCZI_INCLUDE_DIR} PRIVATE ${RAPIDJSON_INCLUDE_DIRS}) + if (XercesC_FOUND) + if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + target_link_libraries(CZICheck PRIVATE XercesC::XercesC) + else() target_link_libraries(CZICheck PRIVATE ${XercesC_LIBRARY}) + endif() endif() target_include_directories(CZICheck PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) -if (XercesC_FOUND) +if (XercesC_FOUND AND NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) target_include_directories(CZICheck PRIVATE ${XercesC_INCLUDE_DIR}) endif() diff --git a/vcpkg.json b/vcpkg.json index fdf474f..65baeda 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -4,7 +4,8 @@ "dependencies": [ "libczi", "cli11", - "rapidjson" + "rapidjson", + "xerces-c" ], "builtin-baseline": "b0190b451303865b89ced9767caaab140c39f980" } From cad2fb769210b21d846b615ed3c3d35e98b049eb Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 18:59:45 +0200 Subject: [PATCH 06/34] remove unecessary pugiconfig --- CZICheck/CMakeLists.txt | 1 - CZICheck/pugiconfig.hpp | 40 ---------------------------------------- 2 files changed, 41 deletions(-) delete mode 100644 CZICheck/pugiconfig.hpp diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index e1da77a..ae8e5ea 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -108,7 +108,6 @@ runchecks.cpp runchecks.h utils.h utils.cpp -pugiconfig.hpp ) add_executable(CZICheck ${CZICHECKSRCFILES} ) diff --git a/CZICheck/pugiconfig.hpp b/CZICheck/pugiconfig.hpp deleted file mode 100644 index 528ce14..0000000 --- a/CZICheck/pugiconfig.hpp +++ /dev/null @@ -1,40 +0,0 @@ - -#ifndef HEADER_PUGICONFIG_HPP -#define HEADER_PUGICONFIG_HPP - -// Uncomment this to enable wchar_t mode -#define PUGIXML_WCHAR_MODE - -// Uncomment this to enable compact mode -// #define PUGIXML_COMPACT - -// Uncomment this to disable XPath -// #define PUGIXML_NO_XPATH - -// Uncomment this to disable STL -// #define PUGIXML_NO_STL - -// Uncomment this to disable exceptions -// #define PUGIXML_NO_EXCEPTIONS - -// Set this to control attributes for public classes/functions, i.e.: -// #define PUGIXML_API __declspec(dllexport) // to export all public symbols from DLL -// #define PUGIXML_CLASS __declspec(dllimport) // to import all classes from DLL -// #define PUGIXML_FUNCTION __fastcall // to set calling conventions to all public functions to fastcall -// In absence of PUGIXML_CLASS/PUGIXML_FUNCTION definitions PUGIXML_API is used instead - -// Tune these constants to adjust memory-related behavior -// #define PUGIXML_MEMORY_PAGE_SIZE 32768 -// #define PUGIXML_MEMORY_OUTPUT_STACK 10240 -// #define PUGIXML_MEMORY_XPATH_PAGE_SIZE 4096 - -// Tune this constant to adjust max nesting for XPath queries -// #define PUGIXML_XPATH_DEPTH_LIMIT 1024 - -// Uncomment this to switch to header-only version -// #define PUGIXML_HEADER_ONLY - -// Uncomment this to enable long long support -#define PUGIXML_HAS_LONG_LONG - -#endif \ No newline at end of file From bc3f72f1525abc2490dea92b08833d358d3cb03d Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:01:36 +0200 Subject: [PATCH 07/34] remove explicit vcpkg installs --- .github/workflows/cmake.yml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 766d238..a247a4b 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -27,20 +27,6 @@ jobs: - name: Checkout uses: actions/checkout@v3 - - name: Install dependencies (Windows) - if: ${{ (matrix.os == 'windows-latest') }} - # on Windows, we rely on vcpkg to pull in dependencies - shell: bash - run: | - vcpkg install xerces-c --triplet x64-windows-static - - - name: Install dependencies (Linux) - if: ${{ (matrix.os == 'ubuntu-latest') }} - # on Linux, we use apt to get our dependencies - shell: bash - run: | - sudo apt-get install libxerces-c-dev -y - - name: Configure CMake (Windows) if: ${{ (matrix.os == 'windows-latest') }} shell: bash From 59cf2ed47ab0eeab36fd3b47170b539b35c5c96c Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:03:34 +0200 Subject: [PATCH 08/34] add vcpkg.json to dep5 --- .reuse/dep5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.reuse/dep5 b/.reuse/dep5 index ff697e9..35f266c 100644 --- a/.reuse/dep5 +++ b/.reuse/dep5 @@ -3,7 +3,7 @@ Upstream-Name: CZICheck Upstream-Contact: Carl Zeiss Microscopy GmbH Source: https://github.com/ZEISS/czicheck -Files: .github/* .gitignore README.md LICENSE CODE_OF_CONDUCT.md CONTRIBUTING.md README.md SECURITY.md cla_corporate.txt cla_individual.txt THIRD_PARTY_LICENSES.txt +Files: .github/* .gitignore README.md LICENSE CODE_OF_CONDUCT.md CONTRIBUTING.md README.md SECURITY.md cla_corporate.txt cla_individual.txt THIRD_PARTY_LICENSES.txt vcpkg.json Copyright: 2023 Carl Zeiss Microscopy GmbH License: MIT From 05345f035d0e59102043dbe9eaf8c7149d50b9bc Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:21:57 +0200 Subject: [PATCH 09/34] get vcpkg at appropriate baseline commit --- modules/bootstrapVcpkg.cmake | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake index b300f84..59e5de8 100644 --- a/modules/bootstrapVcpkg.cmake +++ b/modules/bootstrapVcpkg.cmake @@ -32,7 +32,23 @@ if(NOT EXISTS "${VCPKG_EXECUTABLE}") endif() if(NOT EXISTS "${VCPKG_DIR}/.git") - message(STATUS "vcpkg not found - cloning into ${VCPKG_DIR}...") + message(STATUS "vcpkg not found") + message(STATUS "Attempting to find baseline from vcpkg.json...") + file(READ "${CMAKE_SOURCE_DIR}/vcpkg.json" _vcpkg_manifest) + string(REGEX MATCH "\"builtin-baseline\"[ \t]*:[ \t]*\"([0-9a-f]+)\"" _ ${_vcpkg_manifest}) + set(VCPKG_BASELINE_COMMIT "${CMAKE_MATCH_1}") + + if(NOT VCPKG_BASELINE_COMMIT OR NOT VCPKG_BASELINE_COMMIT MATCHES "^[0-9a-f]+$") + message(WARNING + "Failed to extract builtin-baseline from vcpkg.json. " + "Ensure that your manifest defines a valid baseline like:\n" + " \"builtin-baseline\": \"\"" + ) + else() + message(STATUS "Determined baseline commit: ${VCPKG_BASELINE_COMMIT}") + endif() + + message(STATUS "Cloning vcpkg...") execute_process( COMMAND git clone --depth 1 https://github.com/microsoft/vcpkg.git "${VCPKG_DIR}" RESULT_VARIABLE GIT_CLONE_RESULT @@ -40,6 +56,20 @@ if(NOT EXISTS "${VCPKG_EXECUTABLE}") if(NOT GIT_CLONE_RESULT EQUAL 0) message(FATAL_ERROR "Failed to clone vcpkg from GitHub.") endif() + + if(DEFINED VCPKG_BASELINE_COMMIT) + message(STATUS "Fetching vcpkg baseline commit: ${VCPKG_BASELINE_COMMIT}" + execute_process( + COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" git fetch --depth 1 origin ${VCPKG_BASELINE_COMMIT} + RESULT_VARIABLE GIT_FETCH_RESULT + ) + if(NOT GIT_FETCH_RESULT EQUAL 0) + message(FATAL_ERROR + "Failed to fetch vcpkg baseline commit ${VCPKG_BASELINE_COMMIT}. " + "Check that your builtin-baseline is correct and exists in the vcpkg repo." + ) + endif() + endif() else() message(STATUS "Found vcpkg folder at ${VCPKG_DIR}, skipping clone.") endif() From 186514e75eda38ba814b77815fb1a4ddead543bd Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:25:01 +0200 Subject: [PATCH 10/34] add missing parentheses --- modules/bootstrapVcpkg.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake index 59e5de8..9f9bbf6 100644 --- a/modules/bootstrapVcpkg.cmake +++ b/modules/bootstrapVcpkg.cmake @@ -58,7 +58,7 @@ if(NOT EXISTS "${VCPKG_EXECUTABLE}") endif() if(DEFINED VCPKG_BASELINE_COMMIT) - message(STATUS "Fetching vcpkg baseline commit: ${VCPKG_BASELINE_COMMIT}" + message(STATUS "Fetching vcpkg baseline commit: ${VCPKG_BASELINE_COMMIT}") execute_process( COMMAND ${CMAKE_COMMAND} -E chdir "${VCPKG_DIR}" git fetch --depth 1 origin ${VCPKG_BASELINE_COMMIT} RESULT_VARIABLE GIT_FETCH_RESULT From f1211a3d082afb72e2ba82fabe40d56a9d3b9b01 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:30:13 +0200 Subject: [PATCH 11/34] add update vcpkg install step --- .github/workflows/cmake.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index a247a4b..5325868 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -27,6 +27,25 @@ jobs: - name: Checkout uses: actions/checkout@v3 + - name: Prep existing vcpkg installation + shell: bash + run: | + set -e + BASELINE=$(grep -Po '"builtin-baseline"\s*:\s*"\K[0-9a-f]+' vcpkg.json) + echo "Detected vcpkg baseline: $BASELINE" + if [ -d "$VCPKG_ROOT/.git" ]; then + echo "Using preinstalled vcpkg at $VCPKG_ROOT" + cd "$VCPKG_ROOT" + if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then + echo "Fetching vcpkg baseline commit $BASELINE..." + git fetch --depth 1 origin "$BASELINE" + fi + git checkout "$BASELINE" + if [ ! -f ./vcpkg ]; then + ./bootstrap-vcpkg.sh + fi + echo "vcpkg is now at commit: $(git rev-parse HEAD)" + - name: Configure CMake (Windows) if: ${{ (matrix.os == 'windows-latest') }} shell: bash From 6e842b8e670f36d29d2847e8db97cf457b6de975 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:33:53 +0200 Subject: [PATCH 12/34] try to fix linespacing --- .github/workflows/cmake.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 5325868..b372436 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -30,20 +30,25 @@ jobs: - name: Prep existing vcpkg installation shell: bash run: | - set -e BASELINE=$(grep -Po '"builtin-baseline"\s*:\s*"\K[0-9a-f]+' vcpkg.json) echo "Detected vcpkg baseline: $BASELINE" + if [ -d "$VCPKG_ROOT/.git" ]; then echo "Using preinstalled vcpkg at $VCPKG_ROOT" cd "$VCPKG_ROOT" + fi + if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then echo "Fetching vcpkg baseline commit $BASELINE..." git fetch --depth 1 origin "$BASELINE" fi + git checkout "$BASELINE" + if [ ! -f ./vcpkg ]; then ./bootstrap-vcpkg.sh fi + echo "vcpkg is now at commit: $(git rev-parse HEAD)" - name: Configure CMake (Windows) From bad674e0350da1d81ac31fcfeff2312021ba3575 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:36:43 +0200 Subject: [PATCH 13/34] stop trying to be clever and do a normal fetch... --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index b372436..a0dab6f 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -40,7 +40,7 @@ jobs: if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then echo "Fetching vcpkg baseline commit $BASELINE..." - git fetch --depth 1 origin "$BASELINE" + git fetch fi git checkout "$BASELINE" From e0b471a379222752b20b2cdb8dfd2574c60d8ecf Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:41:40 +0200 Subject: [PATCH 14/34] bump checkout action --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index a0dab6f..95dcdfa 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Prep existing vcpkg installation shell: bash From c5e92e922857c24f88780c7eff34089622e862c7 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:47:52 +0200 Subject: [PATCH 15/34] try being clever again and overriding vcpkg_dir --- .github/workflows/cmake.yml | 43 +++++++++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 95dcdfa..008d49e 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -27,30 +27,61 @@ jobs: - name: Checkout uses: actions/checkout@v4 + - name: Cache vcpkg and packages + uses: actions/cache@v4 + with: + path: | + external/vcpkg + build/vcpkg_installed + key: vcpkg-${{ runner.os }}-${{ hashFiles('vcpkg.json') }} + - name: Prep existing vcpkg installation - shell: bash + shell: bash run: | + set -euo pipefail BASELINE=$(grep -Po '"builtin-baseline"\s*:\s*"\K[0-9a-f]+' vcpkg.json) echo "Detected vcpkg baseline: $BASELINE" - if [ -d "$VCPKG_ROOT/.git" ]; then + if [ -d "$GITHUB_WORKSPACE/external/vcpkg/.git" ]; then + echo "Using cached vcpkg at external/vcpkg" + cd "$GITHUB_WORKSPACE/external/vcpkg" + elif [ -d "$VCPKG_ROOT/.git" ]; then echo "Using preinstalled vcpkg at $VCPKG_ROOT" cd "$VCPKG_ROOT" + else + echo "Performing minimal clone of vcpkg..." + git clone --filter=blob:none --no-checkout https://github.com/microsoft/vcpkg.git external/vcpkg + cd external/vcpkg fi if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then - echo "Fetching vcpkg baseline commit $BASELINE..." - git fetch + echo "Baseline commit not present; fetching..." + git fetch origin "$BASELINE" --depth=1 || git fetch --unshallow fi git checkout "$BASELINE" if [ ! -f ./vcpkg ]; then - ./bootstrap-vcpkg.sh + if [[ "$RUNNER_OS" == "Windows" ]]; then + ./bootstrap-vcpkg.bat + else + ./bootstrap-vcpkg.sh + fi fi echo "vcpkg is now at commit: $(git rev-parse HEAD)" + if [ -d "$GITHUB_WORKSPACE/external/vcpkg/.git" ]; then + VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" + elif [ -d "$VCPKG_ROOT/.git" ]; then + VCPKG_DIR="$VCPKG_ROOT" + else + VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" + fi + + echo "VCPKG_DIR=$VCPKG_DIR" >> $GITHUB_ENV + + - name: Configure CMake (Windows) if: ${{ (matrix.os == 'windows-latest') }} shell: bash @@ -59,7 +90,7 @@ jobs: # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type # on Windows, we need to point CMake to the vcpkg-toolchain-file cmake -B "${{github.workspace}}/build" -DCMAKE_BUILD_TYPE=${{matrix.build}} \ - -DCMAKE_TOOLCHAIN_FILE="${VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake" \ + -DCMAKE_TOOLCHAIN_FILE="${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" \ -DVCPKG_TARGET_TRIPLET=x64-windows-static \ -DCZICHECK_BUILD_TESTS=ON From 75ec2440075d11c0ef119d175972ab603a2841b1 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:49:58 +0200 Subject: [PATCH 16/34] Add SPDX header --- modules/bootstrapVcpkg.cmake | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake index 9f9bbf6..7447669 100644 --- a/modules/bootstrapVcpkg.cmake +++ b/modules/bootstrapVcpkg.cmake @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2024 Carl Zeiss Microscopy GmbH +# +# SPDX-License-Identifier: MIT + if(DEFINED CMAKE_TOOLCHAIN_FILE) message(STATUS "CMAKE_TOOLCHAIN_FILE already set to '${CMAKE_TOOLCHAIN_FILE}', skipping vcpkg bootstrap.") return() From 22df7fdf55a105debaf49eff815b8981fbd7ed31 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:51:51 +0200 Subject: [PATCH 17/34] fix indent.... --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 008d49e..2dff785 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -36,7 +36,7 @@ jobs: key: vcpkg-${{ runner.os }}-${{ hashFiles('vcpkg.json') }} - name: Prep existing vcpkg installation - shell: bash + shell: bash run: | set -euo pipefail BASELINE=$(grep -Po '"builtin-baseline"\s*:\s*"\K[0-9a-f]+' vcpkg.json) From 02af2a446d4dbfe605e461c7ac57b1b7ff482372 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:56:40 +0200 Subject: [PATCH 18/34] handle if runner doesn't define vcpkgroot --- .github/workflows/cmake.yml | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 2dff785..5f47551 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -44,24 +44,26 @@ jobs: if [ -d "$GITHUB_WORKSPACE/external/vcpkg/.git" ]; then echo "Using cached vcpkg at external/vcpkg" - cd "$GITHUB_WORKSPACE/external/vcpkg" - elif [ -d "$VCPKG_ROOT/.git" ]; then + VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" + elif [ -n "${VCPKG_ROOT:-}" ] && [ -d "$VCPKG_ROOT/.git" ]; then echo "Using preinstalled vcpkg at $VCPKG_ROOT" - cd "$VCPKG_ROOT" + VCPKG_DIR="$VCPKG_ROOT" else - echo "Performing minimal clone of vcpkg..." + echo "Performing minimal vcpkg clone..." git clone --filter=blob:none --no-checkout https://github.com/microsoft/vcpkg.git external/vcpkg - cd external/vcpkg + VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" fi + cd "$VCPKG_DIR" + if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then - echo "Baseline commit not present; fetching..." + echo "Fetching baseline commit $BASELINE..." git fetch origin "$BASELINE" --depth=1 || git fetch --unshallow fi git checkout "$BASELINE" - if [ ! -f ./vcpkg ]; then + if [ ! -f ./vcpkg ] && [ ! -f ./vcpkg.exe ]; then if [[ "$RUNNER_OS" == "Windows" ]]; then ./bootstrap-vcpkg.bat else @@ -70,16 +72,7 @@ jobs: fi echo "vcpkg is now at commit: $(git rev-parse HEAD)" - - if [ -d "$GITHUB_WORKSPACE/external/vcpkg/.git" ]; then - VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" - elif [ -d "$VCPKG_ROOT/.git" ]; then - VCPKG_DIR="$VCPKG_ROOT" - else - VCPKG_DIR="$GITHUB_WORKSPACE/external/vcpkg" - fi - - echo "VCPKG_DIR=$VCPKG_DIR" >> $GITHUB_ENV + echo "VCPKG_DIR=$VCPKG_DIR" >> "$GITHUB_ENV" - name: Configure CMake (Windows) From ee61aecf5bccf4afa40c752b9abb9f772abcdd82 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 19:58:46 +0200 Subject: [PATCH 19/34] Let's try jq instead of grep and pray --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 5f47551..3e02049 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -39,7 +39,7 @@ jobs: shell: bash run: | set -euo pipefail - BASELINE=$(grep -Po '"builtin-baseline"\s*:\s*"\K[0-9a-f]+' vcpkg.json) + BASELINE=$(jq -r '.["builtin-baseline"]' vcpkg.json) echo "Detected vcpkg baseline: $BASELINE" if [ -d "$GITHUB_WORKSPACE/external/vcpkg/.git" ]; then From 406ac779f2be7440771a51267993818ea36b60c4 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:11:19 +0200 Subject: [PATCH 20/34] make linux build also use vcpkg --- .github/workflows/cmake.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 3e02049..c42c346 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -92,6 +92,7 @@ jobs: shell: bash run: | cmake -B "${{github.workspace}}/build" -DCMAKE_BUILD_TYPE=${{matrix.build}} \ + -DCMAKE_TOOLCHAIN_FILE="${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" \ -DCZICHECK_BUILD_TESTS=ON - name: Build From abd8b7d7c41ede0bc176a452f1997ddbd9213234 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:15:48 +0200 Subject: [PATCH 21/34] =?UTF-8?q?properly=20capitalize=20libczi....=20?= =?UTF-8?q?=F0=9F=A4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CZICheck/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index ae8e5ea..e803c0f 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -46,7 +46,7 @@ if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) endif() if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) - find_package(libczi CONFIG REQUIRED) + find_package(libCZI CONFIG REQUIRED) find_package(CLI11 CONFIG REQUIRED) endif() From c1916d28c88ad553372657242e931671954e8066 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:24:12 +0200 Subject: [PATCH 22/34] properly capitalize part 2 --- CZICheck/inc_libCZI.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CZICheck/inc_libCZI.h b/CZICheck/inc_libCZI.h index a0d4103..803a70f 100644 --- a/CZICheck/inc_libCZI.h +++ b/CZICheck/inc_libCZI.h @@ -4,4 +4,4 @@ #pragma once -#include +#include From 767110f846d2e9dd385d08968a59325de250f3ad Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:26:28 +0200 Subject: [PATCH 23/34] bump version in tests --- Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml | 2 +- Test/CZICheckSamples/duplicate_coordinates.txt.xml | 2 +- Test/CZICheckSamples/edf-missing-texture.txt.xml | 2 +- .../edf-superfluous-missing-channel-subblock.txt.xml | 2 +- Test/CZICheckSamples/edf-superfluous.txt.xml | 2 +- Test/CZICheckSamples/inconsistent_coordinates.txt.xml | 2 +- Test/CZICheckSamples/invalid_componentbitcount.txt.xml | 2 +- .../jpgxrcompressed_inconsistent_pixeltype.txt.xml | 2 +- Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml | 2 +- Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml | 2 +- Test/CZICheckSamples/negative_plane_start_index.txt.xml | 2 +- Test/CZICheckSamples/overlapping_scenes.txt.xml | 2 +- .../pixeltype_mismatch_between_metadata_and_subblocks.txt.xml | 2 +- Test/CZICheckSamples/positive_plane_start_index.txt.xml | 2 +- Test/CZICheckSamples/sparse_planes.txt.xml | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml index c9304be..8786fd8 100644 --- a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml +++ b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml @@ -99,6 +99,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/duplicate_coordinates.txt.xml b/Test/CZICheckSamples/duplicate_coordinates.txt.xml index ee81f94..75987a3 100644 --- a/Test/CZICheckSamples/duplicate_coordinates.txt.xml +++ b/Test/CZICheckSamples/duplicate_coordinates.txt.xml @@ -99,6 +99,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/edf-missing-texture.txt.xml b/Test/CZICheckSamples/edf-missing-texture.txt.xml index ed8fc3a..5fefa33 100644 --- a/Test/CZICheckSamples/edf-missing-texture.txt.xml +++ b/Test/CZICheckSamples/edf-missing-texture.txt.xml @@ -92,6 +92,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml index 9af42ad..fbe5ba8 100644 --- a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml +++ b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml @@ -113,6 +113,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/edf-superfluous.txt.xml b/Test/CZICheckSamples/edf-superfluous.txt.xml index f63ff10..7c3095b 100644 --- a/Test/CZICheckSamples/edf-superfluous.txt.xml +++ b/Test/CZICheckSamples/edf-superfluous.txt.xml @@ -92,6 +92,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/inconsistent_coordinates.txt.xml b/Test/CZICheckSamples/inconsistent_coordinates.txt.xml index 574383a..a5df585 100644 --- a/Test/CZICheckSamples/inconsistent_coordinates.txt.xml +++ b/Test/CZICheckSamples/inconsistent_coordinates.txt.xml @@ -99,6 +99,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/invalid_componentbitcount.txt.xml b/Test/CZICheckSamples/invalid_componentbitcount.txt.xml index f1d706f..55481ba 100644 --- a/Test/CZICheckSamples/invalid_componentbitcount.txt.xml +++ b/Test/CZICheckSamples/invalid_componentbitcount.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml index a915c37..6732271 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml index a915c37..6732271 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml index 4a32b6e..5ec6f00 100644 --- a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml +++ b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml @@ -87,6 +87,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/negative_plane_start_index.txt.xml b/Test/CZICheckSamples/negative_plane_start_index.txt.xml index 911cde6..66584fb 100644 --- a/Test/CZICheckSamples/negative_plane_start_index.txt.xml +++ b/Test/CZICheckSamples/negative_plane_start_index.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/overlapping_scenes.txt.xml b/Test/CZICheckSamples/overlapping_scenes.txt.xml index 1bfdc77..3101890 100644 --- a/Test/CZICheckSamples/overlapping_scenes.txt.xml +++ b/Test/CZICheckSamples/overlapping_scenes.txt.xml @@ -123,6 +123,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml index 9be72d5..d7313b1 100644 --- a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml +++ b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml @@ -168,6 +168,6 @@ FAIL CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/positive_plane_start_index.txt.xml b/Test/CZICheckSamples/positive_plane_start_index.txt.xml index 3f003de..35e04ad 100644 --- a/Test/CZICheckSamples/positive_plane_start_index.txt.xml +++ b/Test/CZICheckSamples/positive_plane_start_index.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 diff --git a/Test/CZICheckSamples/sparse_planes.txt.xml b/Test/CZICheckSamples/sparse_planes.txt.xml index d1d415c..77b328c 100644 --- a/Test/CZICheckSamples/sparse_planes.txt.xml +++ b/Test/CZICheckSamples/sparse_planes.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.3 + 0.6.4 From 601cfb86a5b04a292d3a3771092b0d30efe3960a Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:34:15 +0200 Subject: [PATCH 24/34] try to make megalinter happy --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index c42c346..3070f07 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -56,7 +56,7 @@ jobs: cd "$VCPKG_DIR" - if ! git cat-file -e "$BASELINE"^{commit} 2>/dev/null; then + if ! git cat-file -e "${BASELINE}^{commit}" 2>/dev/null; then echo "Fetching baseline commit $BASELINE..." git fetch origin "$BASELINE" --depth=1 || git fetch --unshallow fi From eb48638a7d12973c58c513bb959855185c6f452d Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:37:33 +0200 Subject: [PATCH 25/34] bump version in test json files --- Test/CZICheckSamples/differentpixeltypeinchannel.txt.json | 2 +- Test/CZICheckSamples/duplicate_coordinates.txt.json | 2 +- Test/CZICheckSamples/edf-missing-texture.txt.json | 2 +- .../edf-superfluous-missing-channel-subblock.txt.json | 2 +- Test/CZICheckSamples/edf-superfluous.txt.json | 2 +- Test/CZICheckSamples/inconsistent_coordinates.txt.json | 2 +- Test/CZICheckSamples/invalid_componentbitcount.txt.json | 2 +- .../jpgxrcompressed_inconsistent_pixeltype.txt.json | 2 +- Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json | 2 +- Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json | 2 +- Test/CZICheckSamples/negative_plane_start_index.txt.json | 2 +- Test/CZICheckSamples/overlapping_scenes.txt.json | 2 +- .../pixeltype_mismatch_between_metadata_and_subblocks.txt.json | 2 +- Test/CZICheckSamples/positive_plane_start_index.txt.json | 2 +- Test/CZICheckSamples/sparse_planes.txt.json | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json index f43ec29..74ea8fd 100644 --- a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json +++ b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/duplicate_coordinates.txt.json b/Test/CZICheckSamples/duplicate_coordinates.txt.json index 181f41d..f49dff0 100644 --- a/Test/CZICheckSamples/duplicate_coordinates.txt.json +++ b/Test/CZICheckSamples/duplicate_coordinates.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-missing-texture.txt.json b/Test/CZICheckSamples/edf-missing-texture.txt.json index c8e9bc0..2205402 100644 --- a/Test/CZICheckSamples/edf-missing-texture.txt.json +++ b/Test/CZICheckSamples/edf-missing-texture.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json index c19844e..4c3913c 100644 --- a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json +++ b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json @@ -126,6 +126,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-superfluous.txt.json b/Test/CZICheckSamples/edf-superfluous.txt.json index 3a5a643..b855e12 100644 --- a/Test/CZICheckSamples/edf-superfluous.txt.json +++ b/Test/CZICheckSamples/edf-superfluous.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/inconsistent_coordinates.txt.json b/Test/CZICheckSamples/inconsistent_coordinates.txt.json index d9e780f..3f0c9a9 100644 --- a/Test/CZICheckSamples/inconsistent_coordinates.txt.json +++ b/Test/CZICheckSamples/inconsistent_coordinates.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/invalid_componentbitcount.txt.json b/Test/CZICheckSamples/invalid_componentbitcount.txt.json index 0bff9bb..e3caf81 100644 --- a/Test/CZICheckSamples/invalid_componentbitcount.txt.json +++ b/Test/CZICheckSamples/invalid_componentbitcount.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json index 5d972a9..3b6c4f9 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json index 5d972a9..3b6c4f9 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json index 1ff7067..76613cc 100644 --- a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json +++ b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json @@ -100,6 +100,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/negative_plane_start_index.txt.json b/Test/CZICheckSamples/negative_plane_start_index.txt.json index 12bb7af..e211eb8 100644 --- a/Test/CZICheckSamples/negative_plane_start_index.txt.json +++ b/Test/CZICheckSamples/negative_plane_start_index.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/overlapping_scenes.txt.json b/Test/CZICheckSamples/overlapping_scenes.txt.json index fc7f26c..73a1344 100644 --- a/Test/CZICheckSamples/overlapping_scenes.txt.json +++ b/Test/CZICheckSamples/overlapping_scenes.txt.json @@ -136,6 +136,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json index 2de4c11..3cd08b2 100644 --- a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json +++ b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json @@ -181,6 +181,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/positive_plane_start_index.txt.json b/Test/CZICheckSamples/positive_plane_start_index.txt.json index 010850b..c6e97cd 100644 --- a/Test/CZICheckSamples/positive_plane_start_index.txt.json +++ b/Test/CZICheckSamples/positive_plane_start_index.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/sparse_planes.txt.json b/Test/CZICheckSamples/sparse_planes.txt.json index cc67fda..5cf88f0 100644 --- a/Test/CZICheckSamples/sparse_planes.txt.json +++ b/Test/CZICheckSamples/sparse_planes.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.3" + "version": "0.6.4" } } \ No newline at end of file From ab58e8c19df7dc72b635443b0c552b5350164eb7 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 20:49:28 +0200 Subject: [PATCH 26/34] generate appropriate inc_libCZI --- CZICheck/CMakeLists.txt | 11 ++++++++++- CZICheck/checkers/checkerbase.h | 2 +- CZICheck/{inc_libCZI.h => inc_libCZI.h.in} | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) rename CZICheck/{inc_libCZI.h => inc_libCZI.h.in} (77%) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index e803c0f..9002674 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -50,6 +50,16 @@ if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) find_package(CLI11 CONFIG REQUIRED) endif() +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + set(LIBCZI_HEADER_PATH "libCZI/libCZI.h") +else() + set(LIBCZI_HEADER_PATH "libCZI.h") +endif() + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/inc_libCZI.h.in + ${CMAKE_CURRENT_BINARY_DIR}/inc_libCZI.h + @ONLY) + set(CZICHECKSRCFILES "checkers/checkerbase.h" "checkers/checkerbase.cpp" @@ -95,7 +105,6 @@ consoleio.h CZICheck.cpp IChecker.h IResultGatherer.h -inc_libCZI.h resultgatherer.cpp resultgatherer.h resultgathererjson.h diff --git a/CZICheck/checkers/checkerbase.h b/CZICheck/checkers/checkerbase.h index 562c6c7..162b20a 100644 --- a/CZICheck/checkers/checkerbase.h +++ b/CZICheck/checkers/checkerbase.h @@ -4,7 +4,7 @@ #pragma once -#include "../inc_libCZI.h" +#include "inc_libCZI.h" #include "../checkerfactory.h" #include #include diff --git a/CZICheck/inc_libCZI.h b/CZICheck/inc_libCZI.h.in similarity index 77% rename from CZICheck/inc_libCZI.h rename to CZICheck/inc_libCZI.h.in index 803a70f..8b20203 100644 --- a/CZICheck/inc_libCZI.h +++ b/CZICheck/inc_libCZI.h.in @@ -4,4 +4,4 @@ #pragma once -#include +#include <@LIBCZI_HEADER_PATH@> From 5de3d423e4bcf2de4a5aac8b17491b593f9dd368 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:05:48 +0200 Subject: [PATCH 27/34] guard comp defs behind bootstrap flag --- modules/pugiXML.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/pugiXML.cmake b/modules/pugiXML.cmake index 72ed5a9..c524421 100644 --- a/modules/pugiXML.cmake +++ b/modules/pugiXML.cmake @@ -17,7 +17,9 @@ if (NOT pugixml_POPULATED) FetchContent_MakeAvailable(pugixml) set(PUGIXML_INCLUDE_DIRS ${pugixml_SOURCE_DIR}/include) - target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) + if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) + endif() endif() message(STATUS "PugiXML include dir at " ${PUGIXML_INCLUDE_DIRS}) From f905bdb2f4f3f62818ea1a8f4c8d020ca3dc3390 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:16:00 +0200 Subject: [PATCH 28/34] use czicheck specific var --- CZICheck/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index 9002674..ecebc06 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -51,9 +51,9 @@ if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) endif() if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) - set(LIBCZI_HEADER_PATH "libCZI/libCZI.h") + set(CZICHECK_LIBCZI_HEADER_PATH "libCZI/libCZI.h") else() - set(LIBCZI_HEADER_PATH "libCZI.h") + set(CZICHECK_LIBCZI_HEADER_PATH "libCZI.h") endif() configure_file(${CMAKE_CURRENT_SOURCE_DIR}/inc_libCZI.h.in From 8d11da5a8f96f0a7e4bb5ecfef5c9196ffd2e7dc Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:18:53 +0200 Subject: [PATCH 29/34] =?UTF-8?q?update=20the=20var=20in=20the=20in=20file?= =?UTF-8?q?=20too....=20=F0=9F=A4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CZICheck/inc_libCZI.h.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CZICheck/inc_libCZI.h.in b/CZICheck/inc_libCZI.h.in index 8b20203..5f6410f 100644 --- a/CZICheck/inc_libCZI.h.in +++ b/CZICheck/inc_libCZI.h.in @@ -4,4 +4,4 @@ #pragma once -#include <@LIBCZI_HEADER_PATH@> +#include <@CZICHECK_LIBCZI_HEADER_PATH@> From 2b64dc70ae4169ebabdd5d0ef9dd0eb34bef9a05 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:37:30 +0200 Subject: [PATCH 30/34] unpin libczi version --- CMakeLists.txt | 1 - modules/libCZI.cmake | 2 +- modules/pugiXML.cmake | 4 +--- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 890f4c1..d6d9180 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,6 @@ project(CZICheck DESCRIPTION "CZICheck is a validator for CZI-documents") - if(WIN32) # use "static C-runtime" -> https://stackoverflow.com/questions/14172856/compile-with-mt-instead-of-md-using-cmake # Note: this requires CMAKE version 3.15+ diff --git a/modules/libCZI.cmake b/modules/libCZI.cmake index 9430dcb..20ebaaf 100644 --- a/modules/libCZI.cmake +++ b/modules/libCZI.cmake @@ -7,7 +7,7 @@ include(FetchContent) FetchContent_Declare( libCZI GIT_REPOSITORY https://github.com/ZEISS/libczi.git - GIT_TAG 545098455ef50fdc7d4d8615bfa0c5bd78f52df7 + GIT_TAG origin/main ) if(NOT libCZI_POPULATED) diff --git a/modules/pugiXML.cmake b/modules/pugiXML.cmake index c524421..72ed5a9 100644 --- a/modules/pugiXML.cmake +++ b/modules/pugiXML.cmake @@ -17,9 +17,7 @@ if (NOT pugixml_POPULATED) FetchContent_MakeAvailable(pugixml) set(PUGIXML_INCLUDE_DIRS ${pugixml_SOURCE_DIR}/include) - if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) - target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) - endif() + target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) endif() message(STATUS "PugiXML include dir at " ${PUGIXML_INCLUDE_DIRS}) From d254688bc2edcb2a98af56e0f1504cee16d56ac3 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 6 Aug 2025 21:53:05 +0200 Subject: [PATCH 31/34] Revert "unpin libczi version" This reverts commit 2b64dc70ae4169ebabdd5d0ef9dd0eb34bef9a05. --- CMakeLists.txt | 1 + modules/libCZI.cmake | 2 +- modules/pugiXML.cmake | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d6d9180..890f4c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,6 +18,7 @@ project(CZICheck DESCRIPTION "CZICheck is a validator for CZI-documents") + if(WIN32) # use "static C-runtime" -> https://stackoverflow.com/questions/14172856/compile-with-mt-instead-of-md-using-cmake # Note: this requires CMAKE version 3.15+ diff --git a/modules/libCZI.cmake b/modules/libCZI.cmake index 20ebaaf..9430dcb 100644 --- a/modules/libCZI.cmake +++ b/modules/libCZI.cmake @@ -7,7 +7,7 @@ include(FetchContent) FetchContent_Declare( libCZI GIT_REPOSITORY https://github.com/ZEISS/libczi.git - GIT_TAG origin/main + GIT_TAG 545098455ef50fdc7d4d8615bfa0c5bd78f52df7 ) if(NOT libCZI_POPULATED) diff --git a/modules/pugiXML.cmake b/modules/pugiXML.cmake index 72ed5a9..c524421 100644 --- a/modules/pugiXML.cmake +++ b/modules/pugiXML.cmake @@ -17,7 +17,9 @@ if (NOT pugixml_POPULATED) FetchContent_MakeAvailable(pugixml) set(PUGIXML_INCLUDE_DIRS ${pugixml_SOURCE_DIR}/include) - target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) + if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + target_compile_definitions(pugixml INTERFACE PUGIXML_WCHAR_MODE PUGIXML_HEADER_ONLY) + endif() endif() message(STATUS "PugiXML include dir at " ${PUGIXML_INCLUDE_DIRS}) From 9540a557693c2378280a421bfea0de7e0440685b Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 24 Sep 2025 09:20:22 +0200 Subject: [PATCH 32/34] address pr comments --- CZICheck/CMakeLists.txt | 90 ++++++++++------------ CZICheck/checkers/checkerbase.h | 2 +- CZICheck/{inc_libCZI.h.in => inc_libCZI.h} | 2 +- CZICheck/resultgathererxml.h | 1 - modules/bootstrapVcpkg.cmake | 6 +- vcpkg.json | 1 - 6 files changed, 47 insertions(+), 55 deletions(-) rename CZICheck/{inc_libCZI.h.in => inc_libCZI.h} (72%) diff --git a/CZICheck/CMakeLists.txt b/CZICheck/CMakeLists.txt index ecebc06..5466a7e 100644 --- a/CZICheck/CMakeLists.txt +++ b/CZICheck/CMakeLists.txt @@ -34,32 +34,19 @@ else() message("XercesC library not found, the checker 'xmlmetadataschema' will **not** be available") endif() -if(NOT CZICHECK_ENABLE_VCPKG_BOOTSTRAP) - include(FetchContent) - FetchContent_Declare( - cli11 - GIT_REPOSITORY https://github.com/CLIUtils/CLI11 - GIT_TAG v2.3.2 - ) +include(FetchContent) +FetchContent_Declare( + cli11 + GIT_REPOSITORY https://github.com/CLIUtils/CLI11 + GIT_TAG v2.3.2 +) - FetchContent_MakeAvailable(cli11) -endif() +FetchContent_MakeAvailable(cli11) if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) find_package(libCZI CONFIG REQUIRED) - find_package(CLI11 CONFIG REQUIRED) -endif() - -if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) - set(CZICHECK_LIBCZI_HEADER_PATH "libCZI/libCZI.h") -else() - set(CZICHECK_LIBCZI_HEADER_PATH "libCZI.h") endif() -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/inc_libCZI.h.in - ${CMAKE_CURRENT_BINARY_DIR}/inc_libCZI.h - @ONLY) - set(CZICHECKSRCFILES "checkers/checkerbase.h" "checkers/checkerbase.cpp" @@ -93,30 +80,31 @@ set(CZICHECKSRCFILES "checkers/checkerSubBlkBitmapValid.cpp" "checkers/checkerTopographyApplianceValidation.h" "checkers/checkerTopographyApplianceValidation.cpp" -checkerfactory.cpp -checkerfactory.h -checks.h -checks.cpp -CMakeLists.txt -cmdlineoptions.cpp -cmdlineoptions.h -consoleio.cpp -consoleio.h -CZICheck.cpp -IChecker.h -IResultGatherer.h -resultgatherer.cpp -resultgatherer.h -resultgathererjson.h -resultgathererjson.cpp -resultgathererxml.h -resultgathererxml.cpp -resultgathererfactory.h -resultgathererfactory.cpp -runchecks.cpp -runchecks.h -utils.h -utils.cpp +"checkerfactory.cpp" +"checkerfactory.h" +"checks.h" +"checks.cpp" +"CMakeLists.txt" +"cmdlineoptions.cpp" +"cmdlineoptions.h" +"consoleio.cpp" +"consoleio.h" +"CZICheck.cpp" +"IChecker.h" +"IResultGatherer.h" +"resultgatherer.cpp" +"resultgatherer.h" +"resultgathererjson.h" +"resultgathererjson.cpp" +"resultgathererxml.h" +"resultgathererxml.cpp" +"resultgathererfactory.h" +"resultgathererfactory.cpp" +"runchecks.cpp" +"runchecks.h" +"utils.h" +"utils.cpp" +"inc_libCZI.h" ) add_executable(CZICheck ${CZICHECKSRCFILES} ) @@ -126,6 +114,8 @@ target_compile_definitions(CZICheck PRIVATE _LIBCZISTATICLIB) target_link_libraries(CZICheck PRIVATE CLI11::CLI11) +target_include_directories(CZICheck PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) + if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) if(TARGET libczi::libCZI) add_library(libczi::libCZI_selected ALIAS libczi::libCZI) @@ -134,16 +124,20 @@ if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) else() message(FATAL_ERROR "No suitable libCZI target found (neither shared nor static).") endif() - - target_link_libraries(CZICheck PRIVATE libczi::libCZI_selected) + target_link_libraries(CZICheck PRIVATE libczi::libCZI_selected) else() target_link_libraries(CZICheck PRIVATE libCZIStatic) endif() - +if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) + get_target_property(_libczi_includes libczi::libCZI_selected INTERFACE_INCLUDE_DIRECTORIES) + set(_libczi_include_with_subdir "${_libczi_includes}/libCZI") + target_include_directories(CZICheck PRIVATE ${_libczi_include_with_subdir}) +else() + target_include_directories(CZICheck PRIVATE ${LIBCZI_INCLUDE_DIR}) +endif() target_link_libraries(CZICheck PRIVATE pugixml) target_include_directories(CZICheck - PRIVATE ${LIBCZI_INCLUDE_DIR} PRIVATE ${RAPIDJSON_INCLUDE_DIRS}) if (XercesC_FOUND) diff --git a/CZICheck/checkers/checkerbase.h b/CZICheck/checkers/checkerbase.h index 162b20a..cce41eb 100644 --- a/CZICheck/checkers/checkerbase.h +++ b/CZICheck/checkers/checkerbase.h @@ -4,7 +4,7 @@ #pragma once -#include "inc_libCZI.h" +#include #include "../checkerfactory.h" #include #include diff --git a/CZICheck/inc_libCZI.h.in b/CZICheck/inc_libCZI.h similarity index 72% rename from CZICheck/inc_libCZI.h.in rename to CZICheck/inc_libCZI.h index 5f6410f..fc95f11 100644 --- a/CZICheck/inc_libCZI.h.in +++ b/CZICheck/inc_libCZI.h @@ -4,4 +4,4 @@ #pragma once -#include <@CZICHECK_LIBCZI_HEADER_PATH@> +#include diff --git a/CZICheck/resultgathererxml.h b/CZICheck/resultgathererxml.h index 9ce4786..4b458a7 100644 --- a/CZICheck/resultgathererxml.h +++ b/CZICheck/resultgathererxml.h @@ -12,7 +12,6 @@ #include "pugiconfig.hpp" #include - class CResultGathererXml : public IResultGatherer { private: diff --git a/modules/bootstrapVcpkg.cmake b/modules/bootstrapVcpkg.cmake index 7447669..a332fd2 100644 --- a/modules/bootstrapVcpkg.cmake +++ b/modules/bootstrapVcpkg.cmake @@ -19,7 +19,7 @@ else() set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg") endif() -if(DEFINED ENV{VCPKG_ROOT} AND EXISTS "$ENV{VCPKG_ROOT}/vcpkg") +if(DEFINED ENV{VCPKG_ROOT} AND EXISTS "$ENV{VCPKG_ROOT}/vcpkg" AND NOT DEFINED VCPKG_EXECUTABLE) set(VCPKG_DIR "$ENV{VCPKG_ROOT}") if(WIN32) set(VCPKG_EXECUTABLE "${VCPKG_DIR}/vcpkg.exe") @@ -75,7 +75,7 @@ if(NOT EXISTS "${VCPKG_EXECUTABLE}") endif() endif() else() - message(STATUS "Found vcpkg folder at ${VCPKG_DIR}, skipping clone.") + message(STATUS "Found vcpkg directory at ${VCPKG_DIR}, skipping clone.") endif() message(STATUS "Bootstrapping vcpkg...") @@ -103,4 +103,4 @@ set(CMAKE_TOOLCHAIN_FILE "${VCPKG_DIR}/scripts/buildsystems/vcpkg.cmake" set(VCPKG_FEATURE_FLAGS "manifests" CACHE STRING "") -message(STATUS "vcpkg is ready. Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") +message(STATUS "vcpkg is ready. Toolchain file: ${CMAKE_TOOLCHAIN_FILE}") \ No newline at end of file diff --git a/vcpkg.json b/vcpkg.json index 65baeda..789044e 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -3,7 +3,6 @@ "version-string": "0.6.4", "dependencies": [ "libczi", - "cli11", "rapidjson", "xerces-c" ], From 8dad9a877e275ddbeea78023107961a8ed5999d4 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 24 Sep 2025 09:36:41 +0200 Subject: [PATCH 33/34] bump version --- CMakeLists.txt | 2 +- documentation/version-history.md | 1 + vcpkg.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 890f4c1..1fbc490 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,7 +13,7 @@ if(CZICHECK_ENABLE_VCPKG_BOOTSTRAP) endif() project(CZICheck - VERSION 0.6.4 + VERSION 0.6.5 HOMEPAGE_URL "https://github.com/ZEISS/czicheck" DESCRIPTION "CZICheck is a validator for CZI-documents") diff --git a/documentation/version-history.md b/documentation/version-history.md index 2d8af9b..d43574e 100644 --- a/documentation/version-history.md +++ b/documentation/version-history.md @@ -17,3 +17,4 @@ version history {#version_history} 0.6.2 | [29](https://github.com/ZEISS/czicheck/pull/29) | fix issue in metadata-schema (with "TopographyDataItem" and with AxioScan-documents) 0.6.3 | [31](https://github.com/ZEISS/czicheck/pull/31) | add option to ignore "size-m-field-for-pyramid-subblocks" 0.6.4 | [34](https://github.com/ZEISS/czicheck/pull/34) | align with libCZI 0.64.0 and pin version + 0.6.5 | [36](https://github.com/ZEISS/czicheck/pull/36) | enable libCZI vpkg consumption and add optional bootstrap diff --git a/vcpkg.json b/vcpkg.json index 789044e..4fb8cb1 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,6 +1,6 @@ { "name": "czicheck", - "version-string": "0.6.4", + "version-string": "0.6.5", "dependencies": [ "libczi", "rapidjson", From 8d0e4a53cf8c47b202e29527f38003908d56fae6 Mon Sep 17 00:00:00 2001 From: DaveyJonesBitPail <119518234+DaveyJonesBitPail@users.noreply.github.com> Date: Wed, 24 Sep 2025 09:43:38 +0200 Subject: [PATCH 34/34] blindly update version in tests --- Test/CZICheckSamples/differentpixeltypeinchannel.txt.json | 2 +- Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml | 2 +- Test/CZICheckSamples/duplicate_coordinates.txt.json | 2 +- Test/CZICheckSamples/duplicate_coordinates.txt.xml | 2 +- Test/CZICheckSamples/edf-missing-texture.txt.json | 2 +- Test/CZICheckSamples/edf-missing-texture.txt.xml | 2 +- .../edf-superfluous-missing-channel-subblock.txt.json | 2 +- .../edf-superfluous-missing-channel-subblock.txt.xml | 2 +- Test/CZICheckSamples/edf-superfluous.txt.json | 2 +- Test/CZICheckSamples/edf-superfluous.txt.xml | 2 +- Test/CZICheckSamples/inconsistent_coordinates.txt.json | 2 +- Test/CZICheckSamples/inconsistent_coordinates.txt.xml | 2 +- Test/CZICheckSamples/invalid_componentbitcount.txt.json | 2 +- Test/CZICheckSamples/invalid_componentbitcount.txt.xml | 2 +- .../jpgxrcompressed_inconsistent_pixeltype.txt.json | 2 +- .../jpgxrcompressed_inconsistent_pixeltype.txt.xml | 2 +- Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json | 2 +- Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml | 2 +- Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json | 2 +- Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml | 2 +- Test/CZICheckSamples/negative_plane_start_index.txt.json | 2 +- Test/CZICheckSamples/negative_plane_start_index.txt.xml | 2 +- Test/CZICheckSamples/overlapping_scenes.txt.json | 2 +- Test/CZICheckSamples/overlapping_scenes.txt.xml | 2 +- .../pixeltype_mismatch_between_metadata_and_subblocks.txt.json | 2 +- .../pixeltype_mismatch_between_metadata_and_subblocks.txt.xml | 2 +- Test/CZICheckSamples/positive_plane_start_index.txt.json | 2 +- Test/CZICheckSamples/positive_plane_start_index.txt.xml | 2 +- Test/CZICheckSamples/sparse_planes.txt.json | 2 +- Test/CZICheckSamples/sparse_planes.txt.xml | 2 +- 30 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json index 74ea8fd..8a50d76 100644 --- a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json +++ b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml index 8786fd8..f469313 100644 --- a/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml +++ b/Test/CZICheckSamples/differentpixeltypeinchannel.txt.xml @@ -99,6 +99,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/duplicate_coordinates.txt.json b/Test/CZICheckSamples/duplicate_coordinates.txt.json index f49dff0..402b1e7 100644 --- a/Test/CZICheckSamples/duplicate_coordinates.txt.json +++ b/Test/CZICheckSamples/duplicate_coordinates.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/duplicate_coordinates.txt.xml b/Test/CZICheckSamples/duplicate_coordinates.txt.xml index 75987a3..fdda618 100644 --- a/Test/CZICheckSamples/duplicate_coordinates.txt.xml +++ b/Test/CZICheckSamples/duplicate_coordinates.txt.xml @@ -99,6 +99,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/edf-missing-texture.txt.json b/Test/CZICheckSamples/edf-missing-texture.txt.json index 2205402..2efe61d 100644 --- a/Test/CZICheckSamples/edf-missing-texture.txt.json +++ b/Test/CZICheckSamples/edf-missing-texture.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-missing-texture.txt.xml b/Test/CZICheckSamples/edf-missing-texture.txt.xml index 5fefa33..236bfe6 100644 --- a/Test/CZICheckSamples/edf-missing-texture.txt.xml +++ b/Test/CZICheckSamples/edf-missing-texture.txt.xml @@ -92,6 +92,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json index 4c3913c..7979331 100644 --- a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json +++ b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.json @@ -126,6 +126,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml index fbe5ba8..60477d7 100644 --- a/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml +++ b/Test/CZICheckSamples/edf-superfluous-missing-channel-subblock.txt.xml @@ -113,6 +113,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/edf-superfluous.txt.json b/Test/CZICheckSamples/edf-superfluous.txt.json index b855e12..8ec892a 100644 --- a/Test/CZICheckSamples/edf-superfluous.txt.json +++ b/Test/CZICheckSamples/edf-superfluous.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/edf-superfluous.txt.xml b/Test/CZICheckSamples/edf-superfluous.txt.xml index 7c3095b..ad38504 100644 --- a/Test/CZICheckSamples/edf-superfluous.txt.xml +++ b/Test/CZICheckSamples/edf-superfluous.txt.xml @@ -92,6 +92,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/inconsistent_coordinates.txt.json b/Test/CZICheckSamples/inconsistent_coordinates.txt.json index 3f0c9a9..5f61086 100644 --- a/Test/CZICheckSamples/inconsistent_coordinates.txt.json +++ b/Test/CZICheckSamples/inconsistent_coordinates.txt.json @@ -112,6 +112,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/inconsistent_coordinates.txt.xml b/Test/CZICheckSamples/inconsistent_coordinates.txt.xml index a5df585..1ca061b 100644 --- a/Test/CZICheckSamples/inconsistent_coordinates.txt.xml +++ b/Test/CZICheckSamples/inconsistent_coordinates.txt.xml @@ -99,6 +99,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/invalid_componentbitcount.txt.json b/Test/CZICheckSamples/invalid_componentbitcount.txt.json index e3caf81..90e958a 100644 --- a/Test/CZICheckSamples/invalid_componentbitcount.txt.json +++ b/Test/CZICheckSamples/invalid_componentbitcount.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/invalid_componentbitcount.txt.xml b/Test/CZICheckSamples/invalid_componentbitcount.txt.xml index 55481ba..a8f83b5 100644 --- a/Test/CZICheckSamples/invalid_componentbitcount.txt.xml +++ b/Test/CZICheckSamples/invalid_componentbitcount.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json index 3b6c4f9..66027c4 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml index 6732271..e3b5814 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_pixeltype.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json index 3b6c4f9..66027c4 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.json @@ -94,6 +94,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml index 6732271..e3b5814 100644 --- a/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml +++ b/Test/CZICheckSamples/jpgxrcompressed_inconsistent_size.txt.xml @@ -81,6 +81,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json index 76613cc..3803c0c 100644 --- a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json +++ b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.json @@ -100,6 +100,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml index 5ec6f00..ea15682 100644 --- a/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml +++ b/Test/CZICheckSamples/layer_0_subblocks_with_no_m_index.txt.xml @@ -87,6 +87,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/negative_plane_start_index.txt.json b/Test/CZICheckSamples/negative_plane_start_index.txt.json index e211eb8..7cfff63 100644 --- a/Test/CZICheckSamples/negative_plane_start_index.txt.json +++ b/Test/CZICheckSamples/negative_plane_start_index.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/negative_plane_start_index.txt.xml b/Test/CZICheckSamples/negative_plane_start_index.txt.xml index 66584fb..ee324a5 100644 --- a/Test/CZICheckSamples/negative_plane_start_index.txt.xml +++ b/Test/CZICheckSamples/negative_plane_start_index.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/overlapping_scenes.txt.json b/Test/CZICheckSamples/overlapping_scenes.txt.json index 73a1344..7e3f896 100644 --- a/Test/CZICheckSamples/overlapping_scenes.txt.json +++ b/Test/CZICheckSamples/overlapping_scenes.txt.json @@ -136,6 +136,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/overlapping_scenes.txt.xml b/Test/CZICheckSamples/overlapping_scenes.txt.xml index 3101890..219aa04 100644 --- a/Test/CZICheckSamples/overlapping_scenes.txt.xml +++ b/Test/CZICheckSamples/overlapping_scenes.txt.xml @@ -123,6 +123,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json index 3cd08b2..72ef0b8 100644 --- a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json +++ b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.json @@ -181,6 +181,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml index d7313b1..1d07722 100644 --- a/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml +++ b/Test/CZICheckSamples/pixeltype_mismatch_between_metadata_and_subblocks.txt.xml @@ -168,6 +168,6 @@ FAIL CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/positive_plane_start_index.txt.json b/Test/CZICheckSamples/positive_plane_start_index.txt.json index c6e97cd..a018613 100644 --- a/Test/CZICheckSamples/positive_plane_start_index.txt.json +++ b/Test/CZICheckSamples/positive_plane_start_index.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/positive_plane_start_index.txt.xml b/Test/CZICheckSamples/positive_plane_start_index.txt.xml index 35e04ad..684e945 100644 --- a/Test/CZICheckSamples/positive_plane_start_index.txt.xml +++ b/Test/CZICheckSamples/positive_plane_start_index.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.4 + 0.6.5 diff --git a/Test/CZICheckSamples/sparse_planes.txt.json b/Test/CZICheckSamples/sparse_planes.txt.json index 5cf88f0..f0040a9 100644 --- a/Test/CZICheckSamples/sparse_planes.txt.json +++ b/Test/CZICheckSamples/sparse_planes.txt.json @@ -105,6 +105,6 @@ ], "output_version": { "command": "CZICheck", - "version": "0.6.4" + "version": "0.6.5" } } \ No newline at end of file diff --git a/Test/CZICheckSamples/sparse_planes.txt.xml b/Test/CZICheckSamples/sparse_planes.txt.xml index 77b328c..3caed41 100644 --- a/Test/CZICheckSamples/sparse_planes.txt.xml +++ b/Test/CZICheckSamples/sparse_planes.txt.xml @@ -92,6 +92,6 @@ WARN CZICheck - 0.6.4 + 0.6.5