-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmeson.build
50 lines (47 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
project('tinyfetch', 'c',
version : '4.1a',
default_options : ['warning_level=3'])
c_args = []
link_args = []
uname_output = run_command('uname', check: true).stdout().strip()
if uname_output == 'Linux'
config_h = configuration_data()
pci_dep = dependency('libpci', required: false)
if pci_dep.found()
link_args += ['-lpci']
config_h.set('PCI_DETECTION', 1)
else
config_h.set('PCI_DETECTION', 0)
endif
configure_file(output: 'config.h', configuration: config_h)
c_args += ['-Os', '-s', '-fomit-frame-pointer', '-fno-unwind-tables', '-fno-asynchronous-unwind-tables', '-g0']
executable('tinyfetch', 'src/tinyfetch.c', install : true, c_args: c_args, link_args: link_args)
elif uname_output == 'FreeBSD'
config_h = configuration_data()
pci_dep = dependency('libpci', required: false)
if pci_dep.found()
link_args += ['-L/usr/local/lib', '-lpci']
config_h.set('PCI_DETECTION', 1)
else
config_h.set('PCI_DETECTION', 0)
endif
configure_file(output: 'config.h', configuration: config_h)
c_args += ['-Os']
link_args += ['-lkvm']
inc_dirs = include_directories('/usr/local/include')
executable('tinyfetch', 'src/tinyfetch.c', install : true, c_args: c_args, link_args: link_args, include_directories: inc_dirs)
elif uname_output == 'NetBSD'
config_h = configuration_data()
pci_dep = dependency('libpci', required: false)
if pci_dep.found()
link_args += ['-L/usr/pkg/lib', '-lpci']
config_h.set('PCI_DETECTION', 1)
else
config_h.set('PCI_DETECTION', 0)
endif
configure_file(output: 'config.h', configuration: config_h)
c_args += ['-Os']
link_args += ['-lpciutils']
inc_dirs = include_directories('/usr/pkg/include')
executable('tinyfetch', 'src/tinyfetch.c', install : true, c_args: c_args, link_args: link_args, include_directories: inc_dirs)
endif