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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3569 by capela, Sun Aug 25 21:47:56 2019 UTC revision 3841 by capela, Mon Dec 14 15:49:17 2020 UTC
# Line 1  Line 1 
1    # project(qsampler)
2    
3  include_directories (  include_directories (
   ${CMAKE_CURRENT_BINARY_DIR}  
4    ${CMAKE_CURRENT_SOURCE_DIR}    ${CMAKE_CURRENT_SOURCE_DIR}
   ${QT_INCLUDES}  
 )  
   
 link_directories (  
5    ${CMAKE_CURRENT_BINARY_DIR}    ${CMAKE_CURRENT_BINARY_DIR}
   ${QT_LIBRARY_DIR}  
6  )  )
7    
8  configure_file (cmake_config.h ${CMAKE_CURRENT_BINARY_DIR}/config.h)  configure_file (cmake_config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
   
 set (ac_prefix ${CMAKE_INSTALL_PREFIX})  
   
 configure_file (qsampler.desktop ${CMAKE_CURRENT_BINARY_DIR}/qsampler.desktop)  
9    
10  set (HEADERS  set (HEADERS
11    qsampler.h    qsampler.h
# Line 36  set (HEADERS Line 27  set (HEADERS
27    qsamplerChannelForm.h    qsamplerChannelForm.h
28    qsamplerChannelFxForm.h    qsamplerChannelFxForm.h
29    qsamplerOptionsForm.h    qsamplerOptionsForm.h
30      qsamplerPaletteForm.h
31    qsamplerMainForm.h    qsamplerMainForm.h
32  )  )
33    
# Line 58  set (SOURCES Line 50  set (SOURCES
50    qsamplerChannelForm.cpp    qsamplerChannelForm.cpp
51    qsamplerChannelFxForm.cpp    qsamplerChannelFxForm.cpp
52    qsamplerOptionsForm.cpp    qsamplerOptionsForm.cpp
53      qsamplerPaletteForm.cpp
54    qsamplerMainForm.cpp    qsamplerMainForm.cpp
55  )  )
56    
# Line 69  set (FORMS Line 62  set (FORMS
62    qsamplerChannelForm.ui    qsamplerChannelForm.ui
63    qsamplerChannelFxForm.ui    qsamplerChannelFxForm.ui
64    qsamplerOptionsForm.ui    qsamplerOptionsForm.ui
65      qsamplerPaletteForm.ui
66    qsamplerMainForm.ui    qsamplerMainForm.ui
67  )  )
68    
# Line 82  set (TRANSLATIONS Line 76  set (TRANSLATIONS
76    translations/qsampler_ru.ts    translations/qsampler_ru.ts
77  )  )
78    
79  qt5_add_translation ( QM_FILES ${TRANSLATIONS} )  qt_wrap_ui (UI_SOURCES ${FORMS})
80  add_custom_target( translations ALL DEPENDS ${QM_FILES} )  qt_wrap_cpp (MOC_SOURCES ${HEADERS})
81    qt_add_resources (QRC_SOURCES ${RESOURCES})
82    qt_add_translation (QM_FILES ${TRANSLATIONS})
83    
84    add_custom_target (translations ALL DEPENDS ${QM_FILES})
85    
86    if (WIN32)
87      set (RC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/win32/${PROJECT_NAME}.rc)
88      set (RES_FILE ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.res.obj)
89      find_program (WINDRES_EXECUTABLE NAMES windres mingw32-windres i686-mingw32-windres)
90      if (MINGW)
91        exec_program (${WINDRES_EXECUTABLE}
92          ARGS "-i ${RC_FILE} -o ${RES_FILE} --include-dir=${CMAKE_CURRENT_SOURCE_DIR}/images")
93        list (APPEND SOURCES ${RES_FILE})
94      else ()
95        list (APPEND SOURCES ${RC_FILE})
96      endif ()
97    endif ()
98    
99    if (APPLE)
100      set (ICON_FILE ${CMAKE_CURRENT_SOURCE_DIR}/images/${PROJECT_NAME}.icns)
101      list (APPEND SOURCES ${ICON_FILE})
102      set (MACOSX_BUNDLE_ICON_FILE ${PROJECT_NAME}.icns)
103      set_source_files_properties (${ICON_FILE} PROPERTIES
104        MACOSX_PACKAGE_LOCATION Resources)
105    endif ()
106    
 qt5_wrap_ui (UI_SOURCES ${FORMS})  
 qt5_wrap_cpp (MOC_SOURCES ${HEADERS})  
 qt5_add_resources (QRC_SOURCES ${RESOURCES})  
107    
108  add_executable (qsampler  add_executable (${PROJECT_NAME}
109    ${UI_SOURCES}    ${UI_SOURCES}
110    ${MOC_SOURCES}    ${MOC_SOURCES}
111    ${QRC_SOURCES}    ${QRC_SOURCES}
112    ${SOURCES}    ${SOURCES}
113  )  )
114    
115  target_link_libraries (qsampler  set_target_properties (${PROJECT_NAME} PROPERTIES CXX_STANDARD 17)
   ${QT_LIBRARIES}  
   ${LSCP_LIBRARIES}  
 )  
116    
117  if (CONFIG_LIBGIG)  if (WIN32)
118    target_link_libraries (qsampler ${GIG_LIBRARIES})    set_target_properties (${PROJECT_NAME} PROPERTIES WIN32_EXECUTABLE true)
119  endif ()  endif ()
120    
121  qt5_use_modules (qsampler Core Gui Widgets)  if (APPLE)
122      set_target_properties (${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE true)
123    endif ()
124    
125    target_link_libraries (${PROJECT_NAME} PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
126    
127  if (CONFIG_XUNIQUE)  if (CONFIG_XUNIQUE)
128    qt5_use_modules (qsampler Network)    target_link_libraries (${PROJECT_NAME} PRIVATE Qt${QT_VERSION_MAJOR}::Network)
129    endif ()
130    
131    if (CONFIG_LIBLSCP)
132      target_link_libraries (${PROJECT_NAME} PRIVATE ${LSCP_LIBRARIES})
133    endif ()
134    
135    if (CONFIG_LIBGIG)
136      target_link_libraries (${PROJECT_NAME} PRIVATE ${GIG_LIBRARIES})
137  endif ()  endif ()
138    
139    
140  if (UNIX AND NOT APPLE)  if (UNIX AND NOT APPLE)
141    install (TARGETS qsampler RUNTIME    install (TARGETS ${PROJECT_NAME} RUNTIME
142       DESTINATION ${CMAKE_INSTALL_BINDIR})       DESTINATION ${CMAKE_INSTALL_BINDIR})
143    install (FILES ${QM_FILES}    install (FILES ${QM_FILES}
144       DESTINATION ${CMAKE_INSTALL_DATADIR}/qsampler/translations)       DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/translations)
145    install (FILES ${CMAKE_CURRENT_BINARY_DIR}/qsampler.desktop    install (FILES ${PROJECT_NAME}.desktop
146       DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)       DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
147    install (FILES images/qsampler.png    install (FILES images/${PROJECT_NAME}.png
148       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps)
149    install (FILES images/qsampler.svg    install (FILES images/${PROJECT_NAME}.svg
150       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps)
151    install (FILES appdata/qsampler.appdata.xml    install (FILES appdata/${PROJECT_NAME}.appdata.xml
152       DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)       DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
153    install (FILES mimetypes/qsampler.xml    install (FILES mimetypes/${PROJECT_NAME}.xml
154       DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages)       DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages)
155    install (FILES mimetypes/application-x-qsampler-session.png    install (FILES mimetypes/application-x-${PROJECT_NAME}-session.png
156       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/mimetypes)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/mimetypes)
157    install (FILES mimetypes/application-x-qsampler-session.svg    install (FILES mimetypes/application-x-${PROJECT_NAME}-session.svg
158       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/mimetypes)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/mimetypes)
159  endif ()  endif ()
160    
161    if (WIN32)
162       install (TARGETS ${PROJECT_NAME} RUNTIME
163         DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
164       install (FILES ${QM_FILES}
165         DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/translations)
166    endif ()

Legend:
Removed from v.3569  
changed lines
  Added in v.3841

  ViewVC Help
Powered by ViewVC