Update meson.build file
- Bump meson version requirement - Bump cpp_std to gnu++20 - Bump copyright years to 2020-2025 - Add spdlog cmake options - Bump wx version requirement to 3.2.8 - Bump sqlite3 version requirement to 3.45.1 - Bump yaml-cpp version requirement to 0.8.0
This commit is contained in:
parent
fd2789d401
commit
3f2bb4551c
|
|
@ -21,12 +21,12 @@ project('SampleHive',
|
||||||
'cpp',
|
'cpp',
|
||||||
version : 'v0.9.0_alpha.1',
|
version : 'v0.9.0_alpha.1',
|
||||||
license : 'GPL v3',
|
license : 'GPL v3',
|
||||||
meson_version: '>= 0.58.0',
|
meson_version: '>= 1.5.2',
|
||||||
default_options : ['warning_level=2',
|
default_options : ['warning_level=2',
|
||||||
'buildtype=debugoptimized',
|
'buildtype=debugoptimized',
|
||||||
'b_lto=true',
|
'b_lto=true',
|
||||||
'b_lto_threads=2',
|
'b_lto_threads=2',
|
||||||
'cpp_std=gnu++14'])
|
'cpp_std=gnu++20'])
|
||||||
|
|
||||||
# Create configuration data
|
# Create configuration data
|
||||||
config_data = configuration_data()
|
config_data = configuration_data()
|
||||||
|
|
@ -39,7 +39,7 @@ project_name = meson.project_name()
|
||||||
project_license = meson.project_license()
|
project_license = meson.project_license()
|
||||||
project_version = meson.project_version()
|
project_version = meson.project_version()
|
||||||
project_author = 'Apoorv'
|
project_author = 'Apoorv'
|
||||||
project_copyright_years = '2020-2021'
|
project_copyright_years = '2020-2025'
|
||||||
project_description = 'A simple, modern audio sample browser/manager for GNU/Linux.'
|
project_description = 'A simple, modern audio sample browser/manager for GNU/Linux.'
|
||||||
project_website = 'http://samplehive.gitlab.io/website'
|
project_website = 'http://samplehive.gitlab.io/website'
|
||||||
|
|
||||||
|
|
@ -101,16 +101,17 @@ wx_opts = cmake.subproject_options()
|
||||||
wx_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
wx_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
||||||
'CMAKE_INSTALL_PREFIX': prefix,
|
'CMAKE_INSTALL_PREFIX': prefix,
|
||||||
'CMAKE_BUILD_TYPE': 'Release',
|
'CMAKE_BUILD_TYPE': 'Release',
|
||||||
'wxBUILD_SHARED': 'ON',
|
'wxBUILD_SHARED': 'OFF',
|
||||||
'wxBUILD_MONOLITHIC': 'OFF',
|
'wxBUILD_MONOLITHIC': 'OFF',
|
||||||
'wxBUILD_BENCHMARKS': 'OFF',
|
'wxBUILD_BENCHMARKS': 'OFF',
|
||||||
'wxBUILD_PRECOMP': 'OFF',
|
'wxBUILD_PRECOMP': 'OFF',
|
||||||
'wxBUILD_TESTS': 'OFF',
|
'wxBUILD_TESTS': 'OFF',
|
||||||
'wxBUILD_SAMPLES': 'OFF',
|
'wxBUILD_SAMPLES': 'OFF',
|
||||||
'wxBUILD_DEMOS': 'OFF',
|
'wxBUILD_DEMOS': 'OFF',
|
||||||
'wxBUILD_COMPATIBILITY': '3.0',
|
'wxBUILD_COMPATIBILITY': '3.2',
|
||||||
'wxBUILD_TOOLKIT': wx_toolkit,
|
'wxBUILD_TOOLKIT': wx_toolkit,
|
||||||
'wxUSE_UNICODE': 'ON',
|
'wxUSE_UNICODE': 'ON',
|
||||||
|
'wxUSE_GUI': 'ON',
|
||||||
'wxUSE_AUI': 'OFF',
|
'wxUSE_AUI': 'OFF',
|
||||||
'wxUSE_XML': 'OFF',
|
'wxUSE_XML': 'OFF',
|
||||||
'wxUSE_XRC': 'ON',
|
'wxUSE_XRC': 'ON',
|
||||||
|
|
@ -126,6 +127,17 @@ wx_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
||||||
'wxUSE_LIBSDL': 'OFF',
|
'wxUSE_LIBSDL': 'OFF',
|
||||||
'wxUSE_MEDIACTRL': 'ON'})
|
'wxUSE_MEDIACTRL': 'ON'})
|
||||||
|
|
||||||
|
spdlog_opts = cmake.subproject_options()
|
||||||
|
spdlog_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
||||||
|
'CMAKE_INSTALL_PREFIX': prefix,
|
||||||
|
'CMAKE_BUILD_TYPE': 'Release',
|
||||||
|
'SPDLOG_USE_STD_FORMAT': 'ON',
|
||||||
|
'SPDLOG_BUILD_EXAMPLE': 'OFF',
|
||||||
|
'SPDLOG_BUILD_EXAMPLE_HO': 'OFF',
|
||||||
|
'SPDLOG_BUILD_TESTS': 'OFF',
|
||||||
|
'SPDLOG_BUILD_TESTS_HO': 'OFF',
|
||||||
|
'SPDLOG_BUILD_BENCH': 'OFF'})
|
||||||
|
|
||||||
taglib_opts = cmake.subproject_options()
|
taglib_opts = cmake.subproject_options()
|
||||||
taglib_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
taglib_opts.add_cmake_defines({'CMAKE_POSITION_INDEPENDENT_CODE': 'ON',
|
||||||
'CMAKE_INSTALL_PREFIX': prefix,
|
'CMAKE_INSTALL_PREFIX': prefix,
|
||||||
|
|
@ -202,7 +214,7 @@ src = [
|
||||||
|
|
||||||
include_dirs = include_directories('src')
|
include_dirs = include_directories('src')
|
||||||
|
|
||||||
# Static link C/C++ libs if platform is windows
|
# Static link C and CXX libs if platform is windows
|
||||||
link_args = []
|
link_args = []
|
||||||
|
|
||||||
if host_sys == 'windows'
|
if host_sys == 'windows'
|
||||||
|
|
@ -210,7 +222,7 @@ if host_sys == 'windows'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Dependencies
|
# Dependencies
|
||||||
wx = dependency('wxwidgets', version: '>=3.2.1', required: false)
|
wx = dependency('wxwidgets', version: '>=3.2.8', required: true)
|
||||||
|
|
||||||
wx_cxx_flags = []
|
wx_cxx_flags = []
|
||||||
wx_libs = []
|
wx_libs = []
|
||||||
|
|
@ -230,7 +242,7 @@ if not wx.found()
|
||||||
src += rc_file
|
src += rc_file
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
wxconfig = find_program(['wx-config', 'wx-config-gtk3', 'wx-config-3.1'])
|
wxconfig = find_program(['wx-config', 'wx-config-gtk3', 'wx-config-3.2'])
|
||||||
wx_modules = ['media', 'std']
|
wx_modules = ['media', 'std']
|
||||||
|
|
||||||
foreach module : wx_modules
|
foreach module : wx_modules
|
||||||
|
|
@ -239,7 +251,7 @@ else
|
||||||
endforeach
|
endforeach
|
||||||
endif
|
endif
|
||||||
|
|
||||||
taglib = dependency('taglib', version: '>=1.12', required: false)
|
taglib = dependency('taglib', version: '>=1.12', required: true)
|
||||||
|
|
||||||
if not taglib.found()
|
if not taglib.found()
|
||||||
taglib_subproject = cmake.subproject('taglib', options: taglib_opts)
|
taglib_subproject = cmake.subproject('taglib', options: taglib_opts)
|
||||||
|
|
@ -248,7 +260,7 @@ else
|
||||||
config_data.set('USE_SYSTEM_INCLUDE_PATH', 1)
|
config_data.set('USE_SYSTEM_INCLUDE_PATH', 1)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
sqlite3 = dependency('sqlite3', version: '>=3.31.1', required: false)
|
sqlite3 = dependency('sqlite3', version: '>=3.45.1', required: true)
|
||||||
|
|
||||||
if not sqlite3.found()
|
if not sqlite3.found()
|
||||||
sqlite3_subproject = subproject('sqlite3')
|
sqlite3_subproject = subproject('sqlite3')
|
||||||
|
|
@ -256,28 +268,28 @@ if not sqlite3.found()
|
||||||
sqlite3 = declare_dependency(link_with: libsqlite3)
|
sqlite3 = declare_dependency(link_with: libsqlite3)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
yaml = dependency('yaml-cpp', version: '>=0.6.2', required: false)
|
yaml = dependency('yaml-cpp', version: '>=0.8.0', required: true)
|
||||||
|
|
||||||
if not yaml.found()
|
if not yaml.found()
|
||||||
yaml_subproject = cmake.subproject('yaml-cpp', options: yaml_opts)
|
yaml_subproject = cmake.subproject('yaml-cpp', options: yaml_opts)
|
||||||
yaml = yaml_subproject.dependency('yaml-cpp')
|
yaml = yaml_subproject.dependency('yaml-cpp')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
snd = dependency('sndfile', version: '>=1.2.0', required: false)
|
snd = dependency('sndfile', version: '>=1.2.0', required: true)
|
||||||
|
|
||||||
if not snd.found()
|
if not snd.found()
|
||||||
snd_subproject = cmake.subproject('libsndfile', options: snd_opts)
|
snd_subproject = cmake.subproject('libsndfile', options: snd_opts)
|
||||||
snd = snd_subproject.dependency('sndfile')
|
snd = snd_subproject.dependency('sndfile')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
spdlog = dependency('spdlog', version: '>=1.12.0', required: false)
|
spdlog = dependency('spdlog', version: '>=1.12.0', required: true)
|
||||||
|
|
||||||
if not spdlog.found()
|
if not spdlog.found()
|
||||||
spdlog_subproject = cmake.subproject('spdlog', options: spdlog_opts)
|
spdlog_subproject = cmake.subproject('spdlog', options: spdlog_opts)
|
||||||
spdlog = spdlog_subproject.dependency('spdlog')
|
spdlog = spdlog_subproject.dependency('spdlog')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
aubio = dependency('aubio', version: '>=0.4.9', required: false)
|
aubio = dependency('aubio', version: '>=0.4.9', required: true)
|
||||||
|
|
||||||
if not aubio.found()
|
if not aubio.found()
|
||||||
aubio_subproject = subproject('aubio')
|
aubio_subproject = subproject('aubio')
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue