Imported Upstream version 1.0.10
[platform/upstream/fribidi.git] / lib / meson.build
1 fribidi_config = configuration_data()
2
3 fribidi_config.set('configure_input', 'fribidi-config.h file generated by Meson')
4 fribidi_config.set('PACKAGE', meson.project_name())
5 fribidi_config.set('PACKAGE_NAME', 'GNU FriBidi')
6 fribidi_config.set('PACKAGE_BUGREPORT', 'https://github.com/fribidi/fribidi/issues/new')
7 fribidi_config.set('FRIBIDI_VERSION', meson.project_version())
8
9 version_arr = meson.project_version().split('.')
10 fribidi_config.set('FRIBIDI_MAJOR_VERSION', version_arr[0].to_int())
11 fribidi_config.set('FRIBIDI_MINOR_VERSION', version_arr[1].to_int())
12 fribidi_config.set('FRIBIDI_MICRO_VERSION', version_arr[2].to_int())
13
14 fribidi_config.set('FRIBIDI_INTERFACE_VERSION', interface_version)
15
16 fribidi_config.set('SIZEOF_INT', cc.sizeof('int'))
17
18 if cc.get_id() == 'msvc'
19   fribidi_config.set('FRIBIDI_MSVC_BUILD_PLACEHOLDER', '#define FRIBIDI_BUILT_WITH_MSVC')
20 else
21   fribidi_config.set('FRIBIDI_MSVC_BUILD_PLACEHOLDER', '#undef FRIBIDI_BUILT_WITH_MSVC')
22 endif
23
24 fribidi_config_h = configure_file(input: files('fribidi-config.h.in'),
25   output: 'fribidi-config.h',
26   configuration: fribidi_config,
27   install_dir: join_paths(get_option('includedir'), 'fribidi'))
28
29 fribidi_headers = files(
30   'fribidi-arabic.h',
31   'fribidi-begindecls.h',
32   'fribidi-bidi.h',
33   'fribidi-bidi-types.h',
34   'fribidi-bidi-types-list.h',
35   'fribidi-char-sets.h',
36   'fribidi-char-sets-list.h',
37   'fribidi-common.h',
38   'fribidi-deprecated.h',
39   'fribidi-enddecls.h',
40   'fribidi-flags.h',
41   'fribidi-joining.h',
42   'fribidi-joining-types.h',
43   'fribidi-joining-types-list.h',
44   'fribidi-mirroring.h',
45   'fribidi-brackets.h',
46   'fribidi-shape.h',
47   'fribidi-types.h',
48   'fribidi-unicode.h',
49   'fribidi.h',
50 )
51 install_headers(fribidi_headers, subdir: 'fribidi')
52
53 fribidi_sources = [
54   'fribidi.c',
55   'fribidi-arabic.c',
56   'fribidi-bidi.c',
57   'fribidi-bidi-types.c',
58   'fribidi-char-sets.c',
59   'fribidi-char-sets-cap-rtl.c',
60   'fribidi-char-sets-cp1255.c',
61   'fribidi-char-sets-cp1256.c',
62   'fribidi-char-sets-iso8859-6.c',
63   'fribidi-char-sets-iso8859-8.c',
64   'fribidi-char-sets-utf8.c',
65   'fribidi-deprecated.c',
66   'fribidi-joining.c',
67   'fribidi-joining-types.c',
68   'fribidi-mirroring.c',
69   'fribidi-brackets.c',
70   'fribidi-run.c',
71   'fribidi-shape.c',
72 ]
73
74 libfribidi = library('fribidi',
75   fribidi_sources, fribidi_unicode_version_h, fribidi_config_h,
76   generated_tab_include_files, config_h,
77   include_directories: incs,
78   c_args: ['-DHAVE_CONFIG_H', '-DFRIBIDI_BUILD'] + fribidi_static_cargs + visibility_args,
79   version: libversion,
80   soversion: soversion,
81   install: true)
82
83 libfribidi_dep = declare_dependency(link_with: libfribidi,
84   include_directories: incs,
85   sources: [fribidi_unicode_version_h, fribidi_config_h])