Skip to content

Commit a1fe09d

Browse files
authored
Merge pull request #13350 from xokdvium/meson-format
flake: Add meson formatter
2 parents 84743c8 + 93a42a5 commit a1fe09d

File tree

18 files changed

+152
-52
lines changed

18 files changed

+152
-52
lines changed

maintainers/flake-module.nix

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,118 @@
3737
fi
3838
''}";
3939
};
40+
meson-format = {
41+
enable = true;
42+
files = "(meson.build|meson.options)$";
43+
entry = "${pkgs.writeScript "format-meson" ''
44+
#!${pkgs.runtimeShell}
45+
for file in "$@"; do
46+
${lib.getExe pkgs.meson} format -ic ${../meson.format} "$file"
47+
done
48+
''}";
49+
excludes = [
50+
# We haven't applied formatting to these files yet
51+
''^doc/manual/meson.build$''
52+
''^doc/manual/source/command-ref/meson.build$''
53+
''^doc/manual/source/development/meson.build$''
54+
''^doc/manual/source/language/meson.build$''
55+
''^doc/manual/source/meson.build$''
56+
''^doc/manual/source/release-notes/meson.build$''
57+
''^doc/manual/source/store/meson.build$''
58+
''^misc/bash/meson.build$''
59+
''^misc/fish/meson.build$''
60+
''^misc/launchd/meson.build$''
61+
''^misc/meson.build$''
62+
''^misc/systemd/meson.build$''
63+
''^misc/zsh/meson.build$''
64+
''^nix-meson-build-support/$''
65+
''^nix-meson-build-support/big-objs/meson.build$''
66+
''^nix-meson-build-support/common/meson.build$''
67+
''^nix-meson-build-support/deps-lists/meson.build$''
68+
''^nix-meson-build-support/export/meson.build$''
69+
''^nix-meson-build-support/export-all-symbols/meson.build$''
70+
''^nix-meson-build-support/generate-header/meson.build$''
71+
''^nix-meson-build-support/libatomic/meson.build$''
72+
''^nix-meson-build-support/subprojects/meson.build$''
73+
''^scripts/meson.build$''
74+
''^src/external-api-docs/meson.build$''
75+
''^src/internal-api-docs/meson.build$''
76+
''^src/libcmd/include/nix/cmd/meson.build$''
77+
''^src/libcmd/meson.build$''
78+
''^src/libcmd/nix-meson-build-support$''
79+
''^src/libexpr/include/nix/expr/meson.build$''
80+
''^src/libexpr/meson.build$''
81+
''^src/libexpr/nix-meson-build-support$''
82+
''^src/libexpr-c/meson.build$''
83+
''^src/libexpr-c/nix-meson-build-support$''
84+
''^src/libexpr-test-support/meson.build$''
85+
''^src/libexpr-test-support/nix-meson-build-support$''
86+
''^src/libexpr-tests/meson.build$''
87+
''^src/libexpr-tests/nix-meson-build-support$''
88+
''^src/libfetchers/include/nix/fetchers/meson.build$''
89+
''^src/libfetchers/meson.build$''
90+
''^src/libfetchers/nix-meson-build-support$''
91+
''^src/libfetchers-c/meson.build$''
92+
''^src/libfetchers-c/nix-meson-build-support$''
93+
''^src/libfetchers-tests/meson.build$''
94+
''^src/libfetchers-tests/nix-meson-build-support$''
95+
''^src/libflake/include/nix/flake/meson.build$''
96+
''^src/libflake/meson.build$''
97+
''^src/libflake/nix-meson-build-support$''
98+
''^src/libflake-c/meson.build$''
99+
''^src/libflake-c/nix-meson-build-support$''
100+
''^src/libflake-tests/meson.build$''
101+
''^src/libflake-tests/nix-meson-build-support$''
102+
''^src/libmain/include/nix/main/meson.build$''
103+
''^src/libmain/meson.build$''
104+
''^src/libmain/nix-meson-build-support$''
105+
''^src/libmain-c/meson.build$''
106+
''^src/libmain-c/nix-meson-build-support$''
107+
''^src/libstore/include/nix/store/meson.build$''
108+
''^src/libstore/meson.build$''
109+
''^src/libstore/nix-meson-build-support$''
110+
''^src/libstore/unix/include/nix/store/meson.build$''
111+
''^src/libstore/unix/meson.build$''
112+
''^src/libstore/windows/meson.build$''
113+
''^src/libstore-c/meson.build$''
114+
''^src/libstore-c/nix-meson-build-support$''
115+
''^src/libstore-test-support/include/nix/store/tests/meson.build$''
116+
''^src/libstore-test-support/meson.build$''
117+
''^src/libstore-test-support/nix-meson-build-support$''
118+
''^src/libstore-tests/meson.build$''
119+
''^src/libstore-tests/nix-meson-build-support$''
120+
''^src/libutil/meson.build$''
121+
''^src/libutil/nix-meson-build-support$''
122+
''^src/libutil/unix/include/nix/util/meson.build$''
123+
''^src/libutil/unix/meson.build$''
124+
''^src/libutil/windows/meson.build$''
125+
''^src/libutil-c/meson.build$''
126+
''^src/libutil-c/nix-meson-build-support$''
127+
''^src/libutil-test-support/include/nix/util/tests/meson.build$''
128+
''^src/libutil-test-support/meson.build$''
129+
''^src/libutil-test-support/nix-meson-build-support$''
130+
''^src/libutil-tests/meson.build$''
131+
''^src/libutil-tests/nix-meson-build-support$''
132+
''^src/nix/meson.build$''
133+
''^src/nix/nix-meson-build-support$''
134+
''^src/perl/lib/Nix/meson.build$''
135+
''^src/perl/meson.build$''
136+
''^tests/functional/ca/meson.build$''
137+
''^tests/functional/common/meson.build$''
138+
''^tests/functional/dyn-drv/meson.build$''
139+
''^tests/functional/flakes/meson.build$''
140+
''^tests/functional/git-hashing/meson.build$''
141+
''^tests/functional/local-overlay-store/meson.build$''
142+
''^tests/functional/meson.build$''
143+
''^src/libcmd/meson.options$''
144+
''^src/libexpr/meson.options$''
145+
''^src/libstore/meson.options$''
146+
''^src/libutil/meson.options$''
147+
''^src/libutil-c/meson.options$''
148+
''^src/nix/meson.options$''
149+
''^src/perl/meson.options$''
150+
];
151+
};
40152
nixfmt-rfc-style = {
41153
enable = true;
42154
excludes = [

meson.build

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# This is just a stub project to include all the others as subprojects
22
# for development shell purposes
33

4-
project('nix-dev-shell', 'cpp',
4+
project(
5+
'nix-dev-shell',
6+
'cpp',
57
version : files('.version'),
68
subproject_dir : 'src',
7-
default_options : [
8-
'localstatedir=/nix/var',
9-
],
10-
meson_version : '>= 1.1'
9+
default_options : [ 'localstatedir=/nix/var' ],
10+
meson_version : '>= 1.1',
1111
)
1212

1313
# Internal Libraries

meson.format

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
indent_by = ' '
2+
space_array = true
3+
kwargs_force_multiline = false
4+
wide_colon = true
5+
group_arg_value = true
6+
indent_before_comments = ' '
7+
use_editor_config = true

meson.options

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,22 @@
11
# vim: filetype=meson
22

3-
option('doc-gen', type : 'boolean', value : false,
3+
option(
4+
'doc-gen',
5+
type : 'boolean',
6+
value : false,
47
description : 'Generate documentation',
58
)
69

7-
option('unit-tests', type : 'boolean', value : true,
10+
option(
11+
'unit-tests',
12+
type : 'boolean',
13+
value : true,
814
description : 'Build unit tests',
915
)
1016

11-
option('bindings', type : 'boolean', value : true,
17+
option(
18+
'bindings',
19+
type : 'boolean',
20+
value : true,
1221
description : 'Build language bindings (e.g. Perl)',
1322
)

nix-meson-build-support/windows-version/meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ if host_machine.system() == 'windows'
22
# https://learn.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt?view=msvc-170
33
# #define _WIN32_WINNT_WIN8 0x0602
44
# We currently don't use any API which requires higher than this.
5-
add_project_arguments([ '-D_WIN32_WINNT=0x0602' ], language: 'cpp')
5+
add_project_arguments([ '-D_WIN32_WINNT=0x0602' ], language : 'cpp')
66
endif
Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
# Public headers directory
22

3-
include_dirs = [include_directories('../../..')]
3+
include_dirs = [ include_directories('../../..') ]
44

5-
headers = files(
6-
'libexpr.hh',
7-
'nix_api_expr.hh',
8-
'value/context.hh',
9-
)
5+
headers = files('libexpr.hh', 'nix_api_expr.hh', 'value/context.hh')

src/libexpr/primops/meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
generated_headers += gen_header.process(
22
'derivation.nix',
3-
preserve_path_from: meson.project_source_root(),
3+
preserve_path_from : meson.project_source_root(),
44
)
55

66
sources += files(
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
11
include_dirs += include_directories('../..')
22

3-
headers += files(
4-
'personality.hh',
5-
)
3+
headers += files('personality.hh')

src/libstore/linux/meson.build

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
sources += files(
2-
'personality.cc',
3-
)
1+
sources += files('personality.cc')
42

53
subdir('include/nix/store')

src/libutil/freebsd/include/nix/util/meson.build

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,4 @@
22

33
include_dirs += include_directories('../..')
44

5-
headers += files(
6-
'freebsd-jail.hh',
7-
)
5+
headers += files('freebsd-jail.hh')

0 commit comments

Comments
 (0)