Handle postgresql and sqlite3 libs properly
Do not fail to compile when one of them is missing but the other one is not. Raise an error when trying to open a database with the missing library. see #3237
This commit is contained in:
+15
-7
@@ -193,13 +193,17 @@ file(GLOB source_network
|
||||
src/network/*.[hc]pp)
|
||||
add_library(network OBJECT ${source_network})
|
||||
|
||||
if(SQLITE3_FOUND)
|
||||
if(SQLITE3_FOUND OR PQ_FOUND)
|
||||
file(GLOB source_database
|
||||
src/database/*.[hc]pp)
|
||||
add_library(database OBJECT ${source_database})
|
||||
|
||||
include_directories(database ${SQLITE3_INCLUDE_DIRS})
|
||||
include_directories(database ${PQ_INCLUDE_DIRS})
|
||||
if(SQLITE3_FOUND)
|
||||
include_directories(database ${SQLITE3_INCLUDE_DIRS})
|
||||
endif()
|
||||
if(PQ_FOUND)
|
||||
include_directories(database ${PQ_INCLUDE_DIRS})
|
||||
endif()
|
||||
set(USE_DATABASE TRUE)
|
||||
else()
|
||||
add_library(database OBJECT "")
|
||||
@@ -267,10 +271,14 @@ if(LIBIDN_FOUND)
|
||||
target_link_libraries(test_suite ${LIBIDN_LIBRARIES})
|
||||
endif()
|
||||
if(USE_DATABASE)
|
||||
target_link_libraries(${PROJECT_NAME} ${SQLITE3_LIBRARIES})
|
||||
target_link_libraries(${PROJECT_NAME} ${PQ_LIBRARIES})
|
||||
target_link_libraries(test_suite ${SQLITE3_LIBRARIES})
|
||||
target_link_libraries(test_suite ${PQ_LIBRARIES})
|
||||
if(SQLITE3_FOUND)
|
||||
target_link_libraries(${PROJECT_NAME} ${SQLITE3_LIBRARIES})
|
||||
target_link_libraries(test_suite ${SQLITE3_LIBRARIES})
|
||||
endif()
|
||||
if(PQ_FOUND)
|
||||
target_link_libraries(${PROJECT_NAME} ${PQ_LIBRARIES})
|
||||
target_link_libraries(test_suite ${PQ_LIBRARIES})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Define a __FILENAME__ macro with the relative path (from the base project directory)
|
||||
|
||||
Reference in New Issue
Block a user