File: meson.build

package info (click to toggle)
libscfg 0.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 108 kB
  • sloc: ansic: 653; makefile: 3
file content (65 lines) | stat: -rw-r--r-- 1,299 bytes parent folder | download
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
project(
	'scfg',
	'c',
	version: '0.2.0',
	license: 'MIT',
	meson_version: '>=0.54.0',
	default_options: [
		'c_std=c99',
		'warning_level=3',
		'werror=true',
	],
)

version = meson.project_version()
version_major = version.split('.')[0]
version_minor = version.split('.')[1]
assert(version_major == '0')

cc = meson.get_compiler('c')

add_project_arguments(cc.get_supported_arguments([
	'-Wno-missing-braces',
	'-Wno-missing-field-initializers',
	'-Wno-unused-parameter',
]), language: 'c')

install_headers('include/scfg.h')

scfg_inc = include_directories('include')

scfg_lib = library(
	meson.project_name(),
	files('formatter.c', 'parser.c', 'scfg.c'),
	include_directories: scfg_inc,
	install: true,
	version: version,
	soversion: version_minor,
)

scfg = declare_dependency(
	link_with: scfg_lib,
	include_directories: scfg_inc,
)

meson.override_dependency('scfg', scfg)

pkgconfig = import('pkgconfig')
pkgconfig.generate(
	scfg_lib,
	version: meson.project_version(),
	filebase: meson.project_name(),
	name: meson.project_name(),
	description: 'Configuration file format library',
)

test_exe = executable(
	'scfg_test',
	files('test.c'),
	dependencies: scfg,
	build_by_default: false,
)

foreach test_case : ['parse', 'format']
	test(test_case, test_exe, args: [test_case])
endforeach