Warning, /libraries/kdb/src/drivers/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 if(COMMAND cmake_policy)
0002   cmake_policy(SET CMP0003 NEW)
0003   cmake_policy(SET CMP0005 NEW)
0004 endif()
0005 
0006 #TODO  add_definitions(-DKDE_DEFAULT_DEBUG_AREA=44001)
0007 
0008 set(KDB_PLUGIN_INSTALL_DIR ${KDE_INSTALL_PLUGINDIR}/${KDB_BASE_NAME_LOWER})
0009 
0010 # Instruct automoc about C++ preprocessor macros used to define Qt-style plugins:
0011 ecm_setup_qtplugin_macro_names(
0012     JSON_ARG2
0013        KDB_DRIVER_PLUGIN_FACTORY
0014 )
0015 
0016 # -----------------------
0017 macro(build_and_install_kdb_driver _name _srcs _extra_libs)
0018     set(_target kdb_${_name}driver)
0019     ecm_create_qm_loader(_srcs ${_target}_qt)
0020     add_library(${_target} MODULE ${_srcs})
0021 
0022     target_link_libraries(${_target}
0023         PUBLIC
0024             KDb
0025         PRIVATE
0026             ${_extra_libs}
0027     )
0028     # Needed for examples and autotests:
0029     set_target_properties(${_target}
0030                           PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/plugins/${KDB_BASE_NAME_LOWER}")
0031     install(TARGETS ${_target} DESTINATION ${KDB_PLUGIN_INSTALL_DIR})
0032 endmacro()
0033 # -----------------------
0034 
0035 # find SQLite:
0036 set(SQLITE_MIN_VERSION 3.6.16)
0037 set(SQLITE_RECOMMENDED_VERSION 3.28.0)
0038 set(SQLITE_LOAD_EXTENSION_REQUIRED ON)
0039 set(BUILD_SQLITE_DB_DRIVER_DESC "SQLite database driver")
0040 find_package(Sqlite ${SQLITE_MIN_VERSION})
0041 set_package_properties(Sqlite PROPERTIES TYPE RECOMMENDED
0042                        PURPOSE "Required by ${BUILD_SQLITE_DB_DRIVER_DESC}")
0043 
0044 if(Sqlite_FOUND)
0045     ecm_optional_add_subdirectory(sqlite)
0046 else()
0047     add_feature_info(BUILD_SQLITE_DB_DRIVER FALSE "${BUILD_SQLITE_DB_DRIVER_DESC} (because SQLite3 not found)")
0048     message(STATUS "WARNING: Because of that ${BUILD_SQLITE_DB_DRIVER_DESC} will not be built.")
0049 endif()
0050 
0051 # -----------------------
0052 
0053 set(BUILD_MYSQL_DB_DRIVER_DESC "MySQL database driver")
0054 find_package(MySQL)
0055 set_package_properties(MySQL PROPERTIES TYPE RECOMMENDED
0056                        PURPOSE "Required by ${BUILD_MYSQL_DB_DRIVER_DESC}")
0057 if(MySQL_FOUND)
0058    ecm_optional_add_subdirectory(mysql)
0059 else()
0060    add_feature_info(BUILD_MYSQL_DB_DRIVER FALSE "${BUILD_MYSQL_DB_DRIVER_DESC} (because MySQL Client Library not found)")
0061 endif()
0062 
0063 # -----------------------
0064 
0065 set(BUILD_POSTGRESQL_DB_DRIVER_DESC "PostgreSQL database driver")
0066 find_package(PostgreSQL)
0067 set_package_properties(PostgreSQL PROPERTIES TYPE RECOMMENDED
0068                        PURPOSE "Required by ${BUILD_POSTGRESQL_DB_DRIVER_DESC}")
0069 if(PostgreSQL_FOUND)
0070    ecm_optional_add_subdirectory(postgresql)
0071 else()
0072    add_feature_info(BUILD_POSTGRESQL_DB_DRIVER FALSE "${BUILD_POSTGRESQL_DB_DRIVER_DESC} (because C API to PostgreSQL not found)")
0073 endif()
0074 
0075 #set(BUILD_SYBASE_DB_DRIVER_DESC "Sybase/MSSQL database driver")
0076 #find_package(FreeTDS)
0077 #set_package_properties(FreeTDS PROPERTIES
0078 #                       DESCRIPTION "Open source implementation of the TDS (Tabular Data Stream) protocol"
0079 #                       URL "https://www.freetds.org"
0080 #                       TYPE OPTIONAL
0081 #                       PURPOSE "Required by ${BUILD_SYBASE_DB_DRIVER_DESC}"
0082 #)
0083 #if(FreeTDS_FOUND)
0084 #   ecm_optional_add_subdirectory(sybase)
0085 #else()
0086 #   add_feature_info(BUILD_SYBASE_DB_DRIVER FALSE "${BUILD_SYBASE_DB_DRIVER_DESC} (because FreeTDS protocol implementation not found)")
0087 #endif()
0088 
0089 #set(BUILD_XBASE_DB_DRIVER_DESC "xBase database driver")
0090 #find_package(XBase)
0091 #set_package_properties(XBase PROPERTIES
0092 #                       DESCRIPTION "XBase compatible C++ class library"
0093 #                       URL "https://linux.techass.com/projects/xdb"
0094 #                       TYPE OPTIONAL
0095 #                       PURPOSE "Required by ${BUILD_XBASE_DB_DRIVER_DESC}"
0096 #)
0097 #if(XBASE_FOUND)
0098 #   ecm_optional_add_subdirectory(xbase)
0099 #else()
0100 #   add_feature_info(BUILD_XBASE_DB_DRIVER FALSE "${BUILD_XBASE_DB_DRIVER_DESC} (because XBase compatible C++ class library not found)")
0101 #endif()