blob: 92255bb5148deef7adb9bdc5f1516a3febdc105d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
pkgname=android-ndk-ollvm
pkgver=14.0.1
pkgrel=1
pkgdesc='Obfuscated llvm for Android NDK. It install LLVM with obfuscation support outside of android-ndk and use symlinks to NDK. Symlinks updates automaticly (via pacman hooks) on each android-ndk upgrade'
arch=('x86_64')
url='https://github.com/sr-tream/obfuscator'
license=('GPL' 'LGPL' 'custom')
options=('!strip' '!staticlibs')
install="$pkgname.install"
replaces=('android-ndk64-ollvm')
depends=('android-ndk>=r23')
makedepends=('cmake' 'clang' 'lld')
source=("update_links.sh"
"${pkgname}.hook"
"git+${url}.git#branch=release/14.x")
sha256sums=('8b644e42e6e33a607bcf2529c034007ee8bf2c3980f40c9da21cfc9450a4e7f5'
'4ff51c89e7b047b0ca396c829fa5dbbf572559f15cefdf6d14e56251e208c5e9'
'SKIP')
prepare() {
cd ${srcdir}/obfuscator
git submodule update --init llvm-project
cd - && cd ${srcdir}/obfuscator/llvm-project
git apply ../obfuscator.patch
cd -
}
build() {
mkdir {build,install}
if ! command -v ccache &> /dev/null
then
cmake -B build -S "${srcdir}/obfuscator/llvm-project/llvm" \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DLLVM_ENABLE_PROJECTS="clang;lld" \
-DLLVM_ENABLE_LLD=ON \
-DLLVM_STATIC_LINK_CXX_STDLIB=ON \
-DLLVM_TARGETS_TO_BUILD="ARM;AArch64;X86"
else
cmake -B build -S "${srcdir}/obfuscator/llvm-project/llvm" \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DLLVM_ENABLE_PROJECTS="clang;lld" \
-DLLVM_ENABLE_LLD=ON \
-DLLVM_STATIC_LINK_CXX_STDLIB=ON \
-DLLVM_TARGETS_TO_BUILD="ARM;AArch64;X86" \
-DLLVM_CCACHE_BUILD=ON
fi
cmake --build build --parallel
cmake --install build --prefix install
ln -s install/bin/ld.lld install/bin/ld
}
package() {
install -Ddm755 "$pkgdir/opt/${pkgname}"
install -Ddm755 "$pkgdir/usr/share/libalpm/hooks"
install -Dm755 update_links.sh -t "$pkgdir/opt/${pkgname}/"
install -Dm644 ${pkgname}.hook -t "$pkgdir/usr/share/libalpm/hooks/"
install -Ddm755 "$pkgdir/opt/${pkgname}/toolchains/llvm/prebuilt/linux-x86_64"
cp -r install/bin "$pkgdir/opt/${pkgname}/toolchains/llvm/prebuilt/linux-x86_64"
cp -r install/lib "$pkgdir/opt/${pkgname}/toolchains/llvm/prebuilt/linux-x86_64"
}
|