mingw-w64-cross-compiler-rt: build i686 also
This commit is contained in:
parent
d25bab66b0
commit
abec42cdaa
@ -4,7 +4,7 @@ _realname=compiler-rt
|
||||
_mingw_suff=mingw-w64-cross
|
||||
pkgname=("${_mingw_suff}-${_realname}")
|
||||
pkgver=11.0.0
|
||||
pkgrel=4
|
||||
pkgrel=5
|
||||
pkgdesc="Compiler runtime libraries for cross clang"
|
||||
arch=('i686' 'x86_64')
|
||||
url="https://llvm.org"
|
||||
@ -19,17 +19,28 @@ sha256sums=('374aff82ff573a449f9aabbd330a5d0a441181c535a3599996127378112db234'
|
||||
validpgpkeys=('B6C8F98282B944E3B0D5C2530FC3042E345AD05D' # Hans Wennborg, Google.
|
||||
'474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard
|
||||
|
||||
_target="x86_64-w64-mingw32"
|
||||
_targets="x86_64-w64-mingw32 i686-w64-mingw32"
|
||||
|
||||
prepare() {
|
||||
cd ${srcdir}
|
||||
}
|
||||
|
||||
build() {
|
||||
for _target in ${_targets}; do
|
||||
cd "${srcdir}"
|
||||
case "${_target}" in
|
||||
x86_64*)
|
||||
_sizeof_void_p=8
|
||||
_llvmtarget=x86_64
|
||||
;;
|
||||
i686*)
|
||||
_sizeof_void_p=4
|
||||
_llvmtarget=i386
|
||||
;;
|
||||
esac
|
||||
|
||||
[[ -d build-${CARCH} ]] && rm -rf build-${CARCH}
|
||||
mkdir build-${CARCH} && cd build-${CARCH}
|
||||
[[ -d build-${_target} ]] && rm -rf build-${_target}
|
||||
mkdir build-${_target} && cd build-${_target}
|
||||
|
||||
export CC="clang" CXX="clang++" AS="clang" AR="llvm-ar" RANLIB="llvm-ranlib" DLLTOOL="llvm-dlltool" LD="clang"
|
||||
export ASMFLAGS
|
||||
@ -43,11 +54,11 @@ build() {
|
||||
cmake \
|
||||
-G'Ninja' \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_C_COMPILER_TARGET=${_target%%-*}-windows-gnu \
|
||||
-DCMAKE_C_COMPILER_TARGET=${_llvmtarget}-windows-gnu \
|
||||
-DCMAKE_C_COMPILER_WORKS=ON \
|
||||
-DCMAKE_CXX_COMPILER_WORKS=ON \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_SIZEOF_VOID_P=8 \
|
||||
-DCMAKE_SIZEOF_VOID_P=${_sizeof_void_p} \
|
||||
-DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib \
|
||||
-DCMAKE_SYSTEM_NAME=Windows \
|
||||
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
|
||||
@ -59,12 +70,19 @@ build() {
|
||||
../${_realname}-${pkgver}.src
|
||||
|
||||
ninja
|
||||
done
|
||||
}
|
||||
|
||||
package() {
|
||||
cd $srcdir/build-${CARCH}
|
||||
|
||||
# ninja install needs working compiler detection to find correct directory
|
||||
for _target in ${_targets}; do
|
||||
if [[ ${_target} == i?86* ]]; then
|
||||
_llvmtarget=i386
|
||||
else
|
||||
_llvmtarget=${_target%%-*}
|
||||
fi
|
||||
cd $srcdir/build-${_target}
|
||||
mkdir -p "${pkgdir}/usr/lib/clang/${pkgver}/lib/windows"
|
||||
cp "lib/windows/libclang_rt.builtins-${_target%%-*}.a" "${pkgdir}/usr/lib/clang/${pkgver}/lib/windows"
|
||||
cp "lib/windows/libclang_rt.builtins-${_llvmtarget}.a" "${pkgdir}/usr/lib/clang/${pkgver}/lib/windows"
|
||||
done
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user