diff options
Diffstat (limited to 'cross/xtensa-unknown-elf-gcc')
-rw-r--r-- | cross/xtensa-unknown-elf-gcc/PKGBUILD | 94 | ||||
-rw-r--r-- | cross/xtensa-unknown-elf-gcc/xtensa-unknown-elf-gcc.install | 20 |
2 files changed, 114 insertions, 0 deletions
diff --git a/cross/xtensa-unknown-elf-gcc/PKGBUILD b/cross/xtensa-unknown-elf-gcc/PKGBUILD new file mode 100644 index 000000000..76328723c --- /dev/null +++ b/cross/xtensa-unknown-elf-gcc/PKGBUILD @@ -0,0 +1,94 @@ +# $Id: PKGBUILD 186915 2013-05-31 23:25:14Z allan $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> +# Contributor (Parabola): Márcio Silva <coadde@lavabit.com> + +_pkgname=gcc +_target="xtensa-unknown-elf" +_sysroot="/usr/$CHOST/${_target}" + +pkgname=${_target}-${_pkgname} +pkgver=4.8.1 +pkgrel=1.3 +pkgdesc="The GNU Compiler Collection for the Xtensa architecture" +arch=('i686' 'x86_64' 'mips64el') +license=('GPL' 'LGPL' 'FDL' 'custom') +url="http://gcc.gnu.org" +makedepends=("${_target}-binutils>=2.23" 'libmpc' 'cloog' 'gcc-ada' 'doxygen') +checkdepends=('dejagnu' 'inetutils') +options=('!libtool' '!emptydirs') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + https://raw.github.com/qca/open-ath9k-htc-firmware/1.3.2/local/patches/gcc.patch) + +md5sums=('3b2386c114cd74185aa3754b58a79304' + '81372ee980289a9f6df01dad31c64a63') + +_basedir=gcc-${pkgver} + +prepare() { + cd ${srcdir}/${_basedir} + + # open-ath9k-htc-firmware patch + patch -p1 -i ${srcdir}/gcc.patch + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + # Parabola installs x86_64 libraries /lib + [[ $CARCH == "x86_64" ]] && sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 + + echo ${pkgver} > gcc/BASE-VER + + # hack! - some configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure + + mkdir ${srcdir}/gcc-build +} + +build() { + cd ${srcdir}/gcc-build + + ${srcdir}/${_basedir}/configure --prefix=/usr \ + --target=${_target} \ + --disable-multilib \ + --disable-nls \ + --disable-shared \ + --disable-threads \ + --enable-languages=c \ + --disable-libquadmath \ + --disable-libssp \ + --with-newlib \ + --disable-werror \ + --libdir=/usr/lib --libexecdir=/usr/lib +# --mandir=/usr/share/man --infodir=/usr/share/info \ +# --with-bugurl=https://labs.parabola.nu/ \ +# --disable-shared --enable-threads=posix \ +# --with-system-zlib --enable-__cxa_atexit \ +# --disable-libunwind-exceptions --enable-clocale=gnu \ +# --disable-libstdcxx-pch \ +# --enable-gnu-unique-object --enable-linker-build-id \ +# --enable-cloog-backend=isl --disable-cloog-version-check \ +# --enable-lto --enable-gold --enable-ld=default \ +# --enable-plugin --with-plugin-ld=ld.gold \ +# --with-linker-hash-style=gnu --disable-install-libiberty \ +# --enable-checking=release \ + make all-gcc +} + +package() { + pkgdesc="The GNU Compiler Collection for the Xtensa architecture" + depends=("${_target}-binutils>=2.23" 'libmpc' 'cloog') + groups=("${_target}-devel") + install=${_target}-gcc.install + + cd ${srcdir}/gcc-build + + make -j1 DESTDIR=${pkgdir} install-gcc + + # many packages expect this symlinks + ln -s ${_target}-gcc ${pkgdir}/usr/bin/${_target}-cc + + # Remove unnecessary files and folders + rm $pkgdir/usr/share/info/* && rmdir $pkgdir/usr/share/info + rm $pkgdir/usr/share/man/man7/* && rmdir $pkgdir/usr/share/man/man7 +} diff --git a/cross/xtensa-unknown-elf-gcc/xtensa-unknown-elf-gcc.install b/cross/xtensa-unknown-elf-gcc/xtensa-unknown-elf-gcc.install new file mode 100644 index 000000000..3407a5e1f --- /dev/null +++ b/cross/xtensa-unknown-elf-gcc/xtensa-unknown-elf-gcc.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} |