/[svn]/qsampler/trunk/src/CMakeLists.txt
ViewVC logotype

Annotation of /qsampler/trunk/src/CMakeLists.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3572 - (hide annotations) (download)
Tue Aug 27 17:11:08 2019 UTC (4 years, 7 months ago) by capela
File MIME type: text/plain
File size: 4380 byte(s)
- Fixed recent new CMake target build configuration file.
1 capela 3570 set(NAME qsampler)
2 capela 3567
3     include_directories (
4     ${CMAKE_CURRENT_BINARY_DIR}
5     ${CMAKE_CURRENT_SOURCE_DIR}
6     )
7    
8     configure_file (cmake_config.h ${CMAKE_CURRENT_BINARY_DIR}/config.h)
9    
10 capela 3570 configure_file (${NAME}.desktop ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.desktop)
11 capela 3567
12     set (HEADERS
13     qsampler.h
14     qsamplerAbout.h
15     qsamplerOptions.h
16     qsamplerChannel.h
17     qsamplerMessages.h
18     qsamplerInstrument.h
19     qsamplerInstrumentList.h
20     qsamplerDevice.h
21     qsamplerFxSend.h
22     qsamplerFxSendsModel.h
23     qsamplerUtilities.h
24     qsamplerInstrumentForm.h
25     qsamplerInstrumentListForm.h
26     qsamplerDeviceForm.h
27     qsamplerDeviceStatusForm.h
28     qsamplerChannelStrip.h
29     qsamplerChannelForm.h
30     qsamplerChannelFxForm.h
31     qsamplerOptionsForm.h
32     qsamplerMainForm.h
33     )
34    
35     set (SOURCES
36     qsampler.cpp
37     qsamplerOptions.cpp
38     qsamplerChannel.cpp
39     qsamplerMessages.cpp
40     qsamplerInstrument.cpp
41     qsamplerInstrumentList.cpp
42     qsamplerDevice.cpp
43     qsamplerFxSend.cpp
44     qsamplerFxSendsModel.cpp
45     qsamplerUtilities.cpp
46     qsamplerInstrumentForm.cpp
47     qsamplerInstrumentListForm.cpp
48     qsamplerDeviceForm.cpp
49     qsamplerDeviceStatusForm.cpp
50     qsamplerChannelStrip.cpp
51     qsamplerChannelForm.cpp
52     qsamplerChannelFxForm.cpp
53     qsamplerOptionsForm.cpp
54     qsamplerMainForm.cpp
55     )
56    
57     set (FORMS
58     qsamplerInstrumentForm.ui
59     qsamplerInstrumentListForm.ui
60     qsamplerDeviceForm.ui
61     qsamplerChannelStrip.ui
62     qsamplerChannelForm.ui
63     qsamplerChannelFxForm.ui
64     qsamplerOptionsForm.ui
65     qsamplerMainForm.ui
66     )
67    
68     set (RESOURCES
69     qsampler.qrc
70     )
71    
72     set (TRANSLATIONS
73     translations/qsampler_cs.ts
74     translations/qsampler_fr.ts
75     translations/qsampler_ru.ts
76     )
77    
78     qt5_add_translation ( QM_FILES ${TRANSLATIONS} )
79     add_custom_target( translations ALL DEPENDS ${QM_FILES} )
80    
81     qt5_wrap_ui (UI_SOURCES ${FORMS})
82     qt5_wrap_cpp (MOC_SOURCES ${HEADERS})
83     qt5_add_resources (QRC_SOURCES ${RESOURCES})
84    
85 capela 3570 if (WIN32)
86     set (RC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/win32/${NAME}.rc)
87     set (RES_FILE ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.res.obj)
88     find_program (WINDRES_EXECUTABLE NAMES windres mingw32-windres i686-mingw32-windres)
89     if (MINGW)
90     exec_program (${WINDRES_EXECUTABLE}
91     ARGS "-i ${RC_FILE} -o ${RES_FILE} --include-dir=${CMAKE_CURRENT_SOURCE_DIR}/images")
92     list (APPEND SOURCES ${RES_FILE})
93     else ()
94     list (APPEND SOURCES ${RC_FILE})
95     endif ()
96     endif ()
97    
98     if (APPLE)
99     set (ICON_FILE ${CMAKE_CURRENT_SOURCE_DIR}/images/${NAME}.icns)
100     list (APPEND SOURCES ${ICON_FILE})
101     set (MACOSX_BUNDLE_ICON_FILE ${NAME}.icns)
102     set_source_files_properties (${ICON_FILE} PROPERTIES
103     MACOSX_PACKAGE_LOCATION Resources)
104     endif ()
105    
106    
107     add_executable (${NAME}
108 capela 3567 ${UI_SOURCES}
109     ${MOC_SOURCES}
110     ${QRC_SOURCES}
111     ${SOURCES}
112     )
113    
114 capela 3572 set_target_properties (${NAME} PROPERTIES CXX_STANDARD 11)
115    
116 capela 3570 if (WIN32)
117 capela 3572 set_target_properties (${NAME} PROPERTIES WIN32_EXECUTABLE true)
118 capela 3570 endif ()
119 capela 3567
120 capela 3570 if (APPLE)
121 capela 3572 set_target_properties (${NAME} PROPERTIES MACOSX_BUNDLE true)
122 capela 3567 endif ()
123    
124 capela 3570 target_link_libraries (${NAME} PRIVATE Qt5::Widgets)
125    
126 capela 3569 if (CONFIG_XUNIQUE)
127 capela 3570 target_link_libraries (${NAME} PRIVATE Qt5::Network)
128 capela 3569 endif ()
129    
130 capela 3570 if (CONFIG_LIBLSCP)
131     target_link_libraries (${NAME} PRIVATE ${LSCP_LIBRARIES})
132     endif ()
133    
134     if (CONFIG_LIBGIG)
135     target_link_libraries (${NAME} PRIVATE ${GIG_LIBRARIES})
136     endif ()
137    
138    
139 capela 3567 if (UNIX AND NOT APPLE)
140 capela 3570 install (TARGETS ${NAME} RUNTIME
141 capela 3569 DESTINATION ${CMAKE_INSTALL_BINDIR})
142 capela 3567 install (FILES ${QM_FILES}
143 capela 3570 DESTINATION ${CMAKE_INSTALL_DATADIR}/${NAME}/translations)
144     install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.desktop
145 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
146 capela 3570 install (FILES images/${NAME}.png
147 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps)
148 capela 3570 install (FILES images/${NAME}.svg
149 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps)
150 capela 3570 install (FILES appdata/${NAME}.appdata.xml
151 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
152 capela 3570 install (FILES mimetypes/${NAME}.xml
153 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages)
154 capela 3570 install (FILES mimetypes/application-x-${NAME}-session.png
155 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/mimetypes)
156 capela 3570 install (FILES mimetypes/application-x-${NAME}-session.svg
157 capela 3569 DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/mimetypes)
158 capela 3567 endif ()
159 capela 3570
160     if (WIN32)
161     install (TARGETS ${NAME} RUNTIME
162     DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
163     install (FILES ${QM_FILES}
164     DESTINATION ${CMAKE_INSTALL_DATADIR}/${NAME}/translations)
165     endif ()

  ViewVC Help
Powered by ViewVC