diff options
author | Mladen Turk <mturk@apache.org> | 2021-12-03 04:25:22 +0000 |
---|---|---|
committer | Mladen Turk <mturk@apache.org> | 2021-12-03 04:25:22 +0000 |
commit | 76de66fbcfbc3e70e034668526d6d6da5f5d757a (patch) | |
tree | e4160c34acd4f1c598f1f07f9aa678ccb91ee817 /CMakeLists.txt | |
parent | 88913b3b492085d42087b7ec142e7bf5160ac1d7 (diff) | |
download | apr-76de66fbcfbc3e70e034668526d6d6da5f5d757a.tar.gz |
Add support for building sqlite3 dbd module ... It compiles and pass tests
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1895526 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index e8b86fb80..17b2869b3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -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 .................. : ${CMAKE_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}") |