|
25 | 25 | let |
26 | 26 | useSharedAbseil = builtins.elem "--shared-abseil" configureFlags; |
27 | 27 | useSharedHighway = builtins.elem "--shared-highway" configureFlags; |
| 28 | + useSharedPerfetto = builtins.elem "--shared-perfetto" configureFlags; |
28 | 29 | useSharedSimdutf = builtins.elem "--shared-simdutf" configureFlags; |
| 30 | + useSharedTemporal = builtins.elem "--shared-temporal_capi" configureFlags; |
| 31 | + |
29 | 32 | src = |
30 | 33 | let |
31 | 34 | inherit (lib) fileset; |
|
50 | 53 | ++ lib.optional (!useSharedHighway) ../../tools/v8_gypfiles/highway.gyp |
51 | 54 | ++ lib.optional (!useSharedSimdutf) ../../tools/v8_gypfiles/simdutf.gyp |
52 | 55 | ++ lib.optional ( |
53 | | - builtins.elem "--with-perfetto" configureFlags |
54 | | - && !(builtins.elem "--shared-perfetto" configureFlags) |
| 56 | + if useSharedTemporal then |
| 57 | + icu == null |
| 58 | + else |
| 59 | + !(builtins.elem "--v8-disable-temporal-support" configureFlags) |
| 60 | + ) ../../deps/crates |
| 61 | + ++ lib.optional ( |
| 62 | + builtins.elem "--with-perfetto" configureFlags && !useSharedPerfetto |
55 | 63 | ) ../../deps/perfetto |
56 | 64 | ++ lib.optionals (icu != null) [ |
57 | 65 | ../../tools/icu/icu_versions.json |
@@ -111,14 +119,9 @@ stdenv.mkDerivation (finalAttrs: { |
111 | 119 | else |
112 | 120 | "${builtins.elemAt v8Version 0}.${builtins.elemAt v8Version 1}.${builtins.elemAt v8Version 2}.${builtins.elemAt v8Version 3}-${builtins.elemAt v8_embedder_string 0}"; |
113 | 121 |
|
114 | | - patches = lib.optional ( |
115 | | - # V8 accesses internal ICU headers and methods in the Temporal files. |
116 | | - !(builtins.isString icu) && builtins.elem "--v8-enable-temporal-support" configureFlags |
117 | | - ) ./temporal-no-vendored-icu.patch; |
118 | | - |
119 | 122 | # We need to patch tools/gyp/ to work from within Nix sandbox |
120 | 123 | prePatch = '' |
121 | | - ${lib.optionalString (builtins.length finalAttrs.patches == 0) "patches=()"} |
| 124 | + ${lib.optionalString (builtins.length (finalAttrs.patches or [ ]) == 0) "patches=()"} |
122 | 125 | for patch in ${lib.concatStringsSep " " patches}; do |
123 | 126 | filtered=$(mktemp) |
124 | 127 | filterdiff -p1 -i 'tools/gyp/pylib/*' "$patch" > "$filtered" |
|
0 commit comments