Date: Friday, April 5, 2013 @ 23:31:36 Author: lcarlier Revision: 87744
archrelease: copy trunk to community-x86_64 Added: lib32-llvm-amdgpu-snapshot/repos/community-x86_64/ lib32-llvm-amdgpu-snapshot/repos/community-x86_64/PKGBUILD (from rev 87743, lib32-llvm-amdgpu-snapshot/trunk/PKGBUILD) ----------+ PKGBUILD | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) Copied: lib32-llvm-amdgpu-snapshot/repos/community-x86_64/PKGBUILD (from rev 87743, lib32-llvm-amdgpu-snapshot/trunk/PKGBUILD) =================================================================== --- community-x86_64/PKGBUILD (rev 0) +++ community-x86_64/PKGBUILD 2013-04-05 21:31:36 UTC (rev 87744) @@ -0,0 +1,104 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: Roberto Alsina <rals...@kde.org> +# Contributor: Tomas Lindquist Olsen <to...@famolsen.dk> +# Contributor: Anders Bergh <and...@archlinuxppc.org> +# Contributor: Tomas Wilhelmsson <tomas.wilhelms...@gmail.com> + +pkgname=lib32-llvm-amdgpu-snapshot +pkgver=20130403 +pkgrel=1 +pkgdesc='Low Level Virtual Machine with AMDGPU enabled to build r600g shader llvm support (32-bits)' +arch=('x86_64') +url="http://llvm.org" +license=('custom:University of Illinois/NCSA Open Source License') +makedepends=('lib32-libffi' 'python2' 'gcc-multilib') +conflicts=('lib32-llvm') +source=(ftp://ftp.archlinux.org/other/community/llvm-amdgpu/llvm-amdgpu-master.${pkgver}.tar.gz) +md5sums=('4baa7b8da9eff4811952b6f855c141ca') + +build() { + cd "$srcdir"/llvm-c* + + export CC="gcc -m32" + export CXX="g++ -m32" + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + + rm -rf tools/clang + rm -rf projects/compiler-rt + + sed -i 's/python$/python2/' utils/llvm-build/llvm-build + + # Include location of libffi headers in CPPFLAGS + export CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libffi)" + + # Fix installation directories, ./configure doesn't seem to set them right + sed -i -e 's:\$(PROJ_prefix)/etc/llvm:/etc/llvm:' \ + -e 's:\$(PROJ_prefix)/lib:$(PROJ_prefix)/lib32/llvm:' \ + -e 's:\$(PROJ_prefix)/docs/llvm:$(PROJ_prefix)/share/doc/llvm:' \ + Makefile.config.in + sed -i '/ActiveLibDir = ActivePrefix/s:lib:lib32/llvm:' \ + tools/llvm-config/llvm-config.cpp + sed -i 's:LLVM_LIBDIR="${prefix}/lib":LLVM_LIBDIR="${prefix}/lib32/llvm":' \ + autoconf/configure.ac \ + configure + + # Fix insecure rpath (http://bugs.archlinux.org/task/14017) + sed -i 's:$(RPATH) -Wl,$(\(ToolDir\|LibDir\|ExmplDir\))::g' Makefile.rules + + # Apply strip option to configure + _optimized_switch="enable" + [[ $(check_option strip) == n ]] && _optimized_switch="disable" + + # We had to force host and target to get + # a proper triplet reported by llvm + + PYTHON=python2 ./configure \ + --prefix=/usr \ + --libdir=/usr/lib32/llvm \ + --sysconfdir=/etc \ + --enable-shared \ + --enable-libffi \ + --enable-targets=all \ + --enable-experimental-targets=R600 \ + --disable-expensive-checks \ + --with-binutils-include=/usr/include \ + --host=i386-pc-linux-gnu \ + --target=i386-pc-linux-gnu \ + --$_optimized_switch-optimized + + make REQUIRES_RTTI=1 +} + +package() { + depends=('lib32-libffi' 'llvm-amdgpu-snapshot') + + cd "$srcdir"/llvm-c* + + make DESTDIR="$pkgdir" install + + # Fix permissions of static libs + chmod -x "$pkgdir"/usr/lib32/llvm/*.a + + mv "$pkgdir/usr/bin/i386-pc-linux-gnu-llvm-config" "$pkgdir/usr/lib32/llvm-config" + + # Get rid of example Hello transformation + rm "$pkgdir"/usr/lib32/llvm/*LLVMHello.* + + # Symlink the gold plugin where clang expects it + ln -s llvm/LLVMgold.so "$pkgdir/usr/lib32/LLVMgold.so" + + # Add ld.so.conf.d entry + install -d "$pkgdir/etc/ld.so.conf.d" + echo /usr/lib32/llvm >"$pkgdir/etc/ld.so.conf.d/llvm32.conf" + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + + mv "$pkgdir"/usr/include/llvm/Config/*config.h "$pkgdir/" + rm -rf "$pkgdir"/usr/{bin,include,lib,share/doc} + install -d "$pkgdir/usr/include/llvm/Config" + mv "$pkgdir/config.h" "$pkgdir/usr/include/llvm/Config/config-32.h" + mv "$pkgdir/llvm-config.h" "$pkgdir/usr/include/llvm/Config/llvm-config-32.h" + + install -d "$pkgdir"/usr/bin + mv "$pkgdir/usr/lib32/llvm-config" "$pkgdir/usr/bin/llvm-config32" +}