This is required for moving n-e-j into tree with good meson support: it needs to be able to include `<lix/config.h>`. Change-Id: I21f1cfa37dcdce992812c8b008df503c0fc9dea5
49 lines
1.4 KiB
Meson
49 lines
1.4 KiB
Meson
config_h = configure_file(
|
|
configuration : {
|
|
'PACKAGE_NAME': '"' + meson.project_name() + '"',
|
|
'PACKAGE_VERSION': '"' + meson.project_version() + '"',
|
|
'PACKAGE_TARNAME': '"' + meson.project_name() + '"',
|
|
'PACKAGE_STRING': '"' + meson.project_name() + ' ' + meson.project_version() + '"',
|
|
'HAVE_STRUCT_DIRENT_D_TYPE': 1, # FIXME: actually check this for solaris
|
|
'SYSTEM': '"' + host_system + '"',
|
|
} + configdata,
|
|
output : 'config.h',
|
|
)
|
|
|
|
install_headers(config_h, subdir : 'lix')
|
|
|
|
# Subcomponents: these link into artifacts themselves, and have interdependencies.
|
|
subdir('lix-doc')
|
|
|
|
subdir('libutil')
|
|
# Load-bearing order. libstore depends on libutil.
|
|
subdir('libstore')
|
|
# libfetchers depends on libstore
|
|
subdir('libfetchers')
|
|
# libexpr depends on all of the above
|
|
subdir('libexpr')
|
|
# libmain depends on libutil and libstore
|
|
subdir('libmain')
|
|
# libcmd depends on everything
|
|
subdir('libcmd')
|
|
|
|
# The rest of the subdirectories aren't separate components,
|
|
# just source files in another directory, so we process them here.
|
|
|
|
# Static library that just sets default ASan options. It needs to be included
|
|
# in every executable.
|
|
asanoptions = static_library(
|
|
'libasanoptions',
|
|
files('asan-options/asan-options.cc'),
|
|
)
|
|
libasanoptions = declare_dependency(
|
|
link_whole: asanoptions
|
|
)
|
|
|
|
# Legacy commands.
|
|
subdir('legacy')
|
|
|
|
# Finally, the nix command itself, which all of the other commands are implmented in terms of
|
|
# as a multicall binary.
|
|
subdir('nix')
|