diff options
author | David Holm <dholm@gentoo.org> | 2003-10-06 11:38:34 +0000 |
---|---|---|
committer | David Holm <dholm@gentoo.org> | 2003-10-06 11:38:34 +0000 |
commit | ade2e881c307686aaff23520d8f2dbbf99b37919 (patch) | |
tree | b18d3511926b8724b31a86d11b3ca41065ed858a /dev-lang/gnat | |
parent | Updated to a new GNAT-5.0 CVS snapshot (diff) | |
download | historical-ade2e881c307686aaff23520d8f2dbbf99b37919.tar.gz historical-ade2e881c307686aaff23520d8f2dbbf99b37919.tar.bz2 historical-ade2e881c307686aaff23520d8f2dbbf99b37919.zip |
Updated to a new GNAT-5.0 CVS snapshot
Diffstat (limited to 'dev-lang/gnat')
-rw-r--r-- | dev-lang/gnat/Manifest | 4 | ||||
-rw-r--r-- | dev-lang/gnat/files/digest-gnat-5.0_pre20031005 | 3 | ||||
-rw-r--r-- | dev-lang/gnat/gnat-5.0_pre20031005.ebuild | 154 |
3 files changed, 159 insertions, 2 deletions
diff --git a/dev-lang/gnat/Manifest b/dev-lang/gnat/Manifest index 444f26036ce9..c0b59eff3782 100644 --- a/dev-lang/gnat/Manifest +++ b/dev-lang/gnat/Manifest @@ -1,4 +1,4 @@ -MD5 7f8a1f88228292f5d2e012d96998aba3 ChangeLog 3604 +MD5 0f457818265d67ee07f7b72fa1ac8493 ChangeLog 3758 MD5 332d79b0cddb0dfcb80bc77487f36918 gnat-3.14p.ebuild 5673 MD5 6deb19eecc4f53aba08a7aaa89e80d0d gnat-3.15p-r1.ebuild 5468 MD5 2f454961e48b21552f1a9bd35b83a8dc gnat-3.15p-r2.ebuild 4879 @@ -6,7 +6,7 @@ MD5 7189786b648cd42056a9ec54b603ae48 gnat-3.15p-r3.ebuild 5892 MD5 f44a1458554adef6e9794dc5d4fbb719 gnat-3.15p.ebuild 5667 MD5 fa8ad8b6758fae34bc0c3322f540bfaa gnat-5.0_pre20030822.ebuild 4328 MD5 4b8299d1078b0c3a88969f43c9ae6a64 metadata.xml 927 -MD5 8083993e309a21bfa17a9403189aab49 gnat-5.0_pre20031005.ebuild 4772 +MD5 f3e0f2a6ca6f1411290c35b519dd2b46 gnat-5.0_pre20031005.ebuild 4772 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_pre20031005 b/dev-lang/gnat/files/digest-gnat-5.0_pre20031005 new file mode 100644 index 000000000000..d2b117b8b9fd --- /dev/null +++ b/dev-lang/gnat/files/digest-gnat-5.0_pre20031005 @@ -0,0 +1,3 @@ +MD5 faafe03c69523539be10236097f8fd88 gnat-5.0_pre20031005.tar.bz2 3904129 +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_pre20031005.ebuild b/dev-lang/gnat/gnat-5.0_pre20031005.ebuild new file mode 100644 index 000000000000..73ba959e44ea --- /dev/null +++ b/dev-lang/gnat/gnat-5.0_pre20031005.ebuild @@ -0,0 +1,154 @@ +# 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_pre20031005.ebuild,v 1.1 2003/10/06 11:38:28 dholm Exp $ + +inherit gnat + +DESCRIPTION="GNAT Ada Compiler" +SRC_URI="mirror://gentoo/${P}.tar.bz2 + x86? ( 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="x86? ( >=app-shells/tcsh-6.0 )" +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" + +CFLAGS="-O2 -gnatpgn" + +src_unpack() { + unpack ${A} + + # Install the bootstrap compiler + cd "${GNATBOOTINST}" + patch -p1 < ${FILESDIR}/gnat-3.15p-i686-pc-linux-gnu-bin.patch + 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 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 + einfo "Building compiler" + make CC="gcc" CFLAGS="${CFLAGS}" LANGUAGES="c ada gcov" || + die "Failed while running inital compilation!" + make CC="gcc" CFLAGS="${CFLAGS}" LANGUAGES="c ada gcov" bootstrap || + die "Died while bootstrapping!" + cd "${GNATBUILD}/gcc" + einfo "Building shared gnatlib" + make CC="gcc" CFLAGS="${CFLAGS}" GNATLIBCFLAGS="${CFLAGS} -fPIC" \ + gnatlib-shared || + die "Failed to build the shared version of gnatlib!" + einfo "Building gnattools" + make CC="gcc" CFLAGS="${CFLAGS}" gnattools || + die "Failed to build 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 "" + einfo "If you are upgrading from GNAT-3.15p or older you will have to" + einfo "reemerge all Ada packages as GNAT-5.0 has updated to a version of" + einfo "GCC which is not backwards compatible with 2.8.1." + einfo "" +} |