You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by iv...@apache.org on 2024/09/02 18:18:39 UTC
svn commit: r1920408 - in /apr/apr-util/branches/1.7.x: CMakeLists.txt include/apu.hwc include/private/apu_config.hwc
Author: ivan
Date: Mon Sep 2 18:18:38 2024
New Revision: 1920408
URL: http://svn.apache.org/viewvc?rev=1920408&view=rev
Log:
CMake: Rework DSO configuration:
- Rename APU_DSO_MODULE_BUILD option to APU_DSO_BUILD to match Unix build
system.
- Make APU_HAVE_ODBC configurable via apu.hwc.
- Store APU_DSO_BUILD value in apu_config.h.
Modified:
apr/apr-util/branches/1.7.x/CMakeLists.txt
apr/apr-util/branches/1.7.x/include/apu.hwc
apr/apr-util/branches/1.7.x/include/private/apu_config.hwc
Modified: apr/apr-util/branches/1.7.x/CMakeLists.txt
URL: http://svn.apache.org/viewvc/apr/apr-util/branches/1.7.x/CMakeLists.txt?rev=1920408&r1=1920407&r2=1920408&view=diff
==============================================================================
--- apr/apr-util/branches/1.7.x/CMakeLists.txt (original)
+++ apr/apr-util/branches/1.7.x/CMakeLists.txt Mon Sep 2 18:18:38 2024
@@ -46,7 +46,7 @@ ENDIF()
OPTION(APU_BUILD_SHARED "Build shared libraries" ON)
OPTION(APU_BUILD_STATIC "Build static libraries" ON)
-OPTION(APU_DSO_MODULE_BUILD "Use DSO build of modular components" ON)
+OPTION(APU_DSO_BUILD "Use DSO build of modular components" ON)
OPTION(APU_HAVE_CRYPTO "Crypto support" OFF)
OPTION(APU_HAVE_ODBC "Build ODBC DBD driver" ON)
OPTION(APR_HAS_LDAP "LDAP support" ON)
@@ -73,8 +73,8 @@ IF(APU_USE_EXPAT AND APU_USE_LIBXML2)
MESSAGE(FATAL_ERROR "Only one of Expat and LibXml2 can be selected")
ENDIF()
-IF(APU_DSO_MODULE_BUILD AND NOT APU_BUILD_SHARED)
- MESSAGE(FATAL_ERROR "APU_DSO_MODULE_BUILD requires APU_BUILD_SHARED.")
+IF(APU_DSO_BUILD AND NOT APU_BUILD_SHARED)
+ MESSAGE(FATAL_ERROR "APU_DSO_BUILD requires APU_BUILD_SHARED.")
ENDIF()
IF(APU_HAVE_CRYPTO)
@@ -86,17 +86,12 @@ ENDIF()
# create 1-or-0 representation of feature tests for apu.h
SET(apu_have_apr_iconv_10 0) # not yet implemented
-SET(apu_dso_module_build_10 0)
SET(LDAP_LIBRARIES)
IF(APR_HAS_LDAP)
SET(LDAP_LIBRARIES wldap32)
ENDIF()
-IF(APU_DSO_MODULE_BUILD)
- SET(apu_dso_module_build_10 1)
-ENDIF()
-
CONFIGURE_FILE(include/apu.hwc
${PROJECT_BINARY_DIR}/apu.h)
CONFIGURE_FILE(include/apr_ldap.hwc
@@ -242,7 +237,7 @@ IF(APR_HAS_LDAP)
SET(APR_SOURCES ${APR_SOURCES} ldap/apr_ldap_stub.c ldap/apr_ldap_url.c)
ENDIF()
-# Sources and libraries for APR builtin drivers. Used when APU_DSO_MODULE_BUILD=OFF.
+# Sources and libraries for APU builtin drivers. Used when APU_DSO_BUILD=OFF.
SET(APU_EXTRA_SOURCES)
SET(APU_EXTRA_LIBRARIES)
SET(APU_EXTRA_INCLUDE_DIRECTORIES)
@@ -283,7 +278,7 @@ IF (MSVC)
ADD_COMPILE_DEFINITIONS(_CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_WARNINGS)
ENDIF()
-IF(NOT APU_DSO_MODULE_BUILD AND APU_HAVE_CRYPTO)
+IF(NOT APU_DSO_BUILD AND APU_HAVE_CRYPTO)
IF(NOT OPENSSL_FOUND)
MESSAGE(FATAL_ERROR "Only OpenSSL-based crypto is currently implemented in the cmake build")
ENDIF()
@@ -293,7 +288,7 @@ IF(NOT APU_DSO_MODULE_BUILD AND APU_HAVE
LIST(APPEND APU_EXTRA_INCLUDE_DIRECTORIES "${OPENSSL_INCLUDE_DIR}")
ENDIF()
-IF(NOT APU_DSO_MODULE_BUILD AND APU_HAVE_ODBC)
+IF(NOT APU_DSO_BUILD AND APU_HAVE_ODBC)
LIST(APPEND dbd_drivers odbc)
LIST(APPEND APU_EXTRA_SOURCES dbd/apr_dbd_odbc.c)
@@ -310,7 +305,7 @@ IF(APU_BUILD_SHARED)
TARGET_INCLUDE_DIRECTORIES(libaprutil-1
PRIVATE ${APU_EXTRA_INCLUDE_DIRECTORIES})
TARGET_COMPILE_DEFINITIONS(libaprutil-1
- PRIVATE "APU_DECLARE_EXPORT;APU_DSO_MODULE_BUILD=${apu_dso_module_build_10};XML_STATIC"
+ PRIVATE "APU_DECLARE_EXPORT;XML_STATIC"
INTERFACE "APU_DECLARE_IMPORT")
ENDIF()
@@ -318,15 +313,15 @@ IF(APU_BUILD_STATIC)
ADD_LIBRARY(aprutil-1 STATIC ${APR_SOURCES} ${APU_EXTRA_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED})
SET(install_targets ${install_targets} aprutil-1)
TARGET_LINK_LIBRARIES(aprutil-1
- PRIVATE apr::apr-1 ${XMLLIB_LIBRARIES})
+ PRIVATE apr::apr-1 ${XMLLIB_LIBRARIES} ${APU_EXTRA_LIBRARIES})
TARGET_INCLUDE_DIRECTORIES(aprutil-1
PRIVATE ${APU_EXTRA_INCLUDE_DIRECTORIES})
TARGET_COMPILE_DEFINITIONS(aprutil-1
- PRIVATE "APU_DECLARE_STATIC;APU_DSO_MODULE_BUILD=${apu_dso_module_build_10};XML_STATIC"
+ PRIVATE "APU_DECLARE_STATIC;XML_STATIC"
INTERFACE "APU_DECLARE_STATIC")
ENDIF()
-IF(APU_DSO_MODULE_BUILD AND APU_HAVE_CRYPTO)
+IF(APU_DSO_BUILD AND APU_HAVE_CRYPTO)
IF(NOT OPENSSL_FOUND)
MESSAGE(FATAL_ERROR "Only OpenSSL-based crypto is currently implemented in the cmake build")
ENDIF()
@@ -341,7 +336,7 @@ IF(APU_DSO_MODULE_BUILD AND APU_HAVE_CRY
PRIVATE libaprutil-1 apr::libapr-1 ${OPENSSL_LIBRARIES})
ENDIF()
-IF(APU_DSO_MODULE_BUILD AND APU_HAVE_ODBC)
+IF(APU_DSO_BUILD AND APU_HAVE_ODBC)
ADD_LIBRARY(apr_dbd_odbc-1 SHARED dbd/apr_dbd_odbc.c libaprutil.rc)
SET(install_targets ${install_targets} apr_dbd_odbc-1)
SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/apr_dbd_odbc-1.pdb)
@@ -349,12 +344,11 @@ IF(APU_DSO_MODULE_BUILD AND APU_HAVE_ODB
TARGET_LINK_LIBRARIES(apr_dbd_odbc-1
PRIVATE libaprutil-1 apr::libapr-1 odbc32 odbccp32)
SET_PROPERTY(TARGET apr_dbd_odbc-1 APPEND PROPERTY LINK_FLAGS /export:apr_dbd_odbc_driver)
- SET_TARGET_PROPERTIES(apr_dbd_odbc-1 PROPERTIES COMPILE_DEFINITIONS "APU_HAVE_ODBC;APU_DSO_MODULE_BUILD=${apu_dso_module_build_10}")
TARGET_COMPILE_DEFINITIONS(apr_dbd_odbc-1
PRIVATE "DLL_NAME=apr_dbd_odbc")
ENDIF()
-IF(APU_DSO_MODULE_BUILD AND APR_HAS_LDAP)
+IF(APU_DSO_BUILD AND APR_HAS_LDAP)
ADD_LIBRARY(apr_ldap-1 SHARED ldap/apr_ldap_init.c ldap/apr_ldap_option.c
ldap/apr_ldap_rebind.c libaprutil.rc)
SET(install_targets ${install_targets} apr_ldap-1)
Modified: apr/apr-util/branches/1.7.x/include/apu.hwc
URL: http://svn.apache.org/viewvc/apr/apr-util/branches/1.7.x/include/apu.hwc?rev=1920408&r1=1920407&r2=1920408&view=diff
==============================================================================
--- apr/apr-util/branches/1.7.x/include/apu.hwc (original)
+++ apr/apr-util/branches/1.7.x/include/apu.hwc Mon Sep 2 18:18:38 2024
@@ -127,9 +127,9 @@
#define APU_HAVE_SQLITE3 0
#define APU_HAVE_SQLITE2 0
#define APU_HAVE_ORACLE 0
-#define APU_HAVE_ODBC 1
#endif
+#cmakedefine01 APU_HAVE_ODBC
#cmakedefine01 APU_HAVE_CRYPTO
#ifndef APU_DSO_MODULE_BUILD
Modified: apr/apr-util/branches/1.7.x/include/private/apu_config.hwc
URL: http://svn.apache.org/viewvc/apr/apr-util/branches/1.7.x/include/private/apu_config.hwc?rev=1920408&r1=1920407&r2=1920408&view=diff
==============================================================================
--- apr/apr-util/branches/1.7.x/include/private/apu_config.hwc (original)
+++ apr/apr-util/branches/1.7.x/include/private/apu_config.hwc Mon Sep 2 18:18:38 2024
@@ -24,12 +24,7 @@
#ifndef APU_CONFIG_H
#define APU_CONFIG_H
-/* Compile win32 with DSO support for .dll builds */
-#ifdef APU_DECLARE_STATIC
-#define APU_DSO_BUILD 0
-#else
-#define APU_DSO_BUILD 1
-#endif
+#cmakedefine01 APU_DSO_BUILD
/* Presume a standard, modern (5.x) mysql sdk/
#define HAVE_MY_GLOBAL_H 1