Warning, /office/kexi/src/migration/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 include_directories(${CMAKE_SOURCE_DIR}/src/core 0002 ${CMAKE_SOURCE_DIR}/src/widget ${CMAKE_BINARY_DIR}/src/widget 0003 ) 0004 0005 add_definitions(-DKDE_DEFAULT_DEBUG_AREA=44000) 0006 0007 simple_option(KEXI_MIGRATEMANAGER_DEBUG "Enable debugging for the migrate driver manager" OFF) 0008 0009 set(KEXI_MIGRATE_PLUGIN_INSTALL_DIR ${KEXI_PLUGIN_INSTALL_DIR}/migrate) 0010 0011 # ----------------------- 0012 function(build_and_install_kexi_migrate_driver _name _srcs _extra_libs _includes _defines) 0013 set(_target keximigrate_${_name}) 0014 ecm_create_qm_loader(_srcs ${_target}_qt) 0015 add_library(${_target} MODULE ${_srcs}) 0016 target_link_libraries(${_target} 0017 PUBLIC 0018 keximigrate 0019 ${_extra_libs} 0020 ) 0021 target_include_directories(${_target} PRIVATE ${_includes}) 0022 target_compile_definitions(${_target} PRIVATE ${_defines}) 0023 # Needed for examples and autotests: 0024 set_target_properties(${_target} 0025 PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/plugins/migrate") 0026 0027 install(TARGETS ${_target} DESTINATION ${KEXI_MIGRATE_PLUGIN_INSTALL_DIR}) 0028 endfunction() 0029 # ----------------------- 0030 0031 add_subdirectory(tsv) 0032 0033 find_package(MySQL) 0034 set_package_properties(MySQL PROPERTIES TYPE RECOMMENDED 0035 PURPOSE "Required by Kexi MySQL migration driver") 0036 if(MySQL_FOUND) 0037 add_subdirectory(mysql) 0038 endif() 0039 0040 find_package(PostgreSQL) 0041 set_package_properties(PostgreSQL PROPERTIES TYPE RECOMMENDED 0042 PURPOSE "Required by Kexi PostgreSQL migration driver") 0043 if(PostgreSQL_FOUND) 0044 add_subdirectory(postgresql) 0045 endif() 0046 0047 if(false) # TODO KEXI3 0048 find_package(FreeTDS) 0049 set_package_properties(FreeTDS PROPERTIES 0050 DESCRIPTION "Open source implementation of the TDS (Tabular Data Stream) protocol" 0051 URL "https://www.freetds.org" 0052 TYPE RECOMMENDED 0053 PURPOSE "Required by Kexi Sybase migration driver" 0054 ) 0055 if(FREETDS_FOUND) 0056 add_subdirectory(sybase) 0057 endif() 0058 0059 find_package(XBase) 0060 set_package_properties(XBase PROPERTIES 0061 DESCRIPTION "XBase compatible C++ class library" 0062 URL "https://linux.techass.com/projects/xdb" 0063 TYPE RECOMMENDED 0064 PURPOSE "Required by Kexi XBase migration driver" 0065 ) 0066 if(XBASE_FOUND) 0067 add_subdirectory(xbase) 0068 endif() 0069 0070 endif() # KEXI3 0071 0072 find_package(GLIB2) 0073 set(_REQUIRED_BY_MDB "Required by Kexi MS Access migration driver") 0074 set_package_properties(GLIB2 PROPERTIES TYPE RECOMMENDED PURPOSE "${_REQUIRED_BY_MDB}") 0075 0076 find_package(Iconv) 0077 set_package_properties(Iconv PROPERTIES TYPE RECOMMENDED PURPOSE "${_REQUIRED_BY_MDB}") 0078 0079 if(GLIB2_FOUND AND Iconv_FOUND) 0080 add_subdirectory(mdb) 0081 endif() 0082 0083 if(BUILD_TESTING) 0084 add_subdirectory(tests) 0085 endif() 0086 0087 ########### next target ############### 0088 0089 set(keximigrate_LIB_SRCS AlterSchemaTableModel.cpp 0090 KexiMigratePluginMetaData.cpp 0091 keximigrate.cpp 0092 keximigratedata.cpp 0093 KexiSqlMigrate.cpp 0094 migratemanager.cpp 0095 importwizard.cpp 0096 importtablewizard.cpp 0097 importoptionsdlg.cpp 0098 AlterSchemaWidget.cpp) 0099 0100 kexi_add_library(keximigrate SHARED ${keximigrate_LIB_SRCS}) 0101 0102 target_link_libraries(keximigrate 0103 PUBLIC 0104 kexiextendedwidgets 0105 ) 0106 0107 generate_export_header(keximigrate) 0108 0109 install(TARGETS keximigrate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 0110 0111 ########### install files ############### 0112 0113 if(FALSE) # TODO: install when we move to independent place 0114 install(FILES KexiMigratePluginMetaData.h keximigrate.h keximigratedata.h KexiSqlMigrate.h migratemanager.h 0115 DESTINATION ${KDE_INSTALL_INCLUDEDIR}/kexidb COMPONENT Devel 0116 ) 0117 endif()