Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove xr/camera build targets for basekit #605

Merged
merged 13 commits into from
Sep 28, 2023
41 changes: 23 additions & 18 deletions .github/workflows/publish_preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,14 @@ on:
default: 1.0.0
NPM_tag:
description: 'NPM Tag'
required: true
required: true
type: string
default: preview
NPM_publish_arg:
description: 'NPM Publish arg'
required: false
type: string
default: --dry-run

jobs:
build-android-ios-064:
Expand Down Expand Up @@ -186,79 +191,79 @@ jobs:
- name: Version & Publish Package @babylonjs/react-native
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-64
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-iOSAndroid0.64
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-65
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-iOSAndroid0.65
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-69
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-iOSAndroid0.69
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-70
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-iOSAndroid0.70
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-iosandroid-0-71
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-iOSAndroid0.71
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

- name: Version & Publish Package @babylonjs/react-native-windows-0-64
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-Windows0.64
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-windows-0-65
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-Windows0.65
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-windows-0-69
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-Windows0.69
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-windows-0-70
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-Windows0.70
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-windows-0-71
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-Windows0.71
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
Expand All @@ -267,42 +272,42 @@ jobs:
- name: Version & Publish Package @babylonjs/react-native-basekit-iosandroid-0-69
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-iOSAndroid0.69
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-basekit-iosandroid-0-70
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-iOSAndroid0.70
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-basekit-iosandroid-0-71
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-iOSAndroid0.71
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-basekit-windows-0-69
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-Windows0.69
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-basekit-windows-0-70
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-Windows0.70
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Version & Publish Package @babylonjs/react-native-basekit-windows-0-71
run: |
npm version --no-git-tag-version ${{ github.event.inputs.release_version }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }}
npm publish --access public --tag ${{ github.event.inputs.NPM_tag }} ${{ github.event.inputs.NPM_publish_arg }}
working-directory: ./Package/Assembled-BaseKit-Windows0.71
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
58 changes: 58 additions & 0 deletions .github/workflows/testVersion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,64 @@ jobs:
name: 'iOSApp'
path: Playground/ios/playgroundSimulator.xcarchive


build-android-basekit:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
- name: Build Playground Android
run: |
npm uninstall -g react-native-cli @react-native-community/cli
npx react-native init Playground --version "${{ github.event.inputs.RN_Version }}" --verbose
cp Apps/Playground/playground-shared/App.tsx ./Playground/App.tsx
cd Playground
npm install @babylonjs/core@${{ github.event.inputs.BJS_Version }}
npm install @babylonjs/loaders@${{ github.event.inputs.BJS_Version }}
npm install @babylonjs/react-native@${{ github.event.inputs.BRN_Version }}
npm install @babylonjs/react-native-basekit-iosandroid-${{ github.event.inputs.BRN_Postfix }}@${{ github.event.inputs.BRN_Version }}
npm install @react-native-community/slider
cd android
./gradlew app:assembleRelease --stacktrace --info
- name: Upload APK
uses: actions/upload-artifact@v2
with:
name: 'AndroidBasekitAPK'
path: Playground/android/app/build/outputs/apk/release/app-release.apk

build-ios-basekit:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
- name: Clone iOS Toolchain
run: |
git clone https://github.com/leetal/ios-cmake.git
- name: Build Playground iOS
run: |
brew install node
brew install watchman
npm uninstall -g react-native-cli @react-native-community/cli
npx react-native init Playground --version "${{ github.event.inputs.RN_Version }}" --verbose --skip-install
cp Apps/Playground/playground-shared/App.tsx ./Playground/App.tsx
cd Playground
yarn install
npm install @babylonjs/core@${{ github.event.inputs.BJS_Version }}
npm install @babylonjs/loaders@${{ github.event.inputs.BJS_Version }}
npm install @babylonjs/react-native@${{ github.event.inputs.BRN_Version }}
npm install @babylonjs/react-native-basekit-iosandroid-${{ github.event.inputs.BRN_Postfix }}@${{ github.event.inputs.BRN_Version }}
npm install @react-native-community/slider
cd ios
pod install
#xcodebuild -sdk iphoneos -configuration Release -workspace Playground.xcworkspace -scheme Playground build CODE_SIGNING_ALLOWED=NO
xcodebuild -sdk iphonesimulator -arch x86_64 -configuration Release -workspace Playground.xcworkspace -scheme Playground build CODE_SIGNING_ALLOWED=NO -archivePath ./playgroundSimulator.xcarchive archive
- name: Upload iOS App
uses: actions/upload-artifact@v2
with:
name: 'iOSBasekitApp'
path: Playground/ios/playgroundSimulator.xcarchive
# test jobs not working
# test-android:
# needs: [build-android]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,9 @@ add_library(BabylonNative SHARED
${SHARED_SOURCES})

if (${BASEKIT_BUILD})
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD)
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD=1)
else()
set(ADDITIONAL_LIBRARIES NativeXr NativeCamera)
endif()

set(TURBOMODULE_DIR "${REACTNATIVE_DIR_CMAKE}/ReactAndroid/src/main/jni/react/turbomodule/")
Expand Down Expand Up @@ -139,16 +141,15 @@ if (EXISTS "${TURBOMODULE_DIR}/CMakeLists.txt")
AndroidExtensions
GraphicsDevice
JsRuntime
NativeCamera
NativeCapture
NativeEngine
NativeInput
NativeOptimizations
NativeTracing
NativeXr
Window
XMLHttpRequest
Canvas)
Canvas
${ADDITIONAL_LIBRARIES})

# We use an interface target to propagate flags to all the generated targets
# such as the folly flags or others.
Expand Down Expand Up @@ -201,14 +202,13 @@ else()
AndroidExtensions
GraphicsDevice
JsRuntime
NativeCamera
NativeCapture
NativeEngine
NativeInput
NativeOptimizations
NativeTracing
NativeXr
Window
XMLHttpRequest
Canvas)
Canvas
${ADDITIONAL_LIBRARIES})
endif()
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
#include <Babylon/JsRuntime.h>
#include <Babylon/Plugins/NativeEngine.h>
#include <Babylon/Plugins/NativeInput.h>
#include <Babylon/Plugins/NativeXr.h>
#include <Babylon/Polyfills/Window.h>
#include <Babylon/Polyfills/XMLHttpRequest.h>

Expand Down
9 changes: 5 additions & 4 deletions Modules/@babylonjs/react-native-iosandroid/ios/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ add_library(BabylonNative
${SHARED_SOURCES})

if (${BASEKIT_BUILD})
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD)
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD=1)
else()
set(ADDITIONAL_LIBRARIES NativeXr NativeCamera)
endif()

target_include_directories(BabylonNative PRIVATE ${SHARED_INCLUDES})
Expand All @@ -50,16 +52,15 @@ target_link_libraries(BabylonNative
jsi
reactnative
JsRuntime
NativeCamera
NativeCapture
NativeEngine
NativeInput
NativeOptimizations
NativeTracing
NativeXr
Window
XMLHttpRequest
Canvas)
Canvas
${ADDITIONAL_LIBRARIES})

# TODO: For some reason these don't work, so we specify these in the CMake command line args.
set_target_properties(BabylonNative PROPERTIES
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ add_library(BabylonNative
${SHARED_SOURCES})

if (${BASEKIT_BUILD})
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD)
target_compile_definitions(BabylonNative PRIVATE BASEKIT_BUILD=1)
else()
set(ADDITIONAL_LIBRARIES NativeXr NativeCamera)
endif()

target_include_directories(BabylonNative PRIVATE ${SHARED_INCLUDES})
Expand All @@ -37,13 +39,12 @@ target_link_libraries(BabylonNative
GraphicsDevice
jsi
JsRuntime
NativeCamera
NativeCapture
NativeEngine
NativeInput
NativeOptimizations
NativeTracing
NativeXr
Window
XMLHttpRequest
Canvas)
Canvas
${ADDITIONAL_LIBRARIES})
7 changes: 6 additions & 1 deletion Modules/@babylonjs/react-native/shared/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,9 @@ set(SHARED_INCLUDES
set(SHARED_SOURCES
"${CMAKE_CURRENT_LIST_DIR}/DispatchFunction.h"
"${CMAKE_CURRENT_LIST_DIR}/BabylonNative.h"
"${CMAKE_CURRENT_LIST_DIR}/BabylonNative.cpp")
"${CMAKE_CURRENT_LIST_DIR}/BabylonNative.cpp")

if (${BASEKIT_BUILD})
set(BABYLON_NATIVE_PLUGIN_NATIVEXR OFF CACHE BOOL "")
set(BABYLON_NATIVE_PLUGIN_NATIVECAMERA OFF CACHE BOOL "")
endif()
Loading