summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Holm <dholm@gentoo.org>2003-08-27 15:03:33 +0000
committerDavid Holm <dholm@gentoo.org>2003-08-27 15:03:33 +0000
commitdad530a6ee7a9cb928b6a0e9a33a4912575f0ba8 (patch)
treee4bfdb81216f2d8b3de641ffc45cdac1f5df8066 /dev-lang/gnat
parentAdded a gnat 5.0 CVS snapshot. (diff)
downloadgentoo-2-dad530a6ee7a9cb928b6a0e9a33a4912575f0ba8.tar.gz
gentoo-2-dad530a6ee7a9cb928b6a0e9a33a4912575f0ba8.tar.bz2
gentoo-2-dad530a6ee7a9cb928b6a0e9a33a4912575f0ba8.zip
Added a gnat 5.0 CVS snapshot.
Diffstat (limited to 'dev-lang/gnat')
-rw-r--r--dev-lang/gnat/ChangeLog9
-rw-r--r--dev-lang/gnat/Manifest4
-rw-r--r--dev-lang/gnat/files/digest-gnat-5.0_pre200308223
-rw-r--r--dev-lang/gnat/gnat-5.0_pre20030822.ebuild144
4 files changed, 157 insertions, 3 deletions
diff --git a/dev-lang/gnat/ChangeLog b/dev-lang/gnat/ChangeLog
index b4bdba6e5cbb..18f7b9a666fe 100644
--- a/dev-lang/gnat/ChangeLog
+++ b/dev-lang/gnat/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-lang/gnat
# Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/gnat/ChangeLog,v 1.4 2003/08/17 19:50:53 dholm Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/gnat/ChangeLog,v 1.5 2003/08/27 15:03:26 dholm Exp $
+
+*gnat-5.0_pre20030822 (27 Aug 2003)
+
+ 27 Aug 2003; David Holm <dholm@gentoo.org> gnat-5.0_pre20030822.ebuild:
+ Added a gnat 5.0 CVS snapshot. It is masked in package.mask because it is
+ unstable, but some people might want it for updating their code or simply to
+ test the new gcc 3-based backend.
17 Aug 2003; David Holm <dholm@gentoo.org> metadata.xml:
Added metadata.xml
diff --git a/dev-lang/gnat/Manifest b/dev-lang/gnat/Manifest
index f574bcdd7455..d17f4f2e8f70 100644
--- a/dev-lang/gnat/Manifest
+++ b/dev-lang/gnat/Manifest
@@ -1,10 +1,10 @@
-MD5 e8788c0b077ed26ab7f51b501c0ca2cf ChangeLog 1462
+MD5 0909535ec8cb45a2ae58b9e737abec3c ChangeLog 1462
MD5 332d79b0cddb0dfcb80bc77487f36918 gnat-3.14p.ebuild 5673
MD5 6deb19eecc4f53aba08a7aaa89e80d0d gnat-3.15p-r1.ebuild 5468
MD5 562315b82128df316cfdd4b188d66b93 gnat-3.15p-r2.ebuild 4665
MD5 5b9c3801b8c96f4433c13adf4437819a gnat-3.15p.ebuild 5668
MD5 4b8299d1078b0c3a88969f43c9ae6a64 metadata.xml 927
-MD5 aa87068615d425c9fa932f85766d6d19 gnat-5.0_pre20030822.ebuild 4161
+MD5 9dd49db5f4cbf1afbe367cb529a22b78 gnat-5.0_pre20030822.ebuild 4264
MD5 59500f81e672cff22232586fc278547b files/digest-gnat-3.14p 213
MD5 737e39907fb4f28640a1b4cbbc1cdc78 files/digest-gnat-3.15p 216
MD5 419f46c7076e98eee00cf04ce2199ab0 files/digest-gnat-3.15p-r1 288
diff --git a/dev-lang/gnat/files/digest-gnat-5.0_pre20030822 b/dev-lang/gnat/files/digest-gnat-5.0_pre20030822
new file mode 100644
index 000000000000..684d7996c8fc
--- /dev/null
+++ b/dev-lang/gnat/files/digest-gnat-5.0_pre20030822
@@ -0,0 +1,3 @@
+MD5 6b7bfa83ab87f74e8f28d467d4e53c3f gnat-5.0_pre20030822.tar.bz2 3838770
+MD5 57c060cd1ccef8b1ae9165b11d98780a gnat-3.15p-i686-pc-redhat71-gnu-bin.tar.gz 13482938
+MD5 66664a84b383ba8d68612cd89b9478b2 gcc-core-3.2.3.tar.bz2 10324429
diff --git a/dev-lang/gnat/gnat-5.0_pre20030822.ebuild b/dev-lang/gnat/gnat-5.0_pre20030822.ebuild
new file mode 100644
index 000000000000..6d95d2ad8c9a
--- /dev/null
+++ b/dev-lang/gnat/gnat-5.0_pre20030822.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/gnat/gnat-5.0_pre20030822.ebuild,v 1.1 2003/08/27 15:03:26 dholm Exp $
+
+DESCRIPTION="GNAT Ada Compiler"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+ http://gd.tuwien.ac.at/languages/ada/gnat/3.15p/gnat-3.15p-i686-pc-redhat71-gnu-bin.tar.gz
+ ftp://gcc.gnu.org/pub/gcc/releases/gcc-3.2.3/gcc-core-3.2.3.tar.bz2"
+HOMEPAGE="http://www.gnat.com/"
+
+DEPEND=">=app-shells/tcsh-6.11"
+SLOT="0"
+KEYWORDS="~x86"
+LICENSE="GMGPL"
+IUSE=""
+
+S="${WORKDIR}/gcc-3.2.3"
+GNATBUILD="${WORKDIR}/build"
+GNATDIR="${WORKDIR}/${P}"
+GNATBOOT="${WORKDIR}/boot"
+GNATBOOTINST="${WORKDIR}/gnat-3.15p-i686-pc-linux-gnu-bin"
+
+inherit gnat
+
+src_unpack() {
+ unpack ${A}
+
+ # Install the bootstrap compiler
+ cd "${GNATBOOTINST}"
+ echo $'\n'3$'\n'${GNATBOOT}$'\n' | ./doconfig > doconfig.log 2>&1
+ ./doinstall
+
+ # Prepare the gcc source directory
+ cd "${S}"
+ mv "${GNATDIR}" "${S}/gcc/ada"
+ patch -p0 < "gcc/ada/gcc-32.dif"
+ touch gcc/cstamp-h.in
+ touch gcc/ada/[es]info.h
+ touch gcc/ada/nmake.ad[bs]
+ mkdir -p "${GNATBUILD}"
+}
+
+src_compile() {
+ # Set some paths to our bootstrap compiler.
+ local GCC_EXEC_PREFIX="${GNATBOOT}/lib/gcc-lib/i686-pc-linux-gnu/3.2.3"
+ local PATH="${GNATBOOT}/bin:${PATH}"
+ local CFLAGS="-O2"
+ local LDFLAGS="-L${GCC_EXEC_PREFIX} -L${GNATBOOTINST}"
+ local CC="${GNATBOOT}/bin/gcc"
+
+ # Configure gcc
+ cd "${GNATBUILD}"
+ "${S}"/configure --prefix=/usr \
+ --program-prefix=gnat \
+ --enable-languages="c,ada" \
+ --disable-nls \
+ --libdir=/usr/lib/ada \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ || die "configure failed"
+
+ # Compile helper tools
+ cd "${GNATBOOT}"
+ cp ${S}/gcc/ada/xtreeprs.adb .
+ cp ${S}/gcc/ada/xsinfo.adb .
+ cp ${S}/gcc/ada/xeinfo.adb .
+ cp ${S}/gcc/ada/xnmake.adb .
+ gnatmake xtreeprs && \
+ gnatmake xsinfo && \
+ gnatmake xeinfo && \
+ gnatmake xnmake || die "building helper tools"
+
+ for i in `find ${S}/gcc/ada -name '*.ad[sb]'`; do \
+ sed -i -e "s/\"gcc\"/\"gnatgcc\"/g" ${i}; \
+ done
+
+ # Compile it by first using the bootstrap compiler and then bootstrapping
+ # our own version. Finally compile the libraries and tools.
+ cd "${GNATBUILD}"
+ sed -i -e "s|-laddr2line|${GNATBOOTINST}/libaddr2line.a|" gcc/ada/Makefile
+ make CC="gcc" CFLAGS="-O2" \
+ || die "died while building compiler"
+ make CC="gcc" CFLAGS="-O2" bootstrap \
+ || die "died while bootstrapping"
+ cd "${GNATBUILD}/gcc"
+ make CC="gcc" GNATLIBCFLAGS="-O2" gnatlib-shared \
+ || die "died while building gnatlib"
+ make CC="gcc" CFLAGS="-O2" gnattools \
+ || die "died while building gnattools"
+}
+
+src_install() {
+ # Do allow symlinks in /usr/lib/gcc-lib/${CHOST}/3.2.3/include as
+ # this can break the build.
+ for x in ${WORKDIR}/build/gcc/include/*
+ do
+ if [ -L ${x} ]
+ then
+ rm -f ${x}
+ fi
+ done
+
+ # Install gnatgcc, tools and native threads library
+ cd "${GNATBUILD}"
+ #make prefix="${D}/usr" libdir="${D}/usr/lib/ada" install \
+ # || die "installing"
+ make prefix=${D}/usr \
+ libdir=${D}/usr/lib/ada \
+ mandir=${D}/usr/share/man \
+ infodir=${D}/usr/share/info \
+ install || die "died while installing"
+
+ # These are all provided by gcc
+ rm -rf ${D}/usr/share/info
+ rm -rf ${D}/usr/share/man
+ rm -rf ${D}/usr/share/make
+
+ dodir "/usr/lib/ada/gcc-lib/${CHOST}/3.2.3/rts-native"
+
+ # Move the native threads library
+ cd "${D}/usr/lib/ada/gcc-lib/${CHOST}/3.2.3"
+ mv adalib adainclude rts-native
+
+ # Make native threads the default
+ ln -s rts-native/adalib adalib
+ ln -s rts-native/adainclude adainclude
+}
+
+pkg_postinst() {
+ # Notify the user what changed
+ einfo ""
+ einfo "This is a snapshot of the coming GNAT-5.0 based on GCC 3.2.3. It is"
+ einfo "not stable and I wouldn't recommend using this version unless you"
+ einfo "have a good reason to use it."
+ einfo "The version of GNAT in GCC is based on an old patch of GNAT-5.0"
+ einfo "which has been crippled by the GCC team to make it less intrusive"
+ einfo "in respect of other languages supported by GCC. This snapshot"
+ einfo "is the real thing and there is no point whatsoever to compile"
+ einfo "GCC with Ada support."
+ einfo ""
+ einfo "The compiler has been installed as gnatgcc, and the coverage testing"
+ einfo "tool as gnatgcov."
+ einfo ""
+}