**DISPUTED**A failure in the -fstack-protector feature in GCC-based toolchains
that target AArch64 allows an attacker to exploit an existing buffer
overflow in dynamically-sized local variables in your application
without this being detected. This stack-protector failure only applies
to C99-style dynamically-sized local variables or those created using …
VuXML only (0) · listed, port not fixed yet
None. pkg audit reports nothing for this version.
Fixed (0)
No VuXML entries for this package.
Commits (95)
Rene Ladan (rene) · 14.2r1_2
all: drop support for FreeBSD 13, mips and risc64sf
Reviewed by: many (*)
Differential Revision: https://reviews.freebsd.org/D55624
Differential Revision: https://reviews.freebsd.org/D55642 (merged in from bofh)
many (*)
acm arrowd brooks cmt dch decke dinoex eduardo fluffy fuz gahr garga
jbeich joerg jrm kai kenrap martymac matthew mfechner michaelo mizhka
nobutaka pkubaj se tagattie thj
Anton Saietskii
GenericRikka
Gert Doering
Jan Bramkamp
Oleh Hushchenkov
Oleksandr Kryvulia
Ralf van der Enden
Yamagi
desktop kde python tcltk office
devel/gcc-arm-embedded: fix build with clang 21
With clang 21 devel/gcc-arm-embedded fails to build, with errors similar
to:
/wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb/binutils/readelf.c:23278:37: error: pointer comparison always evaluates to false [-Werror,-Wtautological-compare]
23278 | || inote.namedata + inote.namesz < inote.namedata)
| ^
and later many instances of:
In file included from <built-in>:1:
In file included from /wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb--gdb/gdb/defs.h:63:
/wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb--gdb/gdb/../gdbsupport/enum-flags.h:97:34: error: non-type
template argument is not a constant expression
97 | integer_for_size<sizeof (T), static_cast<bool>(T (-1) < T (0))>::type
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb--gdb/gdb/../gdbsupport/enum-flags.h:134:20: note: in
instantiation of template class 'enum_underlying_type<ui_out_flag>' requested here
134 | typedef typename enum_underlying_type<enum_type>::type underlying_type;
| ^
/wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb--gdb/gdb/ui-out.h:385:16: note: in instantiation of template
class 'enum_flags<ui_out_flag>' requested here
385 | ui_out_flags m_flags;
| ^
/wrkdirs/usr/ports/devel/gcc-arm-embedded/work-default/src/binutils-gdb--gdb/gdb/../gdbsupport/enum-flags.h:97:52: note: integer value
-1 is outside the valid range of values [0, 15] for the enumeration type 'ui_out_flag'
97 | integer_for_size<sizeof (T), static_cast<bool>(T (-1) < T (0))>::type
| ^
The readelf error is due to it assuming pointer wrapping, which is
undefined behavior. This can be worked around by casting the pointers to
uintptr_t, or by adding -fno-strict-overflow to the CFLAGS (but if you
are messing with the CFLAGS, you might as well disable -Werror).
The enum errors are because it is no longer allowed to cast integer
values to enum values, if they fall outside of the valid range. Upstream
fixed this in
<https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=4a0b2cb7210>,
which applies with a small bit of editing.
PR: 293168
Approved by: maintainer timeout (2 weeks)
MFH: 2026Q1
devel/gcc-arm-embedded: fix build on powerpc64*
1. Fix gmp build, set ABI="mode64".
2. Fix compiler detection for gmp - currently only
powerpc64{,le}-unknown-freebsd$VERSION-gcc, gcc and gcc64 are looked for.
3. Fix architecture detection - uname -p should be used on FreeBSD.
devel/gcc-arm-embedded: update toolchain to 14.2.rel1 from 2024/12/10
Build system has been completely revamped.
Now port uses official build scripts with minimal pathing to adopt some
Linux-isms to FreeBSD.
Two flavors are made: "default" one form AArch32 (ARMv7) ISA and "aarch64"
for AArch64 (ARMv8) ISA.
AArch32 (default) build supports A-, R- and M-profiles by default, but
A-profiles can be turned off in options.
AARch64 doesn't have choice of profiles.
gdb is built with python support by default, but can be built without
one with custom option.
All builds are using included snapshots of all libraries, like
libgmp, libmpfr, etc. There is no option to use system-wide versions
of these libraries anymore.
NLS is turned off by vendor and cannot be turned on.
No Linux cross-tools targets are provided for now, this port is
made to provde bare metal toolchains only.
Binaries are not stripped, as official ones are.
devel/gcc-arm-embedded: Set USE_GCC=13
Does not build with GCC 14. Set USE_GCC=13 so that the port does not
block GCC_DEFAULT update to GCC 14.
PR: 281247
all: drop support for expired FreeBSD 14.0
Simplify expressions for FreeBSD 13.X
Reviewed by: many
Differential Revision: https://reviews.freebsd.org/D46601
devel/gcc-arm-embedded: fix build with libc++ 17
When building relatively recent gcc ports (with C++ in them) against
libc++ 17, you get errors similar to:
In file included from /wrkdirs/usr/ports/lang/gcc12/work/gcc-12.2.0/gcc/cp/module.cc:208:
In file included from /wrkdirs/usr/ports/lang/gcc12/work/gcc-12.2.0/gcc/system.h:239:
In file included from /usr/include/c++/v1/vector:321:
In file included from /usr/include/c++/v1/__format/formatter_bool.h:20:
In file included from /usr/include/c++/v1/__format/formatter_integral.h:32:
In file included from /usr/include/c++/v1/locale:202:
/usr/include/c++/v1/__locale:546:5: error: '__abi_tag__' attribute only applies to structs, variables, functions, and namespaces
546 | _LIBCPP_INLINE_VISIBILITY
| ^
/usr/include/c++/v1/__config:813:37: note: expanded from macro '_LIBCPP_INLINE_VISIBILITY'
813 | # define _LIBCPP_INLINE_VISIBILITY _LIBCPP_HIDE_FROM_ABI
| ^
/usr/include/c++/v1/__config:792:26: note: expanded from macro '_LIBCPP_HIDE_FROM_ABI'
792 | __attribute__((__abi_tag__(_LIBCPP_TOSTRING(_LIBCPP_VERSIONED_IDENTIFIER))))
| ^
In file included from /wrkdirs/usr/ports/lang/gcc12/work/gcc-12.2.0/gcc/cp/module.cc:208:
In file included from /wrkdirs/usr/ports/lang/gcc12/work/gcc-12.2.0/gcc/system.h:239:
In file included from /usr/include/c++/v1/vector:321:
In file included from /usr/include/c++/v1/__format/formatter_bool.h:20:
In file included from /usr/include/c++/v1/__format/formatter_integral.h:32:
In file included from /usr/include/c++/v1/locale:202:
/usr/include/c++/v1/__locale:547:37: error: expected ';' at end of declaration list
547 | char_type toupper(char_type __c) const
| ^
/usr/include/c++/v1/__locale:553:48: error: too many arguments provided to function-like macro invocation
553 | const char_type* toupper(char_type* __low, const char_type* __high) const
| ^
/wrkdirs/usr/ports/lang/gcc12/work/gcc-12.2.0/gcc/../include/safe-ctype.h:146:9: note: macro 'toupper' defined here
146 | #define toupper(c) do_not_use_toupper_with_safe_ctype
| ^
This is because gcc/system.h includes safe-ctype.h which redefines ctype
macros such as toupper, tolower, etc to "poison" them.
However, it should only include the safe-ctype.h header *after* any C++
headers, such as <list>, <map>, <string>, etc, otherwise these might
transitively include internal ctype headers (such as with libc++ 17),
causing the above conflicts.
Fix it by moving the safe-ctype.h inclusion to later in gcc/system.h,
which solves this issue, and makes it possible to build against libc++
17.
See also: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111632
PR: 274039
Approved by: maintainer timeout (2 weeks)
MFH: 2023Q4
Mk/**tex.mk: Convert bsd.tex.mk to USES=tex
- Update all the consumers to use USES=tex
- USE_TEX=yes is the old way of writing USES=tex which has been removed
and replaced in all ports
- Almost all of the USE_TEX features remains unchanged
- Some consumers had the same variables defined both in the mk
infrastructure and also in the ports which have been removed from the
ports as those are redundant.
In case any of the consumers are failing to build please make sure that
the nexessary USES=tex is there. Unlike previous USE_TEX=yes will no
longer load the required VARS for tex and related dependencies.
Reviewed by: portmgr
Approved by: portmgr (blanket)
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)
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)
Update to MPC version 1.2.0 with the following changes: - New functions: . mpc_sum . mpc_dot - Several functions are more robust with a reduced exponent range (for example corresponding to IEEE 754 binary formats). - New mpcheck tool for comparison with the native C library (which is not installed by default).
Bump all directly dependent ports. Do not bump those indirectly
dependent via the lang/gcc* family since their run-time dependencies
and code generated should not be affected.
PR: 249950
Submitted by: wen
(1) Fix build of gmp on i386. (2) Sync configure options for all components. (3) Add option to build Cortex-A profiles (turn off by default). (4) Use system iconv even in PURE version, as bundled iconv is used by authors only for mingw32 builds.
(1) Return option PURE, as libraries are bundled again. (2) Make PURE default, as isl in ports have newer version. (3) Fix HTML pkg-plist entries.
Yes, date in version is wrong (typo!), but I don't want to add epoch.
Next update of gcc will fix it.
add objdump binutils dependencies to remaining devel/* ports
/usr/bin/objdump has been removed from the base system before FreeBSD 13.0.
Approved by: bapt (implicit)
devel/gcc-arm-embedded: fix build on powerpc64 elfv2
Merge the same patch that is already in other GCC ports to fix build on powerpc64 elfv2.
PR: 242382
Approved by: lev (maintainer timeout)
Bump PORTREVISION for ports depending on the canonical version of GCC as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3 to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Bump PORTREVISION for ports depending on the canonical version of GCC defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Fix build on gcc-based archs via USES=compiler:c++11-lang.
While here, fix obvious typo in SYMLINK_DESC.
PR: 232793
Submitted by: Piotr Kubaj
Approved by: portmgr (tier-2 blanket)
math/cloog - Update to 0.19.0 - Use github - Add ac_cv_prog_TEXI2DVI to avoid building docs for now
devel/isl
- Update to 0.19
- Bump PORTREVISION of all dependencies
devel/gcc-arm-embedded: enable for arm64
This was disabled with the reason being that it's slow to build in
emulation, but arm64 packages have been building on real hardware for
quite some time now.
Approved by: lev
For ports that are marked NOT_FOR/ONLY_FOR armv6, also mark them so on armv7.
This is part one of a multipart commit to bring armv7 ports to parity
with armv6.
Approved by: portmgr (tier-2 blanket)