Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 6 additions & 28 deletions configure.py
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,6 @@
shared_optgroup.add_argument('--shared-abseil-libname',
action='store',
dest='shared_abseil_libname',
default=None,
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-abseil-libpath',
Expand All @@ -319,7 +318,6 @@
shared_optgroup.add_argument('--shared-gtest-libname',
action='store',
dest='shared_gtest_libname',
default='gtest',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-gtest-libpath',
Expand All @@ -341,7 +339,6 @@
shared_optgroup.add_argument('--shared-hdr-histogram-libname',
action='store',
dest='shared_hdr_histogram_libname',
default='hdr_histogram',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-hdr-histogram-libpath',
Expand All @@ -363,7 +360,6 @@
shared_optgroup.add_argument('--shared-highway-libname',
action='store',
dest='shared_highway_libname',
default='hwy',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-highway-libpath',
Expand All @@ -385,7 +381,6 @@
shared_optgroup.add_argument('--shared-http-parser-libname',
action='store',
dest='shared_http_parser_libname',
default='llhttp',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-http-parser-libpath',
Expand All @@ -407,7 +402,6 @@
shared_optgroup.add_argument('--shared-libuv-libname',
action='store',
dest='shared_libuv_libname',
default='uv',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-libuv-libpath',
Expand All @@ -429,7 +423,6 @@
shared_optgroup.add_argument('--shared-lief-libname',
action='store',
dest='shared_lief_libname',
default='LIEF',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-lief-libpath',
Expand All @@ -451,7 +444,6 @@
shared_optgroup.add_argument('--shared-nbytes-libname',
action='store',
dest='shared_nbytes_libname',
default='nbytes',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-nbytes-libpath',
Expand All @@ -473,7 +465,6 @@
shared_optgroup.add_argument('--shared-nghttp2-libname',
action='store',
dest='shared_nghttp2_libname',
default='nghttp2',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-nghttp2-libpath',
Expand All @@ -495,7 +486,6 @@
shared_optgroup.add_argument('--shared-nghttp3-libname',
action='store',
dest='shared_nghttp3_libname',
default='nghttp3',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-nghttp3-libpath',
Expand All @@ -517,7 +507,6 @@
shared_optgroup.add_argument('--shared-ngtcp2-libname',
action='store',
dest='shared_ngtcp2_libname',
default='ngtcp2',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-ngtcp2-libpath',
Expand All @@ -539,7 +528,6 @@
shared_optgroup.add_argument('--shared-openssl-libname',
action='store',
dest='shared_openssl_libname',
default='crypto,ssl',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-openssl-libpath',
Expand All @@ -562,7 +550,6 @@
shared_optgroup.add_argument('--shared-perfetto-libname',
action='store',
dest='shared_perfetto_libname',
default='perfetto',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-perfetto-libpath',
Expand All @@ -584,7 +571,6 @@
shared_optgroup.add_argument('--shared-uvwasi-libname',
action='store',
dest='shared_uvwasi_libname',
default='uvwasi',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-uvwasi-libpath',
Expand All @@ -606,7 +592,6 @@
shared_optgroup.add_argument('--shared-zlib-libname',
action='store',
dest='shared_zlib_libname',
default='z',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-zlib-libpath',
Expand All @@ -628,7 +613,6 @@
shared_optgroup.add_argument('--shared-simdjson-libname',
action='store',
dest='shared_simdjson_libname',
default='simdjson',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-simdjson-libpath',
Expand All @@ -651,7 +635,6 @@
shared_optgroup.add_argument('--shared-simdutf-libname',
action='store',
dest='shared_simdutf_libname',
default='simdutf',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-simdutf-libpath',
Expand All @@ -673,7 +656,6 @@
shared_optgroup.add_argument('--shared-ada-libname',
action='store',
dest='shared_ada_libname',
default='ada',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-ada-libpath',
Expand All @@ -695,7 +677,6 @@
shared_optgroup.add_argument('--shared-merve-libname',
action='store',
dest='shared_merve_libname',
default='merve',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-merve-libpath',
Expand All @@ -717,7 +698,6 @@
shared_optgroup.add_argument('--shared-brotli-libname',
action='store',
dest='shared_brotli_libname',
default='brotlidec,brotlienc',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-brotli-libpath',
Expand All @@ -739,7 +719,6 @@
shared_optgroup.add_argument('--shared-cares-libname',
action='store',
dest='shared_cares_libname',
default='cares',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-cares-libpath',
Expand All @@ -761,7 +740,6 @@
shared_optgroup.add_argument('--shared-sqlite-libname',
action='store',
dest='shared_sqlite_libname',
default='sqlite3',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-sqlite-libpath',
Expand All @@ -783,7 +761,6 @@
shared_optgroup.add_argument('--shared-ffi-libname',
action='store',
dest='shared_ffi_libname',
default='ffi',
help='alternative libffi name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-ffi-libpath',
Expand All @@ -805,7 +782,6 @@
shared_optgroup.add_argument('--shared-temporal_capi-libname',
action='store',
dest='shared_temporal_capi_libname',
default='temporal_capi',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-temporal_capi-libpath',
Expand All @@ -827,7 +803,6 @@
shared_optgroup.add_argument('--shared-zstd-libname',
action='store',
dest='shared_zstd_libname',
default='zstd',
help='alternative lib name to link to [default: %(default)s]')

shared_optgroup.add_argument('--shared-zstd-libpath',
Expand Down Expand Up @@ -2222,12 +2197,15 @@ def configure_library(lib, output, pkgname=None, libraries_key='libraries'):
elif pkg_libpath:
libraries += [pkg_libpath]

default_libs = getattr(options, shared_lib + '_libname')
user_provided_value = getattr(options, shared_lib + '_libname')

if default_libs:
libraries += [f'-l{l}' for l in default_libs.split(',')]
if user_provided_value is not None:
libraries += [f'-l{l}' for l in user_provided_value.split(',')]
elif pkg_libs:
libraries += pkg_libs.split()
elif pkg_libs is None:
pkg = (pkgname or lib)
libraries += [f'-l{l}' for l in pkg] if isinstance(pkg, list) else f'-l${pkg}'


def configure_v8(o, configs):
Expand Down
5 changes: 1 addition & 4 deletions tools/nix/non-v8-deps-mock.nix
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,7 @@ symlinkJoin (finalAttrs: {
"--without-ffi"
"--without-ssl"
]
++ (lib.concatMap (sharedLibName: [
"--shared-${sharedLibName}"
"--shared-${sharedLibName}-libname="
]) (builtins.attrNames sharedLibsToMock));
++ map (sharedLibName: "--shared-${sharedLibName}") (builtins.attrNames sharedLibsToMock);

tests.pkg-config = testers.hasPkgConfigModules {
package = finalAttrs.finalPackage;
Expand Down
17 changes: 17 additions & 0 deletions tools/nix/pkgs.nix
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,23 @@ if builtins.currentSystem == "x86_64-darwin" then
else
nixpkgs
// {
# TODO: remove this when the pin we use has picked up https://boringssl-review.googlesource.com/c/boringssl/+/104208
boringssl =
let
inherit (nixpkgs) boringssl lib writeTextFile;
in
writeTextFile {
inherit (boringssl) name;
destination = "/lib/pkgconfig/openssl.pc";
text = ''
Name: BoringSSL
Description: BoringSSL cryptography library
Version: ${boringssl.version}
Libs: -L${lib.getLib boringssl}/lib -lcrypto -lssl
Cflags: -I${lib.getInclude boringssl}/include
'';
};

# TODO: remove pin once https://github.com/mozilla/sccache/issues/2869 is resolved
sccache = nixpkgs.callPackage (builtins.fetchurl {
url = "${repo}/raw/aff8a0b28396750446e5537a96461bc4facdb287/pkgs/by-name/sc/sccache/package.nix";
Expand Down
14 changes: 13 additions & 1 deletion tools/nix/sharedLibDeps.nix
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
nghttp2
simdjson
simdutf
uvwasi
zlib
zstd
;
Expand All @@ -28,6 +27,19 @@
hdr-histogram = pkgs.hdrhistogram_c;
highway = pkgs.libhwy;
http-parser = pkgs.llhttp;

# TODO: remove this override once the pin we use has picked up https://github.com/NixOS/nixpkgs/pull/575002
uvwasi = pkgs.uvwasi.overrideAttrs (old: {
patches = old.patches ++ [
(pkgs.fetchpatch2 {
url = "https://github.com/nodejs/uvwasi/commit/fe602a6911207efd8dcfc070a752bcf76813c978.patch?full_index=1";
hash = "sha256-MyFvRuEhcqZR+Bz2pY9vani8U1iyQrDeni2kKKnJGEI=";
})
];

buildInputs = [ ];
propagatedBuildInputs = old.buildInputs;
});
}
// (pkgs.lib.optionalAttrs withLief {
inherit (pkgs) lief;
Expand Down
Loading