134 lines
2.5 KiB
CMake
134 lines
2.5 KiB
CMake
# Minimal CMake build file to build cppcheck Qt GUI
|
|
|
|
# find and setup Qt4 for this project
|
|
find_package(Qt4 REQUIRED)
|
|
|
|
# Add needed Qt modules
|
|
set(QT_USE_QTMAIN TRUE)
|
|
set(QT_USE_QTXML TRUE)
|
|
include(${QT_USE_FILE})
|
|
|
|
include_directories (${CPPCHECK_SOURCE_DIR}/lib)
|
|
# Generated files (in build directory) need to know gui directory
|
|
include_directories (${CPPCHECK_SOURCE_DIR}/gui)
|
|
|
|
# Header files - listed for mocking
|
|
SET(CHECK_HEADERS
|
|
aboutdialog.h
|
|
applicationdialog.h
|
|
applicationlist.h
|
|
checkthread.h
|
|
common.h
|
|
csvreport.h
|
|
fileviewdialog.h
|
|
mainwindow.h
|
|
projectfile.h
|
|
report.h
|
|
resultstree.h
|
|
resultsview.h
|
|
settingsdialog.h
|
|
threadhandler.h
|
|
threadresult.h
|
|
translationhandler.h
|
|
txtreport.h
|
|
xmlreport.h
|
|
)
|
|
|
|
# Source files
|
|
SET(CHECKGUI_SRCS
|
|
aboutdialog.cpp
|
|
applicationdialog.cpp
|
|
applicationlist.cpp
|
|
checkthread.cpp
|
|
csvreport.cpp
|
|
fileviewdialog.cpp
|
|
main.cpp
|
|
mainwindow.cpp
|
|
projectfile.cpp
|
|
report.cpp
|
|
resultstree.cpp
|
|
resultsview.cpp
|
|
settingsdialog.cpp
|
|
threadhandler.cpp
|
|
threadresult.cpp
|
|
translationhandler.cpp
|
|
txtreport.cpp
|
|
xmlreport.cpp
|
|
)
|
|
|
|
# Add Windows resource file
|
|
if (WIN32)
|
|
SET(CHECKGUI_SRCS
|
|
${CHECKGUI_SRCS}
|
|
cppcheck-gui.rc
|
|
)
|
|
endif (WIN32)
|
|
|
|
# UI files
|
|
SET(CHECK_UIS
|
|
about.ui
|
|
application.ui
|
|
file.ui
|
|
main.ui
|
|
resultsview.ui
|
|
settings.ui
|
|
)
|
|
|
|
# Translation files
|
|
SET(CHECK_TRANS
|
|
cppcheck_de.ts
|
|
cppcheck_fi.ts
|
|
cppcheck_pl.ts
|
|
cppcheck_se.ts
|
|
cppcheck_en.ts
|
|
cppcheck_nl.ts
|
|
cppcheck_ru.ts
|
|
)
|
|
|
|
SET(CHECK_RCCS gui.qrc)
|
|
|
|
# Libraries to link
|
|
set(CHECK_LIBS
|
|
checklib
|
|
)
|
|
|
|
# Windows needs additional shlwapi library
|
|
if (WIN32 AND NOT CYGWIN)
|
|
set(CHECK_LIBS
|
|
${CHECK_LIBS}
|
|
shlwapi
|
|
)
|
|
endif (WIN32 AND NOT CYGWIN)
|
|
|
|
if (CMAKE_COMPILER_IS_GNUCXX)
|
|
set(CMAKE_CXX_FLAGS
|
|
${CMAKE_CXX_FLAGS}
|
|
"-Wall"
|
|
)
|
|
endif (CMAKE_COMPILER_IS_GNUCXX)
|
|
|
|
# Generate rules for building source files from the resources
|
|
QT4_ADD_RESOURCES(CHECK_RCC_SRCS ${CHECK_RCCS})
|
|
|
|
# Process UI files
|
|
QT4_WRAP_UI(CHECK_UIS_H ${CHECK_UIS})
|
|
|
|
# Mock header files
|
|
QT4_WRAP_CPP(CHECK_MOC_SRCS ${CHECK_HEADERS})
|
|
|
|
# add translations ...
|
|
QT4_ADD_TRANSLATION(CHECK_QM ${CHECK_TRANS})
|
|
|
|
# Create folders for Visual Studio IDE
|
|
SOURCE_GROUP("Header Files" FILES ${CHECK_HEADERS})
|
|
SOURCE_GROUP("Ui Files" ".ui$")
|
|
SOURCE_GROUP("Moc Files" "moc_.*cxx$")
|
|
|
|
# Include binary directory where code from UI files gets created
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
ADD_EXECUTABLE(gui WIN32 ${CHECKGUI_SRCS} ${CHECK_MOC_SRCS} ${CHECK_HEADERS}
|
|
${CHECK_UIS_H} ${CHECK_RCC_SRCS})
|
|
TARGET_LINK_LIBRARIES(gui ${CHECK_LIBS} ${QT_LIBRARIES})
|
|
|