Skip to content

Commit 30bc401

Browse files
devendrnddf8196
authored andcommitted
Update build scripts
1 parent d650e28 commit 30bc401

File tree

2 files changed

+130
-134
lines changed

2 files changed

+130
-134
lines changed

build.bat

Lines changed: 67 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,68 @@
1-
set CLANG_OPTIONS=--target=aarch64-linux-android21 -shared -s -O2 -fPIC -Wno-void-pointer-to-enum-cast -DANDROID -ffunction-sections -fdata-sections -I./frida/arm64/include -L./frida/arm64/lib -lfrida-gum -llog -ldl -lm -pthread -Wl,--gc-sections,-z,noexecstack,-z,relro,-z,now
1+
@echo off
2+
:: usage:
3+
:: .\build.bat
4+
:: .\bulid.bat -v 1.20.40.22 1.20.50.21
25

3-
mkdir build
4-
::1.19.20.02 arm64-v8a
5-
clang.exe %CLANG_OPTIONS% -DV1_19_20_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.20.02-arm64.so
6-
::1.19.21.01 arm64-v8a
7-
clang.exe %CLANG_OPTIONS% -DV1_19_21_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.21.01-arm64.so
8-
::1.19.40.02 arm64-v8a
9-
::also compatible with 1.19.41.01 arm64-v8a
10-
clang.exe %CLANG_OPTIONS% -DV1_19_40_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.40.02-arm64.so
11-
::1.19.51.01 arm64-v8a
12-
clang.exe %CLANG_OPTIONS% -DV1_19_51_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.51.01-arm64.so
13-
::1.19.60.03 arm64-v8a
14-
clang.exe %CLANG_OPTIONS% -DV1_19_60_03 ./src/*.c -o ./build/libmaterialbinloader-1.19.60.03-arm64.so
15-
::1.19.62.01 arm64-v8a
16-
clang.exe %CLANG_OPTIONS% -DV1_19_62_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.62.01-arm64.so
17-
::1.19.63.01 arm64-v8a
18-
clang.exe %CLANG_OPTIONS% -DV1_19_63_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.63.01-arm64.so
19-
::1.19.70.22 arm64-v8a
20-
clang.exe %CLANG_OPTIONS% -DV1_19_70_22 ./src/*.c -o ./build/libmaterialbinloader-1.19.70.22-arm64.so
21-
::1.19.70.02 arm64-v8a
22-
clang.exe %CLANG_OPTIONS% -DV1_19_70_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.70.02-arm64.so
23-
::1.19.71.02 arm64-v8a
24-
clang.exe %CLANG_OPTIONS% -DV1_19_71_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.71.02-arm64.so
25-
::1.19.73.02 arm64-v8a
26-
clang.exe %CLANG_OPTIONS% -DV1_19_73_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.73.02-arm64.so
27-
::1.19.80.02 arm64-v8a
28-
clang.exe %CLANG_OPTIONS% -DV1_19_80_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.80.02-arm64.so
29-
::1.19.81.01 arm64-v8a
30-
clang.exe %CLANG_OPTIONS% -DV1_19_81_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.81.01-arm64.so
31-
::1.19.83.01 arm64-v8a
32-
clang.exe %CLANG_OPTIONS% -DV1_19_83_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.83.01-arm64.so
33-
::1.20.0.20 arm64-v8a
34-
clang.exe %CLANG_OPTIONS% -DV1_20_0_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.0.20-arm64.so
35-
::1.20.0.01 arm64-v8a
36-
clang.exe %CLANG_OPTIONS% -DV1_20_0_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.0.01-arm64.so
37-
::1.20.1.02 arm64-v8a
38-
clang.exe %CLANG_OPTIONS% -DV1_20_1_02 ./src/*.c -o ./build/libmaterialbinloader-1.20.1.02-arm64.so
39-
::1.20.10.01 arm64-v8a
40-
clang.exe %CLANG_OPTIONS% -DV1_20_10_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.10.01-arm64.so
41-
::1.20.12.01 arm64-v8a
42-
clang.exe %CLANG_OPTIONS% -DV1_20_12_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.12.01-arm64.so
43-
::1.20.30.20 arm64-v8a
44-
clang.exe %CLANG_OPTIONS% -DV1_20_30_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.20-arm64.so
45-
::1.20.30.21 arm64-v8a
46-
clang.exe %CLANG_OPTIONS% -DV1_20_30_21 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.21-arm64.so
47-
::1.20.15.01 arm64-v8a
48-
clang.exe %CLANG_OPTIONS% -DV1_20_15_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.15.01-arm64.so
49-
::1.20.30.22 arm64-v8a
50-
clang.exe %CLANG_OPTIONS% -DV1_20_30_22 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.22-arm64.so
51-
::1.20.30.25 arm64-v8a
52-
clang.exe %CLANG_OPTIONS% -DV1_20_30_25 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.25-arm64.so
53-
::1.20.40.20 arm64-v8a
54-
clang.exe %CLANG_OPTIONS% -DV1_20_40_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.20-arm64.so
55-
::1.20.30.02 arm64-v8a
56-
clang.exe %CLANG_OPTIONS% -DV1_20_30_02 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.02-arm64.so
57-
::1.20.40.22 arm64-v8a
58-
clang.exe %CLANG_OPTIONS% -DV1_20_40_22 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.22-arm64.so
59-
::1.20.31.01 arm64-v8a
60-
clang.exe %CLANG_OPTIONS% -DV1_20_31_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.31.01-arm64.so
61-
::1.20.32.03 arm64-v8a
62-
clang.exe %CLANG_OPTIONS% -DV1_20_32_03 ./src/*.c -o ./build/libmaterialbinloader-1.20.32.03-arm64.so
63-
::1.20.40.24 arm64-v8a
64-
clang.exe %CLANG_OPTIONS% -DV1_20_40_24 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.24-arm64.so
65-
::1.20.50.20 arm64-v8a
66-
clang.exe %CLANG_OPTIONS% -DV1_20_50_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.50.20-arm64.so
67-
::1.20.50.21 arm64-v8a
68-
clang.exe %CLANG_OPTIONS% -DV1_20_50_21 ./src/*.c -o ./build/libmaterialbinloader-1.20.50.21-arm64.so
6+
set CLANG_OPTS_ARM64=--target=aarch64-linux-android21 -shared -s -O2 -fPIC -Wno-void-pointer-to-enum-cast -DANDROID -ffunction-sections -fdata-sections -I./frida/arm64/include -L./frida/arm64/lib -lfrida-gum -llog -ldl -lm -pthread -Wl,--gc-sections,-z,noexecstack,-z,relro,-z,now
7+
8+
:: arm64-v8a
9+
:: 1.19.40.02 also compatible with 1.19.41.01
10+
set VERSIONS_ARM64=^
11+
1.19.20.02^
12+
1.19.21.01^
13+
1.19.40.02^
14+
1.19.51.01^
15+
1.19.60.03^
16+
1.19.62.01^
17+
1.19.63.01^
18+
1.19.70.22^
19+
1.19.70.02^
20+
1.19.71.02^
21+
1.19.73.02^
22+
1.19.80.02^
23+
1.19.81.01^
24+
1.19.83.01^
25+
1.20.0.20^
26+
1.20.0.01^
27+
1.20.1.02^
28+
1.20.10.01^
29+
1.20.12.01^
30+
1.20.30.20^
31+
1.20.30.21^
32+
1.20.15.01^
33+
1.20.30.22^
34+
1.20.30.25^
35+
1.20.40.20^
36+
1.20.30.02^
37+
1.20.40.22^
38+
1.20.31.01^
39+
1.20.32.03^
40+
1.20.40.24^
41+
1.20.50.20^
42+
1.20.50.21
43+
:: version list end
44+
45+
set ARG_MODE=
46+
:loop_args
47+
if "%1" == "" goto :end_args
48+
if "%1" == "-v" (
49+
set VERSIONS_ARM64=
50+
set ARG_MODE=%1
51+
goto :next_arg
52+
)
53+
if "%ARG_MODE%" == "-v" (
54+
set VERSIONS_ARM64=%VERSIONS_ARM64% %1
55+
)
56+
:next_arg
57+
shift
58+
goto :loop_args
59+
:end_args
60+
61+
if not exist "build" md "build"
62+
63+
setlocal enabledelayedexpansion
64+
for %%a in (%VERSIONS_ARM64%) do (
65+
set DFLAG=%%a
66+
echo libmaterialbinloader-%%a-arm64.so
67+
clang.exe %CLANG_OPTS_ARM64% -DV!DFLAG:.=_! ./src/*.c -o ./build/libmaterialbinloader-%%a-arm64.so
68+
)

build.sh

Lines changed: 63 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,64 @@
11
#!/bin/bash
2-
Flags="-target aarch64-linux-android21 -shared -s -O2 -fPIC -Wno-void-pointer-to-enum-cast -DANDROID -ffunction-sections -fdata-sections -I./frida/arm64/include -L./frida/arm64/lib -lfrida-gum -llog -ldl -lm -pthread -Wl,--gc-sections,-z,noexecstack,-z,relro,-z,now"
3-
mkdir build
4-
# 1.19.20.02 arm64-v8a
5-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_20_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.20.02-arm64.so
6-
# 1.19.21.01 arm64-v8a
7-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_21_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.21.01-arm64.so
8-
# 1.19.40.02 arm64-v8a
9-
# also compatible with 1.19.41.01 arm64-v8a
10-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_40_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.40.02-arm64.so
11-
# 1.19.51.01 arm64-v8a
12-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_51_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.51.01-arm64.so
13-
# 1.19.60.03 arm64-v8a
14-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_60_03 ./src/*.c -o ./build/libmaterialbinloader-1.19.60.03-arm64.so
15-
# 1.19.62.01 arm64-v8a
16-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_62_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.62.01-arm64.so
17-
# 1.19.63.01 arm64-v8a
18-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_63_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.63.01-arm64.so
19-
# 1.19.70.22 arm64-v8a
20-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_70_22 ./src/*.c -o ./build/libmaterialbinloader-1.19.70.22-arm64.so
21-
# 1.19.70.02 arm64-v8a
22-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_70_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.70.02-arm64.so
23-
# 1.19.71.02 arm64-v8a
24-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_71_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.71.02-arm64.so
25-
#:1.19.73.02 arm64-v8a
26-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_73_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.73.02-arm64.so
27-
# 1.19.80.02 arm64-v8a
28-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_80_02 ./src/*.c -o ./build/libmaterialbinloader-1.19.80.02-arm64.so
29-
# 1.19.81.01 arm64-v8a
30-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_81_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.81.01-arm64.so
31-
# 1.19.83.01 arm64-v8a
32-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_19_83_01 ./src/*.c -o ./build/libmaterialbinloader-1.19.83.01-arm64.so
33-
# 1.20.0.20 arm64-v8a
34-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_0_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.0.20-arm64.so
35-
# 1.20.0.01 arm64-v8a
36-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_0_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.0.01-arm64.so
37-
# 1.20.1.02 arm64-v8a
38-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_1_02 ./src/*.c -o ./build/libmaterialbinloader-1.20.1.02-arm64.so
39-
# 1.20.10.01 arm64-v8a
40-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_10_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.10.01-arm64.so
41-
# 1.20.12.01 arm64-v8a
42-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_12_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.12.01-arm64.so
43-
# 1.20.30.20 arm64-v8a
44-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_30_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.20-arm64.so
45-
# 1.20.30.21 arm64-v8a
46-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_30_21 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.21-arm64.so
47-
# 1.20.15.01 arm64-v8a
48-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_15_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.15.01-arm64.so
49-
# 1.20.30.22 arm64-v8a
50-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_30_22 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.22-arm64.so
51-
# 1.20.30.25 arm64-v8a
52-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_30_25 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.25-arm64.so
53-
# 1.20.40.20 arm64-v8a
54-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_40_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.20-arm64.so
55-
# 1.20.30.02 arm64-v8a
56-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_30_02 ./src/*.c -o ./build/libmaterialbinloader-1.20.30.02-arm64.so
57-
# 1.20.40.22 arm64-v8a
58-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_40_22 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.22-arm64.so
59-
# 1.20.31.01 arm64-v8a
60-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_31_01 ./src/*.c -o ./build/libmaterialbinloader-1.20.31.01-arm64.so
61-
# 1.20.32.03 arm64-v8a
62-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_32_03 ./src/*.c -o ./build/libmaterialbinloader-1.20.32.03-arm64.so
63-
# 1.20.40.24 arm64-v8a
64-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_40_24 ./src/*.c -o ./build/libmaterialbinloader-1.20.40.24-arm64.so
65-
# 1.20.50.20 arm64-v8a
66-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_50_20 ./src/*.c -o ./build/libmaterialbinloader-1.20.50.20-arm64.so
67-
# 1.20.50.21 arm64-v8a
68-
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $Flags -DV1_20_50_21 ./src/*.c -o ./build/libmaterialbinloader-1.20.50.21-arm64.so
2+
3+
# usage:
4+
# ./build.sh
5+
# ./build.sh -v 1.20.40.22 1.20.50.21
6+
7+
CLANG_OPTS_ARM64="-target aarch64-linux-android21 -shared -s -O2 -fPIC -Wno-void-pointer-to-enum-cast -DANDROID -ffunction-sections -fdata-sections -I./frida/arm64/include -L./frida/arm64/lib -lfrida-gum -llog -ldl -lm -pthread -Wl,--gc-sections,-z,noexecstack,-z,relro,-z,now"
8+
9+
# arm64-v8a
10+
VERSIONS_ARM64=(
11+
"1.19.20.02"
12+
"1.19.21.01"
13+
"1.19.40.02" # also compatible with 1.19.41.01
14+
"1.19.51.01"
15+
"1.19.60.03"
16+
"1.19.62.01"
17+
"1.19.63.01"
18+
"1.19.70.22"
19+
"1.19.70.02"
20+
"1.19.71.02"
21+
"1.19.73.02"
22+
"1.19.80.02"
23+
"1.19.81.01"
24+
"1.19.83.01"
25+
"1.20.0.20"
26+
"1.20.0.01"
27+
"1.20.1.02"
28+
"1.20.10.01"
29+
"1.20.12.01"
30+
"1.20.30.20"
31+
"1.20.30.21"
32+
"1.20.15.01"
33+
"1.20.30.22"
34+
"1.20.30.25"
35+
"1.20.40.20"
36+
"1.20.30.02"
37+
"1.20.40.22"
38+
"1.20.31.01"
39+
"1.20.32.03"
40+
"1.20.40.24"
41+
"1.20.50.20"
42+
"1.20.50.21"
43+
)
44+
45+
VERSIONS_ARM64=${VERSIONS_ARM64[@]}
46+
47+
ARG_MODE=""
48+
for t in "$@"; do
49+
if [ "$t" == "-v" ]; then
50+
ARG_MODE="v"
51+
VERSIONS_ARM64=""
52+
elif [ "$ARG_MODE" == "v" ]; then
53+
VERSIONS_ARM64+="$t"
54+
fi
55+
shift
56+
done
57+
58+
mkdir -p build
59+
60+
for v in $VERSIONS_ARM64; do
61+
echo "libmaterialbinloader-$v-arm64.so"
62+
DFLAG=${v//./_}
63+
$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/clang $CLANG_OPTS_ARM64 -DV$DFLAG ./src/*.c -o ./build/libmaterialbinloader-$v-arm64.so
64+
done

0 commit comments

Comments
 (0)