Skip to content

Remove option to build with external startup data, and tools builds - #2

Merged
NathanWalker merged 3 commits into
NativeScript:android_arm64from
ptomato:android_arm64
May 4, 2023
Merged

Remove option to build with external startup data, and tools builds#2
NathanWalker merged 3 commits into
NativeScript:android_arm64from
ptomato:android_arm64

Conversation

@ptomato

@ptomato ptomato commented Apr 19, 2023

Copy link
Copy Markdown
Collaborator

As per NativeScript/NativeScript#8926, it's no longer necessary to support configuring V8 with support for external startup data. We can set this option to always be false. With no external startup data, we also don't need to export the mksnapshot tool, as it will now only be used internally by V8 during the build.

It seems that we don't need mkcodecache either, although I'm not 100% sure about this — please let me know if it is used for something.

If we need neither of mksnapshot and mkcodecache, then we don't need a tools-only build either.

If accepted, the commits in this PR should be cherry-picked to the other branches — at least the other 3 Android branches, though I don't think it could hurt to port them to the iOS branches as well. Let me know if I should open separate PRs for this.

ptomato added 2 commits April 19, 2023 12:32
The automatic exportation of environment variables based on the config key
in package.json was removed in later versions of Node.js. Here, we
manually set the environment variable if it's not automatically set.
Ninja is a prerequisite for the build. On Ubuntu install it with apt-get,
and on GitHub's macOS Docker image it needs to come from Homebrew.
This makes V8 always build with v8_use_external_startup_data=false.
Since that was previously controlled by the EXTERNAL_STARTUP_DATA
variable, we can remove that variable. If we're not using external startup
heap snapshots, we also don't need to export mksnapshot and mkcodecache;
they are now only used internally by the V8 build. This also makes a
TOOLS_ONLY build and therefore a tools_macos_android build obsolete.

Summary:
- Remove EXTERNAL_STARTUP_DATA
- Remove TOOLS_ONLY
- Remove MKSNAPSHOT_ONLY
- Remove MKCODECACHE_ONLY
- Remove patch to allow monolithic build with external startup data
- Remove patch to export mkcodecache
- Remove tools_macos_android workflow
@ptomato

ptomato commented Apr 19, 2023

Copy link
Copy Markdown
Collaborator Author

Updated: Removed some additional things I found, that were related to macos_tools builds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants