Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=a9d00bfc68bd003c83d8f4acbf139843ee6d7836
commit a9d00bfc68bd003c83d8f4acbf139843ee6d7836 Author: DeX77 <[email protected]> Date: Mon Oct 12 15:40:55 2015 +0200 llvm-3.7.0-3-x86_64 * relbump * switch to cmake build * incorporate fix for genesis32 mem limit * fix stupid difference between i686 and x86_64 diff --git a/source/devel/llvm/FrugalBuild b/source/devel/llvm/FrugalBuild index b446cee..baaea03 100644 --- a/source/devel/llvm/FrugalBuild +++ b/source/devel/llvm/FrugalBuild @@ -3,7 +3,7 @@ pkgname=llvm pkgver=3.7.0 -pkgrel=2 +pkgrel=3 gcc_ver=5.2.0 url="http://www.llvm.org" pkgdesc="Low Level Virtual Machine (Compiler , Tools and Libs)" @@ -14,9 +14,9 @@ groups=('devel') archs=('i686' 'x86_64' 'arm') up2date="Flastarchive $url/releases/download.html .src.tar.xz" source=(http://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.xz \ - http://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz ) + http://llvm.org/releases/$pkgver/cfe-$pkgver.src.tar.xz) + _F_archive_ver="${pkgver}.src" -_F_make_opts="${MAKEFLAGS} REQUIRES_RTTI=1" signatures=("${source[0]}.sig" "${source[1]}.sig") subpkgs=("${subpkgs[@]}" "clang") @@ -34,25 +34,23 @@ subgroups=("${subgroups[@]}" 'devel-extra') subarchs=("${subarchs[@]}" "${archs[*]}") - if [[ "$CARCH" == "x86_64" ]]; then - Fconfopts+="--with-cxx-include-arch=${CARCH}-frugalware-linux-gnueabi \ - --build=${CARCH}-frugalware-linux-gnueabi " - c_include_dirs="/usr/local/include:/usr/include/c++/${gcc_ver}:/usr/include/c++/${gcc_ver}/backward:/usr/include/c++/${gcc_ver}/${CARCH}-frugalware-linux-gnueabi:/usr/include" -else - Fconfopts+="--with-cxx-include-arch=${CARCH}-frugalware-linux \ - --build=${CARCH}-frugalware-linux " - c_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" -fi - -Fconfopts+="--libdir=/usr/lib/llvm \ - --docdir=/usr/share/doc/$pkgname-$pkgver - --sysconfdir=/etc \ - --enable-shared \ - --enable-libffi \ - --enable-targets=all \ - --with-c-include-dirs=${c_include_dirs}" - -_F_conf_configure="../configure" +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=ON \ + -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" + +Finclude cmake build() { @@ -64,33 +62,21 @@ build() { Fpatchall - # Apply strip option to configure - _optimized_switch="enable" - [[ $(check_option strip) == n ]] & _optimized_switch="disable" - - Fsed '\${prefix}/etc/llvm' '/etc/llvm' configure - Fsed '/docs/llvm' "/share/doc/$pkgname-$pkgver" Makefile.config.in - export CC='gcc' - export CXX='g++' - - # seperate build dir - mkdir build - cd build - - if [[ "$CARCH" == "i686" ]]; then - _F_make_opts="-j1" - fi - - Fmake --$_optimized_switch-optimized + # Fix for genesis32 + if [ "$CARCH" == "i686" ]; then + LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" + fi + CMake_make Fexec make -C ../docs -f Makefile.sphinx man Fexec make -C ../docs -f Makefile.sphinx html Fexec make -C ../tools/clang/docs -f Makefile.sphinx html Fexec make -C ../tools/clang/docs -f Makefile.sphinx man - _F_make_opts="-j1" - Fmakeinstall + Fexec make ocaml_doc + + CMake_install # Install man pages Fmkdir usr/share/man/man1 @@ -108,8 +94,11 @@ build() { Fcp ${_F_cd_path}/tools/clang/docs/_build/html/* usr/share/doc/$pkgname-$pkgver/html/clang Frm usr/share/doc/$pkgname-$pkgver/html/clang/_sources + # Install html docs of llvm-ocaml + Fmkdir usr/share/doc/$pkgname-$pkgver/ocamldoc + Fcp ${_F_cd_path}/${_F_cmake_build_dir}/docs/ocamldoc/html/* usr/share/doc/$pkgname-$pkgver/ocamldoc + Fsplit clang usr/bin/clang* - Fsplit clang usr/bin/c-index-test Fsplit clang usr/include/clang* Fsplit clang usr/lib/clang/ Fsplit clang usr/lib/libclang* @@ -118,7 +107,6 @@ build() { Fsplit $pkgname-ocaml usr/lib/ocaml/ Fsplit $pkgname-ocaml usr/share/doc/$pkgname-$pkgver/ocamldoc/ - Fsplit $pkgname-ocaml usr/share/doc/$pkgname-$pkgver/ocamldoc.tar.gz Fsplit $pkgname-ocaml usr/share/llvm/cmake/{Find,Add}OCaml.cmake Fsplit $pkgname-ocaml usr/share/doc/$pkgname-$pkgver/html/tutorial/OCamlLangImpl*.html } _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
