compile natpmp from their official github repo

This commit is contained in:
eventlOwOp
2024-05-11 13:33:04 +08:00
parent bbf54bb90e
commit 981997b9a7
7 changed files with 20 additions and 247 deletions
+20 -4
View File
@@ -36,6 +36,12 @@ jobs:
repository: zerotier/ZeroTierOne
path: ZeroTierOne
- name: Checkout libnatpmp
uses: actions/checkout@v4
with:
repository: miniupnp/libnatpmp
path: libnatpmp
# Runs a single command using the runners shell
- name: Prepare NDK Toolchain
run: |
@@ -45,14 +51,19 @@ jobs:
- name: Build for aarch64
run: |
PATH=`pwd`/android-ndk-$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH
PATH=`pwd`/libnatpmp:$PATH
NDK_ROOT=`pwd`/android-ndk-$ndk/toolchains/llvm/prebuilt/linux-x86_64
CC=aarch64-linux-android$api_version-clang
CXX=aarch64-linux-android$api_version-clang++
cd libnatpmp
make CC=$CC natpmpc-shared
cd ..
# "-D__GLIBC__=0" is a bypass, see zerotier/ZeroTierOne#2289
cd ZeroTierOne
make -j $(nproc) ZT_DEBUG=0 ZT_SSO_SUPPORTED=0 CC=$CC CXX=$CXX LDFLAGS="-L../deps/aarch64" DEFS="-I../deps/include -D__GLIBC__=0"
make -j $(nproc) ZT_DEBUG=0 ZT_SSO_SUPPORTED=0 CC=$CC CXX=$CXX DEFS="-D__GLIBC__=0"
cd ..
mkdir -p magisk/zerotier/lib
@@ -61,18 +72,23 @@ jobs:
cd magisk
zip -q -r ../zerotier-magisk-aarch64.zip .
make clean
- name: Build for arm
run: |
PATH=`pwd`/android-ndk-$ndk/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH
PATH=`pwd`/libnatpmp:$PATH
NDK_ROOT=`pwd`/android-ndk-$ndk/toolchains/llvm/prebuilt/linux-x86_64
CC=armv7a-linux-androideabi$api_version-clang
CXX=armv7a-linux-androideabi$api_version-clang++
cd libnatpmp
make clean
make CC=$CC natpmpc-shared
cd ..
cd ZeroTierOne
make -j $(nproc) ZT_DEBUG=0 ZT_SSO_SUPPORTED=0 CC=$CC CXX=$CXX LDFLAGS="-L../deps/arm" DEFS="-I../deps/include -D__GLIBC__=0"
make clean
make -j $(nproc) ZT_DEBUG=0 ZT_SSO_SUPPORTED=0 CC=$CC CXX=$CXX DEFS="-D__GLIBC__=0"
cd ..
cp ZeroTierOne/zerotier-one magisk/zerotier/