diff --git a/lang/v8/Makefile b/lang/v8/Makefile index f375fdb5a510..b197846148c2 100644 --- a/lang/v8/Makefile +++ b/lang/v8/Makefile @@ -1,117 +1,117 @@ # We follow the stable channel on https://omahaproxy.appspot.com/ -# https://chromium.googlesource.com/v8/v8/+/refs/heads/10.3-lkgr +# https://chromium.googlesource.com/v8/v8/+/refs/heads/10.4-lkgr PORTNAME= v8 -PORTVERSION= 10.3.174.20 +PORTVERSION= 10.4.132.20 CATEGORIES= lang MASTER_SITES= LOCAL/sunpoet/v8/${PORTVERSION:R:R}:local DISTFILES= build-${BUILD_REV}.tar.gz:local \ buildtools-${BUILDTOOLS_REV}.tar.gz:local \ clang-${CLANG_REV}.tar.gz:local \ common-${COMMON_REV}.tar.gz:local \ googletest-${GOOGLETEST_REV}.tar.gz:local \ icu-${ICU_REV}.tar.gz:local \ zlib-${ZLIB_REV}.tar.gz:local DIST_SUBDIR= v8/${PORTVERSION:R:R} EXTRACT_ONLY= ${DISTNAME}.tar.gz MAINTAINER= sunpoet@FreeBSD.org COMMENT= Open source JavaScript engine by Google LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE ONLY_FOR_ARCHS= aarch64 amd64 i386 BUILD_DEPENDS= binutils>=0:devel/binutils \ gn:devel/gn \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} LIB_DEPENDS= libicudata.so:devel/icu USES= compiler:c++17-lang cpe gnome ninja pkgconfig python:3.5+,build tar:xz USE_GNOME= glib20 BINARY_ALIAS= python3=${PYTHON_CMD} MAKE_ARGS= -C out/Release USE_LDCONFIG= yes SUB_FILES= v8.pc v8_libbase.pc v8_libplatform.pc USE_GITHUB= yes CPE_VENDOR= google CONFLICTS_INSTALL= v8-beta -BUILD_REV= 1c34f36484f43be915b48b090527d87356c72ce8 -BUILDTOOLS_REV= 7208eddba161d85108097c3c5975264c04e3cad8 -CLANG_REV= 9da95105864734ee87f47e0de638a09eb088338b +BUILD_REV= a56852668f892151fc97343b57af15e82db2e798 +BUILDTOOLS_REV= 8b16338d17cd71b04a6ba28da7322ab6739892c2 +CLANG_REV= 4e79fda976d9c3f12c8bfbec297bd27dd70a1343 COMMON_REV= d115b033c4e53666b535cbd1985ffe60badad082 GOOGLETEST_REV= af29db7ec28d6df1c7f0f745186884091e602e07 -ICU_REV= 585942f33d939a11f4600bd5042649b7ca189008 -ZLIB_REV= 9979c19f11314156490b53da91df08c934a3c0d4 +ICU_REV= 165825933050109d8331d0faa56cc9f52460fbbf +ZLIB_REV= 64bbf988543996eb8df9a86877b32917187eba8f # Run "gn args --list out/Release" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ extra_cxxflags="${CXXFLAGS}" \ extra_ldflags="${LDFLAGS}" \ is_clang=true \ is_component_build=true \ is_debug=false \ treat_warnings_as_errors=false \ use_aura=true \ use_lld=true \ use_custom_libcxx=false \ v8_use_external_startup_data=false OPTIONS_DEFINE= EXAMPLES post-extract: @${MKDIR} ${WRKSRC}/base/trace_event/common ${WRKSRC}/build ${WRKSRC}/buildtools ${WRKSRC}/third_party/googletest/src ${WRKSRC}/third_party/icu ${WRKSRC}/third_party/zlib ${WRKSRC}/tools/clang @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/build-${BUILD_REV}.tar.gz -C ${WRKSRC}/build @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/buildtools-${BUILDTOOLS_REV}.tar.gz -C ${WRKSRC}/buildtools @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/clang-${CLANG_REV}.tar.gz -C ${WRKSRC}/tools/clang @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/common-${COMMON_REV}.tar.gz -C ${WRKSRC}/base/trace_event/common @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/googletest-${GOOGLETEST_REV}.tar.gz -C ${WRKSRC}/third_party/googletest/src @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/icu-${ICU_REV}.tar.gz -C ${WRKSRC}/third_party/icu @${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/zlib-${ZLIB_REV}.tar.gz -C ${WRKSRC}/third_party/zlib post-patch: @${REINPLACE_CMD} -i '' 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/build/toolchain/gcc_toolchain.gni ${WRKSRC}/buildtools/third_party/libc++/BUILD.gn # https://github.com/klzgrad/naiveproxy/blob/master/src/build/config/gclient_args.gni @${ECHO_CMD} 'checkout_google_benchmark = false' > ${WRKSRC}/build/config/gclient_args.gni # Use ICU from ports and create needed directory pre-configure: @cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} ./build/linux/unbundle/replace_gn_files.py --system-libraries icu # || ${FALSE} @${MKDIR} ${WRKSRC}/out/Release/gen/shim_headers/icui18n_shim/third_party/icu/source/i18n/unicode ${WRKSRC}/out/Release/gen/shim_headers/icuuc_shim/third_party/icu/source/common/unicode @${MKDIR} ${WRKSRC}/out/Release/gen/include @${CP} -R ${LOCALBASE}/include/unicode ${WRKSRC}/out/Release/gen/include/unicode do-configure: @cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} gn gen out/Release --args='${GN_ARGS}' do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/include/cppgc ${STAGEDIR}${PREFIX}/include/libplatform ${INSTALL_PROGRAM} ${WRKSRC}/out/Release/d8 ${STAGEDIR}${PREFIX}/bin/d8 ${INSTALL_PROGRAM} ${WRKSRC}/out/Release/mkgrokdump ${STAGEDIR}${PREFIX}/bin/mkgrokdump ${INSTALL_PROGRAM} ${WRKSRC}/out/Release/mksnapshot ${STAGEDIR}${PREFIX}/bin/mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/Release/v8_shell ${STAGEDIR}${PREFIX}/bin/v8_shell ${INSTALL_LIB} ${WRKSRC}/out/Release/libchrome_zlib.so ${STAGEDIR}${PREFIX}/lib/libchrome_zlib.so ${INSTALL_LIB} ${WRKSRC}/out/Release/libcppgc.so ${STAGEDIR}${PREFIX}/lib/libcppgc.so ${INSTALL_LIB} ${WRKSRC}/out/Release/libv8.so ${STAGEDIR}${PREFIX}/lib/libv8.so ${INSTALL_LIB} ${WRKSRC}/out/Release/libv8_libbase.so ${STAGEDIR}${PREFIX}/lib/libv8_libbase.so ${INSTALL_LIB} ${WRKSRC}/out/Release/libv8_libplatform.so ${STAGEDIR}${PREFIX}/lib/libv8_libplatform.so ${INSTALL_DATA} ${WRKSRC}/include/*.h ${STAGEDIR}${PREFIX}/include/ cd ${WRKSRC}/include/cppgc && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/include/cppgc '-name *\.h' ${INSTALL_DATA} ${WRKSRC}/include/libplatform/*.h ${STAGEDIR}${PREFIX}/include/libplatform/ ${INSTALL_DATA} ${WRKDIR}/v8*.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig/ do-install-EXAMPLES-on: ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/Release/v8_simple_* ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/lang/v8/distinfo b/lang/v8/distinfo index 16f3093fbbed..a09a7c4f7042 100644 --- a/lang/v8/distinfo +++ b/lang/v8/distinfo @@ -1,17 +1,17 @@ -TIMESTAMP = 1659161117 -SHA256 (v8/10.3/build-1c34f36484f43be915b48b090527d87356c72ce8.tar.gz) = b2357a8869477efde4f9c00db7e9724fa7f91014e41c95ca9af04d1a69826e73 -SIZE (v8/10.3/build-1c34f36484f43be915b48b090527d87356c72ce8.tar.gz) = 1429146 -SHA256 (v8/10.3/buildtools-7208eddba161d85108097c3c5975264c04e3cad8.tar.gz) = 2938cd9a943c6ada5cfea163206e13c04c9d6e9302990ea6a99d60720da62685 -SIZE (v8/10.3/buildtools-7208eddba161d85108097c3c5975264c04e3cad8.tar.gz) = 87080 -SHA256 (v8/10.3/clang-9da95105864734ee87f47e0de638a09eb088338b.tar.gz) = a1cf18801bb5073f661062d525f350c9c20026cf030bbbc62726414f6271cb94 -SIZE (v8/10.3/clang-9da95105864734ee87f47e0de638a09eb088338b.tar.gz) = 301159 -SHA256 (v8/10.3/common-d115b033c4e53666b535cbd1985ffe60badad082.tar.gz) = a9023ef8d38372f8577fdd1683a7841c72f96169d28c00482a65c486c3eeefad -SIZE (v8/10.3/common-d115b033c4e53666b535cbd1985ffe60badad082.tar.gz) = 10496 -SHA256 (v8/10.3/googletest-af29db7ec28d6df1c7f0f745186884091e602e07.tar.gz) = dcca6755ff45b7aee6d461e74dd5ec765c3abc579d5a3906013630ca72e85a38 -SIZE (v8/10.3/googletest-af29db7ec28d6df1c7f0f745186884091e602e07.tar.gz) = 840843 -SHA256 (v8/10.3/icu-585942f33d939a11f4600bd5042649b7ca189008.tar.gz) = 720d9cf89b870bfb77f5601b6a683e02f5ce3c6199714972412b66bc9769a113 -SIZE (v8/10.3/icu-585942f33d939a11f4600bd5042649b7ca189008.tar.gz) = 49657477 -SHA256 (v8/10.3/zlib-9979c19f11314156490b53da91df08c934a3c0d4.tar.gz) = 04de97ac30242c3acf4b0159453863ea75caa0fd6b8b69a17e03917ea97ec032 -SIZE (v8/10.3/zlib-9979c19f11314156490b53da91df08c934a3c0d4.tar.gz) = 562540 -SHA256 (v8/10.3/v8-v8-10.3.174.20_GH0.tar.gz) = d8340978b8d720103dacc408a31ec44637551244298b6580ce6783ecb59f4f95 -SIZE (v8/10.3/v8-v8-10.3.174.20_GH0.tar.gz) = 27938380 +TIMESTAMP = 1660576726 +SHA256 (v8/10.4/build-a56852668f892151fc97343b57af15e82db2e798.tar.gz) = 532e9a8935727e3fb22438e5688cca6ee65e9ab5cd1edb6506d502193130eb3e +SIZE (v8/10.4/build-a56852668f892151fc97343b57af15e82db2e798.tar.gz) = 1439501 +SHA256 (v8/10.4/buildtools-8b16338d17cd71b04a6ba28da7322ab6739892c2.tar.gz) = d7a86abbd61a6dcfc802747ecf4076b45af782a5e18db9570dfa37c297a39e9e +SIZE (v8/10.4/buildtools-8b16338d17cd71b04a6ba28da7322ab6739892c2.tar.gz) = 87123 +SHA256 (v8/10.4/clang-4e79fda976d9c3f12c8bfbec297bd27dd70a1343.tar.gz) = f3cb4022ddbaebb71199d7c669f3054fb140fa674a5ae8a2ed529a15d6d7de04 +SIZE (v8/10.4/clang-4e79fda976d9c3f12c8bfbec297bd27dd70a1343.tar.gz) = 301488 +SHA256 (v8/10.4/common-d115b033c4e53666b535cbd1985ffe60badad082.tar.gz) = b530d88b68060e9ccb9a6ee3633cc3ef206c6a4c94cbe56c34c76880dd16aeff +SIZE (v8/10.4/common-d115b033c4e53666b535cbd1985ffe60badad082.tar.gz) = 10494 +SHA256 (v8/10.4/googletest-af29db7ec28d6df1c7f0f745186884091e602e07.tar.gz) = 857e1fef21b8824a26d3b12e2d70be7a05277b5efd2e6e59cee629c86011b9ca +SIZE (v8/10.4/googletest-af29db7ec28d6df1c7f0f745186884091e602e07.tar.gz) = 840749 +SHA256 (v8/10.4/icu-165825933050109d8331d0faa56cc9f52460fbbf.tar.gz) = 6a887114fb3ea5a7ec47b98357566b058bc3dc513a84c9b09bd1efce5d8cfabe +SIZE (v8/10.4/icu-165825933050109d8331d0faa56cc9f52460fbbf.tar.gz) = 49665847 +SHA256 (v8/10.4/zlib-64bbf988543996eb8df9a86877b32917187eba8f.tar.gz) = 77a13e05b282db3627537a224b7a745aafb84e71c729185b6144f9da4ddd71c1 +SIZE (v8/10.4/zlib-64bbf988543996eb8df9a86877b32917187eba8f.tar.gz) = 563889 +SHA256 (v8/10.4/v8-v8-10.4.132.20_GH0.tar.gz) = ef3f38fd8f8a0ceebe707065f04fd483803e27bb4754048b98cea36f94ce989b +SIZE (v8/10.4/v8-v8-10.4.132.20_GH0.tar.gz) = 28080627 diff --git a/lang/v8/files/patch-include_v8config.h b/lang/v8/files/patch-include_v8config.h deleted file mode 100644 index f8c1fa27b800..000000000000 --- a/lang/v8/files/patch-include_v8config.h +++ /dev/null @@ -1,21 +0,0 @@ ---- include/v8config.h.orig 2022-03-17 10:34:15 UTC -+++ include/v8config.h -@@ -344,7 +344,18 @@ path. Add it with -I to the command line - # define V8_HAS_CPP_ATTRIBUTE_NO_UNIQUE_ADDRESS \ - (V8_HAS_CPP_ATTRIBUTE(no_unique_address)) - -+// Work around Clang bug present in 9.0.1, at least. -+// -+// Clang stores alignment as a 32-bit unsigned integer, but V8 only uses -+// V8_ASSUME_ALIGNED() for a 4GB (2^32) alignment -+// (kPtrComprIsolateRootAlignment). As such, the alignment overflows and -+// becomes zero, triggering an internal Clang assertion that alignment must not -+// be zero. -+#if 0 - # define V8_HAS_BUILTIN_ASSUME_ALIGNED (__has_builtin(__builtin_assume_aligned)) -+#else -+# define V8_HAS_BUILTIN_ASSUME_ALIGNED 0 -+#endif - # define V8_HAS_BUILTIN_BSWAP16 (__has_builtin(__builtin_bswap16)) - # define V8_HAS_BUILTIN_BSWAP32 (__has_builtin(__builtin_bswap32)) - # define V8_HAS_BUILTIN_BSWAP64 (__has_builtin(__builtin_bswap64)) diff --git a/lang/v8/pkg-plist b/lang/v8/pkg-plist index fb46563c4a8e..85e8fedd8812 100644 --- a/lang/v8/pkg-plist +++ b/lang/v8/pkg-plist @@ -1,123 +1,124 @@ bin/d8 bin/mkgrokdump bin/mksnapshot bin/v8_shell include/cppgc/allocation.h include/cppgc/common.h include/cppgc/cross-thread-persistent.h include/cppgc/custom-space.h include/cppgc/default-platform.h include/cppgc/ephemeron-pair.h include/cppgc/explicit-management.h include/cppgc/garbage-collected.h include/cppgc/heap-consistency.h include/cppgc/heap-state.h include/cppgc/heap-statistics.h include/cppgc/heap.h include/cppgc/internal/api-constants.h include/cppgc/internal/atomic-entry-flag.h include/cppgc/internal/caged-heap-local-data.h include/cppgc/internal/compiler-specific.h include/cppgc/internal/finalizer-trait.h include/cppgc/internal/gc-info.h include/cppgc/internal/logging.h include/cppgc/internal/name-trait.h include/cppgc/internal/persistent-node.h include/cppgc/internal/pointer-policies.h include/cppgc/internal/write-barrier.h include/cppgc/liveness-broker.h include/cppgc/macros.h include/cppgc/member.h include/cppgc/name-provider.h include/cppgc/object-size-trait.h include/cppgc/persistent.h include/cppgc/platform.h include/cppgc/prefinalizer.h include/cppgc/process-heap-statistics.h include/cppgc/sentinel-pointer.h include/cppgc/source-location.h include/cppgc/testing.h include/cppgc/trace-trait.h include/cppgc/type-traits.h include/cppgc/visitor.h include/libplatform/libplatform-export.h include/libplatform/libplatform.h include/libplatform/v8-tracing.h include/v8-array-buffer.h include/v8-callbacks.h include/v8-container.h include/v8-context.h include/v8-cppgc.h include/v8-data.h include/v8-date.h include/v8-debug.h include/v8-embedder-heap.h include/v8-embedder-state-scope.h include/v8-exception.h include/v8-extension.h include/v8-external.h include/v8-fast-api-calls.h include/v8-forward.h include/v8-function-callback.h include/v8-function.h include/v8-initialization.h include/v8-inspector-protocol.h include/v8-inspector.h include/v8-internal.h include/v8-isolate.h include/v8-json.h include/v8-local-handle.h include/v8-locker.h include/v8-maybe.h include/v8-memory-span.h include/v8-message.h include/v8-metrics.h include/v8-microtask-queue.h include/v8-microtask.h include/v8-object.h include/v8-persistent-handle.h include/v8-platform.h include/v8-primitive-object.h include/v8-primitive.h include/v8-profiler.h include/v8-promise.h include/v8-proxy.h include/v8-regexp.h include/v8-script.h include/v8-snapshot.h include/v8-statistics.h include/v8-template.h include/v8-traced-handle.h include/v8-typed-array.h include/v8-unwinder-state.h include/v8-unwinder.h include/v8-util.h include/v8-value-serializer-version.h include/v8-value-serializer.h include/v8-value.h include/v8-version-string.h include/v8-version.h include/v8-wasm-trap-handler-posix.h include/v8-wasm-trap-handler-win.h include/v8-wasm.h include/v8-weak-callback-info.h include/v8.h include/v8config.h lib/libchrome_zlib.so lib/libcppgc.so lib/libv8.so lib/libv8_libbase.so lib/libv8_libplatform.so libdata/pkgconfig/v8.pc libdata/pkgconfig/v8_libbase.pc libdata/pkgconfig/v8_libplatform.pc %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_inspector_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_json_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_multi_return_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_parser_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_regexp_builtins_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_regexp_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_wasm_async_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_wasm_code_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_wasm_compile_fuzzer %%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_wasm_fuzzer +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/v8_simple_wasm_streaming_fuzzer