You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by mt...@apache.org on 2021/12/03 04:25:23 UTC

svn commit: r1895526 - in /apr/apr/trunk: CMakeLists.txt include/apr.hwc

Author: mturk
Date: Fri Dec  3 04:25:22 2021
New Revision: 1895526

URL: http://svn.apache.org/viewvc?rev=1895526&view=rev
Log:
Add support for building sqlite3 dbd module ... It compiles and pass tests

Modified:
    apr/apr/trunk/CMakeLists.txt
    apr/apr/trunk/include/apr.hwc

Modified: apr/apr/trunk/CMakeLists.txt
URL: http://svn.apache.org/viewvc/apr/apr/trunk/CMakeLists.txt?rev=1895526&r1=1895525&r2=1895526&view=diff
==============================================================================
--- apr/apr/trunk/CMakeLists.txt (original)
+++ apr/apr/trunk/CMakeLists.txt Fri Dec  3 04:25:22 2021
@@ -25,6 +25,7 @@ IF(NOT APR_MINIMAL_BUILD)
     FIND_PACKAGE(LibXml2)
     FIND_PACKAGE(OpenSSL)
     FIND_PACKAGE(Iconv)
+    FIND_PACKAGE(SQLite3)
     OPTION(APU_HAVE_ODBC     "Build ODBC DBD driver"         ON)
 ELSE()
     OPTION(APU_HAVE_ODBC     "Build ODBC DBD driver"         OFF)
@@ -58,6 +59,7 @@ IF(APU_USE_LIBXML2 AND NOT LIBXML2_FOUND
 ENDIF()
 
 OPTION(APR_INSTALL_PRIVATE_H  "Install selected private .h files (for httpd)"  OFF)
+OPTION(APU_HAVE_SQLITE3     "Build SQLite3 DBD driver"     OFF)
 OPTION(APU_HAVE_CRYPTO      "Crypto support"               OFF)
 OPTION(APU_HAVE_ICONV       "Xlate support"                OFF)
 OPTION(APR_HAVE_IPV6        "IPv6 support"                 ON)
@@ -82,6 +84,11 @@ IF(NOT Iconv_FOUND)
   MESSAGE(FATAL_ERROR "Libiconv wasn't found!")
 ENDIF()
 ENDIF()
+IF(APU_HAVE_SQLITE3)
+IF(NOT SQLite3_FOUND)
+  MESSAGE(FATAL_ERROR "SQLite3 wasn't found!")
+ENDIF()
+ENDIF()
 
 # create 1-or-0 representation of feature tests for apr.h
 
@@ -92,6 +99,7 @@ SET(apu_use_expat_10 0)
 SET(apu_use_xmllite_10 0)
 SET(apu_have_iconv_10 0)
 SET(apu_have_odbc_10 0)
+SET(apu_have_sqlite3_10 0)
 
 IF(APR_HAVE_IPV6)
   SET(apr_have_ipv6_10 1)
@@ -110,10 +118,13 @@ ELSE(APU_USE_XMLLITE)
 ENDIF()
 
 IF(APU_HAVE_ICONV)
-SET(apu_have_iconv_10 1)
+  SET(apu_have_iconv_10 1)
 ENDIF()
 IF(APU_HAVE_ODBC)
-SET(apu_have_odbc_10 1)
+  SET(apu_have_odbc_10 1)
+ENDIF()
+IF(APU_HAVE_SQLITE3)
+  SET(apu_have_sqlite3_10 1)
 ENDIF()
 
 CONFIGURE_FILE(include/apr.hwc
@@ -514,6 +525,17 @@ IF(APU_HAVE_ODBC)
   SET_TARGET_PROPERTIES(apr_dbd_odbc-2 PROPERTIES COMPILE_FLAGS "-DDLL_NAME=apr_dbd_odbc-2")
 ENDIF()
 
+IF(APU_HAVE_SQLITE3)
+  ADD_LIBRARY(apr_dbd_sqlite3-2 SHARED dbd/apr_dbd_sqlite3.c libapr.rc)
+  LIST(APPEND install_targets apr_dbd_sqlite3-2)
+  LIST(APPEND install_bin_pdb ${PROJECT_BINARY_DIR}/apr_dbd_sqlite3-2.pdb)
+  LIST(APPEND dbd_drivers sqlite3)
+  SET_TARGET_PROPERTIES(apr_dbd_sqlite3-2 PROPERTIES INCLUDE_DIRECTORIES "${APR_INCLUDE_DIRECTORIES};${SQLite3_INCLUDE_DIRS}")
+  TARGET_LINK_LIBRARIES(apr_dbd_sqlite3-2 ${apr_libname} ${APR_SYSTEM_LIBS} ${SQLite3_LIBRARIES})
+  SET_PROPERTY(TARGET apr_dbd_sqlite3-2 APPEND PROPERTY LINK_FLAGS /export:apr_dbd_sqlite3_driver)
+  SET_TARGET_PROPERTIES(apr_dbd_sqlite3-2 PROPERTIES COMPILE_FLAGS "-DDLL_NAME=apr_dbd_sqlite3-2")
+ENDIF()
+
 IF(APR_BUILD_TESTAPR)
   ENABLE_TESTING()
   # Create a "check" target that displays test program output to the console.
@@ -666,6 +688,7 @@ MESSAGE(STATUS "  Install prefix .......
 MESSAGE(STATUS "  C compiler ...................... : ${CMAKE_C_COMPILER}")
 MESSAGE(STATUS "  IPv6 ............................ : ${APR_HAVE_IPV6}")
 MESSAGE(STATUS "  DBD ODBC driver ................. : ${APU_HAVE_ODBC}")
+MESSAGE(STATUS "  DBD SQLite3 driver .............. : ${APU_HAVE_SQLITE3}")
 MESSAGE(STATUS "  Use Expat ....................... : ${APU_USE_EXPAT}")
 MESSAGE(STATUS "  Use LibXml2 ..................... : ${APU_USE_LIBXML2}")
 MESSAGE(STATUS "  Use XmlLite ..................... : ${APU_USE_XMLLITE}")

Modified: apr/apr/trunk/include/apr.hwc
URL: http://svn.apache.org/viewvc/apr/apr/trunk/include/apr.hwc?rev=1895526&r1=1895525&r2=1895526&view=diff
==============================================================================
--- apr/apr/trunk/include/apr.hwc (original)
+++ apr/apr/trunk/include/apr.hwc Fri Dec  3 04:25:22 2021
@@ -657,7 +657,7 @@ typedef int apr_wait_t;
  */
 #define APU_HAVE_PGSQL          0
 #define APU_HAVE_MYSQL          0
-#define APU_HAVE_SQLITE3        0
+#define APU_HAVE_SQLITE3        @apu_have_sqlite3_10@
 #define APU_HAVE_SQLITE2        0
 #define APU_HAVE_ORACLE         0
 #define APU_HAVE_ODBC           @apu_have_odbc_10@