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

Reply via email to