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()