Mercurial > trustbridge
diff CMakeLists.txt @ 0:cb0cde2c5eb9
Initial commit. Basically a Hello World with a Tray Icon.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Fri, 07 Feb 2014 11:41:15 +0000 |
parents | |
children | 524cd4908656 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CMakeLists.txt Fri Feb 07 11:41:15 2014 +0000 @@ -0,0 +1,57 @@ +cmake_minimum_required(VERSION 2.8.8) +project(m13) + +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/") + +# Use cmake's automoc and make sure the generated files are included +set(CMAKE_AUTOMOC ON) +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +find_package(Qt5Widgets REQUIRED) + +include_directories(${Qt5Widgets_INCLUDE_DIRS}) +add_definitions(${Qt5Widgets_DEFINITIONS}) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}") + +set(M13UI_SOURCES + ui/main.cpp + ui/mainwindow.cpp +) + +set(M13UI_RESOURCES + ui/icons.qrc +) + +if(UNIX) + # See: https://bugreports.qt-project.org/browse/QTBUG-35918 + # XCB_EXTRA_LIBS should be gotten automatically. + # The following list is taken from the .pri file + get_target_property(_loc Qt5::Widgets LOCATION) + get_filename_component(_qtpath ${_loc} PATH) + set(XCB_EXTRA_LIBS + -L${_qtpath} + -lX11 -lX11-xcb -lXi -lxcb-render-util -lXrender -lSM -lICE -lxcb-render -ldbus-1 + -lxcb -lxcb-image -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr + -lxcb-shape -lxcb-keysyms -lQt5PlatformSupport + -lfreetype -lQt5DBus -lQt5Gui -ljpeg -lpng -lQt5Core + -lz -lm -ldl -lrt -lpthread) + + set(EXTRA_STATIC_LIBS -lz -lpthread -ldl -lpng -ljpeg + Qt5::QXcbIntegrationPlugin ${XCB_EXTRA_LIBS}) +elseif(WIN32) + get_target_property(_loc Qt5::Widgets LOCATION) + get_filename_component(_qtpath ${_loc} PATH) + set(WINDOWS_EXTRA_LIBS + -L${_qtpath} + -lwinspool -lshlwapi -lfreetype -lbz2 -lpng16 + -lQt5PlatformSupport -lQt5Gui -lcomdlg32 -loleaut32 -limm32 -lwinmm + -lglu32 -lopengl32 -lgdi32 -ljpeg -lpng -lQt5Core -lole32 -luuid -lws2_32 + -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lsicuin -lsicuuc -lsicudt -lpcre16) + set(EXTRA_STATIC_LIBS Qt5::QWindowsIntegrationPlugin ${WINDOWS_EXTRA_LIBS}) +endif() + +qt5_add_resources(M13UI_SOURCES ${M13UI_RESOURCES}) + +add_executable(m13ui ${M13UI_SOURCES}) + +target_link_libraries(m13ui Qt5::Widgets ${EXTRA_STATIC_LIBS})