Author: brane
Date: Thu Jun 5 06:14:39 2025
New Revision: 1926147
URL: http://svn.apache.org/viewvc?rev=1926147&view=rev
Log:
On the user-defined-authn branch: Sync with trunk r1926146.
Added:
serf/branches/user-defined-authn/build/SerfElfGenMap.cmake
- copied unchanged from r1926146, serf/trunk/build/SerfElfGenMap.cmake
serf/branches/user-defined-authn/build/SerfFindExports.cmake
- copied unchanged from r1926146, serf/trunk/build/SerfFindExports.cmake
serf/branches/user-defined-authn/build/SerfMachGenExp.cmake
- copied unchanged from r1926146, serf/trunk/build/SerfMachGenExp.cmake
Removed:
serf/branches/user-defined-authn/build/SerfWindowsToolkit.cmake
Modified:
serf/branches/user-defined-authn/ (props changed)
serf/branches/user-defined-authn/CMakeLists.txt
serf/branches/user-defined-authn/build/FindBrotli.cmake (props changed)
serf/branches/user-defined-authn/build/FindGSSAPI.cmake (props changed)
serf/branches/user-defined-authn/build/SerfGenClangd.cmake (props changed)
serf/branches/user-defined-authn/build/SerfMacOS.cmake (props changed)
serf/branches/user-defined-authn/build/SerfPlatform.cmake
serf/branches/user-defined-authn/build/SerfWindowsGenDef.cmake
serf/branches/user-defined-authn/build/gen_def.py
Propchange: serf/branches/user-defined-authn/
------------------------------------------------------------------------------
Merged /serf/trunk:r1926137-1926146
Modified: serf/branches/user-defined-authn/CMakeLists.txt
URL:
http://svn.apache.org/viewvc/serf/branches/user-defined-authn/CMakeLists.txt?rev=1926147&r1=1926146&r2=1926147&view=diff
==============================================================================
--- serf/branches/user-defined-authn/CMakeLists.txt (original)
+++ serf/branches/user-defined-authn/CMakeLists.txt Thu Jun 5 06:14:39 2025
@@ -92,7 +92,6 @@ endif()
include(GNUInstallDirs)
include(SerfPlatform)
-include(SerfWindowsToolkit)
# On the Mac: Use dependencies from Homebrew or MacPorts
if(USE_HOMEBREW OR USE_MACPORTS)
@@ -133,6 +132,7 @@ list(APPEND EXPORTS_BLACKLIST
"serf_http_protocol_create"
"serf_https_protocol_create"
"serf_http_request_queue"
+ "serf_authn_unregister_scheme"
)
# Serf library source files
@@ -189,15 +189,15 @@ list(APPEND SOURCES
if(SERF_WINDOWS)
# Generate the .def file for the Windows DLL import library.
- set(SERF_DEF_FILE "${CMAKE_CURRENT_BINARY_DIR}/serf.def")
+ set(SERF_DEF_FILE
"${CMAKE_CURRENT_BINARY_DIR}/libserf-${SERF_MAJOR_VERSION}.def")
add_custom_command(
OUTPUT "${SERF_DEF_FILE}"
DEPENDS ${HEADERS}
COMMAND ${CMAKE_COMMAND}
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}"
-DCMAKE_MODULE_PATH="${CMAKE_MODULE_PATH}"
- -DSERF_DEF_BLACKLIST="${EXPORTS_BLACKLIST}"
- -DSERF_DEF_HEADERS="${HEADERS}"
+ -DSERF_EXPORT_BLACKLIST="${EXPORTS_BLACKLIST}"
+ -DSERF_EXPORT_HEADERS="${HEADERS}"
-DSERF_DEF_FILE="${SERF_DEF_FILE}"
-P "build/SerfWindowsGenDef.cmake"
WORKING_DIRECTORY "${SERF_SOURCE_DIR}"
@@ -217,6 +217,40 @@ if(SERF_WINDOWS)
add_compile_definitions("SERF_HAVE_SSPI")
endif(SERF_WINDOWS)
+if(SERF_DARWIN)
+ set(SERF_EXP_FILE
"${CMAKE_CURRENT_BINARY_DIR}/libserf-${SERF_MAJOR_VERSION}.exp")
+ add_custom_command(
+ OUTPUT "${SERF_EXP_FILE}"
+ DEPENDS ${HEADERS}
+ COMMAND ${CMAKE_COMMAND}
+ -DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}"
+ -DCMAKE_MODULE_PATH="${CMAKE_MODULE_PATH}"
+ -DSERF_EXPORT_BLACKLIST="${EXPORTS_BLACKLIST}"
+ -DSERF_EXPORT_HEADERS="${HEADERS}"
+ -DSERF_EXP_FILE="${SERF_EXP_FILE}"
+ -P "build/SerfMachGenExp.cmake"
+ WORKING_DIRECTORY "${SERF_SOURCE_DIR}"
+ )
+ set(SHARED_SOURCES "${SERF_EXP_FILE}")
+endif(SERF_DARWIN)
+
+if(SERF_ELF_TARGET)
+ set(SERF_MAP_FILE
"${CMAKE_CURRENT_BINARY_DIR}/libserf-${SERF_MAJOR_VERSION}.map")
+ add_custom_command(
+ OUTPUT "${SERF_MAP_FILE}"
+ DEPENDS ${HEADERS}
+ COMMAND ${CMAKE_COMMAND}
+ -DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}"
+ -DCMAKE_MODULE_PATH="${CMAKE_MODULE_PATH}"
+ -DSERF_EXPORT_BLACKLIST="${EXPORTS_BLACKLIST}"
+ -DSERF_EXPORT_HEADERS="${HEADERS}"
+ -DSERF_MAP_FILE="${SERF_MAP_FILE}"
+ -P "build/SerfElfGenMap.cmake"
+ WORKING_DIRECTORY "${SERF_SOURCE_DIR}"
+ )
+ set(SHARED_SOURCES "${SERF_MAP_FILE}")
+endif(SERF_ELF_TARGET)
+
# Process build options for dependency search
if(SERF_WINDOWS)
if(EXPAT)
@@ -380,6 +414,14 @@ if(NOT SKIP_SHARED)
set_target_properties(serf_shared PROPERTIES
INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${SERF_INSTALL_LIBRARIES}")
endif()
+ if(SERF_DARWIN)
+ set_target_properties(serf_shared PROPERTIES
+ LINK_FLAGS "-Wl,-exported_symbols_list,${SERF_EXP_FILE}")
+ endif()
+ if(SERF_ELF_TARGET)
+ set_target_properties(serf_shared PROPERTIES
+ LINK_FLAGS "-Wl,--version-script,${SERF_MAP_FILE}")
+ endif()
set(SERF_TARGETS "serf_shared")
if(SERF_WINDOWS)
Propchange: serf/branches/user-defined-authn/build/FindBrotli.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: serf/branches/user-defined-authn/build/FindGSSAPI.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: serf/branches/user-defined-authn/build/SerfGenClangd.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: serf/branches/user-defined-authn/build/SerfMacOS.cmake
------------------------------------------------------------------------------
svn:eol-style = native
Modified: serf/branches/user-defined-authn/build/SerfPlatform.cmake
URL:
http://svn.apache.org/viewvc/serf/branches/user-defined-authn/build/SerfPlatform.cmake?rev=1926147&r1=1926146&r2=1926147&view=diff
==============================================================================
--- serf/branches/user-defined-authn/build/SerfPlatform.cmake (original)
+++ serf/branches/user-defined-authn/build/SerfPlatform.cmake Thu Jun 5
06:14:39 2025
@@ -29,6 +29,7 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin
endif()
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(SERF_LINUX TRUE)
+ set(SERF_ELF_TARGET TRUE)
set(SERF_PLATFORM "Linux")
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
set(SERF_WINDOWS TRUE)
Modified: serf/branches/user-defined-authn/build/SerfWindowsGenDef.cmake
URL:
http://svn.apache.org/viewvc/serf/branches/user-defined-authn/build/SerfWindowsGenDef.cmake?rev=1926147&r1=1926146&r2=1926147&view=diff
==============================================================================
--- serf/branches/user-defined-authn/build/SerfWindowsGenDef.cmake (original)
+++ serf/branches/user-defined-authn/build/SerfWindowsGenDef.cmake Thu Jun 5
06:14:39 2025
@@ -19,8 +19,13 @@
# Generate Serf's .def file for Windows DLLs.
-include(SerfWindowsToolkit)
+include(SerfFindExports)
-string(REGEX REPLACE " +" ";" SERF_DEF_BLACKLIST "${SERF_DEF_BLACKLIST}")
-string(REGEX REPLACE " +" ";" SERF_DEF_HEADERS "${SERF_DEF_HEADERS}")
-SerfWindowsGenDef("${SERF_DEF_BLACKLIST}" "${SERF_DEF_FILE}"
${SERF_DEF_HEADERS})
+separate_arguments(SERF_EXPORT_BLACKLIST)
+separate_arguments(SERF_EXPORT_HEADERS)
+
+SerfFindExports("${SERF_EXPORT_BLACKLIST}" exports_ ${SERF_EXPORT_HEADERS})
+file(WRITE "${SERF_DEF_FILE}" "EXPORTS\n")
+foreach(symbol_ ${exports_})
+ file(APPEND "${SERF_DEF_FILE}" "${symbol_}\n")
+endforeach()
Modified: serf/branches/user-defined-authn/build/gen_def.py
URL:
http://svn.apache.org/viewvc/serf/branches/user-defined-authn/build/gen_def.py?rev=1926147&r1=1926146&r2=1926147&view=diff
==============================================================================
--- serf/branches/user-defined-authn/build/gen_def.py (original)
+++ serf/branches/user-defined-authn/build/gen_def.py Thu Jun 5 06:14:39 2025
@@ -10,9 +10,9 @@
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
-#
+#
# http://www.apache.org/licenses/LICENSE-2.0
-#
+#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -66,6 +66,7 @@ BLACKLIST = set(['serf_connection_switch
'serf_http_protocol_create',
'serf_https_protocol_create',
'serf_http_request_queue',
+ "serf_authn_unregister_scheme",
])