@@ -486,16 +486,6 @@ if(NOT HAVE_PTRDIFF_T)
486
486
endif ()
487
487
endif ()
488
488
489
- # Macro to check if source compiles
490
- # (and, when compiling very natively, also runs).
491
- macro (check_c_source_compile_or_run source flag)
492
- if (CMAKE_CROSSCOMPILING OR NOT WITH_NATIVE_INSTRUCTIONS)
493
- check_c_source_compiles("${source} " ${flag} )
494
- else ()
495
- check_c_source_runs("${source} " ${flag} )
496
- endif ()
497
- endmacro ()
498
-
499
489
add_compile_options ($<$<CONFIG:Debug>:-DZLIB_DEBUG>)
500
490
501
491
if (MSVC )
@@ -736,7 +726,7 @@ if(WITH_OPTIM)
736
726
list (APPEND ZLIB_ARCH_SRCS ${ARCHDIR} /riscv_features.c)
737
727
# FIXME: we will not set compile flags for riscv_features.c when
738
728
# the kernels update hwcap or hwprobe for riscv
739
- set (RVV_SRCS ${ARCHDIR} /riscv_features.c ${ARCHDIR} /compare256_rvv.c ${ARCHDIR} /slide_hash_rvv.c)
729
+ set (RVV_SRCS ${ARCHDIR} /riscv_features.c ${ARCHDIR} /adler32_rvv.c ${ARCHDIR} / compare256_rvv.c ${ARCHDIR} /slide_hash_rvv.c)
740
730
list (APPEND ZLIB_ARCH_SRCS ${RVV_SRCS} )
741
731
set_property (SOURCE ${RVV_SRCS} PROPERTY COMPILE_FLAGS "${RISCVFLAG} ${NOLTOFLAG} " )
742
732
else ()
@@ -827,15 +817,12 @@ if(WITH_OPTIM)
827
817
endif ()
828
818
if (WITH_SSE42)
829
819
check_sse42_intrinsics()
830
- if (HAVE_SSE42CRC_INLINE_ASM OR HAVE_SSE42CRC_INTRIN )
820
+ if (HAVE_SSE42_INTRIN )
831
821
add_definitions (-DX86_SSE42)
832
822
set (SSE42_SRCS ${ARCHDIR} /adler32_sse42.c ${ARCHDIR} /insert_string_sse42.c)
833
823
add_feature_info(SSE42_CRC 1 "Support SSE4.2 optimized CRC hash generation, using \" ${SSE42FLAG} \" " )
834
824
list (APPEND ZLIB_ARCH_SRCS ${SSE42_SRCS} )
835
825
set_property (SOURCE ${SSE42_SRCS} PROPERTY COMPILE_FLAGS "${SSE42FLAG} ${NOLTOFLAG} " )
836
- if (HAVE_SSE42CRC_INTRIN)
837
- add_definitions (-DX86_SSE42_CRC_INTRIN)
838
- endif ()
839
826
else ()
840
827
set (WITH_SSE42 OFF )
841
828
endif ()
@@ -951,35 +938,18 @@ if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR)
951
938
endif ()
952
939
endif ()
953
940
954
- # Refer to prefix symbolically to ease relocation by end user,
955
- # as Makefile-generated .pc file does.
956
- string (FIND "${CMAKE_INSTALL_INCLUDEDIR} " "${CMAKE_INSTALL_PREFIX} /" INCLUDEDIR_POS)
957
- string (FIND "${CMAKE_INSTALL_LIBDIR} " "${CMAKE_INSTALL_PREFIX} /" LIBDIR_POS)
958
- string (LENGTH "${CMAKE_INSTALL_PREFIX} /" INSTALL_PREFIX_LEN)
959
-
960
- if (NOT IS_ABSOLUTE "${CMAKE_INSTALL_INCLUDEDIR} " )
961
- set (PC_INC_INSTALL_DIR "\$ {prefix}/${CMAKE_INSTALL_INCLUDEDIR} " )
962
- elseif (INCLUDEDIR_POS EQUAL 0)
963
- string (SUBSTRING "${CMAKE_INSTALL_INCLUDEDIR} " "${INSTALL_PREFIX_LEN} " "-1" INCLUDEDIR_RELATIVE)
964
- set (PC_INC_INSTALL_DIR "\$ {prefix}/${INCLUDEDIR_RELATIVE} " )
941
+ # The user is allowed (but discouraged) to set absolute CMAKE_INSTALL_*DIR paths.
942
+ # If they do, we copy these non-relocatable paths into the pkg-config file.
943
+ if (IS_ABSOLUTE "${CMAKE_INSTALL_INCLUDEDIR} " )
944
+ set (PC_INC_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR} " )
965
945
else ()
966
- set (PC_INC_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR} " )
946
+ set (PC_INC_INSTALL_DIR "\$ {prefix}/ ${CMAKE_INSTALL_INCLUDEDIR} " )
967
947
endif ()
968
948
969
- if (APPLE )
970
- option (WITH_RPATH "Enable RPATH for shared library" OFF )
971
- endif ()
972
- if (NOT IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR} " )
973
- if (APPLE AND WITH_RPATH)
949
+ if (IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR} " )
974
950
set (PC_LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR} " )
975
- else ()
976
- set (PC_LIB_INSTALL_DIR "\$ {exec_prefix}/${CMAKE_INSTALL_LIBDIR} " )
977
- endif ()
978
- elseif (LIBDIR_POS EQUAL 0)
979
- string (SUBSTRING "${CMAKE_INSTALL_LIBDIR} " "${INSTALL_PREFIX_LEN} " "-1" LIBDIR_RELATIVE)
980
- set (PC_LIB_INSTALL_DIR "\$ {exec_prefix}/${LIBDIR_RELATIVE} " )
981
951
else ()
982
- set (PC_LIB_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR} " )
952
+ set (PC_LIB_INSTALL_DIR "\$ {exec_prefix}/ ${CMAKE_INSTALL_LIBDIR} " )
983
953
endif ()
984
954
985
955
#============================================================================
@@ -1140,13 +1110,11 @@ if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS)
1140
1110
set_target_properties (zlib PROPERTIES COMPILE_FLAGS "-fno-semantic-interposition" )
1141
1111
endif ()
1142
1112
if (NOT APPLE )
1113
+ if (NOT ZLIB_COMPAT)
1114
+ add_definitions (-DHAVE_SYMVER)
1115
+ endif ()
1143
1116
set_target_properties (zlib PROPERTIES LINK_FLAGS
1144
1117
"-Wl,--version-script,\" ${CMAKE_CURRENT_SOURCE_DIR} /zlib${SUFFIX} .map\" " )
1145
- elseif (IS_ABSOLUTE "${CMAKE_INSTALL_LIBDIR} " OR NOT WITH_RPATH)
1146
- # Match configure/make's behavior (i.e. don't use @rpath on mac when using absolute path).
1147
- set_target_properties (zlib PROPERTIES INSTALL_NAME_DIR "@rpath/${CMAKE_INSTALL_FULL_LIBDIR} " )
1148
- else ()
1149
- set_target_properties (zlib PROPERTIES INSTALL_NAME_DIR "@rpath/${CMAKE_INSTALL_LIBDIR} " )
1150
1118
endif ()
1151
1119
endif ()
1152
1120
if (MSYS)
@@ -1183,11 +1151,6 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/zlib${SUFFIX}.h.in
1183
1151
configure_file (${CMAKE_CURRENT_SOURCE_DIR} /gzread.c.in
1184
1152
${CMAKE_CURRENT_BINARY_DIR} /gzread.c @ONLY)
1185
1153
1186
- # Fix install directory after generating zlib.pc/zlib-ng.pc
1187
- if (NOT IS_ABSOLUTE CMAKE_INSTALL_LIBDIR AND WITH_RPATH)
1188
- set (CMAKE_INSTALL_LIBDIR "/${CMAKE_INSTALL_LIBDIR} " )
1189
- endif ()
1190
-
1191
1154
if (NOT ZLIB_SYMBOL_PREFIX STREQUAL "" )
1192
1155
add_feature_info(ZLIB_SYMBOL_PREFIX ON "Publicly exported symbols have a custom prefix" )
1193
1156
configure_file (${CMAKE_CURRENT_SOURCE_DIR} /zlib_name_mangling${SUFFIX} .h.in
@@ -1286,8 +1249,4 @@ endif()
1286
1249
1287
1250
add_feature_info(INSTALL_UTILS INSTALL_UTILS "Copy minigzip and minideflate during install" )
1288
1251
1289
- if (APPLE )
1290
- add_feature_info(WITH_RPATH WITH_RPATH "Enable RPATH for shared library" )
1291
- endif ()
1292
-
1293
1252
FEATURE_SUMMARY(WHAT ALL INCLUDE_QUIET_PACKAGES)
0 commit comments