Author: brane
Date: Wed May 28 19:00:56 2025
New Revision: 1925911
URL: http://svn.apache.org/viewvc?rev=1925911&view=rev
Log:
Working on the CMake build.
* CMakeLists.txt: apr, apr-util, zlib and openssl are all required.
Add the major version to the pkg-config file, just like SConstruct does,
but install the file into lib/pkgconfig not share/pkgconfig -- the
latter doesn't seem to be a standard location for pkg-config files.
* build/FindAPR.cmake: On Windows, widen the search for APR headers.
Add APR_DECLARE_STATIC to the compile definitions for the static
library target.
* build/FindAPRUtil.cmake: Same, for apr-util.
Modified:
serf/trunk/CMakeLists.txt
serf/trunk/build/FindAPR.cmake
serf/trunk/build/FindAPRUtil.cmake
Modified: serf/trunk/CMakeLists.txt
URL:
http://svn.apache.org/viewvc/serf/trunk/CMakeLists.txt?rev=1925911&r1=1925910&r2=1925911&view=diff
==============================================================================
--- serf/trunk/CMakeLists.txt (original)
+++ serf/trunk/CMakeLists.txt Wed May 28 19:00:56 2025
@@ -226,10 +226,10 @@ else(SERF_WINDOWS)
endif(SERF_WINDOWS)
# Find dependencies
-find_package(OpenSSL)
-find_package(ZLIB)
-find_package(APR)
-find_package(APRUtil)
+find_package(OpenSSL REQUIRED)
+find_package(ZLIB REQUIRED)
+find_package(APR REQUIRED)
+find_package(APRUtil REQUIRED)
# Calculate the set of private and public targets
set(SERF_PRIVATE_TARGETS OpenSSL::Crypto OpenSSL::SSL ZLIB::ZLIB)
@@ -401,12 +401,12 @@ if(NOT SERF_WINDOWS)
foreach(DEPLIB ${SERF_INTERFACE_LIBS})
string(APPEND LIBS " ${DEPLIB}")
endforeach()
- configure_file("build/serf.pc.in" "serf.pc" @ONLY)
+ configure_file("build/serf.pc.in" "serf-${SERF_MAJOR_VERSION}.pc" @ONLY)
endfunction()
make_pkgconfig()
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/serf.pc"
- DESTINATION "share/pkgconfig")
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/serf-${SERF_MAJOR_VERSION}.pc"
+ DESTINATION "lib/pkgconfig")
endif()
Modified: serf/trunk/build/FindAPR.cmake
URL:
http://svn.apache.org/viewvc/serf/trunk/build/FindAPR.cmake?rev=1925911&r1=1925910&r2=1925911&view=diff
==============================================================================
--- serf/trunk/build/FindAPR.cmake (original)
+++ serf/trunk/build/FindAPR.cmake Wed May 28 19:00:56 2025
@@ -182,10 +182,14 @@ if(NOT _apru_include_only_utilities)
include(CheckIncludeFile)
- set(APR_INCLUDES "${APR_ROOT}/include")
- if(NOT EXISTS "${APR_INCLUDES}/apr.h")
- message(FATAL_ERROR "apr.h was not found in ${APR_INCLUDES}")
+ find_path(APR_INCLUDES "apr.h"
+ PATHS "${APR_ROOT}/include"
+ PATH_SUFFIXES "apr-2" "apr-1"
+ NO_DEFAULT_PATH)
+ if(NOT APR_INCLUDES)
+ message(FATAL_ERROR "apr.h was not found in ${APR_ROOT}")
endif()
+
if(NOT EXISTS "${APR_INCLUDES}/apr_version.h")
message(FATAL_ERROR "apr_version.h was not found in ${APR_INCLUDES}")
endif()
@@ -250,6 +254,7 @@ if(NOT _apru_include_only_utilities)
_apru_extras(_apr_static _apr_extra ${APR_STATIC_LIBS})
add_library(APR::APR_static STATIC IMPORTED)
set_target_properties(APR::APR_static PROPERTIES
+ INTERFACE_COMPILE_DEFINITIONS "APR_DECLARE_STATIC"
INTERFACE_INCLUDE_DIRECTORIES "${APR_INCLUDES}"
IMPORTED_INTERFACE_LINK_LIBRARIES "${_apr_extra}"
IMPORTED_LOCATION "${_apr_static}")
Modified: serf/trunk/build/FindAPRUtil.cmake
URL:
http://svn.apache.org/viewvc/serf/trunk/build/FindAPRUtil.cmake?rev=1925911&r1=1925910&r2=1925911&view=diff
==============================================================================
--- serf/trunk/build/FindAPRUtil.cmake (original)
+++ serf/trunk/build/FindAPRUtil.cmake Wed May 28 19:00:56 2025
@@ -87,10 +87,14 @@ else(APR_CONTAINS_APRUTIL)
include(CheckIncludeFile)
- set(APRUTIL_INCLUDES "${APRUtil_ROOT}/include")
- if(NOT EXISTS "${APRUTIL_INCLUDES}/apu.h")
- message(FATAL_ERROR "apu.h was not found in ${APRUTIL_INCLUDES}")
+ find_path(APRUTIL_INCLUDES "apu.h"
+ PATHS "${APRUtil_ROOT}/include"
+ PATH_SUFFIXES "apr-1"
+ NO_DEFAULT_PATH)
+ if(NOT APRUTIL_INCLUDES)
+ message(FATAL_ERROR "apu.h was not found in ${APRUtil_ROOT}")
endif()
+
if(NOT EXISTS "${APRUTIL_INCLUDES}/apu_version.h")
message(FATAL_ERROR "apu_version.h was not found in ${APRUTIL_INCLUDES}")
endif()
@@ -175,6 +179,7 @@ else(APR_CONTAINS_APRUTIL)
endif()
add_library(APR::APRUTIL_static STATIC IMPORTED)
set_target_properties(APR::APRUTIL_static PROPERTIES
+ INTERFACE_COMPILE_DEFINITIONS "APU_DECLARE_STATIC"
INTERFACE_INCLUDE_DIRECTORIES "${APRUTIL_INCLUDES}"
IMPORTED_LOCATION "${_apu_static}")
target_link_libraries(APR::APRUTIL_static