diff options
Diffstat (limited to 'libre-multilib')
-rw-r--r-- | libre-multilib/lib32-clang/PKGBUILD | 93 | ||||
-rw-r--r-- | libre-multilib/lib32-mesa-libcl/PKGBUILD | 112 |
2 files changed, 86 insertions, 119 deletions
diff --git a/libre-multilib/lib32-clang/PKGBUILD b/libre-multilib/lib32-clang/PKGBUILD index 9f1a3cbf0..01501bb08 100644 --- a/libre-multilib/lib32-clang/PKGBUILD +++ b/libre-multilib/lib32-clang/PKGBUILD @@ -1,14 +1,18 @@ # Maintainer (Arch): PitBall # Maintainer: André Silva <emulatorman@parabola.nu> +# Maintainer: Márcio Silva <coadde@parabola.nu> pkgname=lib32-clang pkgver=3.5.0 -_base_ver=3.5.0 -pkgrel=1 +pkgrel=2 +pkgdesc="C language family frontend for LLVM (32-bit)" arch=('x86_64') -url="http://llvm.org/" +url="http://clang.llvm.org/" license=('custom:University of Illinois/NCSA Open Source License') -makedepends=('lib32-libffi' 'lib32-zlib' 'python2' 'gcc-multilib' 'clang' 'lib32-llvm' 'bc') +depends=('clang' 'lib32-llvm' 'gcc-multilib') +# please use libretools, install "multilib-devel" on chroot and add +# "CHROOTEXTRAPKG=(multilib-devel)" on "/etc/libretools.d/chroot.conf" file. +makedepends=('lib32-libffi' 'lib32-zlib' 'python2') options=('staticlibs') source=(http://llvm.org/releases/$pkgver/llvm-$pkgver.src.tar.xz{,.sig} http://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz{,.sig} @@ -23,23 +27,16 @@ sha256sums=('28e199f368ef0a4666708f31c7991ad3bcc3a578342b0306526dd35f07595c03' '5702053503d49448598eda1b8dc8c263f0df9ad7486833273e3987b5dec25a19') prepare() { - # Change directory names to release names so we don't need to change the - # whole PKGBUILD - mv llvm-$pkgver{.src,} - mv cfe-$pkgver.src clang-$pkgver + cd "$srcdir/llvm-$pkgver.src" - cd "$srcdir/llvm-$pkgver" + # At the present, clang must reside inside the LLVM source code tree to build + # See http://llvm.org/bugs/show_bug.cgi?id=4840 + mv "$srcdir/cfe-$pkgver.src" tools/clang - rm -rf projects/compiler-rt - mv "$srcdir/clang-$pkgver" tools/clang - - - rm -rf projects/compiler-rt - mv "$srcdir/compiler-rt-$_base_ver.src" projects/compiler-rt + mv "$srcdir/compiler-rt-$pkgver.src" projects/compiler-rt # Fix installation directories, ./configure doesn't seem to set them right - sed -i -e 's:\$(PROJ_prefix)/lib:$(PROJ_prefix)/lib32:' \ - -e 's:\$(PROJ_prefix)/docs/llvm:$(PROJ_prefix)/share/doc/llvm:' \ + sed -i 's:\$(PROJ_prefix)/lib:$(PROJ_prefix)/lib32:' \ Makefile.config.in sed -i '/ActiveLibDir = ActivePrefix/s:lib:lib32:' \ tools/llvm-config/llvm-config.cpp @@ -47,66 +44,60 @@ prepare() { autoconf/configure.ac \ configure - # Use system lib32-llvm - install -d $srcdir/llvm-$pkgver/Release/lib - for file in ` pacman -Ql lib32-llvm |grep /lib32/ |awk '{print $2}' |sed '/\/$/d'`; do - ln -sf $file $srcdir/llvm-$pkgver/Release/lib/ - done - # Fix build with GCC 4.9 (patch from Debian) # http://llvm.org/bugs/show_bug.cgi?id=20067 patch -Np1 -i "$srcdir/llvm-3.5.0-force-link-pass.o.patch" } build() { - cd "$srcdir/llvm-$pkgver" - export CC="gcc -m32" - export CXX="g++ -m32" - export CLANG="clang -m32" - export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" - export LLVM_CONFIG=/usr/bin/llvm-config32 + cd $srcdir/llvm-$pkgver.src + + export CC='gcc -m32' + export CXX='g++ -m32' + export PKG_CONFIG_PATH=/usr/lib32/pkgconfig + + # Apply strip option to configure + _optimized_switch=enable + [[ $(check_option strip) == n ]] && _optimized_switch=disable # Include location of libffi headers in CPPFLAGS CPPFLAGS+=" $(pkg-config --cflags libffi)" + # We had to force host and target to get + # a proper triplet reported by llvm + ./configure \ --prefix=/usr \ --libdir=/usr/lib32 \ --sysconfdir=/etc \ --enable-shared \ --enable-libffi \ - --enable-targets=x86 \ - --enable-experimental-targets=R600 \ - --enable-bindings=none \ + --enable-targets=all \ --disable-expensive-checks \ --disable-debug-runtime \ --disable-assertions \ --with-binutils-include=/usr/include \ --with-python=/usr/bin/python2 \ + --build=i686-pc-linux-gnu \ --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - --enable-optimized - -# --disable-clang-static-analyzer \ + --$_optimized_switch-optimized -# make - make -C projects/compiler-rt clang_linux - make -C tools/clang/utils/TableGen - make -C tools/clang/lib + make REQUIRES_RTTI=1 } -package_lib32-clang() { - pkgdesc="C language family frontend for LLVM (32-bit)" - url="http://clang.llvm.org/" - depends=('clang' 'lib32-llvm' 'gcc-multilib') +package() { + cd $srcdir/llvm-$pkgver.src/tools/clang + + make -C lib DESTDIR=$pkgdir install - install -d $pkgdir/usr/lib32/clang/$pkgver - ln -s lib32 $pkgdir/usr/lib + # fix include dir on lib32 dir + rm -rv $pkgdir/usr/lib + ln -s /usr/lib/clang $pkgdir/usr/lib32/clang - cd "$srcdir/llvm-$pkgver/tools/clang" - make -C lib DESTDIR="$pkgdir" install # Fix permissions of static libs - chmod -x "$pkgdir"/usr/lib32/*.a - mv $pkgdir/usr/lib32/clang{,/$pkgver}/include - rm -rf $pkgdir/usr/lib + chmod -x $pkgdir/usr/lib32/*.a + + install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } + +# vim:set ts=2 sw=2 et: diff --git a/libre-multilib/lib32-mesa-libcl/PKGBUILD b/libre-multilib/lib32-mesa-libcl/PKGBUILD index d2b5a47a6..c11c9353a 100644 --- a/libre-multilib/lib32-mesa-libcl/PKGBUILD +++ b/libre-multilib/lib32-mesa-libcl/PKGBUILD @@ -4,94 +4,70 @@ pkgbase=mesa _pkgname=libcl pkgname=lib32-$pkgbase-$_pkgname -_pkgflag=libre pkgver=10.2.7 pkgrel=2 pkgdesc='Mesa 3-D OpenCL library (32-bit)' -url=http://${pkgbase}3d.sourceforge.net -license=( - custom -) -arch=( - x86_64 -) -depends=( - lib32-libclc - lib32-$pkgbase -) -optdepends=( - 'opencl-headers: headers necessary for OpenCL development' -) -makedepends=( - # please use libretools, install "multilib-devel" on chroot and add - # "CHROOTEXTRAPKG=(multilib-devel)" on "/etc/libretools.d/chroot.conf" file. - lib32-clang - dri2proto - dri3proto - glproto - imake - lib32-libxml2 - presentproto - python2 - lib32-libvdpau -) -provides=( - lib32-$_pkgname-$_pkgflag - lib32-$_pkgname - lib32-opencl-nvidia - lib32-opencl-nvidia-304xx - lib32-opencl-$pkgbase -) -conflicts=( - lib32-$_pkgname-$_pkgflag - lib32-$_pkgname - lib32-opencl-nvidia - lib32-opencl-nvidia-304xx - lib32-opencl-$pkgbase -) -replaces=( - lib32-$_pkgname-$_pkgflag - lib32-$_pkgname - lib32-opencl-nvidia - lib32-opencl-nvidia-304xx - lib32-opencl-$pkgbase -) -source=( - ftp://ftp.freedesktop.org/pub/$pkgbase/${pkgver%.0}/${pkgbase^}Lib-$pkgver.tar.bz2 - llvm35.patch -) -sha512sums=( - c6d346499ef9596d3b5cd0bdc0ec64b58e8170203e0c977c54b55652c8792beb471822c101461745f7228a7d15a43924211f56fc0cc989defdc1acc4ea7b8a71 - dbf6792c94c80e067f3d1a33237ca1e28be7069a366c46b36997afab97c8a712758b07dc7f9fce0b3e20b8280d41539f02d70ee5c7e16188d8f6db9731fb6881 -) +arch=('x86_64') +url="http://${pkgbase}3d.sourceforge.net" +license=('custom') +depends=("lib32-$pkgbase-$_pkgname" "lib32-$pkgbase=$pkgver" 'lib32-libclc' 'lib32-clang') +optdepends=('opencl-headers: headers necessary for OpenCL development') +# please use libretools, install "multilib-devel" on chroot and add +# "CHROOTEXTRAPKG=(multilib-devel)" on "/etc/libretools.d/chroot.conf" file. +makedepends=('python2' 'lib32-libxml2' 'glproto' 'dri2proto' 'dri3proto' 'presentproto' + 'lib32-libvdpau' 'lib32-clang') # 'imake') +provides=("lib32-$_pkgname-libre" "lib32-$_pkgname" 'lib32-opencl-nvidia' 'lib32-opencl-nvidia-304xx' "lib32-opencl-$pkgbase") +conflicts=("lib32-$_pkgname-libre" "lib32-$_pkgname" 'lib32-opencl-nvidia' 'lib32-opencl-nvidia-304xx' "lib32-opencl-$pkgbase") +replaces=("lib32-$_pkgname-libre" "lib32-$_pkgname" 'lib32-opencl-nvidia' 'lib32-opencl-nvidia-304xx' "lib32-opencl-$pkgbase") +source=("ftp://ftp.freedesktop.org/pub/$pkgbase/${pkgver%.0}/${pkgbase^}Lib-$pkgver.tar.bz2" + "llvm35.patch") +sha512sums=('c6d346499ef9596d3b5cd0bdc0ec64b58e8170203e0c977c54b55652c8792beb471822c101461745f7228a7d15a43924211f56fc0cc989defdc1acc4ea7b8a71' + 'dbf6792c94c80e067f3d1a33237ca1e28be7069a366c46b36997afab97c8a712758b07dc7f9fce0b3e20b8280d41539f02d70ee5c7e16188d8f6db9731fb6881') prepare() { cd $srcdir/${pkgbase^}-$pkgver + patch -Np1 -i ../llvm35.patch } build() { cd $srcdir/${pkgbase^}-$pkgver + export CC="gcc -m32" export CXX="g++ -m32" export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" export LLVM_CONFIG=/usr/bin/llvm-config32 - autoreconf -vfi - ./configure --prefix=/usr --libdir=/usr/lib32 --enable-32-bit\ - --enable-opencl\ - --enable-gallium-llvm\ - --enable-r600-llvm-compiler\ - --enable-dri3\ - --with-clang-libdir=/usr/lib\ - --enable-llvm-shared-libs\ + + autoreconf -vfi # our automake is far too new for their build system :) + + ./configure --prefix=/usr --libdir=/usr/lib32 --enable-32-bit \ + --enable-opencl \ + --enable-gallium-llvm \ + --enable-r600-llvm-compiler \ + --enable-dri3 \ + --with-clang-libdir=/usr/lib32 \ + --enable-llvm-shared-libs \ --with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast make + + # fake installation + mkdir $srcdir/fakeinstall + make DESTDIR=$srcdir/fakeinstall install } package() { - cd $srcdir/${pkgbase^}-$pkgver - make -C src/gallium/targets/opencl DESTDIR=$pkgdir install - install -vdm755 $pkgdir/usr/share/licenses/$pkgname + #cd $srcdir/${pkgbase^}-$pkgver + #make -C src/gallium/targets/opencl DESTDIR=$pkgdir install + + install -vm755 -d $pkgdir/etc + mv -v $srcdir/fakeinstall/etc/OpenCL $pkgdir/etc/ + + install -vm755 -d $pkgdir/usr/lib/ + mv -v $srcdir/fakeinstall/usr/lib/lib*OpenCL* $pkgdir/usr/lib/ + + install -vm755 -d $pkgdir/usr/share/licenses/$pkgname install -vm644 docs/COPYING $pkgdir/usr/share/licenses/$pkgname install -vm644 docs/license.html $pkgdir/usr/share/licenses/$pkgname/LICENSE } + +# vim:set ts=2 sw=2 et: |