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

lang/gnat12 12.4.0_1

GNAT (GNU Ada) compiler

Maintainer
ada@FreeBSD.org
Packages
latest: 12.4.0_1
Upstream
up to date
Last update
to 12.4.0_1 · 52c724de57
Quarterly
2026Q4: 12.4.0_1
WWW
https://www.gnu.org/software/gnat/
Links
cgit · VuXML

Unaddressed and VuXML only (0)

No unaddressed CVE and nothing reported by pkg audit for the packaged version 12.4.0_1.

Fixed (0)

No VuXML entries for this package.

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

None.

Commits (36)

Thierry Thomas (thierry) · 12.4.0_1
lang/gnat12: libgomp support; sync with GNAT-15

The GNAT-15 addition to the Ports Tree included some improvements to how
the pkg-plist is maintained, updated the pkg-descr, expanded the
pkg-message, and more. Sync GNAT-12 with those modifications.

* Add xz:threads option to ${TAR} to make use of multi-threaded
  compression
* Add GNU OpenMP libraries. This is required for GNATColl Bindings
* Add GNAT and GNAT_SO_VERSION to ${PLIST_SUB} to remove hard-coded
  version dependent information.
* Complete ${LICENSE} block
* Expand pkg-message and make UCL compliant
* Modernise and update ${COMMENT}, ${WWW} and pkg-descr
* Delegate maintainership to ada@

 PR:		296512
52c724de57
Thierry Thomas (thierry) · 12.4.0
lang/gnat1?: gettext is always required

Ignore the portlint warning and always depends on gettext.
(See PR 277508)

PR:		295966
Reported by:	Robert William Vesterman
7b09a55a74
Thierry Thomas (thierry) · 12.4.0
lang/gnat1[2-4]: Restore check-phase

lang/gnat12,13, and 14:
* After PR 294657, restore the testing target check-phase, move the if
  conditional on ${UID} != 0 below the GNAT Ports' internal _ marked
  variables, and drop bsd.port.options.mk, and terminate the Port with
  bsd.port.post.mk over bsd.port.mk
* Add fix for rpath (PR 292708)
* Move ${PIE_UNSAFE} to the correct block (portclippy)
* Move gettext-runtime from ${USES} to ${NLS_USES}
* Regroup internal variables and sort
* Remove ${EXTRACT_CMD} from aarch64 specific section syncing with the update
  to the Ports Mk infrastructure (D57295) which by default now uses
  LC_ALL=en_US.UTF-8 in the environment
* Sort ${GNU_CONFIGURE_PREFIX}
* Specific to GNAT-12, follow GNAT-13 and 14's use of ${MASTER_SITE_GCC}
  in ${MASTER_SITES}; sort the architecture specific ${PLIST_SUB} entries

 PR:		295872

 Co-authored-by:	Marcin Cieślak <saper@saper.info>

Reported by:	Sulev-Madis Silber
dca58708f5
Thierry Thomas (thierry) · 12.4.0
lang/gnat1?: fix build with GNU strip

After D55509 $STRIP_CMD has been set to GNU strip for these ports, and in some
cases this breaks, because GNU strip will refuse to strip non-writable files,
while LLVM strip is happy to (attempt to) strip them.

PR:		294657
Reported by:	kib@FreeBSD.org
Reviewed by:	kib@FreeBSD.org
Phabricator:	D55509
MFC after:	8 days
3d69dd6df8
Thierry Thomas (thierry) · 12.4.0
lang/gnat12: upgrade to 12.4.0
ba67b3990f
Thierry Thomas (thierry) · 12.3.0_1
lang/gnat12: refresh the bootstrapping assets
9ddbbf981e
Thierry Thomas (thierry) · 12.3.0_1
lang/gnat12: pre-built assets not yet available for FreeBSD-16

Based on an idea by mat@.
f9b22adac1
Thierry Thomas (thierry) · 12.3.0_1
lang/gnat12: bump PORTREVISION in order to trigger a rebuild for devel/alire

Reported by:	fuz@
5a88254ed3
Thierry Thomas (thierry) · 12.3.0
lang/gnat12: fix plist for arm64

PR:		286795
Reported by:	agh@riseup.net
Reviewed by:	fuz@
Fixes:		devel/alire: s-imfi128.ali not found, s-imfi128.ads must be compiled
MFH:		2025Q2
bccf92d052
Thierry Thomas (thierry) · 12.3.0
lang/gnat1?: fix EXTRACT_CMD on arm64

Patch borrowed from
https://cgit.freebsd.org/ports/commit/?id=5b4cadb23cbc2db23d7e2a40c16abd3e862fcf62

PR:		286895
Reported by:	agh (at) riseup.net
5e72aec75e
Thierry Thomas (thierry) · 12.3.0
lang/gnat12: add missing ali files for aarch64

PR:		285387
Reported by:	jonc (at) chen.org.nz
ff83d52a78
Thierry Thomas (thierry) · 12.3.0
lang/gnat12: fix on i386 after 33718f6b04

PR:		279996
Fixes:		33718f6b04 lang/gnat12: Fix build on aarch64
MFC after:	5 days
ca3912b4ab
Dima Panov (fluffy) · 12.3.0
lang/gnat12: mark as PIE_UNSAFE (+)

Reported by:	bulk -t

Approved by:	portmgr (blanket)

Sponsored by:	Future Crew, LLC
16155a5e63
Mikael Urankar (mikael) · 12.3.0
lang/gnat12: Fix build on aarch64

PR:		279996
Approved by:	thierry
33718f6b04
Thierry Thomas (thierry) · 12.3.0
lang/gnat12: fix build on systems without 32-bit libraries

Disable MULTILIB in this case.

PR:		279143
Reported by:	olce@
48f2a1c5a8
Thierry Thomas (thierry) · 12.3.0
lang/gnat1?: force the usage of gettext

It appears that gettext is required even when NLS is disabled (surely
because the compiler used for bootstrap has been built with NLS).

No bump of PORTREVISION needed.

PR:		277508
Reported by:	bob (at) vesterman.com
8d9daace01
Thierry Thomas (thierry) · 12.3.0
lang/gnat12: follow lang/gcc12 and upgrade to 12.3.0
4392cddc18
Muhammad Moinur Rahman (bofh) · 12.2.0_7
lang/gnat12: Sanitize MANPREFIX

Approved by:    portmgr (blanket)
8f1da83b0f
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: remove assets for FreeBSD-12
0b5aba08d2
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: bootstrap from previous assets by default

All assets have been built, and it is now possible to bootstrap without
lang/gcc6-aux!

But the option GCC6AUX it not removed, just in case, if for some reason
we had to rebuild everything from the beginning.

Do not bump PORTREVISION: the resulting package should not be impacted.
7d359e6b77
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: fix previous commit

In 5d276ab3adc9 distinfo was missing.

Reported by:	Alastair Hogge <agh (at) riseup.net>
d447759e5c
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: fix ASSETS
5d276ab3ad
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: adding assets for FreeBSD-15

And since I’m there refresh the other versions.

Remark: no package is available ATM for FreeBSD-12 on aarch64, it is why
        gcc6-aux is still the default.
69383e3e22
Thierry Thomas (thierry) · 12.2.0_6
lang/gnat12: Makefile maintenance

* Move gettext-runtime to NLS helper, including pkg-plist updates;
* Prefix all custom variable with an underscore
* Sort Makefile Blocks into correct order; this meant breaking down the
  one if conditional covering MULTILIB into multiple conditionals spread
  between each Block
* Remove ${INFOS}; this was probably meant to be ${INFO}. The Info pages
  are removed later in the post-stage target, so there is no point
  defining any.
* No need to define ${GNU_CONFIGURE_MANPREFIX}, the Ports framework
  inherits this from ${MANPREFIX}, which is also defined in the port Makefile
* Explicitly enable C++ language to GNU configure; GNAT requires a
  working C++ toolchain to build itself
* Move to bsd.port.options.mk/bsd.port.mk Makefile inclusion pair
* Prefer ${DISTVERION} over ${PORTVERSION}
* Remove @ from some Makefile ${COMMANDS} to prefer verbose build output

PR:		274619
Approved by:	/me
8bb96e3f34
Robert Clausecker (fuz) · 12.2.0_6
lang/gnat12: Add missing binutils RUN_DEPENDS and fix broken library search paths

Any produce binary of the gnat12 Ada compiler that had dependencies
on libstdc++ from this package would result in broken binaries
because no RUNPATH and no ldconfig paths were set up such that the
included libstdc++ would get found.

While we're at it, add the missing binutils dependency because the
compiler driver would find the GNU assembler that is hardcoded in
the Makefile.

PR:		274239
Signed-off-by:	Nico Sonack <nsonack@herrhotzenplotz.de>
Approved by:	thierry (maintainer timeout, two weeks)
MFH:		2023Q4
69e85930e2
Thierry Thomas (thierry) · 12.2.0_5
lang/gnat12: add MULTILIB support, fix build on missing 32-bit libraries

PR:		273648
Reported by:	Olivier Certner
f8dff94d7a
Gerald Pfeifer (gerald) · 12.2.0_4
*: Bump PORTREVISIONs for math/mpc update to 1.3.1
8d3e020ed0
Thierry Thomas (thierry) · 12.2.0_3
lang/gnat12: add an asset for FreeBSD-12 / i386
7e9e20bdba
Thierry Thomas (thierry) · 12.2.0_3
lang/gnat12: fix plist for aarch64 and add assets

Add assets for FreeBSD-12 / amd64 and FreeBSD-13 / aarch64
a177244583
Thierry Thomas (thierry) · 12.2.0_3
lang/gnat12: force rpath

When lang/gcc12 is also installed, the programs installed by gnat12 might
load libraries of gcc12. This could become problematic if these two ports
get different versions.

Modification inspired by lang/gcc6-aux/files/diff-core.
bdef65773e
Thierry Thomas (thierry) · 12.2.0_2
lang/gnat12: fix on arm64 and add an asset for FreeBSD-14 on i386
9153b6064b
Thierry Thomas (thierry) · 12.2.0_2
lang/gnat12: fix on i386 and add an asset for FreeBSD-13.1 / i386
5b3089ca6b
Thierry Thomas (thierry) · 12.2.0_2
lang/gnat12: remove programs suffix

Since GNAT is now installed in a specific prefix, we can simplify by
removing the programs suffix: this will avoid the usage of binary
aliases, only setting the PATH is necessary.
45b9b6b5da
Thierry Thomas (thierry) · 12.2.0_1
lang/gnat12: install in a separate directory with its own gcc

Gnat runs along with a gcc compiled with Ada, but we don’t want neither
modify lang/gcc12 nor conflict with it. Therefore we have to install it
in a separate directory.
e4a9d45e36
Thierry Thomas (thierry) · 12.2.0
lang/gnat12: mark IGNORE for the moment

Sorry, I made a mistake: it only works on my machines because it needs
gcc12 built from this port! gcc12 from lang/gcc12 is not sufficient.
e5c2e31c09
Thierry Thomas (thierry) · 12.2.0
lang/gnat12: adding GNAT from Gcc-12

This Ada compiler is built from Gcc-12, with help from Stephane Carrez
(Ada France).

The first time it uses lang/gcc6-aux as a bootstrap, but it can produce
a bootstrap for the next time, either for this version or for the next
ones.

Yet to be done:
- plug it into Mk/Uses/ada.mk
- build more bootstrapping assets
  (ATM they exist only for amd64 on FreeBSD 13 and 14)
- add a test target
- try to cross-compile for more platforms?
d435301318