Skip to content

Enable NAPI-JSI build on top of V8JSI#832

Merged
rgerd merged 9 commits intoBabylonJS:masterfrom
rgerd:v8jsi
Jul 23, 2021
Merged

Enable NAPI-JSI build on top of V8JSI#832
rgerd merged 9 commits intoBabylonJS:masterfrom
rgerd:v8jsi

Conversation

@rgerd
Copy link
Copy Markdown
Contributor

@rgerd rgerd commented Jul 19, 2021

Adding support for building on JSI will let us test our changes before pushing them to BabylonReactNative. A follow-up PR will enable CI validation testing for the JSI build.

  • Added a JSI target for Win32 + UWP by pulling in the V8JSI NuGet package.
  • Cleaned up some CMake logic for pulling in NuGet packages and including NAPI artifacts.
  • Fixed a couple inconsistencies between napi-direct and napi-jsi at the contract layer which were blocking compilation, for example Console was using a version of Napi::Function::Call only available on napi-direct.
  • Added Chrome DevTools support on UWP (including on HoloLens!)

Thanks to @bghgary for helping me whip up the POC minutes before his vacation.
fixes #828

Copy link
Copy Markdown
Contributor

@bghgary bghgary left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Main issue is the change to N-API contract.

Comment thread Apps/Playground/Win32/App.cpp Outdated
Comment thread Core/AppRuntime/Source/AppRuntimeJSI.cpp
Comment thread Core/AppRuntime/Source/AppRuntimeJSI.cpp Outdated
Comment thread Dependencies/napi/OnLinkedAsDependency.cmake Outdated
Comment thread Dependencies/CMakeExtensions/CMakeLists.txt Outdated
Comment thread Dependencies/napi/napi-jsi/include/napi/napi-inl.h Outdated
Comment thread Dependencies/napi/napi-jsi/include/napi/napi.h Outdated
Comment thread Dependencies/napi/napi-jsi/source/jsi.cpp Outdated
Comment thread Plugins/ChromeDevTools/CMakeLists.txt
Comment thread Plugins/NativeCamera/Source/NativeCamera.cpp Outdated
Comment thread Dependencies/napi/napi-jsi/include/napi/napi.h Outdated
@rgerd rgerd enabled auto-merge (squash) July 23, 2021 22:47
@rgerd rgerd merged commit e15094d into BabylonJS:master Jul 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a NAPI-JSI build to pre-test Babylon React Native

2 participants