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

Diff of /qsampler/trunk/CMakeLists.txt

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

revision 3633 by capela, Thu Oct 17 14:09:09 2019 UTC revision 3852 by capela, Sun Jan 24 17:04:13 2021 UTC
# Line 1  Line 1 
1  project(QSAMPLER)  cmake_minimum_required(VERSION 3.10)
2    
3  cmake_minimum_required(VERSION 3.1)  project(qsampler
4      VERSION 0.9.1
5      DESCRIPTION "A LinuxSampler Qt GUI Interface"
6      LANGUAGES C CXX)
7    
8  set (VERSION "0.6.0")  set (CONFIG_VERSION ${PROJECT_VERSION})
   
 set (CONFIG_VERSION ${VERSION})  
9  execute_process (  execute_process (
10    COMMAND git describe --tags --dirty --abbrev=6    COMMAND git describe --tags --dirty --abbrev=6
11    OUTPUT_VARIABLE GIT_DESCRIBE_OUTPUT    OUTPUT_VARIABLE GIT_DESCRIBE_OUTPUT
# Line 12  execute_process ( Line 13  execute_process (
13    OUTPUT_STRIP_TRAILING_WHITESPACE)    OUTPUT_STRIP_TRAILING_WHITESPACE)
14  if (GIT_DESCRIBE_RESULT EQUAL 0)  if (GIT_DESCRIBE_RESULT EQUAL 0)
15    set (VERSION "${GIT_DESCRIBE_OUTPUT}")    set (VERSION "${GIT_DESCRIBE_OUTPUT}")
16    string (REGEX REPLACE "^[^_]+"   "" VERSION "${VERSION}")    string (REGEX REPLACE "^[^0-9]+" "" VERSION "${VERSION}")
   string (REGEX REPLACE "^[_vV]+"  "" VERSION "${VERSION}")  
17    string (REGEX REPLACE "-g"   "git." VERSION "${VERSION}")    string (REGEX REPLACE "-g"   "git." VERSION "${VERSION}")
18    string (REGEX REPLACE "[_|-]+"  "." VERSION "${VERSION}")    string (REGEX REPLACE "[_|-]+"  "." VERSION "${VERSION}")
19    execute_process (    execute_process (
# Line 24  if (GIT_DESCRIBE_RESULT EQUAL 0) Line 24  if (GIT_DESCRIBE_RESULT EQUAL 0)
24    if (GIT_REVPARSE_RESULT EQUAL 0 AND NOT GIT_REVPARSE_OUTPUT STREQUAL "master")    if (GIT_REVPARSE_RESULT EQUAL 0 AND NOT GIT_REVPARSE_OUTPUT STREQUAL "master")
25      set (VERSION "${VERSION} [${GIT_REVPARSE_OUTPUT}]")      set (VERSION "${VERSION} [${GIT_REVPARSE_OUTPUT}]")
26    endif ()    endif ()
27    else ()
28      set (VERSION "${PROJECT_VERSION}")
29  endif ()  endif ()
30    
31  set (PACKAGE_NAME "Qsampler")  set (PACKAGE_NAME "Qsampler")
# Line 70  if (POLICY CMP0075) Line 72  if (POLICY CMP0075)
72  endif ()  endif ()
73    
74  # Check for Qt  # Check for Qt
75  find_package (Qt5 REQUIRED COMPONENTS Core Gui Widgets)  find_package (QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
76    find_package (Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Core Gui Widgets)
77    
78  if (CONFIG_XUNIQUE)  if (CONFIG_XUNIQUE)
79    find_package (Qt5 REQUIRED COMPONENTS Network)    find_package (Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Network)
80  endif ()  endif ()
81    
82  find_package (Qt5LinguistTools)  find_package (Qt${QT_VERSION_MAJOR}LinguistTools)
83    
84  include (CheckIncludeFile)  include (CheckIncludeFile)
85  include (CheckIncludeFiles)  include (CheckIncludeFiles)
# Line 108  endif () Line 111  endif ()
111  find_package (PkgConfig REQUIRED)  find_package (PkgConfig REQUIRED)
112    
113  # Check for LSCP libraries.  # Check for LSCP libraries.
114  pkg_check_modules (LSCP REQUIRED lscp)  pkg_check_modules (LSCP REQUIRED IMPORTED_TARGET lscp)
115  set (CONFIG_LIBLSCP ${LSCP_FOUND})  if (LSCP_FOUND)
116  if (CONFIG_LIBLSCP)    set (CONFIG_LIBLSCP 1)
117    include_directories (${LSCP_INCLUDE_DIRS})    include_directories (${LSCP_INCLUDE_DIRS})
118    link_directories (${LSCP_LIBRARY_DIRS})    link_directories (${LSCP_LIBRARY_DIRS})
119  # link_libraries (${LSCP_LIBRARIES})  # link_libraries (${LSCP_LIBRARIES})
120    set (CMAKE_REQUIRED_LIBRARIES "${LSCP_LIBRARIES};${CMAKE_REQUIRED_LIBRARIES}")    set (CMAKE_REQUIRED_LIBRARIES "${LSCP_LIBRARIES};${CMAKE_REQUIRED_LIBRARIES}")
121    # Check for for instrument_name in lscp_channel_info_t.    # Check for for instrument_name in lscp_channel_info_t.
122    check_include_file (lscp/client.h CONFIG_INSTRUMENT_NAME)    check_include_file (lscp/client.h HAVE_LSCP_CLIENT_H)
123      if (NOT HAVE_LSCP_CLIENT_H)
124        set (CONFIG_INSTRUMENT_NAME 0)
125      else ()
126        set (CONFIG_INSTRUMENT_NAME 1)    
127      endif ()
128    # Check for mute/solo in lscp_channel_info_t.    # Check for mute/solo in lscp_channel_info_t.
129    check_include_file (lscp/client.h CONFIG_MUTE_SOLO)    if (NOT HAVE_LSCP_CLIENT_H)
130        set (CONFIG_MUTE_SOLO 0)
131      else ()
132        set (CONFIG_MUTE_SOLO 1)    
133      endif ()
134    if (CONFIG_MUTE_SOLO)    if (CONFIG_MUTE_SOLO)
135      check_function_exists (lscp_set_channel_mute CONFIG_MUTE_SOLO)      check_function_exists (lscp_set_channel_mute CONFIG_MUTE_SOLO)
136    endif ()    endif ()
# Line 131  if (CONFIG_LIBLSCP) Line 143  if (CONFIG_LIBLSCP)
143    check_function_exists (lscp_create_fxsend CONFIG_FXSEND)    check_function_exists (lscp_create_fxsend CONFIG_FXSEND)
144    # Check for FX send level in lscp_fxsend_info_t    # Check for FX send level in lscp_fxsend_info_t
145    if (CONFIG_FXSEND)    if (CONFIG_FXSEND)
146      check_include_file (lscp/client.h CONFIG_FXSEND_LEVEL)      if (NOT HAVE_LSCP_CLIENT_H)
147          set (CONFIG_FXSEND_LEVEL 0)
148        else ()
149          set (CONFIG_FXSEND_LEVEL 1)    
150        endif ()
151    endif ()    endif ()
152    # Check if FX send rename is available.    # Check if FX send rename is available.
153    if (CONFIG_FXSEND)    if (CONFIG_FXSEND)
154      check_function_exists (lscp_set_fxsend_name CONFIG_FXSEND_RENAME)      check_function_exists (lscp_set_fxsend_name CONFIG_FXSEND_RENAME)
155    endif ()    endif ()
156    # Check for audio_routing array type    # Check for audio_routing array type
157    check_include_file (lscp/client.h CONFIG_AUDIO_ROUTING)    if (NOT HAVE_LSCP_CLIENT_H)
158        set (CONFIG_AUDIO_ROUTING 0)
159      else ()
160        set (CONFIG_AUDIO_ROUTING 1)    
161      endif ()
162    # Check if global volume is available.    # Check if global volume is available.
163    check_function_exists (lscp_set_volume CONFIG_VOLUME)    check_function_exists (lscp_set_volume CONFIG_VOLUME)
164    # Check if instrument editing is available.    # Check if instrument editing is available.
165    check_function_exists (lscp_edit_channel_instrument CONFIG_EDIT_INSTRUMENT)    check_function_exists (lscp_edit_channel_instrument CONFIG_EDIT_INSTRUMENT)
166    # Check for CHANNEL_MIDI LSCP event support in liblscp],    # Check for CHANNEL_MIDI LSCP event support in liblscp],
167    check_include_file (lscp/event.h CONFIG_EVENT_CHANNEL_MIDI)    check_include_file (lscp/event.h HAVE_LSCP_EVENT_H)
168      if (NOT HAVE_LSCP_EVENT_H)
169        set (CONFIG_EVENT_CHANNEL_MIDI 0)
170      else ()
171        set (CONFIG_EVENT_CHANNEL_MIDI 1)    
172      endif ()
173    # Check for DEVICE_MIDI LSCP event support in liblscp],    # Check for DEVICE_MIDI LSCP event support in liblscp],
174    check_include_file (lscp/event.h CONFIG_EVENT_DEVICE_MIDI)    if (NOT HAVE_LSCP_EVENT_H)
175        set (CONFIG_EVENT_DEVICE_MIDI 0)
176      else ()
177        set (CONFIG_EVENT_DEVICE_MIDI 1)    
178      endif ()
179    # Check if max. voices / streams is available.    # Check if max. voices / streams is available.
180    check_function_exists (lscp_get_voices CONFIG_MAX_VOICES)    check_function_exists (lscp_get_voices CONFIG_MAX_VOICES)
181  else ()  else ()
182    message (FATAL_ERROR "*** LSCP library not found.")    message (FATAL_ERROR "*** LSCP library not found.")
183      set (CONFIG_LIBLSCP 0)
184  endif ()  endif ()
185    
186  # Check for GIG libraries.  # Check for GIG libraries.
187  if (CONFIG_LIBGIG)  if (CONFIG_LIBGIG)
188    pkg_check_modules (GIG gig>=3.3.0)    pkg_check_modules (GIG IMPORTED_TARGET gig>=3.3.0)
189    set (CONFIG_LIBGIG ${GIG_FOUND})    if (GIG_FOUND)
   if (CONFIG_LIBGIG)  
190      include_directories (${GIG_INCLUDE_DIRS})      include_directories (${GIG_INCLUDE_DIRS})
191      link_directories (${GIG_LIBRARY_DIRS})      link_directories (${GIG_LIBRARY_DIRS})
192      link_libraries (${GIG_LIBRARIES})      link_libraries (${GIG_LIBRARIES})
# Line 165  if (CONFIG_LIBGIG) Line 194  if (CONFIG_LIBGIG)
194      # liggig supports fast information retrieval.      # liggig supports fast information retrieval.
195      set (CONFIG_LIBGIG_SETAUTOLOAD 1)      set (CONFIG_LIBGIG_SETAUTOLOAD 1)
196      # Check if libgig/SF.h is available.      # Check if libgig/SF.h is available.
197      check_include_file_cxx (libgig/SF.h CONFIG_LIBGIG_SF2)      check_include_file_cxx (libgig/SF.h HAVE_LIBGIG_SF_H)
198        if (NOT HAVE_LIBGIG_SF_H)
199          set (CONFIG_LIBGIG_SF2 0)
200        else ()
201          set (CONFIG_LIBGIG_SF2 1)    
202        endif ()
203    else ()    else ()
204      message (WARNING "*** GIG library not found.")      message (WARNING "*** GIG library not found.")
205        set (CONFIG_LIBGIG 0)
206    endif ()    endif ()
207  endif ()  endif ()
208    

Legend:
Removed from v.3633  
changed lines
  Added in v.3852

  ViewVC Help
Powered by ViewVC