This commit is contained in:
blueloveTH 2025-10-22 13:02:36 +08:00
parent 4582c3075c
commit 2e99fbcd97
5 changed files with 56 additions and 17 deletions

View File

@ -102,7 +102,7 @@ jobs:
run: python scripts/run_tests.py benchmark run: python scripts/run_tests.py benchmark
- name: Test Amalgamated Build - name: Test Amalgamated Build
run: python amalgamate.py run: python amalgamate.py
build_android: build_android_libs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -116,9 +116,9 @@ jobs:
add-to-path: false add-to-path: false
- name: Compile Shared Library - name: Compile Shared Library
run: | run: |
bash build_android.sh arm64-v8a bash build_android_libs.sh arm64-v8a
bash build_android.sh armeabi-v7a bash build_android_libs.sh armeabi-v7a
bash build_android.sh x86_64 bash build_android_libs.sh x86_64
mkdir -p output/arm64-v8a mkdir -p output/arm64-v8a
mkdir -p output/armeabi-v7a mkdir -p output/armeabi-v7a
@ -133,7 +133,7 @@ jobs:
with: with:
name: android name: android
path: output path: output
build_ios: build_darwin_libs:
runs-on: macos-latest runs-on: macos-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -141,8 +141,22 @@ jobs:
submodules: recursive submodules: recursive
- name: Compile Frameworks - name: Compile Frameworks
run: | run: |
git clone https://github.com/leetal/ios-cmake --depth 1 ~/ios-cmake bash build_darwin_libs.sh
bash build_ios.sh mkdir -p output
cp build/Release/libpocketpy.a output/libpocketpy.a
- uses: actions/upload-artifact@v4
with:
name: darwin
path: output
build_ios_libs:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Compile Frameworks
run: |
bash build_ios_libs.sh
mkdir -p output mkdir -p output
cp -r build/pocketpy.xcframework output/pocketpy.xcframework cp -r build/pocketpy.xcframework output/pocketpy.xcframework
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
@ -175,7 +189,7 @@ jobs:
merge: merge:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [ build_win32, build_linux, build_darwin, build_android, build_ios ] needs: [ build_win32, build_linux, build_darwin, build_android_libs, build_darwin_libs, build_ios_libs ]
steps: steps:
- name: "Create output directory" - name: "Create output directory"
run: "mkdir $GITHUB_WORKSPACE/output" run: "mkdir $GITHUB_WORKSPACE/output"
@ -192,18 +206,18 @@ jobs:
name: linux name: linux
path: $GITHUB_WORKSPACE/output/linux path: $GITHUB_WORKSPACE/output/linux
# - name: "Merge darwin"
# uses: actions/download-artifact@v4.1.7
# with:
# name: macos
# path: $GITHUB_WORKSPACE/output/macos
- name: "Merge android" - name: "Merge android"
uses: actions/download-artifact@v4.1.7 uses: actions/download-artifact@v4.1.7
with: with:
name: android name: android
path: $GITHUB_WORKSPACE/output/android path: $GITHUB_WORKSPACE/output/android
- name: "Merge darwin"
uses: actions/download-artifact@v4.1.7
with:
name: darwin
path: $GITHUB_WORKSPACE/output/darwin
- name: "Merge ios" - name: "Merge ios"
uses: actions/download-artifact@v4.1.7 uses: actions/download-artifact@v4.1.7
with: with:

View File

@ -15,8 +15,9 @@ cmake \
../../.. \ ../../.. \
-DPK_BUILD_SHARED_LIB=ON \ -DPK_BUILD_SHARED_LIB=ON \
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DPK_ENABLE_OS=OFF \
-DPK_ENABLE_DETERMINISM=ON \
-DPK_BUILD_MODULE_LZ4=ON \ -DPK_BUILD_MODULE_LZ4=ON \
-DPK_BUILD_MODULE_LIBHV=ON \ -DPK_BUILD_MODULE_CUTE_PNG=ON
-DPK_BUILD_CUTE_PNG=ON
cmake --build . --config Release cmake --build . --config Release

17
build_darwin_libs.sh Normal file
View File

@ -0,0 +1,17 @@
set -e
python amalgamate.py
rm -rf build
mkdir build
cd build
FLAGS="-DPK_BUILD_STATIC_LIB=ON \
-DPK_ENABLE_OS=OFF \
-DPK_ENABLE_DETERMINISM=ON \
-DPK_BUILD_MODULE_LZ4=ON \
-DPK_BUILD_MODULE_CUTE_PNG=ON \
"
cmake -G Xcode $FLAGS ..
cmake --build . --config Release

View File

@ -8,7 +8,12 @@ cd build
FLAGS="-DCMAKE_TOOLCHAIN_FILE=3rd/ios.toolchain.cmake \ FLAGS="-DCMAKE_TOOLCHAIN_FILE=3rd/ios.toolchain.cmake \
-DDEPLOYMENT_TARGET=13.0 \ -DDEPLOYMENT_TARGET=13.0 \
-DPK_BUILD_STATIC_LIB=ON" -DPK_BUILD_STATIC_LIB=ON \
-DPK_ENABLE_OS=OFF \
-DPK_ENABLE_DETERMINISM=ON \
-DPK_BUILD_MODULE_LZ4=ON \
-DPK_BUILD_MODULE_CUTE_PNG=ON \
"
cmake -B os64 -G Xcode $FLAGS -DPLATFORM=OS64 .. cmake -B os64 -G Xcode $FLAGS -DPLATFORM=OS64 ..
cmake --build os64 --config Release cmake --build os64 --config Release

View File

@ -19,6 +19,8 @@ FetchContent_Declare(
set(PK_ENABLE_OS OFF CACHE BOOL "" FORCE) set(PK_ENABLE_OS OFF CACHE BOOL "" FORCE)
set(PK_ENABLE_DETERMINISM ON CACHE BOOL "" FORCE) set(PK_ENABLE_DETERMINISM ON CACHE BOOL "" FORCE)
set(PK_BUILD_MODULE_LZ4 ON CACHE BOOL "" FORCE)
set(PK_BUILD_MODULE_CUTE_PNG ON CACHE BOOL "" FORCE)
set(PK_BUILD_SHARED_LIB ON CACHE BOOL "" FORCE) set(PK_BUILD_SHARED_LIB ON CACHE BOOL "" FORCE)
set_target_properties(pocketpy PROPERTIES set_target_properties(pocketpy PROPERTIES