/
meson.build
60 lines (50 loc) · 1.79 KB
/
meson.build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
project(
'libgauss2dfit',
'cpp',
version : run_command('cat', meson.source_root() + '/VERSION', check: true).stdout().strip(),
license : 'GPL-3.0-or-later',
default_options : ['cpp_std=c++17',],
)
eups = find_program('eups', required: false)
use_eups = eups.found()
if use_eups
use_eups = run_command('eups', 'list', 'gauss2dfit', check: false).returncode() == 0
endif
gsl_dep = dependency('gsl', required: false)
if gsl_dep.found()
add_project_arguments('-DGAUSS2D_FIT_HAS_GSL', language : 'cpp')
endif
if use_eups
gauss2d_eupsdir = run_command('eups', 'list', '-d', 'gauss2d', check: true).stdout().strip()
cpp = meson.get_compiler('cpp')
gauss2d_dep = declare_dependency(
dependencies: [cpp.find_library('gauss2d', dirs: [gauss2d_eupsdir + '/build-release/lib64']),],
include_directories: gauss2d_eupsdir + '/build-release/include',
)
parameters_eupsdir = run_command('eups', 'list', '-d', 'parameters', check: true).stdout().strip()
parameters_dep = declare_dependency(
include_directories: parameters_eupsdir + '/build-release/include',
)
else
gauss2d_dep = dependency('gauss2d')
parameters_dep = dependency('parameters')
endif
inc = include_directories('include')
depends = declare_dependency(
include_directories: inc,
dependencies: [gauss2d_dep, gsl_dep, parameters_dep],
)
subdir('include')
subdir('src')
subdir('tests')
if not use_eups
pkg_mod = import('pkgconfig')
if pkg_mod.found()
pkg_mod.generate(libraries : gauss2dfitlib,
version : '0.1',
name : 'libgauss2dfit',
filebase : 'gauss2dfit',
description : 'Create, manipulate and evaluate 2D Gaussian mixtures and images thereof.')
endif
endif
subdir('doc')