aboutsummaryrefslogtreecommitdiffstats
path: root/lang/gnat_util
diff options
context:
space:
mode:
authormarino <marino@FreeBSD.org>2014-03-14 16:36:05 +0800
committermarino <marino@FreeBSD.org>2014-03-14 16:36:05 +0800
commit92bb0c7790736795c164e50292192e898ff3e47f (patch)
treeb5cdc9bbb53b7b3ec1458571861b27c7bb5b374e /lang/gnat_util
parent4bca9a82d40a0e1293aaa492af6060e9316c5302 (diff)
downloadfreebsd-ports-gnome-92bb0c7790736795c164e50292192e898ff3e47f.tar.gz
freebsd-ports-gnome-92bb0c7790736795c164e50292192e898ff3e47f.tar.zst
freebsd-ports-gnome-92bb0c7790736795c164e50292192e898ff3e47f.zip
lang/gcc-aux: Upgrade from gcc-4.7.3 to gcc49-20140302 snapshot
GCC4.9 hasn't been released yet, but the Ada portion of it is pretty stable and perfectly passes ACATS and gnat.dg testsuites. The only trick was to change the unwind mechanism on i386 away from KERN_PS_STRINGS because it will not work with 32-bit compatability mode on AMD64. This is because on AMD64, the signal trampoline is located on a random area on a shared page rather than a fixed location before KERN_PS_STRINGS. To support both true i386 and AMD64-32 compatibility mode, unwind now looks for frame pattern in all cases. Apparently stack checking has been broken on AMD64-32 until now. It is important to get the Ada Framework in ports to be based on gcc49 because this compiler supports the full Ada-2012 standard implementation, and in fact some new programs require this already. This port will stay on snapshots until 4.9.0 is released, then it will return to be based on releases. The Ada and C++ options have been removed. These are now always built. In fact, GCC now requires C++ to build, so new bootstraps had to be created. FreeBSD8 has its own bootstrap, and FreeBSD 9+ uses a pure static bootstrap (including GNAT tools) which should last a long time. Additionally a "Bootstrap" option was added, but this overrides all other options to create new bootstraps. It is not intended for general use. Most of the Ada Framework in ports has been pretested and adjusted to work with gcc49 out of the box, but some ports will need to be updated immediately, which will happen right after this one. The update to lang/gnat_util had to be synchronized with lang/gcc-aux because they share version information and the PORTREVISION needed to be reset.
Diffstat (limited to 'lang/gnat_util')
-rw-r--r--lang/gnat_util/Makefile12
1 files changed, 4 insertions, 8 deletions
diff --git a/lang/gnat_util/Makefile b/lang/gnat_util/Makefile
index 3580b6872780..363481fa743d 100644
--- a/lang/gnat_util/Makefile
+++ b/lang/gnat_util/Makefile
@@ -3,11 +3,10 @@
PORTNAME= gnat_util
PORTVERSION= ${SNAPSHOT}
-PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GCC}
-MASTER_SITE_SUBDIR= releases/gcc-${GCC_VERSION}
-DISTNAME= gcc-${GCC_VERSION}
+MASTER_SITE_SUBDIR= ${MS_SUBDIR}
+DISTNAME= ${IDENTIFICATION}
MAINTAINER= marino@FreeBSD.org
COMMENT= Library used to build GNAT tools such as ASIS
@@ -15,8 +14,7 @@ COMMENT= Library used to build GNAT tools such as ASIS
LICENSE= GPLv3 GPLv3RLE
LICENSE_COMB= multi
-USES= ada
-USE_BZIP2= yes
+USES= ada tar:bzip2
NO_MTREE= yes
DISTINFO_FILE= ${.CURDIR}/../gcc-aux/distinfo
WRKSRC= ${WRKDIR}/${PORTNAME}
@@ -24,7 +22,6 @@ MAKE_ENV= MAKEOBJDIR=${WRKSRC}/obj
.include "${.CURDIR}/Makefile.sources"
.include "${.CURDIR}/../gcc-aux/Makefile.version"
-.include <bsd.port.pre.mk>
post-extract:
@${MKDIR} ${WRKSRC}/obj
@@ -43,5 +40,4 @@ post-install:
>> ${TMPPLIST}
@echo "@unexec rmdir %D/lib/gnat 2>/dev/null || true" >> ${TMPPLIST}
-.include <bsd.port.post.mk>
-
+.include <bsd.port.mk>