diff options
author | Tyler Veness | 2015-06-08 01:54:41 -0700 |
---|---|---|
committer | Tyler Veness | 2015-06-08 01:54:41 -0700 |
commit | b4518329d96accbac2fa7aec93b5d795dfda81c0 (patch) | |
tree | b981d1ce5a12a5d339d8b77d3e7441a54d79207d | |
download | aur-b4518329d96accbac2fa7aec93b5d795dfda81c0.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 78 | ||||
-rw-r--r-- | minorSOname.patch | 49 |
3 files changed, 155 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..2971eccabd2c --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,28 @@ +pkgbase = arm-frc-linux-gnueabi-gcc + pkgdesc = The GNU Compiler Collection (arm-frc-linux-gnueabi) + pkgver = 4.9.1 + pkgrel = 2 + url = http://gcc.gnu.org + arch = i686 + arch = x86_64 + groups = frc-2015 + license = GPL + license = LGPL + depends = arm-frc-linux-gnueabi-binutils + depends = arm-frc-linux-gnueabi-eglibc + depends = libmpc + depends = elfutils + options = !buildflags + options = !libtool + options = !emptydirs + options = zipman + options = docs + options = !strip + options = staticlibs + source = ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.1/gcc-4.9.1.tar.bz2 + source = minorSOname.patch + md5sums = fddf71348546af523353bd43d34919c1 + md5sums = eac80070a6324fc67ed5b3ac85551789 + +pkgname = arm-frc-linux-gnueabi-gcc + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..b36c1e3a7150 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,78 @@ +# Maintainer: Tyler Veness <calcmogul at gmail dot com> + +_target="arm-frc-linux-gnueabi" +pkgname=${_target}-gcc +pkgver=4.9.1 +pkgrel=2 +pkgdesc="The GNU Compiler Collection (${_target})" +arch=(i686 x86_64) +license=('GPL' 'LGPL') +url="http://gcc.gnu.org" +groups=('frc-2015') +depends=("${_target}-binutils" "${_target}-eglibc" 'libmpc' 'elfutils') +options=('!buildflags' '!libtool' '!emptydirs' 'zipman' 'docs' + '!strip' 'staticlibs') +source=("ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2" + "minorSOname.patch") +md5sums=('fddf71348546af523353bd43d34919c1' + 'eac80070a6324fc67ed5b3ac85551789') + +build() { + cd "${srcdir}/gcc-${pkgver}" + + echo ${pkgver} > gcc/BASE-VER + + patch -p1 < ${srcdir}/minorSOname.patch + + [[ -d gcc-build ]] || mkdir gcc-build + cd gcc-build + + [ $NOEXTRACT -eq 1 ] || ../configure \ + --prefix=/usr \ + --program-prefix=${_target}- \ + --target=${_target} \ + --host=$CHOST \ + --build=$CHOST \ + --enable-shared \ + --disable-nls \ + --enable-threads=posix \ + --enable-languages=c,c++ \ + --disable-multilib \ + --disable-multiarch \ + --with-sysroot=/usr/${_target} \ + --with-build-sysroot=/usr/${_target} \ + --with-as=/usr/bin/${_target}-as \ + --with-ld=/usr/bin/${_target}-ld \ + --with-cpu=cortex-a9 \ + --with-float=softfp \ + --with-fpu=vfp \ + --with-specs='%{save-temps: -fverbose-asm} %{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables}' \ + --enable-lto \ + --with-pkgversion='GCC for FRC' \ + --with-cloog \ + --enable-poison-system-directories \ + --enable-plugin \ + --with-system-zlib \ + --disable-libmudflap + + make all-gcc all-target-libgcc all-target-libstdc++-v3 +} + +package() { + cd "${srcdir}/gcc-${pkgver}"/gcc-build + + make "DESTDIR=$pkgdir" install-gcc install-target-libgcc \ + install-target-libstdc++-v3 + + rm -rf "$pkgdir"/usr/share/{man/man7,info}/ + + cp -r "$pkgdir"/usr/libexec/* "$pkgdir/usr/lib/" + rm -rf "$pkgdir/usr/libexec" + + rm -rf "$pkgdir/usr/share/gcc-${pkgver}/python" + + # strip it manually + strip "$pkgdir"/usr/bin/* 2>/dev/null || true + find "$pkgdir"/usr/lib -type f -exec /usr/bin/${_target}-strip \ + --strip-unneeded {} \; 2>/dev/null || true +} diff --git a/minorSOname.patch b/minorSOname.patch new file mode 100644 index 000000000000..5e8cec2088dd --- /dev/null +++ b/minorSOname.patch @@ -0,0 +1,49 @@ +Description: Make the default SONAME include minor numbers (c++) + This patch adds .0.20 to the end of the SONAME for libstdc++ to support + independent side-by-side usage of .17 and .20. + . + gcc-armel (4.9.1-0frc2) trusty; urgency=low + . + * Fixing dependency ambiguity yet again... +Author: Patrick Plenefisch <phplenefisch@wpi.edu> + +--- + +--- gcc-armel-4.9.1.orig/libstdc++-v3/configure ++++ gcc-armel-4.9.1/libstdc++-v3/configure +@@ -10698,7 +10698,7 @@ gnu*) + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shared_ext}$versuffix' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; +@@ -10824,7 +10824,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no +@@ -14382,7 +14382,7 @@ gnu*) + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shared_ext}$versuffix' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; +@@ -14508,7 +14508,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no |