]> git.lyx.org Git - features.git/blob - development/cmake/src/frontends/qt4/CMakeLists.txt
4fbd30826bd8ecbc2e31091db09726a427877522
[features.git] / development / cmake / src / frontends / qt4 / CMakeLists.txt
1 # This file is part of LyX, the document processor.
2 # Licence details can be found in the file COPYING.
3 #
4 # Copyright (c) 2006, Peter Kümmel, <syntheticpp@gmx.net>
5 #
6
7 project(frontend_qt4)
8
9 file(GLOB frontends_qt4_sources
10         ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_CPP_FILES})
11 file(GLOB moc_files ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_MOC_FILES})
12
13 list(REMOVE_ITEM frontends_qt4_sources ${moc_files} .)
14 list(REMOVE_ITEM frontends_qt4_sources ${TOP_SRC_DIR}/src/frontends/qt4/liblyxqt4.cpp)
15 list(REMOVE_ITEM frontends_qt4_sources ${TOP_SRC_DIR}/src/frontends/qt4/Resources.cpp)
16
17 file(GLOB frontends_qt4_headers
18         ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_HPP_FILES})
19 file(GLOB frontend_qt4_UI
20         ${TOP_SRC_DIR}/src/frontends/qt4/ui/*.ui)
21
22 lyx_add_msvc_pch(frontends_qt4)
23
24 lyx_automoc(${frontends_qt4_sources})
25
26 lyx_add_ui_files(frontends_qt4_sources ui_files ${frontend_qt4_UI})
27
28 file(GLOB_RECURSE frontend_qt4_images      ${TOP_SRC_DIR}/lib/images/*.png)
29 set(resource_name ${CMAKE_CURRENT_BINARY_DIR}/Resources.qrc)
30 lyx_qt_resources_file(${resource_name} "${TOP_SRC_DIR}/lib/" frontend_qt4_images)
31 qt4_add_resources(resource_files ${resource_name})
32
33
34 add_definitions(-DQT_GENUINE_STR -DLYX_BUILD_QT4_FRONTEND)
35
36 include_directories(
37         ${TOP_SRC_DIR}/src/frontends/qt4
38         ${QT_INCLUDES}
39         ${CMAKE_CURRENT_BINARY_DIR})
40
41 if (LYX_DEVEL_VERSION)
42         add_definitions(-DDEVEL_VERSION)
43 endif()
44
45 if(LYX_MERGE_FILES)
46         lyx_const_touched_files(_allinone frontends_qt4_sources)
47         set(depends_moc_uic ${frontends_qt4_headers} ${ui_files})
48         set_source_files_properties(_allinone_const.C
49                 PROPERTIES OBJECT_DEPENDS "${depends_moc_uic}")
50         set_source_files_properties(_allinone_touched.C
51                 PROPERTIES OBJECT_DEPENDS "${depends_moc_uic}")
52         add_library(frontend_qt4 ${library_type}
53                 ${_allinone_files} ${frontends_qt4_headers} ${ui_files} ${resource_files})
54 else()
55         add_library(frontend_qt4 ${library_type}
56                 ${frontends_qt4_sources} ${frontends_qt4_headers} ${ui_files} ${resource_files})
57 endif()
58
59
60 target_link_libraries(frontend_qt4
61         frontends
62         ${QT_QTCORE_LIBRARY}
63         ${QT_QTGUI_LIBRARY})
64
65 lyx_add_gcc_pch(frontend_qt4)
66
67 if(WIN32)
68         target_link_libraries(frontend_qt4 Gdi32)
69 endif()
70
71 project_source_group("${GROUP_CODE}"
72         frontends_qt4_sources frontends_qt4_headers)
73
74 source_group("Uic files" FILES ${frontend_qt4_UI})
75