/[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 3675 by capela, Thu Dec 26 14:51:26 2019 UTC revision 3873 by capela, Thu Apr 15 13:28:01 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.3
5      DESCRIPTION "A LinuxSampler Qt GUI Interface"
6      LANGUAGES C CXX)
7    
8  set (VERSION "0.6.2")  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      WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
12    OUTPUT_VARIABLE GIT_DESCRIBE_OUTPUT    OUTPUT_VARIABLE GIT_DESCRIBE_OUTPUT
13    RESULT_VARIABLE GIT_DESCRIBE_RESULT    RESULT_VARIABLE GIT_DESCRIBE_RESULT
14    OUTPUT_STRIP_TRAILING_WHITESPACE)    OUTPUT_STRIP_TRAILING_WHITESPACE)
15  if (GIT_DESCRIBE_RESULT EQUAL 0)  if (GIT_DESCRIBE_RESULT EQUAL 0)
16    set (VERSION "${GIT_DESCRIBE_OUTPUT}")    set (VERSION "${GIT_DESCRIBE_OUTPUT}")
17    string (REGEX REPLACE "^[^_]+"   "" VERSION "${VERSION}")    string (REGEX REPLACE "^[^0-9]+" "" VERSION "${VERSION}")
18      string (REGEX REPLACE "^1_"      "" VERSION "${VERSION}")
19    string (REGEX REPLACE "^[_vV]+"  "" VERSION "${VERSION}")    string (REGEX REPLACE "^[_vV]+"  "" VERSION "${VERSION}")
20    string (REGEX REPLACE "-g"   "git." VERSION "${VERSION}")    string (REGEX REPLACE "-g"   "git." VERSION "${VERSION}")
21    string (REGEX REPLACE "[_|-]+"  "." VERSION "${VERSION}")    string (REGEX REPLACE "[_|-]"   "." VERSION "${VERSION}")
22    execute_process (    execute_process (
23      COMMAND git rev-parse --abbrev-ref HEAD      COMMAND git rev-parse --abbrev-ref HEAD
24        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
25      OUTPUT_VARIABLE GIT_REVPARSE_OUTPUT      OUTPUT_VARIABLE GIT_REVPARSE_OUTPUT
26      RESULT_VARIABLE GIT_REVPARSE_RESULT      RESULT_VARIABLE GIT_REVPARSE_RESULT
27      OUTPUT_STRIP_TRAILING_WHITESPACE)      OUTPUT_STRIP_TRAILING_WHITESPACE)
28    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")
29      set (VERSION "${VERSION} [${GIT_REVPARSE_OUTPUT}]")      set (VERSION "${VERSION} [${GIT_REVPARSE_OUTPUT}]")
30    endif ()    endif ()
31    else ()
32      set (VERSION "${PROJECT_VERSION}")
33  endif ()  endif ()
34    
35  set (PACKAGE_NAME "Qsampler")  set (PACKAGE_NAME "Qsampler")
# Line 32  set (PACKAGE_BUGREPORT "rncbc@rncbc.org" Line 38  set (PACKAGE_BUGREPORT "rncbc@rncbc.org"
38  set (PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")  set (PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
39  set (PACKAGE_TARNAME "qsampler")  set (PACKAGE_TARNAME "qsampler")
40    
41    set (ac_version "${PROJECT_VERSION}")
42    set (ac_prefix "${CMAKE_INSTALL_PREFIX}")
43    
44  set (CONFIG_BUILD_VERSION "${PACKAGE_VERSION}")  set (CONFIG_BUILD_VERSION "${PACKAGE_VERSION}")
45    
46  if (CMAKE_BUILD_TYPE)  if (CMAKE_BUILD_TYPE)
# Line 64  option (CONFIG_XUNIQUE "Enable unique/si Line 73  option (CONFIG_XUNIQUE "Enable unique/si
73  option (CONFIG_STACKTRACE "Enable debugger stack-trace (default=no)" 0)  option (CONFIG_STACKTRACE "Enable debugger stack-trace (default=no)" 0)
74    
75    
76    # Enable Qt6 build preference.
77    option (CONFIG_QT6 "Enable Qt6 build (default=no)" 0)
78    
79    
80  # Fix for new CMAKE_REQUIRED_LIBRARIES policy.  # Fix for new CMAKE_REQUIRED_LIBRARIES policy.
81  if (POLICY CMP0075)  if (POLICY CMP0075)
82    cmake_policy (SET CMP0075 NEW)    cmake_policy (SET CMP0075 NEW)
83  endif ()  endif ()
84    
85  # Check for Qt  # Check for Qt...
86  find_package (Qt5 REQUIRED COMPONENTS Core Gui Widgets)  if (CONFIG_QT6)
87      find_package (Qt6 QUIET)
88      if (NOT Qt6_FOUND)
89        set (CONFIG_QT6 0)
90      endif ()
91    endif ()
92    
93    if (CONFIG_QT6)
94      find_package (QT QUIET NAMES Qt6)
95    else ()
96      find_package (QT QUIET NAMES Qt5)
97    endif ()
98    
99    find_package (Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Core Gui Widgets)
100    
101  if (CONFIG_XUNIQUE)  if (CONFIG_XUNIQUE)
102    find_package (Qt5 REQUIRED COMPONENTS Network)    find_package (Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Network)
103  endif ()  endif ()
104    
105  find_package (Qt5LinguistTools)  find_package (Qt${QT_VERSION_MAJOR}LinguistTools)
106    
107  include (CheckIncludeFile)  include (CheckIncludeFile)
108  include (CheckIncludeFiles)  include (CheckIncludeFiles)
# Line 108  endif () Line 134  endif ()
134  find_package (PkgConfig REQUIRED)  find_package (PkgConfig REQUIRED)
135    
136  # Check for LSCP libraries.  # Check for LSCP libraries.
137  pkg_check_modules (LSCP REQUIRED lscp)  pkg_check_modules (LSCP REQUIRED IMPORTED_TARGET lscp)
138  if (LSCP_FOUND)  if (LSCP_FOUND)
139    set (CONFIG_LIBLSCP 1)    set (CONFIG_LIBLSCP 1)
140    include_directories (${LSCP_INCLUDE_DIRS})    include_directories (${LSCP_INCLUDE_DIRS})
# Line 182  endif () Line 208  endif ()
208    
209  # Check for GIG libraries.  # Check for GIG libraries.
210  if (CONFIG_LIBGIG)  if (CONFIG_LIBGIG)
211    pkg_check_modules (GIG gig>=3.3.0)    pkg_check_modules (GIG IMPORTED_TARGET gig>=3.3.0)
212    if (GIG_FOUND)    if (GIG_FOUND)
213      include_directories (${GIG_INCLUDE_DIRS})      include_directories (${GIG_INCLUDE_DIRS})
214      link_directories (${GIG_LIBRARY_DIRS})      link_directories (${GIG_LIBRARY_DIRS})
# Line 221  macro (SHOW_OPTION text value) Line 247  macro (SHOW_OPTION text value)
247  endmacro ()  endmacro ()
248    
249    
250  message   ("\n  ${PACKAGE_NAME} ${PACKAGE_VERSION}")  message   ("\n  ${PACKAGE_NAME} ${PACKAGE_VERSION} (Qt ${QT_VERSION})")
251  message   ("\n  Build target . . . . . . . . . . . . . . . . . . .: ${CONFIG_BUILD_TYPE}\n")  message   ("\n  Build target . . . . . . . . . . . . . . . . . . .: ${CONFIG_BUILD_TYPE}\n")
252  show_option ("  LSCP instrument name support . . . . . . . . . . ." CONFIG_INSTRUMENT_NAME)  show_option ("  LSCP instrument name support . . . . . . . . . . ." CONFIG_INSTRUMENT_NAME)
253  show_option ("  LSCP mute/solo support . . . . . . . . . . . . . ." CONFIG_MUTE_SOLO)  show_option ("  LSCP mute/solo support . . . . . . . . . . . . . ." CONFIG_MUTE_SOLO)

Legend:
Removed from v.3675  
changed lines
  Added in v.3873

  ViewVC Help
Powered by ViewVC