diff options
author | Stefan Schmidt | 2019-06-30 18:50:37 +0200 |
---|---|---|
committer | Stefan Schmidt | 2019-06-30 18:51:59 +0200 |
commit | 782d7a3faa9adb6f22d03722de737cd86652f396 (patch) | |
tree | a9a6a4b11998d779c3d6bf6a2d751ca230b0ad3f /PKGBUILD | |
download | aur-powerpc64le-linux-gnu-glibc.tar.gz |
Initial release
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..1999e0b33c23 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,99 @@ +# Contributor: Alexander 'hatred' Drozdov <adrozdoff@gmail.com> +# Contributor: toha257 <toha257@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> +# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> +# Contributor: Kevin Mihelich <kevin@archlinuxarm.org> +# Contributor: Tavian Barnes <tavianator@tavianator.com> +# Maintainer: Stefan Schmidt <thrimbor.github@gmail.com> + +_target="powerpc64le-linux-gnu" +pkgname=${_target}-glibc +pkgver=2.29 +pkgrel=1 +pkgdesc="GNU C Library (${_target})" +arch=('any') +url="http://www.gnu.org/software/libc/" +license=(GPL LGPL) +depends=("${_target}-linux-api-headers>=4.16.1-1") +makedepends=("${_target}-gcc-stage2>=8.1.0-1" gperf) +provides=("${_target}-glibc-headers=${pkgver}" "${_target}-eglibc") +conflicts=("${_target}-glibc-headers" "${_target}-eglibc") +replaces=("${_target}-glibc-headers") +options=(!buildflags !strip staticlibs) +source=(https://ftp.gnu.org/gnu/glibc/glibc-$pkgver.tar.xz{,.sig} + powerpc-hack.patch) # Patch by Alexander Baldeck +sha256sums=('f3eeb8d57e25ca9fc13c2af3dae97754f9f643bc69229546828e3a240e2af04b' + SKIP + SKIP) +validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # "Carlos O'Donell <carlos@systemhalted.org>" + BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar + +prepare() { + mkdir -p glibc-build + + [[ -d glibc-$pkgver ]] && ln -s glibc-$pkgver glibc + cd glibc + + local i; for i in ${source[@]}; do + case ${i%::*} in + *.patch) + msg2 "Applying ${i}" + patch -p1 -i "$srcdir/${i}" + ;; + esac + done +} + +build() { + local _configure_flags=( + --prefix=/ + --with-headers=/usr/${_target}/include + --enable-add-ons + --enable-bind-now + --enable-lock-elision + --disable-multi-arch + --enable-stack-protector=strong + --enable-stackguard-randomization + --disable-profile + --disable-werror + ) + + cd glibc-build + + echo "slibdir=/lib" >> configparms + echo "rtlddir=/lib" >> configparms + echo "sbindir=/bin" >> configparms + echo "rootsbindir=/bin" >> configparms + + # remove fortify for building libraries + CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/} + + export BUILD_CC=gcc + export CC=${_target}-gcc + export CXX=${_target}-g++ + export AR=${_target}-ar + export RANLIB=${_target}-ranlib + + "$srcdir/glibc-$pkgver/configure" \ + --libdir=/lib \ + --libexecdir=/lib \ + ${_configure_flags[@]} \ + --target=${_target} \ + --host=${_target} \ + --build=${CHOST} + + echo "build-programs=no" >> configparms + make +} + +package() { + cd glibc-build + + make install_root="$pkgdir/usr/$_target" install + + mkdir -p "$pkgdir/usr/$_target/usr" + ln -s ../{include,lib} "$pkgdir/usr/$_target/usr" + + # Remove unneeded for compilation files + rm -rf "$pkgdir/usr/$_target/"{bin,sbin,etc,share,var} +} |