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: 29651252c724de57Port 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)
lang/gnat1?: gettext is always required Ignore the portlint warning and always depends on gettext. (See PR 277508) PR: 295966 Reported by: Robert William Vesterman7b09a55a74
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 Silberdca58708f5lang/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 days3d69dd6df8
lang/gnat12: upgrade to 12.4.0ba67b3990f
lang/gnat12: refresh the bootstrapping assets9ddbbf981e
lang/gnat12: pre-built assets not yet available for FreeBSD-16 Based on an idea by mat@.f9b22adac1
lang/gnat12: bump PORTREVISION in order to trigger a rebuild for devel/alire Reported by: fuz@5a88254ed3
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: 2025Q2bccf92d052
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.net5e72aec75e
lang/gnat12: add missing ali files for aarch64 PR: 285387 Reported by: jonc (at) chen.org.nzff83d52a78
lang/gnat12: fix on i386 after 33718f6b04 PR: 279996 Fixes: 33718f6b04 lang/gnat12: Fix build on aarch64 MFC after: 5 daysca3912b4ab
lang/gnat12: mark as PIE_UNSAFE (+) Reported by: bulk -t Approved by: portmgr (blanket) Sponsored by: Future Crew, LLC16155a5e63
lang/gnat12: Fix build on aarch64 PR: 279996 Approved by: thierry33718f6b04
lang/gnat12: fix build on systems without 32-bit libraries Disable MULTILIB in this case. PR: 279143 Reported by: olce@48f2a1c5a8
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.com8d9daace01
lang/gnat12: follow lang/gcc12 and upgrade to 12.3.04392cddc18
lang/gnat12: Sanitize MANPREFIX Approved by: portmgr (blanket)8f1da83b0f
lang/gnat12: remove assets for FreeBSD-120b5aba08d2
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
lang/gnat12: fix previous commit In 5d276ab3adc9 distinfo was missing. Reported by: Alastair Hogge <agh (at) riseup.net>d447759e5c
lang/gnat12: fix ASSETS5d276ab3ad
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.69383e3e22lang/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: /me8bb96e3f34lang/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: 2023Q469e85930e2
lang/gnat12: add MULTILIB support, fix build on missing 32-bit libraries PR: 273648 Reported by: Olivier Certnerf8dff94d7a
*: Bump PORTREVISIONs for math/mpc update to 1.3.18d3e020ed0
lang/gnat12: add an asset for FreeBSD-12 / i3867e9e20bdba
lang/gnat12: fix plist for aarch64 and add assets Add assets for FreeBSD-12 / amd64 and FreeBSD-13 / aarch64a177244583
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
lang/gnat12: fix on arm64 and add an asset for FreeBSD-14 on i3869153b6064b
lang/gnat12: fix on i386 and add an asset for FreeBSD-13.1 / i3865b3089ca6b
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
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
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
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