summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-embedded/tigcc/ChangeLog9
-rw-r--r--dev-embedded/tigcc/files/digest-tigcc-0.96_beta715
-rw-r--r--dev-embedded/tigcc/tigcc-0.96_beta7.ebuild248
3 files changed, 271 insertions, 1 deletions
diff --git a/dev-embedded/tigcc/ChangeLog b/dev-embedded/tigcc/ChangeLog
index 8aff9711da20..fa0bd9f8d141 100644
--- a/dev-embedded/tigcc/ChangeLog
+++ b/dev-embedded/tigcc/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-embedded/tigcc
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-embedded/tigcc/ChangeLog,v 1.14 2006/11/04 01:34:20 dragonheart Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-embedded/tigcc/ChangeLog,v 1.15 2006/11/04 13:07:05 dragonheart Exp $
+
+*tigcc-0.96_beta7 (04 Nov 2006)
+
+ 04 Nov 2006; Daniel Black <dragonheart@gentoo.org>
+ +tigcc-0.96_beta7.ebuild, -tigcc-0.96_beta8.ebuild:
+ wrong version name on file - should have been tigcc-0.96_beta7 before.
+ Thanks helch
*tigcc-0.96_beta8 (04 Nov 2006)
diff --git a/dev-embedded/tigcc/files/digest-tigcc-0.96_beta7 b/dev-embedded/tigcc/files/digest-tigcc-0.96_beta7
new file mode 100644
index 000000000000..0db2f7870317
--- /dev/null
+++ b/dev-embedded/tigcc/files/digest-tigcc-0.96_beta7
@@ -0,0 +1,15 @@
+MD5 6a9d529efb285071dad10e1f3d2b2967 binutils-2.16.1.tar.bz2 12549917
+RMD160 638861a6b709ac380f1bc13d55c6b48d0532b3d0 binutils-2.16.1.tar.bz2 12549917
+SHA256 351a6846ee179a37ed87a487971547159a7f4f92a1dec598c727f184a0de61ae binutils-2.16.1.tar.bz2 12549917
+MD5 ab4540a43406f08f442a28cf40d29e0c flashosa.zip 2437
+RMD160 9424861be569e6af751271c3143c927f412277ab flashosa.zip 2437
+SHA256 ae0be66d99aea7f7d84364347c220ed1bc8cae5f898a6e8b1a9458b445fdfea4 flashosa.zip 2437
+MD5 17b79ad78932e8711782c1adb48453e9 gcc-4.1-20060728.tar.bz2 37038705
+RMD160 6bd10730f466963440c4fb54df36b34636d9f204 gcc-4.1-20060728.tar.bz2 37038705
+SHA256 2600728a9448522c80ff64f99eff93a4499f0a7aa460c55bb08e76875084417b gcc-4.1-20060728.tar.bz2 37038705
+MD5 ef4d19d5d502288f24611598ce335153 libfargo.zip 14766
+RMD160 08c28c71ead68edcc0e5702bfabce7c9bd225549 libfargo.zip 14766
+SHA256 c37bacb744c94519b1dea0b0b855baa4379b009ec7200437521895f8a9ea90eb libfargo.zip 14766
+MD5 84baea5ce72eac4a46adf784a23a312e tigcc-0.96_beta7.tar.bz2 2828952
+RMD160 11c431a08c0fc8630aab4dcc6f5315b5b38f5f6d tigcc-0.96_beta7.tar.bz2 2828952
+SHA256 da3d75515f1a0091203b3c1f47f8fa342302e45e0bbe62849391ce0935521b0b tigcc-0.96_beta7.tar.bz2 2828952
diff --git a/dev-embedded/tigcc/tigcc-0.96_beta7.ebuild b/dev-embedded/tigcc/tigcc-0.96_beta7.ebuild
new file mode 100644
index 000000000000..a915fb42d68b
--- /dev/null
+++ b/dev-embedded/tigcc/tigcc-0.96_beta7.ebuild
@@ -0,0 +1,248 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-embedded/tigcc/tigcc-0.96_beta7.ebuild,v 1.1 2006/11/04 13:07:05 dragonheart Exp $
+
+inherit eutils
+
+BASE_BINUTILS="2.16.1"
+GCC_VER="4.1.2"
+GCC_SNAPSHOT="20060728"
+BIN_VER=${BASE_BINUTILS:0:4}
+ENV_FILE=${D}/etc/env.d/99tigcc
+S=$WORKDIR
+DESCRIPTION="Cross compiler for Texas Instruments TI-89, TI-92(+) and V200 calculators"
+HOMEPAGE="http://tigcc.ticalc.org"
+
+
+#original source can be found at:
+#SRC_URI="http://tigcc.ticalc.org/linux/tigcc_src.tar.bz2"
+#but in fact this file changes as soon as there comes a new beta
+
+#when it hits portage of course it should be mirrored on a gentoo mirror:
+#SRC_URI="mirror://gentoo/${PF}.tar.bz2"
+
+SRC_URI="mirror://gentoo/tigcc-0.96_beta7.tar.bz2
+ ftp://gcc.gnu.org/pub/gcc/snapshots/4.1-${GCC_SNAPSHOT}/gcc-4.1-${GCC_SNAPSHOT}.tar.bz2
+ mirror:/kernel/linux/devel/binutils/binutils-${BASE_BINUTILS}.tar.bz2
+ http://members.chello.at/gerhard.kofler/kevin/ti89prog/libfargo.zip
+ http://members.chello.at/gerhard.kofler/kevin/ti89prog/flashosa.zip"
+
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="doc"
+
+DEPEND="virtual/libc
+ >=sys-devel/binutils-2.14.90.0.6-r1
+ >=sys-devel/bison-1.875"
+
+RESTRICT="strip"
+
+src_unpack() {
+ unpack ${A}
+
+ # start by patching and cleaning out binutils and gcc directories.
+ cd ${WORKDIR}/binutils-${BASE_BINUTILS}
+ epatch ${S}/sources/gcc/gas-${BIN_VER}-tigcc-*.diff
+
+ rm -f .brik
+ rm -f md5.sum
+ rm -f -r INSTALL
+ rm -f -r maintainer-scripts
+ rm -f -r binutils
+ rm -f -r cpu
+ rm -f -r etc
+ rm -f -r gas/doc
+ rm -f -r gas/po
+ rm -f -r gprof
+ rm -f -r include/nlm
+ rm -f -r include/regs
+ rm -f -r ld
+ rm -f -r texinfo
+
+ cd ${WORKDIR}/gcc-4.1-${GCC_SNAPSHOT}
+ epatch ${S}/sources/gcc/gcc-4.1-tigcc-patch.diff
+
+ rm -f .brik
+ rm -f md5.sum
+ rm -f -r INSTALL
+ rm -f -r fixincludes
+ rm -f -r gcc/ginclude
+ rm -f -r gcc/po
+ rm -f -r gcc/doc
+ rm -f -r gcc/treelang
+ rm -f -r libcpp/po
+ rm -f -r maintainer-scripts
+ rm -f -r etc
+ rm -f -r gprof
+ rm -f -r include/nlm
+ rm -f -r include/regs
+ rm -f -r texinfo
+
+ # create build directories for binutils and gcc
+ mkdir -p ${WORKDIR}/build/binutils
+ mkdir ${WORKDIR}/build/gcc
+
+ # Workaround for non-existing directories
+ sed -ie '/SUBDIRS =/d' ${WORKDIR}/binutils-${BASE_BINUTILS}/gas/Makefile.in
+}
+
+src_compile() {
+ # build binutils
+ cd ${WORKDIR}/build/binutils
+ CFLAGS="${CFLAGS}" ${WORKDIR}/binutils-${BASE_BINUTILS}/configure \
+ --disable-serial-configure --target=m68k-coff --disable-shared \
+ --enable-static --disable-multilib --disable-nls \
+ || die
+ emake || die "gas"
+
+ # build gcc
+ cd ${WORKDIR}/build/gcc
+ CFLAGS="${CFLAGS}" ${WORKDIR}/gcc-4.1-${GCC_SNAPSHOT}/configure --target=m68k-coff \
+ --with-gnu-as --with-as=${WORKDIR}/build/binutils/gas/as-new --with-gnu-ld \
+ --disable-nls --disable-multilib --disable-shared --enable-static \
+ --disable-threads --enable-languages=c --disable-win32-registry \
+ --disable-checking --disable-werror --disable-pch --disable-mudflap \
+ || die
+
+ # GCC compilations _is intended_ to fail on a certain point,
+ # don't worry about that.
+ emake -j1
+
+ # Check if gcc has been built, die otherwise
+ ( [ -e ${WORKDIR}/build/gcc/gcc/xgcc ] && [ -e ${WORKDIR}/build/gcc/gcc/cc1 ] ) || die "gcc"
+
+ # build a68k assembler
+ cd ${S}/sources/a68k
+ emake -e || die "a68k"
+
+ # build ld-tigcc linker
+ cd ${S}/sources/ld-tigcc
+ emake -e || die "ld-tigcc"
+
+ # build tigcc front-end
+ cd ${S}/sources/tigcc/src
+ emake -e || die "tigcc"
+
+ # build tprbuilder (TIGCC project builder)
+ cd ${S}/sources/tprbuilder/src
+ emake -e || die "tprbuilder"
+
+ # build patcher (object file patcher)
+ cd ${S}/sources/patcher/src
+ emake -e || die "patcher"
+
+}
+
+src_install() {
+ # install documentation
+ dodir /usr/bin
+
+ if use doc ; then
+ # patch the script that launches the documentation
+ # browser to point to the correct location
+ sed "s:\${TIGCC}/doc:/usr/share/doc/${P}:g" \
+ ${S}/tigcclib/doc/converter/tigccdoc \
+ > ${S}/tigcclib/doc/converter/tigccdoc.new
+
+ cd ${S}/tigcclib/doc/converter
+ newbin tigccdoc.new tigccdoc
+ cd ${S}/tigcclib/doc
+ dohtml -r html/*
+ cp html/qt-assistant.adp ${D}/usr/share/doc/${PF}/html
+
+ cd ${S}/sources/a68k
+ fi
+
+ dodir /usr/share/doc/${PF}
+ cd ${S}
+ dodoc AUTHORS BUGS CHANGELOG COPYING DIRECTORIES HOWTO \
+ INSTALL README README.linux README.osX
+
+ cd ${S}/sources/tigcc
+ docinto tigcc
+ dodoc AUTHORS COPYING ChangeLog README
+
+ cd ${S}/sources/tprbuilder
+ docinto tprbuilder
+ dodoc AUTHORS COPYING ChangeLog README
+
+ cd ${S}/sources/patcher
+ docinto patcher
+ dodoc AUTHORS COPYING ChangeLog README
+
+ exeinto /usr/ti-linux-gnu/tigcc-bin/${GCC_VER}
+ # install gcc
+ cd ${WORKDIR}/build/gcc
+ doexe gcc/cc1
+ newexe gcc/xgcc gcc
+ dosym /usr/ti-linux-gnu/tigcc-bin/${GCC_VER}/gcc \
+ /usr/ti-linux-gnu/tigcc-bin/${GCC_VER}/ti-linux-gnu-gcc
+
+ # install gas
+ # exeinto /usr/ti-linux-gnu/bin <-- a symlink will be
+ # created so that gas resides in /usr/ti-linux-gnu/bin too
+ cd ${WORKDIR}/build/binutils
+ newexe gas/as-new as
+
+ # install a68k
+ cd ${S}/sources/a68k
+ newexe A68k a68k
+
+ # install ld-tigcc
+ cd ${S}/sources/ld-tigcc
+ doexe ld-tigcc
+ doexe ar-tigcc
+
+ # install tigcc
+ cd ${S}/sources/tigcc/src
+ doexe tigcc
+ dosym /usr/ti-linux-gnu/tigcc-bin/${GCC_VER}/tigcc \
+ /usr/ti-linux-gnu/tigcc-bin/${GCC_VER}/ti-linux-gnu-tigcc
+
+ # install tprbuilder
+ cd ${S}/sources/tprbuilder/src
+ doexe tprbuilder
+
+ # install patcher
+ cd ${S}/sources/patcher/src
+ doexe patcher
+
+ # install header files
+ dodir /usr/include/tigcc
+ cp -R ${S}/tigcclib/include/* ${D}/usr/include/tigcc
+ dosym /usr/include/tigcc/asm/os.h /usr/include/tigcc/asm/OS.h
+
+ insinto /usr/lib/gcc-lib/ti-linux-gnu/${GCC_VER}
+ # install library
+ cd ${S}/tigcclib
+ doins lib/*
+ cd ${WORKDIR}
+ doins flashos.a
+ doins fargo.a
+
+ dodir /usr/share/tigcc
+ # copy example programs
+ # cp -r ${S}/examples ${D}/usr/share/tigcc
+
+ # create TIGCC env variable
+ dodir /etc/env.d/gcc
+ # echo -e "TIGCC=\"/usr/ti-linux-gnu/tigcc-bin/${GCC_VER}\"" >> ${ENV_FILE}
+ # echo -e "CC=\"tigcc\"" >> ${ENV_FILE}
+ echo -e "TIGCC=\"/usr/ti-linux-gnu\"" >> ${ENV_FILE}
+ echo -e "PATH=\"/usr/ti-linux-gnu/tigcc-bin/${GCC_VER}:/usr/ti-linux-gnu/bin\"" >> ${ENV_FILE}
+ echo -e "ROOTPATH=\"/usr/ti-linux-gnu/tigcc-bin/${GCC_VER}:/usr/ti-linux-gnu/bin\"" >> ${ENV_FILE}
+ echo -e "LDPATH=\"/usr/lib/gcc-lib/ti-linux-gnu/${GCC_VER}\"" >> ${ENV_FILE}
+
+ # a cross-compiling gcc with hard-coded names has been built.
+ # therefore, we must place some symlinks.
+ dosym /usr/include/tigcc /usr/ti-linux-gnu/include
+ dosym /usr/lib/gcc-lib/ti-linux-gnu/${GCC_VER} /usr/ti-linux-gnu/lib
+ dosym /usr/share/doc/${PF} /usr/ti-linux-gnu/doc
+ dosym /usr/ti-linux-gnu/tigcc-bin/${GCC_VER} /usr/ti-linux-gnu/bin
+}
+
+pkg-postinst() {
+ env-update && source /etc/profile
+}