Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=multilib.git;a=commitdiff;h=8cb18065f1dee9e44c87c41606464f0ec2fd073e
commit 8cb18065f1dee9e44c87c41606464f0ec2fd073e Author: DeX77 <[email protected]> Date: Wed Oct 26 17:53:51 2016 +0200 llvm-3.8.1-5-x86_64 + add cross32 diff --git a/source/devel/llvm/FrugalBuild b/source/devel/llvm/FrugalBuild index 27f37b7..891138b 100644 --- a/source/devel/llvm/FrugalBuild +++ b/source/devel/llvm/FrugalBuild @@ -3,19 +3,19 @@ pkgname=llvm pkgver=3.8.1 -pkgrel=4 +pkgrel=5 gcc_ver=6.2.1 url="http://www.llvm.org" pkgdesc="Low Level Virtual Machine (Compiler , Tools and Libs)" depends=("libstdc++=${gcc_ver}") makedepends=('groff' 'libffi>=3.2.1-2' 'python-sphinx>=1.4.4-2' 'ocaml-ctypes>=0.9.2-2' \ - 'ocaml-findlib>=1.6.2-3' "libgo>=${gcc_ver}" 'ncurses>=6.0-12') + 'ocaml-findlib>=1.6.2-3' "libgo>=${gcc_ver}" 'ncurses>=6.0-12' 'lib32-libffi' 'lib32-libxml2') ## tc bump -- we need for rebuilds foo>=x-y sytle to be sure is rebuilt with ## the right versions of the packages makedepends=("${makedepends[@]}" 'libstdc++>=6.2.1-5' 'binutils>=2.27-3' 'glibc>=2.24-4') rodepends=("$pkgname-libs") groups=('devel') -archs=('i686' 'x86_64') +archs=('x86_64') source=(http://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.xz \ http://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz) @@ -23,10 +23,15 @@ up2date="Flastarchive $url/releases/download.html .src.tar.xz" _F_archive_ver="${pkgver}.src" signatures=("${source[0]}.sig" "${source[1]}.sig" ) +_F_cross32_delete=('usr/bin' 'usr/docs' 'usr/share' \ + 'usr/lib32/clang' 'usr/lib/ocaml' \ + 'usr/libexec/' 'usr/lib32/libclang*' \ + 'usr/include/clang*' ) +Finclude cross32 subpkgs=("${subpkgs[@]}" "clang") subdescs=("${subdescs[@]}" "C language family frontend for LLVM") -subdepends=("${subdepends[@]}" "") +subdepends=("${subdepends[@]}" "libxml2") subrodepends=("${subrodepends[@]}" "$pkgname=$pkgver") subgroups=("${subgroups[@]}" 'devel-extra') subarchs=("${subarchs[@]}" "${archs[*]}") @@ -45,32 +50,35 @@ subrodepends=("${subrodepends[@]}" "") subgroups=("${subgroups[@]}" 'lib') subarchs=("${subarchs[@]}" "${archs[*]}") +subpkgs=("${subpkgs[@]}" "lib32-${pkgname}-libs") +subdescs=("${subdescs[@]}" "LLVM shared libs (32-bit)") +subdepends=("${subdepends[@]}" "lib32-ncurses>=6.0-12 lib32-libedit>=20160903_3.1") +subrodepends=("${subrodepends[@]}" "") +subgroups=("${subgroups[@]}" 'lib32-extra') +subarchs=("${subarchs[@]}" "${archs[*]}") -F_cmake_type="Release" -_F_cmake_confopts+=" -DCMAKE_INSTALL_PREFIX=/usr \ - -DLLVM_BUILD_LLVM_DYLIB=ON \ - -DLLVM_DYLIB_EXPORT_ALL=ON \ - -DLLVM_LINK_LLVM_DYLIB=ON \ - -DLLVM_ENABLE_RTTI=ON \ - -DLLVM_ENABLE_FFI=ON \ - -DLLVM_BUILD_DOCS=ON \ - -DLLVM_ENABLE_SPHINX=OFF \ - -DLLVM_ENABLE_DOXYGEN=OFF \ - -DFFI_INCLUDE_DIR=$(pkg-config --cflags-only-I libffi | cut -c3-) \ - -DLLVM_HOST_TRIPLE=${CARCH}-frugalware-linux \ - -DLLVM_DEFAULT_TARGET_TRIPLE=${CARCH}-frugalware-linux \ - -DC_INCLUDE_DIRS=/usr/local/include:/usr/include/c++/${gcc_ver}:/usr/include/c++/${gcc_ver}/backward:/usr/include/c++/${gcc_ver}/${CARCH}-frugalware-linux:/usr/include \ - -DLLVM_BINUTILS_INCDIR=/usr/include \ - .." - +# Common CMake options +_F_cmake_type="Release" +_common_cmake_confopts=" -DCMAKE_INSTALL_PREFIX=/usr \ + -DLLVM_BUILD_LLVM_DYLIB=ON \ + -DLLVM_DYLIB_EXPORT_ALL=ON \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_ENABLE_RTTI=ON \ + -DLLVM_ENABLE_FFI=ON \ + -DLLVM_BUILD_DOCS=ON \ + -DLLVM_ENABLE_SPHINX=OFF \ + -DLLVM_ENABLE_DOXYGEN=OFF \ + -DLLVM_HOST_TRIPLE=${CARCH}-frugalware-linux \ + -DLLVM_DEFAULT_TARGET_TRIPLE=${CARCH}-frugalware-linux \ + -DC_INCLUDE_DIRS=/usr/local/include:/usr/include/c++/${gcc_ver}:/usr/include/c++/${gcc_ver}/backward:/usr/include/c++/${gcc_ver}/${CARCH}-frugalware-linux:/usr/include \ + -DFFI_INCLUDE_DIR=$(pkg-config --cflags-only-I libffi | cut -c3-) \ + -DLLVM_BINUTILS_INCDIR=/usr/include" Finclude cmake -options+=('static' 'force') +options+=('static') build() { - Funpack_scm - Fcd # clang must be copied here to build with llvm Fexec rm -rf tools/clang @@ -78,22 +86,46 @@ build() { Fexec mv -f ../cfe-${_F_archive_ver}/ tools/clang - # Fix for genesis32 - if [ "$CARCH" == "i686" ]; then - LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" - fi + Fcross32_prepare + Fcross32_copy_source - CMake_make + ## 32-bit CMake options + _F_cmake_confopts+=" ${_common_cmake_confopts} + -DLLVM_LIBDIR_SUFFIX=32 \ + -DCMAKE_CXX_FLAGS:STRING=-m32 \ + -DLLVM_TARGET_ARCH:STRING=i686" - Fexec make -C ../docs -f Makefile.sphinx man || Fdie - Fexec make -C ../docs -f Makefile.sphinx html || Fdie - Fexec make -C ../tools/clang/docs -f Makefile.sphinx html || Fdie - Fexec make -C ../tools/clang/docs -f Makefile.sphinx man || Fdie + CMake_make - Fexec make ocaml_doc + Fexec make -C ../docs -f Makefile.sphinx man || Fdie + Fexec make -C ../docs -f Makefile.sphinx html || Fdie + Fexec make -C ../tools/clang/docs -f Makefile.sphinx html || Fdie + Fexec make -C ../tools/clang/docs -f Makefile.sphinx man || Fdie + Fexec make ocaml_doc CMake_install + Fcross32_copy_back_source + Fcross32_reset_and_fix + Fcross32_delete_empty + + Fmkdir usr/i686-frugalware-linux/include/ + Fmv usr/include/llvm usr/i686-frugalware-linux/include/ + Fmv usr/include/llvm-c usr/i686-frugalware-linux/include/ + Frm usr/include + Fsplit "lib32-$pkgname-libs" /\* + + ## 64-bit CMake options + _F_cmake_confopts=" ${_common_cmake_confopts}" + CMake_make + + Fexec make -C ../docs -f Makefile.sphinx man || Fdie + Fexec make -C ../docs -f Makefile.sphinx html || Fdie + Fexec make -C ../tools/clang/docs -f Makefile.sphinx html || Fdie + Fexec make -C ../tools/clang/docs -f Makefile.sphinx man || Fdie + + Fexec make ocaml_doc + CMake_install # Install man pages Fmkdir usr/share/man/man1 _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
