/[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 3568 by capela, Sun Aug 25 14:17:00 2019 UTC revision 3851 by capela, Mon Jan 18 12:04:37 2021 UTC
# Line 1  Line 1 
1    # project(qsampler)
2    
3  include_directories (  set(CMAKE_INCLUDE_CURRENT_DIR ON)
   ${CMAKE_CURRENT_BINARY_DIR}  
   ${CMAKE_CURRENT_SOURCE_DIR}  
   ${QT_INCLUDES}  
 )  
   
 link_directories (  
   ${CMAKE_CURRENT_BINARY_DIR}  
   ${QT_LIBRARY_DIR}  
 )  
   
 if (CONFIG_LIBLSCP)  
   include_directories (${LSCP_INCLUDE_DIRS})  
   link_directories (${LSCP_LIBRARY_DIRS})  
 endif ()  
   
 if (CONFIG_LIBGIG)  
   include_directories (${GIG_INCLUDE_DIRS})  
   link_directories (${GIG_LIBRARY_DIRS})  
 endif ()  
   
 configure_file (cmake_config.h ${CMAKE_CURRENT_BINARY_DIR}/config.h)  
4    
5  set (ac_prefix ${CMAKE_INSTALL_PREFIX})  set(CMAKE_AUTOUIC ON)
6    set(CMAKE_AUTOMOC ON)
7  configure_file (qsampler.desktop ${CMAKE_CURRENT_BINARY_DIR}/qsampler.desktop)  set(CMAKE_AUTORCC ON)
8    
9    if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/config.h)
10        file(REMOVE ${CMAKE_CURRENT_SOURCE_DIR}/config.h)
11    endif()
12    configure_file (cmake_config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
13    
14  set (HEADERS  set (HEADERS
15    qsampler.h    qsampler.h
# Line 46  set (HEADERS Line 31  set (HEADERS
31    qsamplerChannelForm.h    qsamplerChannelForm.h
32    qsamplerChannelFxForm.h    qsamplerChannelFxForm.h
33    qsamplerOptionsForm.h    qsamplerOptionsForm.h
34      qsamplerPaletteForm.h
35    qsamplerMainForm.h    qsamplerMainForm.h
36  )  )
37    
# Line 68  set (SOURCES Line 54  set (SOURCES
54    qsamplerChannelForm.cpp    qsamplerChannelForm.cpp
55    qsamplerChannelFxForm.cpp    qsamplerChannelFxForm.cpp
56    qsamplerOptionsForm.cpp    qsamplerOptionsForm.cpp
57      qsamplerPaletteForm.cpp
58    qsamplerMainForm.cpp    qsamplerMainForm.cpp
59  )  )
60    
# Line 79  set (FORMS Line 66  set (FORMS
66    qsamplerChannelForm.ui    qsamplerChannelForm.ui
67    qsamplerChannelFxForm.ui    qsamplerChannelFxForm.ui
68    qsamplerOptionsForm.ui    qsamplerOptionsForm.ui
69      qsamplerPaletteForm.ui
70    qsamplerMainForm.ui    qsamplerMainForm.ui
71  )  )
72    
# Line 92  set (TRANSLATIONS Line 80  set (TRANSLATIONS
80    translations/qsampler_ru.ts    translations/qsampler_ru.ts
81  )  )
82    
83  qt5_add_translation ( QM_FILES ${TRANSLATIONS} )  if (QT_VERSION VERSION_LESS 5.15.0)
84  add_custom_target( translations ALL DEPENDS ${QM_FILES} )    qt5_add_translation (QM_FILES ${TRANSLATIONS})
85    else ()
86      qt_add_translation (QM_FILES ${TRANSLATIONS})
87    endif ()
88    
89    add_custom_target (translations ALL DEPENDS ${QM_FILES})
90    
91    if (WIN32)
92      set (RC_FILE ${CMAKE_CURRENT_SOURCE_DIR}/win32/${PROJECT_NAME}.rc)
93      set (RES_FILE ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.res.obj)
94      find_program (WINDRES_EXECUTABLE NAMES windres mingw32-windres i686-mingw32-windres)
95      if (MINGW)
96        exec_program (${WINDRES_EXECUTABLE}
97          ARGS "-i ${RC_FILE} -o ${RES_FILE} --include-dir=${CMAKE_CURRENT_SOURCE_DIR}/images")
98        list (APPEND SOURCES ${RES_FILE})
99      else ()
100        list (APPEND SOURCES ${RC_FILE})
101      endif ()
102    endif ()
103    
104  qt5_wrap_ui (UI_SOURCES ${FORMS})  if (APPLE)
105  qt5_wrap_cpp (MOC_SOURCES ${HEADERS})    set (ICON_FILE ${CMAKE_CURRENT_SOURCE_DIR}/images/${PROJECT_NAME}.icns)
106  qt5_add_resources (QRC_SOURCES ${RESOURCES})    list (APPEND SOURCES ${ICON_FILE})
107      set (MACOSX_BUNDLE_ICON_FILE ${PROJECT_NAME}.icns)
108  add_executable (qsampler    set_source_files_properties (${ICON_FILE} PROPERTIES
109    ${UI_SOURCES}      MACOSX_PACKAGE_LOCATION Resources)
110    ${MOC_SOURCES}  endif ()
111    ${QRC_SOURCES}  
112    
113    add_executable (${PROJECT_NAME}
114      ${HEADERS}
115    ${SOURCES}    ${SOURCES}
116      ${FORMS}
117      ${RESOURCES}
118  )  )
119    
120  target_link_libraries (qsampler  set_target_properties (${PROJECT_NAME} PROPERTIES CXX_STANDARD 17)
121    ${QT_LIBRARIES}  
122    ${LSCP_LIBRARIES}  if (WIN32)
123  )    set_target_properties (${PROJECT_NAME} PROPERTIES WIN32_EXECUTABLE true)
124    endif ()
125    
126    if (APPLE)
127      set_target_properties (${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE true)
128    endif ()
129    
130    target_link_libraries (${PROJECT_NAME} PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
131    
132    if (CONFIG_XUNIQUE)
133      target_link_libraries (${PROJECT_NAME} PRIVATE Qt${QT_VERSION_MAJOR}::Network)
134    endif ()
135    
136    if (CONFIG_LIBLSCP)
137      target_link_libraries (${PROJECT_NAME} PRIVATE PkgConfig::LSCP)
138    endif ()
139    
140  if (CONFIG_LIBGIG)  if (CONFIG_LIBGIG)
141    target_link_libraries (qsampler ${GIG_LIBRARIES})    target_link_libraries (${PROJECT_NAME} PRIVATE PkgConfig::GIG)
142  endif ()  endif ()
143    
 qt5_use_modules (qsampler Core Gui Widgets Network)  
144    
145  if (UNIX AND NOT APPLE)  if (UNIX AND NOT APPLE)
146    install (TARGETS qsampler    install (TARGETS ${PROJECT_NAME} RUNTIME
147       RUNTIME DESTINATION bin)       DESTINATION ${CMAKE_INSTALL_BINDIR})
148    install (FILES ${QM_FILES}    install (FILES ${QM_FILES}
149       DESTINATION share/qsampler/translations)       DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/translations)
150    install (FILES ${CMAKE_CURRENT_BINARY_DIR}/qsampler.desktop    install (FILES ${PROJECT_NAME}.desktop
151       DESTINATION share/applications)       DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
152    install (FILES images/qsampler.png    install (FILES images/${PROJECT_NAME}.png
153       DESTINATION share/pixmaps)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps)
154    install (FILES appdata/qsampler.appdata.xml    install (FILES images/${PROJECT_NAME}.svg
155       DESTINATION share/metainfo)       DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps)
156      install (FILES appdata/${PROJECT_NAME}.appdata.xml
157         DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
158      install (FILES mimetypes/${PROJECT_NAME}.xml
159         DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages)
160      install (FILES mimetypes/application-x-${PROJECT_NAME}-session.png
161         DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/mimetypes)
162      install (FILES mimetypes/application-x-${PROJECT_NAME}-session.svg
163         DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/mimetypes)
164    endif ()
165    
166    if (WIN32)
167       install (TARGETS ${PROJECT_NAME} RUNTIME
168         DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
169       install (FILES ${QM_FILES}
170         DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/translations)
171  endif ()  endif ()

Legend:
Removed from v.3568  
changed lines
  Added in v.3851

  ViewVC Help
Powered by ViewVC