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