cmake_minimum_required (VERSION 2.6) project(dba) option ( DBA_ENABLE_MYSQL "Enable or disable the MySQL interface" 1 ) option ( DBA_ENABLE_SQLITE "Enable or disable the SQLite interface" 0 ) add_definitions(-std=gnu++0x) if ( DBA_ENABLE_MYSQL ) include ( cmakeincludes/FindMySQL.cmake ) if ( NOT MYSQL_FOUND ) message(FATAL_ERROR "Unable to find MySQL") endif ( NOT MYSQL_FOUND ) include_directories(${MYSQL_INCLUDE_DIR}) add_definitions(-DDBA_ENABLE_MYSQL) else ( DBA_ENABLE_MYSQL ) set ( MYSQL_LIBRARIES "" ) endif ( DBA_ENABLE_MYSQL ) if ( DBA_ENABLE_SQLITE ) include ( cmakeincludes/FindSQLite.cmake ) include_directories(${SQLITE3_INCLUDE_DIR}) add_definitions(-DDBA_ENABLE_SQLITE) else ( DBA_ENABLE_SQLITE) set ( SQLITE3_LIBRARIES "" ) endif ( DBA_ENABLE_SQLITE ) add_library ( libdba dbaConn.cpp dbaConnMySQL.cpp dbaConnSQLite.cpp ) add_executable (dba main.cpp ) target_link_libraries(dba libdba ${MYSQL_LIBRARIES} ${SQLITE3_LIBRARIES}) if ( NOT MSVC ) set_target_properties(libdba dba PROPERTIES COMPILE_FLAGS "-Wall -Werror") endif ( NOT MSVC ) install(TARGETS libdba LIBRARY DESTINATION lib ARCHIVE DESTINATION lib) install(FILES dbaConn.h dbaConnMySQL.h dbaConnSQLite.h DESTINATION include PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)