mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-11-21 21:46:15 +02:00
Use a meson "generator" to deduplicate .gen.hh
creation
This commit is contained in:
parent
d8850618b6
commit
6e5cec292b
5 changed files with 18 additions and 22 deletions
7
build-utils-meson/generate-header/meson.build
Normal file
7
build-utils-meson/generate-header/meson.build
Normal file
|
@ -0,0 +1,7 @@
|
|||
bash = find_program('bash', native: true)
|
||||
|
||||
gen_header = generator(
|
||||
bash,
|
||||
arguments : [ '-c', '{ echo \'R"__NIX_STR(\' && cat @INPUT@ && echo \')__NIX_STR"\'; } > "$1"', '_ignored_argv0', '@OUTPUT@' ],
|
||||
output : '@PLAINNAME@.gen.hh',
|
||||
)
|
|
@ -6,6 +6,7 @@ project('nix-dev-shell', 'cpp',
|
|||
subproject_dir : 'src',
|
||||
)
|
||||
|
||||
# Internal Libraries
|
||||
subproject('libutil')
|
||||
subproject('libstore')
|
||||
subproject('libfetchers')
|
||||
|
@ -18,7 +19,7 @@ subproject('libcmd')
|
|||
subproject('internal-api-docs')
|
||||
subproject('external-api-docs')
|
||||
|
||||
# C wrappers
|
||||
# External C wrapper libraries
|
||||
subproject('libutil-c')
|
||||
subproject('libstore-c')
|
||||
subproject('libexpr-c')
|
||||
|
|
|
@ -116,20 +116,17 @@ lexer_tab = custom_target(
|
|||
install_dir : get_option('includedir') / 'nix',
|
||||
)
|
||||
|
||||
subdir('build-utils-meson/generate-header')
|
||||
|
||||
generated_headers = []
|
||||
foreach header : [
|
||||
'imported-drv-to-derivation.nix',
|
||||
'fetchurl.nix',
|
||||
'call-flake.nix',
|
||||
]
|
||||
generated_headers += custom_target(
|
||||
command : [ 'bash', '-c', '{ echo \'R"__NIX_STR(\' && cat @INPUT@ && echo \')__NIX_STR"\'; } > "$1"', '_ignored_argv0', '@OUTPUT@' ],
|
||||
input : header,
|
||||
output : '@PLAINNAME@.gen.hh',
|
||||
)
|
||||
generated_headers += gen_header.process(header)
|
||||
endforeach
|
||||
|
||||
|
||||
sources = files(
|
||||
'attr-path.cc',
|
||||
'attr-set.cc',
|
||||
|
|
|
@ -1,12 +1,7 @@
|
|||
foreach header : [
|
||||
generated_headers += gen_header.process(
|
||||
'derivation.nix',
|
||||
]
|
||||
generated_headers += custom_target(
|
||||
command : [ 'bash', '-c', '{ echo \'R"__NIX_STR(\' && cat @INPUT@ && echo \')__NIX_STR"\'; } > "$1"', '_ignored_argv0', '@OUTPUT@' ],
|
||||
input : header,
|
||||
output : '@PLAINNAME@.gen.hh',
|
||||
preserve_path_from: meson.project_source_root(),
|
||||
)
|
||||
endforeach
|
||||
|
||||
sources += files(
|
||||
'context.cc',
|
||||
|
|
|
@ -99,18 +99,14 @@ deps_public += nlohmann_json
|
|||
sqlite = dependency('sqlite3', 'sqlite', version : '>=3.6.19')
|
||||
deps_private += sqlite
|
||||
|
||||
subdir('build-utils-meson/generate-header')
|
||||
|
||||
generated_headers = []
|
||||
foreach header : [
|
||||
'schema.sql',
|
||||
'ca-specific-schema.sql',
|
||||
]
|
||||
generated_headers += custom_target(
|
||||
command : [ 'bash', '-c', '{ echo \'R"__NIX_STR(\' && cat @INPUT@ && echo \')__NIX_STR"\'; } > "$1"', '_ignored_argv0', '@OUTPUT@' ],
|
||||
input : header,
|
||||
output : '@PLAINNAME@.gen.hh',
|
||||
install : true,
|
||||
install_dir : get_option('includedir') / 'nix',
|
||||
)
|
||||
generated_headers += gen_header.process(header)
|
||||
endforeach
|
||||
|
||||
busybox = find_program(get_option('sandbox-shell'), required : false)
|
||||
|
|
Loading…
Reference in a new issue