File: meson.build

package info (click to toggle)
mmlib 1.4.2-2.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,716 kB
  • sloc: ansic: 18,071; makefile: 431; sh: 135; python: 63
file content (83 lines) | stat: -rw-r--r-- 2,052 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
all_lib_c_sources = mmlib_sources + lock_referee_sources

if tests_state == 'enabled'
    all_test_c_sources = (testlog_sources
            + testerrno_sources
            + testprofile_sources
            + child_proc_sources
            + tests_child_proc_files
            + perflock_sources
            + dynlib_test_sources
            + testapi_sources
    )
else
    all_test_c_sources = []
endif

if docs_state == 'enabled'
    all_doc_c_sources = (pshared_parent_doc_example_sources
            + pshared_child_doc_example_sources
            + parse_args_doc_example
    )
else
    all_doc_c_sources = []
endif

all_sources = (all_lib_c_sources
        + all_test_c_sources
        + all_doc_c_sources
)

codespell = find_program('codespell', required : false)
if codespell.found()
    # check for typo in all possible sources
    run_target('spelling',
        command : [
            codespell,
	    '-x', files('codespell-ignore'),
            all_sources,
        ]
    )
endif # codespell


uncrustify = find_program('uncrustify', required : false)
if uncrustify.found()
    uncrustify_config = files('uncrustify.cfg')

    # enforce coding style for library sources and documentation
    # leave the test sources out of this constraint

    run_target('checkstyle',
        command : [
            uncrustify,
            '-l', 'c',
            '-q',
            '-c', uncrustify_config,
            '--check',
            all_lib_c_sources, all_doc_c_sources
        ],
    )
    run_target('fixstyle',
        command : [
            uncrustify,
            '-l', 'c',
            '-q',
            '-c', uncrustify_config,
            '--replace',
            '--no-backup',
            all_lib_c_sources, all_doc_c_sources
        ],
    )
endif # uncrustify

# test public headers for most warnings and C++ compatibility
api_compat_test = run_target('api-compat-test',
        command : [
            'bash',
            files('api-compat-test.sh'),
            public_headers,
        ]
)

meson.add_dist_script('expand_headers')