diff options
author | William A. Rowe Jr <wrowe@apache.org> | 2020-09-05 07:24:55 +0200 |
---|---|---|
committer | William A. Rowe Jr <wrowe@apache.org> | 2020-09-05 07:24:55 +0200 |
commit | 75faac20f22722a1639e84e051f273e89af9247d (patch) | |
tree | 7cb2ef345b06cf1b737f15d0d7d33c4f979edd11 /CMakeLists.txt | |
parent | Restore broken win32 build, include apr/std headers before httpd headers (diff) | |
download | apache2-75faac20f22722a1639e84e051f273e89af9247d.tar.xz apache2-75faac20f22722a1639e84e051f273e89af9247d.zip |
Support PCRE2 compile and linkage on Windows
- Embeds the HAVE_PCRE2 define as a compiler flag rather than try to work around
.h file substitutions, because the flag is only relevant to compiling the single
server/util_pcre.c file.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1881478 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 785c3d7fcc..2ee5e17517 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,7 +47,13 @@ ENDIF() # PCRE names its libraries differently for debug vs. release builds. # We can't query our own CMAKE_BUILD_TYPE at configure time. # If the debug version exists in PREFIX/lib, default to that one. -IF(EXISTS "${CMAKE_INSTALL_PREFIX}/lib/pcred.lib") +IF(EXISTS "${CMAKE_INSTALL_PREFIX}/lib/pcre2-8d.lib") + SET(default_pcre_libraries ${CMAKE_INSTALL_PREFIX}/lib/pcre2-8d.lib) + SET(default_pcre_cflags "-DHAVE_PCRE2") +ELSEIF(EXISTS "${CMAKE_INSTALL_PREFIX}/lib/pcre2-8.lib") + SET(default_pcre_libraries ${CMAKE_INSTALL_PREFIX}/lib/pcre2-8.lib) + SET(default_pcre_cflags "-DHAVE_PCRE2") +ELSEIF(EXISTS "${CMAKE_INSTALL_PREFIX}/lib/pcred.lib") SET(default_pcre_libraries ${CMAKE_INSTALL_PREFIX}/lib/pcred.lib) ELSE() SET(default_pcre_libraries ${CMAKE_INSTALL_PREFIX}/lib/pcre.lib) @@ -81,6 +87,7 @@ SET(APR_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE STRING "Direct SET(APR_LIBRARIES ${default_apr_libraries} CACHE STRING "APR libraries to link with") SET(NGHTTP2_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE STRING "Directory with NGHTTP2 include files within nghttp2 subdirectory") SET(NGHTTP2_LIBRARIES ${default_nghttp2_libraries} CACHE STRING "NGHTTP2 libraries to link with") +SET(PCRE_CFLAGS "${default_pcre_cflags}" CACHE STRING "PCRE flags for util_pcre.c compilation") SET(PCRE_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE STRING "Directory with PCRE include files") SET(PCRE_LIBRARIES ${default_pcre_libraries} CACHE STRING "PCRE libraries to link with") SET(LIBXML2_ICONV_INCLUDE_DIR "" CACHE STRING "Directory with iconv include files for libxml2") @@ -895,7 +902,7 @@ SET(install_targets ${install_targets} libhttpd) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:libhttpd>) TARGET_LINK_LIBRARIES(libhttpd ${EXTRA_LIBS} ${APR_LIBRARIES} ${PCRE_LIBRARIES} ${HTTPD_SYSTEM_LIBS}) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server Core") -SET_TARGET_PROPERTIES(libhttpd PROPERTIES COMPILE_FLAGS "-DAP_DECLARE_EXPORT -DAPREQ_DECLARE_EXPORT ${define_long_name} -DBIN_NAME=libhttpd.dll ${EXTRA_COMPILE_FLAGS}") +SET_TARGET_PROPERTIES(libhttpd PROPERTIES COMPILE_FLAGS "-DAP_DECLARE_EXPORT -DAPREQ_DECLARE_EXPORT ${define_long_name} ${PCRE_CFLAGS} -DBIN_NAME=libhttpd.dll ${EXTRA_COMPILE_FLAGS}") ADD_DEPENDENCIES(libhttpd test_char_header) ########### HTTPD EXECUTABLES ########## |