aboutsummaryrefslogtreecommitdiff
path: root/subprojects/packagefiles/libccp4c/meson.build
blob: b7b976bae2797d5f3440492ddb61ed4a62092ce2 (plain)
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Meson file for libccp4c (CCP4 core libraries, C part only)
project('libccp4c', ['c'],
        version: '6.5.1',
        meson_version: '>=0.49.0',
        license: 'LGPL3')


cc = meson.get_compiler('c')
mdep = cc.find_library('m', required: true)


# Note that the source code assumes that datadir='share'.
# If it is not, programs using the library will not be able
# to find 'environ.def'.
datadir = get_option('datadir') / 'ccp4'


add_project_arguments('-DPACKAGE_ROOT="' + get_option('prefix') + '"',
                      language: 'c')


# C library
libccp4c = library('ccp4c', ['ccp4/ccp4_array.c',
                             'ccp4/cmap_accessor.c',
                             'ccp4/cmap_open.c',
                             'ccp4/csymlib.c',
                             'ccp4/pack_c.c',
                             'ccp4/ccp4_general.c',
                             'ccp4/cmap_close.c',
                             'ccp4/cmap_skew.c',
                             'ccp4/cvecmat.c',
                             'ccp4/ccp4_parser.c',
                             'ccp4/cmap_data.c',
                             'ccp4/cmap_stats.c',
                             'ccp4/library_err.c',
                             'ccp4/ccp4_program.c',
                             'ccp4/cmap_header.c',
                             'ccp4/cmap_symop.c',
                             'ccp4/library_file.c',
                             'ccp4/ccp4_unitcell.c',
                             'ccp4/cmap_labels.c',
                             'ccp4/cmtzlib.c',
                             'ccp4/library_utils.c'],
                   dependencies: [mdep],
                   install: true)

# CCP4 headers are included with prefix: <ccp4/header.h>
incdir = include_directories('.')

install_headers(['ccp4/ccp4_file_err.h',
                 'ccp4/ccp4_program.h',
                 'ccp4/ccp4_unitcell.h',
                 'ccp4/cmap_errno.h',
                 'ccp4/cmap_stats.h',
                 'ccp4/csymlib.h',
                 'ccp4/library_file.h',
                 'ccp4/ccp4_fortran.h',
                 'ccp4/ccp4_spg.h',
                 'ccp4/ccp4_utils.h',
                 'ccp4/cmap_header.h',
                 'ccp4/cmaplib.h',
                 'ccp4/cvecmat.h',
                 'ccp4/mtzdata.h',
                 'ccp4/ccp4_array.h',
                 'ccp4/ccp4_general.h',
                 'ccp4/ccp4_sysdep.h',
                 'ccp4/ccp4_vars.h',
                 'ccp4/cmap_labels.h',
                 'ccp4/cmaplib_f.h',
                 'ccp4/overview.h',
                 'ccp4/ccp4_errno.h',
                 'ccp4/ccp4_parser.h',
                 'ccp4/ccp4_types.h',
                 'ccp4/cmap_data.h',
                 'ccp4/cmap_skew.h',
                 'ccp4/cmtzlib.h',
                 'ccp4/pack_c.h'],
                subdir: 'ccp4')


# Data files
install_data(['data/atomsf_electron.lib',
              'data/atomsf.lib',
              'data/atomsf_neutron.lib',
              'data/syminfo.lib',
              'data/symop.lib'],
             install_dir: datadir)


# pkg-config file
pkg = import('pkgconfig')
pkg.generate(libccp4c,
             filebase: 'libccp4c',
             description: 'CCP4 core C libraries')

libccp4c_dep = declare_dependency(include_directories: incdir,
                                  link_with: libccp4c)