mirror of
https://github.com/tribufu/tribufu-java
synced 2026-05-06 14:57:27 +00:00
Migrate Package Script to Python
This commit is contained in:
parent
6dda82b593
commit
1de31a1fee
2 changed files with 91 additions and 38 deletions
|
|
@ -1,40 +1,10 @@
|
|||
#!/usr/bin/env pwsh
|
||||
|
||||
echo "Building Native Library"
|
||||
|
||||
cargo build --release
|
||||
|
||||
echo "Building JVM Library"
|
||||
|
||||
./gradlew :library:build
|
||||
./gradlew :library:jar
|
||||
|
||||
New-Item -Path "./Release" -ItemType Directory -Force
|
||||
New-Item -Path "./Release/Windows" -ItemType Directory -Force
|
||||
New-Item -Path "./Release/Mac" -ItemType Directory -Force
|
||||
New-Item -Path "./Release/Linux" -ItemType Directory -Force
|
||||
|
||||
Copy-Item -Path "./library/build/libs/library-0.0.1.jar" -Destination "./Release/TribuFu.jar" -Recurse -Force
|
||||
Copy-Item -Path "./Binaries/release/TribuFu_Jvm.dll" -Destination "./Release/Windows/TribuFu_Jvm.dll" -Recurse -Force
|
||||
|
||||
echo "Building Android Library"
|
||||
|
||||
cargo ndk -t armeabi-v7a -t arm64-v8a -t x86 -t x86_64 build --release
|
||||
|
||||
New-Item -Path "./android/src/main/jniLibs" -ItemType Directory -Force
|
||||
New-Item -Path "./android/src/main/jniLibs/arm64-v8a" -ItemType Directory -Force
|
||||
New-Item -Path "./android/src/main/jniLibs/armeabi-v7a" -ItemType Directory -Force
|
||||
New-Item -Path "./android/src/main/jniLibs/x86_64" -ItemType Directory -Force
|
||||
New-Item -Path "./android/src/main/jniLibs/x86" -ItemType Directory -Force
|
||||
|
||||
Copy-Item -Path "./Binaries/aarch64-linux-android/release/libTribuFu_Jvm.so" -Destination "./android/src/main/jniLibs/arm64-v8a/libTribuFu_Jvm.so" -Recurse -Force
|
||||
Copy-Item -Path "./Binaries/armv7-linux-androideabi/release/libTribuFu_Jvm.so" -Destination "./android/src/main/jniLibs/armeabi-v7a/libTribuFu_Jvm.so" -Recurse -Force
|
||||
Copy-Item -Path "./Binaries/x86_64-linux-android/release/libTribuFu_Jvm.so" -Destination "./android/src/main/jniLibs/x86_64/libTribuFu_Jvm.so" -Recurse -Force
|
||||
Copy-Item -Path "./Binaries/i686-linux-android/release/libTribuFu_Jvm.so" -Destination "./android/src/main/jniLibs/x86/libTribuFu_Jvm.so" -Recurse -Force
|
||||
|
||||
New-Item -Path "./android/libs" -ItemType Directory -Force
|
||||
Copy-Item -Path "./Release/TribuFu.jar" -Destination "./android/libs/TribuFu.jar" -Recurse -Force
|
||||
|
||||
./gradlew :android:build
|
||||
|
||||
Copy-Item -Path "./android/build/outputs/aar/android-release.aar" -Destination "./Release/TribuFu.aar" -Recurse -Force
|
||||
if ($IsWindows)
|
||||
{
|
||||
python ./Scripts/Package.py
|
||||
}
|
||||
else
|
||||
{
|
||||
python3 ./Scripts/Package.py
|
||||
}
|
||||
|
|
|
|||
83
Scripts/Package.py
Normal file
83
Scripts/Package.py
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import os
|
||||
import subprocess
|
||||
import platform
|
||||
import shutil
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
Path("./Release").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
if os.path.exists("./Release/Windows"):
|
||||
shutil.rmtree("./Release/Windows")
|
||||
|
||||
Path("./Release/Windows").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
if os.path.exists("./Release/Mac"):
|
||||
shutil.rmtree("./Release/Mac")
|
||||
|
||||
Path("./Release/Mac").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
if os.path.exists("./Release/Linux"):
|
||||
shutil.rmtree("./Release/Linux")
|
||||
|
||||
Path("./Release/Linux").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
print("Building Native Library")
|
||||
|
||||
os.system("cargo build --release")
|
||||
|
||||
# Windows
|
||||
|
||||
if platform.system() == "Windows":
|
||||
shutil.copy2("./Binaries/release/TribuFu_Jvm.dll", "./Release/Windows/TribuFu_Jvm.dll")
|
||||
|
||||
# Mac
|
||||
|
||||
elif platform.system() == "Mac":
|
||||
shutil.copy2("./Binaries/release/libTribuFu_Jvm.dylib", "./Release/Windows/libTribuFu_Jvm.dylib")
|
||||
|
||||
# Linux
|
||||
|
||||
elif platform.system() == "Linux":
|
||||
shutil.copy2("./Binaries/release/libTribuFu_Jvm.so", "./Release/Windows/libTribuFu_Jvm.so")
|
||||
|
||||
# Android
|
||||
|
||||
os.system("cargo ndk -t armeabi-v7a -t arm64-v8a -t x86 -t x86_64 build --release")
|
||||
|
||||
Path("./android/src/main/jniLibs").mkdir(parents=True, exist_ok=True)
|
||||
Path("./android/src/main/jniLibs/arm64-v8a").mkdir(parents=True, exist_ok=True)
|
||||
Path("./android/src/main/jniLibs/armeabi-v7a").mkdir(parents=True, exist_ok=True)
|
||||
Path("./android/src/main/jniLibs/x86_64").mkdir(parents=True, exist_ok=True)
|
||||
Path("./android/src/main/jniLibs/x86").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
shutil.copy2("./Binaries/aarch64-linux-android/release/libTribuFu_Jvm.so", "./android/src/main/jniLibs/arm64-v8a/libTribuFu_Jvm.so")
|
||||
shutil.copy2("./Binaries/armv7-linux-androideabi/release/libTribuFu_Jvm.so", "./android/src/main/jniLibs/armeabi-v7a/libTribuFu_Jvm.so" )
|
||||
shutil.copy2("./Binaries/x86_64-linux-android/release/libTribuFu_Jvm.so", "./android/src/main/jniLibs/x86_64/libTribuFu_Jvm.so")
|
||||
shutil.copy2("./Binaries/i686-linux-android/release/libTribuFu_Jvm.so", "./android/src/main/jniLibs/x86/libTribuFu_Jvm.so")
|
||||
|
||||
print("Building JVM Library")
|
||||
|
||||
if platform.system() == "Windows":
|
||||
subprocess.run("gradlew.bat :library:build")
|
||||
subprocess.run("gradlew.bat :library:jar")
|
||||
else:
|
||||
subprocess.run("./gradlew :library:build")
|
||||
subprocess.run("./gradlew :library:jar")
|
||||
|
||||
shutil.copy2("./library/build/libs/library-0.0.1.jar", "./Release/TribuFu.jar")
|
||||
|
||||
print("Building Android Library")
|
||||
|
||||
Path("./android/libs").mkdir(parents=True, exist_ok=True)
|
||||
|
||||
shutil.copy2("./Release/TribuFu.jar", "./android/libs/TribuFu.jar")
|
||||
|
||||
if platform.system() == "Windows":
|
||||
subprocess.run("gradlew.bat :android:build")
|
||||
else:
|
||||
subprocess.run("./gradlew :android:build")
|
||||
|
||||
shutil.copy2("./android/build/outputs/aar/android-release.aar", "./Release/TribuFu.aar")
|
||||
Loading…
Add table
Add a link
Reference in a new issue