cmake: fix a few warnings and add an option to build unittests

This commit is contained in:
Peinthor Rene
2013-07-11 16:15:51 +02:00
parent 26bb0e1adf
commit 11c4cf423a
2 changed files with 75 additions and 62 deletions

View File

@@ -1,6 +1,7 @@
project(sqlitebrowser)
cmake_minimum_required(VERSION 2.6)
option(UNITTEST OFF "Build unittest")
set(ANTLR_DIR libs/antlr-2.7.7)
set(QHEXEDIT_DIR libs/qhexedit)
@@ -8,79 +9,88 @@ set(QHEXEDIT_DIR libs/qhexedit)
add_subdirectory(${ANTLR_DIR})
add_subdirectory(${QHEXEDIT_DIR})
FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui REQUIRED)
find_package(Qt4 COMPONENTS QtCore QtGui QtTest REQUIRED)
include(${QT_USE_FILE})
add_definitions(${QT_DEFINITIONS})
set(SQLB_HDR
src/AboutDialog.h
src/CreateIndexDialog.h
src/EditDialog.h
src/EditTableDialog.h
src/ExportCsvDialog.h
src/ExtendedTableWidget.h
src/FilterTableHeader.h
src/ImportCsvDialog.h
src/MainWindow.h
src/PreferencesDialog.h
src/SQLiteSyntaxHighlighter.h
src/SqlExecutionArea.h
src/VacuumDialog.h
src/gen_version.h
src/sqlitedb.h
src/sqlitetablemodel.h
src/sqlitetypes.h
src/sqltextedit.h
)
src/gen_version.h
src/sqlitedb.h
src/sqlitetypes.h
)
set(SQLB_MOC_HDR
src/AboutDialog.h
src/CreateIndexDialog.h
src/EditDialog.h
src/EditTableDialog.h
src/ExportCsvDialog.h
src/ExtendedTableWidget.h
src/FilterTableHeader.h
src/ImportCsvDialog.h
src/MainWindow.h
src/PreferencesDialog.h
src/SQLiteSyntaxHighlighter.h
src/SqlExecutionArea.h
src/VacuumDialog.h
src/sqlitetablemodel.h
src/sqltextedit.h
)
set(SQLB_SRC
src/AboutDialog.cpp
src/CreateIndexDialog.cpp
src/EditDialog.cpp
src/EditTableDialog.cpp
src/ExportCsvDialog.cpp
src/ExtendedTableWidget.cpp
src/FilterTableHeader.cpp
src/ImportCsvDialog.cpp
src/MainWindow.cpp
src/PreferencesDialog.cpp
src/SQLiteSyntaxHighlighter.cpp
src/SqlExecutionArea.cpp
src/VacuumDialog.cpp
src/main.cpp
src/sqlitedb.cpp
src/sqlitetablemodel.cpp
src/sqlitetypes.cpp
src/sqltextedit.cpp
src/grammar/Sqlite3Lexer.cpp
src/grammar/Sqlite3Parser.cpp
)
src/AboutDialog.cpp
src/CreateIndexDialog.cpp
src/EditDialog.cpp
src/EditTableDialog.cpp
src/ExportCsvDialog.cpp
src/ExtendedTableWidget.cpp
src/FilterTableHeader.cpp
src/ImportCsvDialog.cpp
src/MainWindow.cpp
src/PreferencesDialog.cpp
src/SQLiteSyntaxHighlighter.cpp
src/SqlExecutionArea.cpp
src/VacuumDialog.cpp
src/sqlitedb.cpp
src/sqlitetablemodel.cpp
src/sqlitetypes.cpp
src/sqltextedit.cpp
src/grammar/Sqlite3Lexer.cpp
src/grammar/Sqlite3Parser.cpp
)
if(UNITTEST)
set(SQLB_SRC ${SQLB_SRC} src/tests/testsqlobjects.cpp)
set(SQLB_MOC_HDR ${SQLB_MOC_HDR} src/tests/testsqlobjects.h)
else(UNITTEST)
set(SQLB_SRC ${SQLB_SRC} src/main.cpp)
endif(UNITTEST)
set(SQLB_FORMS
src/AboutDialog.ui
src/CreateIndexDialog.ui
src/EditDialog.ui
src/EditTableDialog.ui
src/ExportCsvDialog.ui
src/ImportCsvDialog.ui
src/MainWindow.ui
src/PreferencesDialog.ui
src/SqlExecutionArea.ui
src/VacuumDialog.ui
)
src/AboutDialog.ui
src/CreateIndexDialog.ui
src/EditDialog.ui
src/EditTableDialog.ui
src/ExportCsvDialog.ui
src/ImportCsvDialog.ui
src/MainWindow.ui
src/PreferencesDialog.ui
src/SqlExecutionArea.ui
src/VacuumDialog.ui
)
set(SQLB_RESOURCES
src/icons/icons.qrc
)
src/icons/icons.qrc
)
QT4_WRAP_CPP(SQLB_HDR_MOC ${SQLB_HDR})
QT4_WRAP_CPP(SQLB_MOC ${SQLB_MOC_HDR})
QT4_WRAP_UI(SQLB_FORM_HDR ${SQLB_FORMS})
QT4_ADD_RESOURCES(SQLB_RESOURCES_RCC ${SQLB_RESOURCES})
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${ANTLR_DIR} ${QHEXEDIT_DIR} src)
add_executable(${PROJECT_NAME} ${SQLB_HDR} ${SQLB_SRC} ${SQLB_FORM_HDR} ${SQLB_HDR_MOC} ${SQLB_RESOURCES_RCC})
add_executable(${PROJECT_NAME} ${SQLB_HDR} ${SQLB_SRC} ${SQLB_FORM_HDR} ${SQLB_MOC} ${SQLB_RESOURCES_RCC})
add_dependencies(${PROJECT_NAME} antlr qhexedit)

View File

@@ -10,16 +10,19 @@ set(QHEXEDIT_SRC
src/qhexedit.cpp
src/qhexedit_p.cpp
src/xbytearray.cpp
)
)
set(QHEXEDIT_HDR
src/commands.h
src/qhexedit.h
src/qhexedit_p.h
src/xbytearray.h
)
)
QT4_WRAP_CPP(QHEXEDIT_HDR_MOC ${QHEXEDIT_HDR})
set(QHEXEDIT_MOC_HDR
src/qhexedit.h
src/qhexedit_p.h
)
add_library(qhexedit ${QHEXEDIT_SRC} ${QHEXEDIT_HDR} ${QHEXEDIT_HDR_MOC})
QT4_WRAP_CPP(QHEXEDIT_MOC ${QHEXEDIT_MOC_HDR})
add_library(qhexedit ${QHEXEDIT_SRC} ${QHEXEDIT_HDR} ${QHEXEDIT_MOC})