CVE and update status of the FreeBSD ports tree3,295 unaddressed CVEs in 670 portsAll times are CET
Port details

lang/v8 15.6.75.19

Open source JavaScript engine by Google

Port info

Maintainer
delphij@FreeBSD.org
Packages
latest: 15.5.35.25, update to 15.6.75.19 not built yet
Upstream
up to date
Last update
to 15.6.75.19 · c984077356
Quarterly
2026Q4: 10.4.132.20_4 2 unaddressed
WWW
https://v8.dev/
Links
cgit · VuXML

Install

Package
# pkg install v8
installs 15.5.35.25 from latest; from quarterly (2026Q4) 10.4.132.20_4
Port
# cd /usr/ports/lang/v8 && make install clean
Size
22 MiB download · 104 MiB installed
Depends on
devel/icu 76.1,1
License
APACHE20 and BSD3CLAUSE and MIT and UNICODE30

Packages by version and architecture

latest

FreeBSD versionamd64aarch64i386
FreeBSD 1615.5.35.2515.5.35.20_1–
FreeBSD 1515.5.35.2515.5.35.25–
FreeBSD 1415.5.35.25✗15.5.35.25

quarterly (2026Q4)

FreeBSD versionamd64aarch64i386
FreeBSD 1510.4.132.20_4✗–
FreeBSD 1410.4.132.20_4✗10.4.132.20_4

version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.

Unaddressed (1)

The CVE record lists the packaged version 15.5.35.25 as affected, and no VuXML entry names the CVE. What does this mean?

CVECVSSPublishedDescription
CVE-2024-19398.82024-02-29Type Confusion in V8 in Google Chrome prior to 122.0.6261.94 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security…

VuXML only (0)

Listed in VuXML, the packaged version 15.5.35.25 is still in the affected range; pkg audit reports it. What does this mean?

None.

Fixed (2)

Show 2 fixed
VuXML entries whose affected range the packaged version has left.

Problem reports (1) · open in Bugzilla, most recently changed first

PRSummaryStatusChanged
271838lang/v8: fails with kern.elf64.allow_wx=0 but elfctl -e +wxneeded doesn't helpNew2026-07-01

Commits (118)

Xin LI (delphij) · 15.6.75.19
lang/v8: update to 15.6.75.19 (Chrome 156 stable)

- Update the dependency pins from DEPS and the Temporal crates to the
  versions in Chromium's third_party/rust.
- Read time zone data from devel/icu through the new upstream
  v8_enable_temporal_systemicu option instead of a local patch.
- Port PartitionAlloc's zero segment, which keeps the low 4 GB of the
  address space inaccessible, to FreeBSD.  V8 no longer reserves this
  range itself, and d8 refuses to start without it.  Hinted mappings
  are not honored with ASLR, so reserve the range with a guard mapping.
c984077356
Xin LI (delphij) · 15.5.35.25
lang/v8: update to 15.5.35.25

- Initialize the attribute object before passing it to
  pthread_attr_get_np() in PartitionAlloc's GetStackTop(), which
  FreeBSD requires.
cbd5f84a25
Mikael Urankar (mikael) · 15.5.35.20_2
lang/rust: Bump revisions after 1.99.0

PR:		299016
9c878207a1
Xin LI (delphij) · 15.5.35.20_1
lang/v8: Misc build fixes

- aarch64: do not enable PartitionAlloc's ARM memory tagging support,
  which needs Linux's <asm/hwcap.h>.  It was enabled because the port
  makes FreeBSD pass for Linux in GN.
- i386: V8 only uses PartitionAlloc together with pointer compression,
  so its libraries are not built there.  Do not try to install them.
- d8 refuses to start when the first 4 GB of the address space can not
  be reserved.  Only have it do so when ASLR is active, as
  position-independent executables are loaded below 4 GB otherwise.
- Drop patches for files the build does not use, the EXAMPLES
  leftovers and a substitution that no longer matches anything.
6cf38ee5e8
Xin LI (delphij) · 15.5.35.20
lang/v8: update to 15.5.35.20 (Chrome 155 stable)

- Enable Temporal.  GN can only build the temporal_capi Rust crate with
  the Chromium Rust toolchain, so build it with cargo as a static
  library through a small wrapper crate (temporal_capi is no_std) and
  have GN link that.  Crate versions follow Chromium's Cargo.lock.
  Time zone data is read from devel/icu; use the accessors libicuuc
  exports instead of ICU's internal udatamem.h, which is not installed.
- Use libclang and its Python bindings from the llvm port for the new
  metagen instance-types generator, and work around Cursor being
  unhashable in the bindings before LLVM 21.
- Ignore check_includes_strict, which devel/gn does not know yet.
- Add the licenses of the statically linked crates.
- Depend on libicuuc.so, which is what gets linked, instead of
  libicudata.so, and stop depending on glib, which was never linked.
- Drop DIST_SUBDIR; distfile names have been unique since the switch
  to the GitHub mirror.
94e92ea24d
Xin LI (delphij) · 15.4.80.20
lang/v8: Fix fetch by fetching sub-dependencies from GitHub mirror

The +archive tarballs on chromium.googlesource.com are generated on
the fly with the time of the request as the mtime of every entry,
and the generated tarballs are not reproducible, so their size and
checksum change with each download and fetch fails with a size
or checksum mismatch.

To address this, fetch all sub-dependencies with GH_TUPLE from the
unofficial chromium-full-mirror organization on GitHub, which carries
the same commits and produces stable tarballs.

Because the chromium-full-mirror is an unofficial mirror, a new
verify-mirror target is added, which downloads every sub-dependency
from chromium.googlesource.com and compares the extracted tree with
the mirror distfile.

This new target is run as part of "make makesum" so distinfo can only
be generated when comparison passing.

Drop the hand written post-extract step as the framework now handles
the sub-dependencies.

verify-mirror passed for all 27 sub-dependencies.  The patched source
tree is identical to the previous one except for the line endings of
two unused files in jsoncpp's devtools, so no PORTREVISION bump.
60f1eb4566
Xin LI (delphij) · 15.4.80.20
lang/v8: update to 15.4.80.20 (Chrome 154 stable)

- Update to 15.4.80.20 (Chrome 154.0.8037.97 stable pin)
- Update sub-dependency revisions from DEPS
- Add patch-.gn: use python3 from PATH instead of the hermetic
  CPython CIPD package, which is not fetched; this also avoids a
  host_cpu reference unsupported by devel/gn in the dotfile
- Add USES=llvm:min=20,build for proper LLVM toolchain selection
- Add 3 new sub-dependencies: cpu_features (chromium wrapper),
  disarm, fadec
- Add ObtainCurrentThreadStackReservedLimit() for FreeBSD
- Remove upstreamed wasm-shuffle-reducer.cc patch
- Remove libcppgc.so and libthird_party_protobuf_protobuf_lite.so
  (merged/removed upstream)
- Remove stale v8_use_libm_trig_functions GN arg (removed upstream)
- Specify explicit ALL_TARGET to avoid building test targets
- Regenerate all patches for new version
- Use USES=elfctl to mark d8, v8_shell, mksnapshot and mkgrokdump
  as wxneeded: V8's JIT maps its code range read+write+execute and
  has no W^X mode usable on FreeBSD, so isolate creation aborted
  when kern.elf64.allow_wx=0.  The kernel reads the flag from the
  main executable only, so consumers embedding libv8 need to mark
  their own binaries the same way
- Add patch-src_base_virtual-address-space.cc: allocate guard
  regions with MAP_FIXED | MAP_EXCL, as with ASLR enabled FreeBSD
  does not honor the mmap hint even when the range is free
- Take maintainership
09ca853f8c
Po-Chuan Hsieh (sunpoet) · 10.4.132.20_4
lang/v8: Drop maintainership
7010e0af1b
Daniel Engberg (diizzy) · 10.4.132.20_4
*/*: Bump consumers of devel/icu

...to avoid library mismatches
ff33dd4700
Dimitry Andric (dim) · 10.4.132.20_3
lang/v8: fix build with libc++ 19

As noted in the libc++ 19 release notes [1], std::char_traits<> is now
only provided for char, char8_t, char16_t, char32_t and wchar_t, and any
instantiation for other types will fail.

This causes lang/v8 to fail to compile with clang 19 and libc++ 19,
resulting in errors similar to:

  /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned short>'
    820 |   static_assert(is_same<_CharT, typename traits_type::char_type>::value,
        |                                          ^
  ../../src/inspector/v8-string-conversions.cc:387:26: note: in instantiation of template class 'std::basic_string<unsigned short>' requested here
    387 | std::basic_string<UChar> UTF8ToUTF16(const char* stringStart, size_t length) {
        |                          ^
  /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
     23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
        |                             ^

Upstream v8 has fixed this in commit 182d9c05e78 [2], so add it as a
backported patch, until the next version of v8 is released.

[1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals
[2] https://chromium.googlesource.com/v8/v8.git/+/182d9c05e78

PR:		282514
Approved by:	sunpoet (maintainer)
MFH:		2024Q4
1617a29594
Jan Beich (jbeich) · 10.4.132.20_3
devel/icu: update to 74.1

Changes:	https://github.com/unicode-org/icu/releases/tag/release-74-1
Reported by:	GitHub (watch releases)
PR:		274317
Exp-run by:	antoine (incomplete)
Approved by:	fluffy
e55b80195e
Rene Ladan (rene) · 10.4.132.20_2
all: remove explicit versions in USES=python for "3.x+"

The logic in USES=python will automatically convert this to 3.8+ by
itself.

Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.

finance/quickfix: mark BROKEN with PYTHON

libtool: compile:  c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp  -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
          ^~~~~~~~~~
1 warning and 1 error generated.

Reviewed by:	portmgr, vishwin, yuri
Differential Revision:	<https://reviews.freebsd.org/D40568>
3d9a815d9c
Jan Beich (jbeich) · 10.4.132.20_2
devel/icu: update to 73.1

- Temporarily switch to GitHub auto archive (release artifacts are N/A atm)

Changes:	https://github.com/unicode-org/icu/releases/tag/release-73-1
Reported by:	GitHub (watch releases)
PR:		270422
Exp-run by:	antoine
f1f1a8be88
Jan Beich (jbeich) · 10.4.132.20_1
devel/icu: update to 72.1

Changes:	https://github.com/unicode-org/icu/releases/tag/release-72-1
Reported by:	GitHub (watch releases)
PR:		266582
Exp-run by:	antoine
dfe25d73e7
Stefan Eßer (se) · 10.4.132.20
Remove WWW entries moved into port Makefiles

Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.

This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.

Approved by:		portmgr (tcberner)
fb16dfecae
Stefan Eßer (se) · 10.4.132.20
Add WWW entries to port Makefiles

It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
b7f05445c0
Po-Chuan Hsieh (sunpoet) · 10.4.132.20
lang/v8: Update to 10.4.132.20

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.4-lkgr
592e44a316
Po-Chuan Hsieh (sunpoet) · 10.3.174.20
lang/v8: Update to 10.3.174.20

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.3-lkgr
af793852bb
Po-Chuan Hsieh (sunpoet) · 10.3.174.18
lang/v8: Update to 10.3.174.18

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.3-lkgr
0db7465f14
Po-Chuan Hsieh (sunpoet) · 10.3.174.14
lang/v8: Update to 10.3.174.14

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.3-lkgr
55cdf8f907
Po-Chuan Hsieh (sunpoet) · 10.2.154.8
lang/v8: Update to 10.2.154.8

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.2-lkgr
ba3bcfe513
Po-Chuan Hsieh (sunpoet) · 10.2.154.4
lang/v8: Update to 10.2.154.4

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.2-lkgr
f85e9f2c9d
Po-Chuan Hsieh (sunpoet) · 10.1.124.12
lang/v8: Update to 10.1.124.12

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.1-lkgr
90d612d56a
Po-Chuan Hsieh (sunpoet) · 10.1.124.11
lang/v8: Update to 10.1.124.11

- Add EXAMPLES option

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.1-lkgr
31a25e5397
Po-Chuan Hsieh (sunpoet) · 10.0.139.15
lang/v8: Update to 10.0.139.15

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.0-lkgr
118aed3e70
Po-Chuan Hsieh (sunpoet) · 10.0.139.8
lang/v8: Update to 10.0.139.8

- Use v8 tarball from GitHub mirror

Changes:	https://v8.dev/blog/v8-release-100
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/10.0-lkgr
406d2fa2ad
Jan Beich (jbeich) · 9.9.115.10_1
devel/icu: update to 71.1

Changes:	https://github.com/unicode-org/icu/releases/tag/release-71-1
Reported by:	GitHub (watch releases)
PR:		262654
Exp-run by:	antoine
Approved by:	fluffy
268cee3b02
Po-Chuan Hsieh (sunpoet) · 9.9.115.10
lang/v8: Update to 9.9.115.10

Changes:	https://v8.dev/blog/v8-release-99
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.9-lkgr
d62e2f8e50
Po-Chuan Hsieh (sunpoet) · 9.9.115.8
lang/v8: Update to 9.9.115.8

Changes:	https://v8.dev/blog/v8-release-99
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.9-lkgr
aa0c8d6d0f
Po-Chuan Hsieh (sunpoet) · 9.8.177.9
lang/v8: Update to 9.8.177.9

Changes:	https://v8.dev/blog/v8-release-98
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.8-lkgr
129dc0398d
Po-Chuan Hsieh (sunpoet) · 9.7.106.19
lang/v8: Set ONLY_FOR_ARCHS

- Cosmetic change
682d9c860b
Po-Chuan Hsieh (sunpoet) · 9.7.106.19
lang/v8: Update to 9.7.106.19

Changes:	https://v8.dev/blog/v8-release-97
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.7-lkgr
b980e61616
Po-Chuan Hsieh (sunpoet) · 9.6.180.21
lang/v8: Update to 9.6.180.21

Changes:	https://v8.dev/blog/v8-release-96
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.6-lkgr
886871e93a
Po-Chuan Hsieh (sunpoet) · 9.6.180.12
lang/v8: Update to 9.6.180.12

- Use v8 tarball from chromium.googlesource.com since GitHub mirror has been stopped over 25 days

Changes:	https://v8.dev/blog/v8-release-96
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.7-lkgr
9c313fff45
Po-Chuan Hsieh (sunpoet) · 9.5.172.21
lang/v8: Update to 9.5.172.21

Changes:	https://v8.dev/blog/v8-release-95
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.5-lkgr
		https://github.com/v8/v8/commits/9.5-lkgr
71d0bbaa42
Jan Beich (jbeich) · 9.4.146.21_1
devel/icu: update to 70.1

Changes:	https://github.com/unicode-org/icu/releases/tag/release-70-1
Reported by:	GitHub (watch releases)
PR:		258794
Exp-run by:	antoine
f34ece3aa6
Po-Chuan Hsieh (sunpoet) · 9.4.146.21
lang/v8: Update to 9.4.146.21

Changes:	https://v8.dev/blog/v8-release-94
		https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.4-lkgr
		https://github.com/v8/v8/commits/9.4-lkgr
1125c42dbd
Po-Chuan Hsieh (sunpoet) · 9.3.345.19
lang/v8: Update to 9.3.345.19

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.3-lkgr
		https://github.com/v8/v8/commits/9.3-lkgr
8f577ae3ac
Po-Chuan Hsieh (sunpoet) · 9.2.230.22
lang/v8: Update to 9.2.230.22

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.2-lkgr
		https://github.com/v8/v8/commits/9.2-lkgr
db73b5f06d
Po-Chuan Hsieh (sunpoet) · 9.2.230.20
lang/v8: Update to 9.2.230.20

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.2-lkgr
		https://github.com/v8/v8/commits/9.2-lkgr
c5c5ed74e5
Po-Chuan Hsieh (sunpoet) · 9.1.269.39
lang/v8: Update to 9.1.269.39

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.1-lkgr
		https://github.com/v8/v8/commits/9.1-lkgr
eb59b42fe4
Po-Chuan Hsieh (sunpoet) · 9.1.269.36
lang/v8: Update to 9.1.269.28

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.1-lkgr
		https://github.com/v8/v8/commits/9.1-lkgr
0937ddecea
Po-Chuan Hsieh (sunpoet) · 9.0.257.29
lang/v8: Update to 9.0.257.29

Changes:	https://chromium.googlesource.com/v8/v8.git/+log/refs/heads/9.0-lkgr
		https://github.com/v8/v8/commits/9.0-lkgr
7792a1d1ad
Po-Chuan Hsieh (sunpoet) · 9.0.257.23
lang/v8: Use USES=cpe
243cc1a6a3
Po-Chuan Hsieh (sunpoet) · 9.0.257.23
lang/v8: Update to 9.0.257.23

- Use SUB_FILES for pkgconfig files (v8*.pc)
- Sort PLIST
- Update pkg-descr
- Update WWW

Changes:	https://v8.dev/blog/v8-release-89
		https://v8.dev/blog/v8-release-90
4b783f69ff
Tobias Kortkamp (tobik) · 8.7.220.23_1
Clean up some things

- Fix typos
- Remove duplicate variables
- Remove nop variables
- Clean up commented PORTREVISION
- Add missing USES

Reported by:	portscan
6707a3c942
Po-Chuan Hsieh (sunpoet) · 8.7.220.23_1
lang/v8: Remove outdated patch after r563570 (a7d2ae454e62240f7349c94e02e45b5982e74204)

PR:		254905
Reported by:	mikael
2ed31f3767
Mateusz Piotrowski (0mp) · 8.7.220.23_1
lang/v8 sysutils/e2fsprogs: Set PORTSCOUT ignore correctly

Approved by:	portmgr blanket
b581cb75ac
Jan Beich (jbeich) · 8.7.220.23_1
devel/icu: update to 69.1

Changes:	https://github.com/unicode-org/icu/releases/tag/release-69-1
Reported by:	GitHub (watch releases)
69d24a727d
Mathieu Arnold (mat) · 8.7.220.23
One more small cleanup, forgotten yesterday. Reported by:	lwhsu
cf118ccf87