Commit e62a3dd for zlib
commit e62a3ddbe333ec5c65fa048d32abef947d1c74ed
Author: Vollstrecker <werner@vollstreckernet.de>
Date: Sun Jan 4 11:37:00 2026 +0100
CMake: Make final fixes for Windows.
diff --git a/contrib/blast/CMakeLists.txt b/contrib/blast/CMakeLists.txt
index 6f3ba38..9b20fda 100644
--- a/contrib/blast/CMakeLists.txt
+++ b/contrib/blast/CMakeLists.txt
@@ -18,6 +18,7 @@ include(CMakePackageConfigHelpers)
if(WIN32 OR CYGWIN)
set(zlibblast_static_suffix "s")
set(CMAKE_DEBUG_POSTFIX "d")
+ set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
endif(WIN32 OR CYGWIN)
function(blast_findTestEnv testName)
@@ -29,7 +30,7 @@ function(blast_findTestEnv testName)
set(separator ":")
endif()
- string(APPEND testEnv "$<TARGET_FILE_DIR:ZLIB::ZLIB>${separator}")
+ string(APPEND testEnv "$<TARGET_FILE_DIR:BLAST::BLAST>${separator}")
string(APPEND testEnv "$ENV{PATH}")
set_tests_properties(${testName} PROPERTIES ENVIRONMENT "${testEnv}")
@@ -114,7 +115,8 @@ if(ZLIB_BLAST_INSTALL)
TARGETS zlib_blast_blast
COMPONENT Runtime
EXPORT zlibBlastSharedExport
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
install(
EXPORT zlibBlastSharedExport
FILE blast-shared.cmake
diff --git a/contrib/blast/test/CMakeLists.txt b/contrib/blast/test/CMakeLists.txt
index d319b82..3940c1c 100644
--- a/contrib/blast/test/CMakeLists.txt
+++ b/contrib/blast/test/CMakeLists.txt
@@ -1,8 +1,8 @@
# if we are built from with zlib, use this path's)
-if(DEFINED ZLIB_BUILD_SHARED)
+if(DEFINED ZLIB_BUILD_BLAST)
set(WORK_DIR ${zlib_BINARY_DIR})
- set(inst_setup zlib_blast_install)
-else(DEFINED ZLIB_BUILD_SHARED)
+ set(inst_setup zlib_install)
+else(DEFINED ZLIB_BUILD_BLAST)
set(WORK_DIR ${blast_BINARY_DIR})
set(inst_setup zlib_blast_install)
set(ZLIB_ARG "-DZLIB_DIR=${ZLIB_DIR}")
@@ -16,7 +16,7 @@ else(DEFINED ZLIB_BUILD_SHARED)
set_tests_properties(zlib_blast_install
PROPERTIES
FIXTURES_SETUP zlib_blast_install)
-endif(DEFINED ZLIB_BUILD_SHARED)
+endif(DEFINED ZLIB_BUILD_BLAST)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test)
diff --git a/contrib/gcc_gvmat64/CMakeLists.txt b/contrib/gcc_gvmat64/CMakeLists.txt
index 67a6a83..53dd5a1 100644
--- a/contrib/gcc_gvmat64/CMakeLists.txt
+++ b/contrib/gcc_gvmat64/CMakeLists.txt
@@ -5,10 +5,10 @@ enable_language(ASM)
set(CMAKE_ASM_COMPILE_OBJECT ${CMAKE_ASM_COMPILE_OBJECT} CACHE INTERNAL "" FORCE)
-if(WIN32)
+if(MSVC)
#cmake 4.1 doesn't consider cl an asm compiler
cmake_policy(SET CMP0194 NEW)
-endif(WIN32)
+endif(MSVC)
if(ZLIB_BUILD_SHARED)
target_sources(zlib PRIVATE gvmat64.S)
diff --git a/contrib/iostream3/CMakeLists.txt b/contrib/iostream3/CMakeLists.txt
index 33e5b71..e2ac480 100644
--- a/contrib/iostream3/CMakeLists.txt
+++ b/contrib/iostream3/CMakeLists.txt
@@ -32,6 +32,23 @@ if(WIN32 OR CYGWIN)
set(CMAKE_DEBUG_POSTFIX "d")
endif(WIN32 OR CYGWIN)
+
+function(iostreamv3_findTestEnv testName)
+ set(testEnv "PATH=")
+
+ if(MSVC OR MINGW)
+ set(separator "\\\;")
+ else()
+ set(separator ":")
+ endif()
+
+ string(APPEND testEnv "$<TARGET_FILE_DIR:zlib_iostream3_iostreamv3>${separator}")
+ string(APPEND testEnv "$<TARGET_FILE_DIR:ZLIB::ZLIB>${separator}")
+ string(APPEND testEnv "$ENV{PATH}")
+
+ set_tests_properties(${testName} PROPERTIES ENVIRONMENT "${testEnv}")
+endfunction(iostreamv3_findTestEnv testName)
+
if(ZLIB_IOSTREAM3_BUILD_SHARED)
add_library(zlib_iostream3_iostreamv3 SHARED
zfstream.cc
@@ -46,11 +63,10 @@ if(ZLIB_IOSTREAM3_BUILD_SHARED)
VERSION ${iostreamV3_VERSION})
endif(NOT CYGWIN)
- set_target_properties(
- zlib_iostream3_iostreamv3
- PROPERTIES
- EXPORT_NAME IOSTREAMV3
- OUTPUT_NAME iostream3)
+ set_target_properties(zlib_iostream3_iostreamv3
+ PROPERTIES
+ EXPORT_NAME IOSTREAMV3
+ OUTPUT_NAME iostream3)
target_link_libraries(zlib_iostream3_iostreamv3
PUBLIC ZLIB::ZLIB)
@@ -61,13 +77,24 @@ if(ZLIB_IOSTREAM3_BUILD_SHARED)
add_executable(zlib_iostream3_test test.cc zfstream.h)
target_link_libraries(zlib_iostream3_test
- PRIVATE zlib_iostream3_iostream3)
+ PRIVATE zlib_iostream3_iostreamv3)
add_test(NAME zlib_iostream3_test COMMAND zlib_iostream3_test)
set_tests_properties(zlib_iostream3_test
PROPERTIES
FIXTURES_REQUIRED zlib_iostream3_cleanup)
+
+ if(MSVC
+ OR MSYS
+ OR MINGW
+ OR CYGWIN)
+ iostreamv3_findtestenv(zlib_iostream3_test)
+ endif(
+ MSVC
+ OR MSYS
+ OR MINGW
+ OR CYGWIN)
endif(ZLIB_IOSTREAM3_BUILD_TESTING)
endif(ZLIB_IOSTREAM3_BUILD_SHARED)
@@ -80,7 +107,7 @@ if(ZLIB_IOSTREAM3_BUILD_STATIC)
ALIAS zlib_iostream3_iostreamv3Static)
target_link_libraries(zlib_iostream3_iostreamv3Static
- INTERFACE ZLIB::ZLIBSTATIC)
+ PUBLIC ZLIB::ZLIBSTATIC)
set_target_properties(zlib_iostream3_iostreamv3Static
PROPERTIES
@@ -93,7 +120,8 @@ if(ZLIB_IOSTREAM3_BUILD_STATIC)
add_executable(zlib_iostream3_testStatic test.cc zfstream.h)
target_link_libraries(zlib_iostream3_testStatic
- PRIVATE zlib_iostream3_iostream3Static)
+ PRIVATE zlib_iostream3_iostreamv3Static)
+
add_test(NAME zlib_iostream3_testStatic
COMMAND zlib_iostream3_testStatic)
@@ -121,7 +149,8 @@ if(ZLIB_IOSTREAM3_INSTALL)
TARGETS zlib_iostream3_iostreamv3
COMPONENT Runtime
EXPORT zlibiostream3SharedExport
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
install(
EXPORT zlibiostream3SharedExport
FILE iostreamv3-shared.cmake
@@ -130,7 +159,7 @@ if(ZLIB_IOSTREAM3_INSTALL)
if(MSVC)
install(
- FILES $<TARGET_PDB_FILE:zlib_iostream3_iostream3>
+ FILES $<TARGET_PDB_FILE:zlib_iostream3_iostreamv3>
COMPONENT Development
DESTINATION ${CMAKE_INSTALL_BINDIR}
CONFIGURATIONS Debug OR RelWithDebInfo
diff --git a/contrib/iostream3/test/CMakeLists.txt b/contrib/iostream3/test/CMakeLists.txt
index f8b2b51..44e7d60 100644
--- a/contrib/iostream3/test/CMakeLists.txt
+++ b/contrib/iostream3/test/CMakeLists.txt
@@ -1,8 +1,8 @@
# if we are built from with zlib, use this path's)
-if(DEFINED ZLIB_BUILD_SHARED)
+if(DEFINED ZLIB_BUILD_IOSTREAM3)
set(WORK_DIR ${zlib_BINARY_DIR})
- set(inst_setup zlib_iostream3_install)
-else(DEFINED ZLIB_BUILD_SHARED)
+ set(inst_setup zlib_install)
+else(DEFINED ZLIB_BUILD_IOSTREAM3)
set(WORK_DIR ${iostreamV3_BINARY_DIR})
set(inst_setup zlib_iostream3_install)
set(ZLIB_ARG "-DZLIB_DIR=${ZLIB_DIR}")
@@ -16,7 +16,7 @@ else(DEFINED ZLIB_BUILD_SHARED)
set_tests_properties(zlib_iostream3_install
PROPERTIES
FIXTURES_SETUP zlib_iostream3_install)
-endif(DEFINED ZLIB_BUILD_SHARED)
+endif(DEFINED ZLIB_BUILD_IOSTREAM3)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test)
diff --git a/contrib/minizip/test/CMakeLists.txt b/contrib/minizip/test/CMakeLists.txt
index 2f86ee3..fc64b9e 100644
--- a/contrib/minizip/test/CMakeLists.txt
+++ b/contrib/minizip/test/CMakeLists.txt
@@ -1,10 +1,10 @@
# if we are built from with zlib, use this path's)
-if(DEFINED ZLIB_BUILD_SHARED)
+if(DEFINED ZLIB_BUILD_MINIZIP)
set(WORK_DIR ${zlib_BINARY_DIR})
- set(inst_setup minizip_minizip_install)
-else(DEFINED ZLIB_BUILD_SHARED)
+ set(inst_setup zlib_install)
+else(DEFINED ZLIB_BUILD_MINIZIP)
set(WORK_DIR ${minizip_BINARY_DIR})
- set(inst_setup minizip_minizip_install)
+ set(inst_setup minizip_install)
set(ZLIB_ARG "-DZLIB_DIR=${ZLIB_DIR}")
add_test(
@@ -13,9 +13,10 @@ else(DEFINED ZLIB_BUILD_SHARED)
${CMAKE_CURRENT_BINARY_DIR}/test_install --config $<CONFIG>
WORKING_DIRECTORY ${minizip_BINARY_DIR})
- set_tests_properties(minizip_install PROPERTIES FIXTURES_SETUP
- minizip_install)
-endif(DEFINED ZLIB_BUILD_SHARED)
+ set_tests_properties(minizip_install
+ PROPERTIES
+ FIXTURES_SETUP minizip_install)
+endif(DEFINED ZLIB_BUILD_MINIZIP)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test)
diff --git a/contrib/puff/CMakeLists.txt b/contrib/puff/CMakeLists.txt
index 72a4c6d..2f902c0 100644
--- a/contrib/puff/CMakeLists.txt
+++ b/contrib/puff/CMakeLists.txt
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12...3.31)
project(
puff
- VERSION 1.0.0
+ VERSION 2.3.0
LANGUAGES C
DESCRIPTION "A library for decompressing deflate with very little footprint"
HOMEPAGE_URL "https://www.zlib.net")
@@ -83,7 +83,7 @@ if(ZLIB_PUFF_BUILD_SHARED)
EXPORT_NAME PUFF
OUTPUT_NAME puff)
- if(ZLIB_PUFF_BUILD_TESTING)
+ if(ZLIB_PUFF_BUILD_TESTING AND NOT WIN32)
enable_testing()
add_executable(zlib_puff_test pufftest.c puff.h)
@@ -113,7 +113,7 @@ if(ZLIB_PUFF_BUILD_SHARED)
${GCOV_EXECUTABLE}
${llvm_option})
endif(GCOV_EXECUTABLE)
- endif(ZLIB_PUFF_BUILD_TESTING)
+ endif(ZLIB_PUFF_BUILD_TESTING AND NOT WIN32)
endif(ZLIB_PUFF_BUILD_SHARED)
if(ZLIB_PUFF_BUILD_STATIC)
@@ -128,7 +128,7 @@ if(ZLIB_PUFF_BUILD_STATIC)
EXPORT_NAME PUFFSTATIC
OUTPUT_NAME puff${zlib_puff_static_suffix})
- if(ZLIB_PUFF_BUILD_TESTING)
+ if(ZLIB_PUFF_BUILD_TESTING AND NOT WIN32)
enable_testing()
add_executable(zlib_puff_testStatic pufftest.c puff.h)
@@ -159,7 +159,7 @@ if(ZLIB_PUFF_BUILD_STATIC)
${GCOV_EXECUTABLE}
${llvm_option})
endif(GCOV_EXECUTABLE)
- endif(ZLIB_PUFF_BUILD_TESTING)
+ endif(ZLIB_PUFF_BUILD_TESTING AND NOT WIN32)
endif(ZLIB_PUFF_BUILD_STATIC)
if(ZLIB_PUFF_INSTALL)
@@ -168,7 +168,8 @@ if(ZLIB_PUFF_INSTALL)
TARGETS zlib_puff_puff
COMPONENT Runtime
EXPORT puffSharedExport
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
install(
EXPORT puffSharedExport
FILE puff-shared.cmake
diff --git a/contrib/puff/test/CMakeLists.txt b/contrib/puff/test/CMakeLists.txt
index 1ed39de..2548d57 100644
--- a/contrib/puff/test/CMakeLists.txt
+++ b/contrib/puff/test/CMakeLists.txt
@@ -1,8 +1,8 @@
# if we are built from with zlib, use this path's)
-if(DEFINED ZLIB_BUILD_SHARED)
+if(DEFINED ZLIB_BUILD_PUFF)
set(WORK_DIR ${zlib_BINARY_DIR})
- set(inst_setup zlib_puff_install)
-else(DEFINED ZLIB_BUILD_SHARED)
+ set(inst_setup zlib_install)
+else(DEFINED ZLIB_BUILD_PUFF)
set(WORK_DIR ${puff_BINARY_DIR})
set(inst_setup zlib_puff_install)
set(ZLIB_ARG "-DZLIB_DIR=${ZLIB_DIR}")
@@ -16,7 +16,7 @@ else(DEFINED ZLIB_BUILD_SHARED)
set_tests_properties(zlib_puff_install
PROPERTIES
FIXTURES_SETUP zlib_puff_install)
-endif(DEFINED ZLIB_BUILD_SHARED)
+endif(DEFINED ZLIB_BUILD_PUFF)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test)
diff --git a/contrib/puff/tester.cmake b/contrib/puff/tester.cmake
index d29dc5c..be3b81f 100644
--- a/contrib/puff/tester.cmake
+++ b/contrib/puff/tester.cmake
@@ -8,7 +8,8 @@ cmake_minimum_required(VERSION 3.12...3.31)
execute_process(COMMAND ${CMAKE_ARGV3}
INPUT_FILE "${CMAKE_ARGV4}/zeros.raw"
- RESULT_VARIABLE RESULT)
+ RESULT_VARIABLE RESULT
+ COMMAND_ECHO STDERR)
if(RESULT)
message(FATAL_ERROR "Command exitited with: ${RESULT}")