• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1version_script = '-Wl,--version-script=@0@'.format(meson.current_source_dir() / 'version.lds')
2if not cc.has_link_argument(version_script)
3  version_script = []
4endif
5
6sources = files(
7  'fdt.c',
8  'fdt_addresses.c',
9  'fdt_check.c',
10  'fdt_empty_tree.c',
11  'fdt_overlay.c',
12  'fdt_ro.c',
13  'fdt_rw.c',
14  'fdt_strerror.c',
15  'fdt_sw.c',
16  'fdt_wip.c',
17)
18
19libfdt = library(
20  'fdt', sources,
21  version: '1.6.0',
22  link_args: ['-Wl,--no-undefined', version_script],
23  link_depends: 'version.lds',
24  install: true,
25)
26
27libfdt_a = static_library(
28  'fdt', sources,
29  install: true,
30)
31
32libfdt_inc = include_directories('.')
33
34libfdt_dep = declare_dependency(
35  include_directories: libfdt_inc,
36  link_with: libfdt,
37)
38
39install_headers(
40  files(
41    'fdt.h',
42    'libfdt.h',
43    'libfdt_env.h',
44  )
45)
46
47pkgconfig = import('pkgconfig')
48
49pkgconfig.generate(
50  libraries: libfdt,
51  version: meson.project_version(),
52  filebase: 'libfdt',
53  name: 'libfdt',
54  description: 'Flat Device Tree manipulation',
55)
56