feat(meson): More granular build options
fourdst's build system now exposes some options to allow fine grained control of what is built and what is not
This commit is contained in:
@@ -1,6 +1,19 @@
|
|||||||
|
if get_option('build-lib-comp') or get_option('build-lib-all') or get_option('build-python')
|
||||||
subdir('libcomposition')
|
subdir('libcomposition')
|
||||||
|
endif
|
||||||
|
if get_option('build-lib-config') or get_option('build-lib-all') or get_option('build-python')
|
||||||
subdir('libconfig')
|
subdir('libconfig')
|
||||||
|
endif
|
||||||
|
if get_option('build-lib-const') or get_option('build-lib-all') or get_option('build-python')
|
||||||
subdir('libconstants')
|
subdir('libconstants')
|
||||||
|
endif
|
||||||
|
if get_option('build-lib-log') or get_option('build-lib-all')
|
||||||
subdir('liblogging')
|
subdir('liblogging')
|
||||||
|
endif
|
||||||
|
if get_option('build-lib-plugin') or get_option('build-lib-all')
|
||||||
subdir('libplugin')
|
subdir('libplugin')
|
||||||
|
endif
|
||||||
|
|
||||||
|
if get_option('build-python')
|
||||||
subdir('pybind')
|
subdir('pybind')
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
project('fourdst', 'cpp', version: 'v0.9.8', default_options: ['cpp_std=c++23'], meson_version: '>=1.5.0')
|
project('fourdst', 'cpp', version: 'v0.9.9', default_options: ['cpp_std=c++23'], meson_version: '>=1.5.0')
|
||||||
|
|
||||||
add_project_arguments('-fvisibility=default', language: 'cpp')
|
add_project_arguments('-fvisibility=default', language: 'cpp')
|
||||||
|
|
||||||
@@ -12,8 +12,9 @@ endif
|
|||||||
subdir('build-config')
|
subdir('build-config')
|
||||||
|
|
||||||
# Configure python bindings
|
# Configure python bindings
|
||||||
|
if get_option('build-python')
|
||||||
subdir('build-python')
|
subdir('build-python')
|
||||||
|
|
||||||
# Build python bindings
|
|
||||||
subdir('src-pybind')
|
subdir('src-pybind')
|
||||||
|
endif
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
option('pkg-config', type: 'boolean', value: false, description: 'generate pkg-config file for all libraries and fourdst (defaults to false to allow easy pip building)')
|
option('pkg-config', type: 'boolean', value: false, description: 'generate pkg-config file for all libraries and fourdst (defaults to false to allow easy pip building)')
|
||||||
option('electron-build-py-backend', type: 'boolean', value: false, description: 'use pyinstaller to build the python backend for the electron app')
|
option('electron-build-py-backend', type: 'boolean', value: false, description: 'use pyinstaller to build the python backend for the electron app')
|
||||||
option('tests', type: 'boolean', value: false, description: 'compile subproject tests')
|
option('build-tests', type: 'boolean', value: false, description: 'compile subproject tests')
|
||||||
|
option('build-lib-all', type: 'boolean', value: true, description: 'build the full fourdst library with all features enabled')
|
||||||
|
option('build-lib-comp', type: 'boolean', value: false, description: 'build the minimal fourdst library with only compression and decompression features enabled')
|
||||||
|
option('build-lib-config', type: 'boolean', value: false, description: 'build the fourdst library configuration tool only')
|
||||||
|
option('build-lib-const', type: 'boolean', value: false, description: 'build the fourdst library constants only')
|
||||||
|
option('build-python', type: 'boolean', value: true, description: 'build the python bindings so you can use fourdst from python. This will also build libcomposition, libconfig, and libconstants')
|
||||||
|
option('build-lib-log', type: 'boolean', value: false, description: 'build the fourdst library logging features only')
|
||||||
|
option('build-lib-plugin', type: 'boolean', value: false, description: 'build the fourdst plugin module only')
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
[wrap-git]
|
[wrap-git]
|
||||||
url = https://github.com/4D-STAR/libplugin.git
|
url = https://github.com/4D-STAR/libplugin.git
|
||||||
revision = v0.3.5
|
revision = v0.3.6
|
||||||
depth = 1
|
depth = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user