chore(3p/nix): Remove symlink setup from Meson build
This belongs in the derivation itself, IMO.
This commit is contained in:
parent
aa54512ee2
commit
9d865dbb1f
2 changed files with 11 additions and 86 deletions
22
third_party/nix/meson.build
vendored
22
third_party/nix/meson.build
vendored
|
@ -13,7 +13,7 @@
|
|||
project(
|
||||
'nix',
|
||||
'cpp',
|
||||
|
||||
|
||||
default_options : [
|
||||
'cpp_std=c++17',
|
||||
'warning_level=3',
|
||||
|
@ -24,7 +24,7 @@ project(
|
|||
license : 'MIT'
|
||||
)
|
||||
|
||||
# init compiler
|
||||
# init compiler
|
||||
#-------------------------------------------------
|
||||
cpp = meson.get_compiler('cpp')
|
||||
|
||||
|
@ -116,7 +116,7 @@ sys_name = host_machine.system().to_lower()
|
|||
|
||||
cpu_archs = ['x86_64', 'armv6', 'armv7', '']
|
||||
|
||||
foreach cpu : cpu_archs
|
||||
foreach cpu : cpu_archs
|
||||
if (host_machine.cpu().contains(cpu))
|
||||
if cpu.contains('armv')
|
||||
machine_name = cpu + '1'
|
||||
|
@ -363,11 +363,11 @@ else
|
|||
fi
|
||||
'''
|
||||
|
||||
run_command('sh', '-c', 'rm tmp_link*')
|
||||
run_command('sh', '-c', 'rm tmp_link*')
|
||||
can_link_symlink = run_command('sh', '-c', gen_header).stdout().strip()
|
||||
if can_link_symlink.to_int() == 1
|
||||
run_command('sh', '-c', 'rm tmp_link*')
|
||||
endif
|
||||
endif
|
||||
|
||||
config_h.set('CAN_LINK_SYMLINK', can_link_symlink,
|
||||
description : 'Whether link() works on symlinks')
|
||||
|
@ -447,7 +447,7 @@ libbz2_dep = declare_dependency(
|
|||
|
||||
# Look for editline, a required dependency.
|
||||
#--------------------------------------------------
|
||||
# NOTE: The the libeditline.pc file was added only in libeditline >= 1.15.2, see
|
||||
# NOTE: The the libeditline.pc file was added only in libeditline >= 1.15.2, see
|
||||
# https://github.com/troglobit/editline/commit/0a8f2ef4203c3a4a4726b9dd1336869cd0da8607,
|
||||
# but e.g. Ubuntu 16.04 has an older version, so we fall back to searching for
|
||||
# editline.h when the pkg-config approach fails.
|
||||
|
@ -503,12 +503,12 @@ endif
|
|||
#--------------------------------------------------
|
||||
if (get_option('with_s3'))
|
||||
enable_s3 = meson.get_compiler('cpp').check_header('aws/s3/S3Client.h')
|
||||
|
||||
|
||||
aws_version = meson.get_compiler('cpp').get_define(
|
||||
'AWS_SDK_VERSION_STRING',
|
||||
prefix : '#include <aws/core/VersionConfig.h>'
|
||||
).strip('"').split('.')
|
||||
|
||||
|
||||
conf_data.set('ENABLE_S3', 1, description : 'Whether to enable S3 support via aws-sdk-cpp.')
|
||||
conf_data.set('AWS_VERSION_MAJOR', aws_version[0], description : 'Major version of aws-sdk-cpp.')
|
||||
conf_data.set('AWS_VERSION_MINOR', aws_version[1], description : 'Minor version of aws-sdk-cpp.')
|
||||
|
@ -517,7 +517,7 @@ endif
|
|||
|
||||
|
||||
|
||||
# OS Specific checks
|
||||
# OS Specific checks
|
||||
#============================================================================
|
||||
# Look for libsecppomp, required for Linux sandboxing.
|
||||
if sys_name.contains('linux')
|
||||
|
@ -534,11 +534,11 @@ endif
|
|||
|
||||
if (sys_name.contains('freebsd'))
|
||||
add_project_arguments('-D_GNU_SOURCE', language : 'cpp')
|
||||
config_h.set('_GNU_SOURCE', 1)
|
||||
config_h.set('_GNU_SOURCE', 1)
|
||||
endif
|
||||
|
||||
if (sys_name.contains('sunos'))
|
||||
# Solaris requires -lsocket -lnsl for network functions
|
||||
# Solaris requires -lsocket -lnsl for network functions
|
||||
endif
|
||||
|
||||
|
||||
|
|
75
third_party/nix/src/nix/meson.build
vendored
75
third_party/nix/src/nix/meson.build
vendored
|
@ -1,12 +1,3 @@
|
|||
# Nix exec build file
|
||||
#============================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
# src files
|
||||
#============================================================================
|
||||
|
||||
src_inc += include_directories('.')
|
||||
|
||||
nix_src = files(
|
||||
|
@ -53,20 +44,6 @@ nix_src = files(
|
|||
join_paths(meson.source_root(), 'src/nix-store/graphml.cc'),
|
||||
join_paths(meson.source_root(), 'src/nix-store/nix-store.cc'))
|
||||
|
||||
nix_ln_src = [
|
||||
[ bindir, 'nix-build' ],
|
||||
[ bindir, 'nix-channel' ],
|
||||
[ bindir, 'nix-collect-garbage' ],
|
||||
[ bindir, 'nix-copy-closure' ],
|
||||
[ bindir, 'nix-daemon' ],
|
||||
[ bindir, 'nix-env' ],
|
||||
[ bindir, 'nix-hash' ],
|
||||
[ bindir, 'nix-instantiate' ],
|
||||
[ bindir, 'nix-prefetch-url' ],
|
||||
[ bindir, 'nix-shell' ],
|
||||
[ bindir, 'nix-store' ],
|
||||
[ join_paths(libexecdir, 'nix'), 'build-remote' ]]
|
||||
|
||||
nix_headers = files (
|
||||
join_paths(meson.source_root(), 'src/nix/command.hh'),
|
||||
join_paths(meson.source_root(), 'src/nix/legacy.hh'),
|
||||
|
@ -75,9 +52,6 @@ nix_headers = files (
|
|||
join_paths(meson.source_root(), 'src/nix-store/dotgraph.hh'),
|
||||
join_paths(meson.source_root(), 'src/nix-store/graphml.hh'))
|
||||
|
||||
# dependancies
|
||||
#============================================================================
|
||||
|
||||
nix_dep_list = [
|
||||
pthread_dep,
|
||||
libdl_dep,
|
||||
|
@ -85,13 +59,6 @@ nix_dep_list = [
|
|||
editline_dep,
|
||||
libsodium_dep]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Link args
|
||||
#============================================================================
|
||||
|
||||
nix_link_list = [
|
||||
libutil_lib,
|
||||
libstore_lib,
|
||||
|
@ -99,28 +66,6 @@ nix_link_list = [
|
|||
libexpr_lib
|
||||
]
|
||||
|
||||
nix_link_args = []
|
||||
|
||||
|
||||
|
||||
|
||||
# compiler args
|
||||
#============================================================================
|
||||
|
||||
nix_cxx_args = []
|
||||
|
||||
|
||||
|
||||
|
||||
# targets
|
||||
#============================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
# build
|
||||
#============================================================================
|
||||
|
||||
nix_bin = executable(
|
||||
'nix',
|
||||
install : true,
|
||||
|
@ -130,23 +75,3 @@ nix_bin = executable(
|
|||
sources : nix_src,
|
||||
link_with : nix_link_list,
|
||||
dependencies : nix_dep_list)
|
||||
|
||||
|
||||
# meson does not yet support installing symlink files.
|
||||
# this is a simple workaround
|
||||
foreach name : nix_ln_src
|
||||
meson.add_install_script(
|
||||
'ln',
|
||||
'-sf',
|
||||
join_paths(bindir, 'nix'),
|
||||
name[1])
|
||||
meson.add_install_script(
|
||||
'cp',
|
||||
'-r',
|
||||
name[1],
|
||||
join_paths(name[0], name[1]))
|
||||
endforeach
|
||||
|
||||
install_headers(
|
||||
nix_headers,
|
||||
install_dir : join_paths(includedir, 'nix'))
|
||||
|
|
Loading…
Reference in a new issue