summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authordrochner <drochner@pkgsrc.org>2011-07-18 09:27:25 +0000
committerdrochner <drochner@pkgsrc.org>2011-07-18 09:27:25 +0000
commit81516ad666a70179607e551efbb80afe40beb633 (patch)
tree08d46992f94fc948f2ea12a442176a0abac7a0b8 /lang
parent7c2a6eaf29929e8a6d84cc03ebd0a61ff022b868 (diff)
downloadpkgsrc-81516ad666a70179607e551efbb80afe40beb633.tar.gz
-update to the 20110627 snapshot which is based on gcc-4.6.1, from
John Marino per PM -deal with possibly builtin gmp/mpfr/mpc libs (this is incomplete for D'fly -- choices are to convert the pre-configure test or to set USE_BUILTIN.x=no)
Diffstat (limited to 'lang')
-rw-r--r--lang/gnat-aux/Makefile47
-rw-r--r--lang/gnat-aux/distinfo8
2 files changed, 44 insertions, 11 deletions
diff --git a/lang/gnat-aux/Makefile b/lang/gnat-aux/Makefile
index ed0f85ee8a9..c032ce4e12f 100644
--- a/lang/gnat-aux/Makefile
+++ b/lang/gnat-aux/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.4 2011/07/15 19:59:40 drochner Exp $
+# $NetBSD: Makefile,v 1.5 2011/07/18 09:27:25 drochner Exp $
#
DISTNAME= gnat-aux-${SNAPSHOT}
@@ -12,9 +12,9 @@ HOMEPAGE= http://www.dragonlace.net/
COMMENT= GNAT Ada compiler based on GCC ${GCC_BRANCH}
LICENSE= gnu-gpl-v3 AND gnu-lgpl-v3
-SNAPSHOT= 20110325
+SNAPSHOT= 20110627
GCC_BRANCH= 4.6
-GCC_POINT= 0
+GCC_POINT= 1
LANGS= c
PKG_DESTDIR_SUPPORT= user-destdir
@@ -42,6 +42,8 @@ INTENDED_COMPILER= NATIVE
BOOTSTRAP_TRIPLET= NOT SET
FULL_GNATGCC= NOT SET
FULL_PATH= /sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/sbin:${PREFIX}/bin
+OLD_EH= register_frame
+REBUILD_LIB= Rebuild the following library first:
.if ${OPSYS} == "DragonFly"
@@ -54,6 +56,7 @@ FULL_PATH= /sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/sbin:${PREFIX}/bin
BOOTSTRAP_TRIPLET= x86_64-bootstrap-dragonfly2.8/4.6.0
.endif
BOOTSTRAP_COMPILER= gnat-bootstrap.${MACHINE_ARCH}.dragonfly.tar.bz2
+LINK_HEADER= /usr/include/sys/link_elf.h
.endif
@@ -74,6 +77,7 @@ BOOTSTRAP_COMPILER= gnat-bootstrap.${MACHINE_ARCH}.dragonfly.tar.bz2
BLD_TARGET= ${MACHINE_ARCH}-aux-netbsd${NSUFF}
.endif
BOOTSTRAP_COMPILER= gnat-bootstrap.${MACHINE_ARCH}.netbsd.tar.bz2
+LINK_HEADER= /usr/include/link_elf.h
.endif
@@ -94,6 +98,7 @@ SMAN7= share/man/man7
LPATH= lib/gcc/${BLD_TARGET}/${GCC_BRANCH}.${GCC_POINT}
LEPATH= libexec/gcc/${BLD_TARGET}/${GCC_BRANCH}.${GCC_POINT}
REVFILE= ${GCC_WRKSRC}/gcc/REVISION
+BASELIB= ${LOCALBASE}/lib
@@ -131,7 +136,6 @@ FULL_PATH=${BOOTSTRAP_PREFIX}/bin:/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/sbin:$
MY_CONFIGURE_ENV= CC=${FULL_GNATGCC}
MY_CONFIGURE_ENV+= PATH=${FULL_PATH}
MY_CONFIGURE_ENV+= CONFIG_SHELL=${CONFIG_SHELL}
-MY_CONFIGURE_ENV+= MAKEINFO=/usr/bin/false
MY_MAKE_ENV= PATH=${FULL_PATH}
MY_MAKE_ENV+= LD_LIBRARY_PATH=${WRKSRC}/gcc
@@ -142,9 +146,9 @@ CONFIGURE_ARGS+= --build=${BLD_TARGET}
CONFIGURE_ARGS+= --program-prefix=gnat
CONFIGURE_ARGS+= --prefix=${PREFIX}
CONFIGURE_ARGS+= --with-system-zlib
-CONFIGURE_ARGS+= --with-gmp=${PKG_PREFIX}
-CONFIGURE_ARGS+= --with-mpfr=${PKG_PREFIX}
-CONFIGURE_ARGS+= --with-mpc=${PKG_PREFIX}
+CONFIGURE_ARGS+= --with-gmp=${BUILDLINK_PREFIX.gmp}
+CONFIGURE_ARGS+= --with-mpfr=${BUILDLINK_PREFIX.mpfr}
+CONFIGURE_ARGS+= --with-mpc=${BUILDLINK_PREFIX.mpcomplex}
CONFIGURE_ARGS+= --with-libiconv-prefix=${PKG_PREFIX}
CONFIGURE_ARGS+= --enable-shared
CONFIGURE_ARGS+= --enable-threads=${THREAD_MODEL}
@@ -202,6 +206,35 @@ post-extract:
.endif
+pre-configure:
+# NetBSD's system compiler is not configured to use dl_iterate_phdr which is
+# required to build shared libraries if gnat-aux handles exceptions via
+# dl_iterate_phdr. Therefore this functionality is disabled for NetBSD until
+# further notice. DragonFly introduced this functionality with 2.11, but it's
+# possible the shared libraries were built with an earlier compiler in the
+# case of an upgrade. We need to detect this situation and stop the build
+# if the libraries need to be rebuilt.
+.if ${OPSYS} == "DragonFly"
+ @if ${GREP} dl_iterate_phdr ${LINK_HEADER} > /dev/null; then \
+ if ${GREP} ${OLD_EH} ${BASELIB}/libmpc.so > /dev/null; then \
+ ${ERROR_MSG} "${REBUILD_LIB} math/mpcomplex"; \
+ exit 101; \
+ fi; \
+ if ${GREP} ${OLD_EH} ${BASELIB}/libmpfr.so > /dev/null; then \
+ ${ERROR_MSG} "${REBUILD_LIB} math/mpfr"; \
+ exit 102; \
+ fi; \
+ if ${GREP} ${OLD_EH} ${BASELIB}/libgmp.so > /dev/null; then \
+ ${ERROR_MSG} "${REBUILD_LIB} devel/gmp"; \
+ exit 103; \
+ fi; \
+ if ${GREP} ${OLD_EH} ${BASELIB}/libiconv.so > /dev/null; then \
+ ${ERROR_MSG} "${REBUILD_LIB} converters/libiconv"; \
+ exit 104; \
+ fi; \
+ fi
+.endif
+
do-configure:
#late switch of compiler to fool default depends checking
diff --git a/lang/gnat-aux/distinfo b/lang/gnat-aux/distinfo
index 6ab2d94eff4..d49a66275d0 100644
--- a/lang/gnat-aux/distinfo
+++ b/lang/gnat-aux/distinfo
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.3 2011/05/10 13:46:22 drochner Exp $
+$NetBSD: distinfo,v 1.4 2011/07/18 09:27:25 drochner Exp $
-SHA1 (gnat-aux-20110325.tar.bz2) = 1a5889f74dedd56a721cb5b6f3372e9c28e9e7c1
-RMD160 (gnat-aux-20110325.tar.bz2) = 8440ae75906ecd97621872a7cbde02c6490118e0
-Size (gnat-aux-20110325.tar.bz2) = 26700051 bytes
+SHA1 (gnat-aux-20110627.tar.bz2) = 598d2c21c3bbd1e2cada2ca98331107af3deb608
+RMD160 (gnat-aux-20110627.tar.bz2) = 84b05832457568fef9355279214caeacca9c74ba
+Size (gnat-aux-20110627.tar.bz2) = 26799024 bytes
SHA1 (gnat-bootstrap.i386.dragonfly.tar.bz2) = d7a8103243a2df3723d9d3c3ec0da9c3bb725214
RMD160 (gnat-bootstrap.i386.dragonfly.tar.bz2) = 9e6fde444e0ed76ee404810af6d6b7eb48659c09
Size (gnat-bootstrap.i386.dragonfly.tar.bz2) = 28205489 bytes