{"id":15018513,"url":"https://github.com/nativescript/android-v8","last_synced_at":"2025-10-19T16:31:10.794Z","repository":{"id":25701561,"uuid":"29138021","full_name":"NativeScript/android-v8","owner":"NativeScript","description":"Contains the Google's V8 build used in android runtime.","archived":false,"fork":false,"pushed_at":"2021-12-17T15:57:25.000Z","size":39384,"stargazers_count":56,"open_issues_count":1,"forks_count":14,"subscribers_count":30,"default_branch":"master","last_synced_at":"2024-10-29T15:51:55.345Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NativeScript.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-12T14:02:21.000Z","updated_at":"2024-03-16T01:10:05.000Z","dependencies_parsed_at":"2022-08-24T14:12:54.711Z","dependency_job_id":null,"html_url":"https://github.com/NativeScript/android-v8","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NativeScript%2Fandroid-v8","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NativeScript%2Fandroid-v8/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NativeScript%2Fandroid-v8/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NativeScript%2Fandroid-v8/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NativeScript","download_url":"https://codeload.github.com/NativeScript/android-v8/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237163250,"owners_count":19265237,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-24T19:52:03.567Z","updated_at":"2025-10-19T16:31:05.476Z","avatar_url":"https://github.com/NativeScript.png","language":"Shell","readme":"# android-v8\nContains the Google's V8 build used in android runtime.\n\n### How to build (linux)\n\n* get depot tools [more](https://www.chromium.org/developers/how-tos/install-depot-tools) :\n```\ngit clone https://chromium.googlesource.com/chromium/tools/depot_tools.git\n\nexport PATH=`pwd`/depot_tools:\"$PATH\"\n```\n\n* Make sure you have these packages installed (Linux only)\n```\nsudo apt-get install curl libc6-dev-i386 g++-multilib\n```\n\n* Download and extract Android NDK r22b\n\nLinux:\n```\ncurl -O https://dl.google.com/android/repository/android-ndk-r22b-linux-x86_64.zip\nunzip android-ndk-r22b-linux-x86_64.zip -d ndkr22b\n```\n\n* Export ANDROID_NDK_HOME environment variable\n```\nexport ANDROID_NDK_HOME=`pwd`/ndkr22b/android-ndk-r22b\n```\n\n* `fetch v8` (this will create a `v8` repo folder and add a `.gclient` file)\n\n* Add `target_os` to the `.gclient` file:\n\nThis will ensure that the required build dependencies are fetched by depot_tools\n\n```\nsolutions = [\n  {\n    \"url\": \"https://chromium.googlesource.com/v8/v8.git\",\n    \"managed\": False,\n    \"name\": \"v8\",\n    \"deps_file\": \"DEPS\",\n    \"custom_deps\": {},\n  },\n]\ntarget_os = ['android']\n```\n\n* checkout tag 9.7.106.13\n```\ncd v8\ngit checkout 9.7.106.13\n```\n\n* Run sync\n```\ngclient sync\n```\n\n* Create symlinks\n```\ncp third_party/android_ndk/BUILD.gn $ANDROID_NDK_HOME\nrm -rf third_party/android_tools third_party/android_ndk\nmkdir third_party/android_tools\nln -s $ANDROID_NDK_HOME third_party/android_tools/ndk\nln -s $ANDROID_NDK_HOME third_party/android_ndk\n```\n\n* Apply patch running the following command\n```\ncd ..\n./apply_patch.sh\n```\n\n* run the following command in the root folder command\n```\ncd ..\n./build.sh\n```\n\u003e you can run: `../build_v8 debug` if you want to build v8 in debug, by default it's built in release.\n\n### Outputs\n\nThe output folder is called `dist` and it's created at `v8` root level.\n\n### HOW TO CREATE A NEW PATCH file\n\ngit diff --cached \u003e patch.diff\n\n### What to do next\n\n* Copy the files from the **v8/dist** folder in the corresponding folder in [android-runtime](https://github.com/NativeScript/android-runtime/tree/master/test-app/runtime/src/main/libs)\n* Copy the files from the **v8/buildtools/third_party/libc++/trunk/include** (libc++) into [android-runtime/test-app/runtime/src/main/cpp/include/libc++](https://github.com/NativeScript/android-runtime/tree/master/test-app/runtime/src/main/cpp/include/libc++)\n* Update the **v8-versions.json** file in the [android-runtime root folder](https://github.com/NativeScript/android-runtime/blob/master/v8-versions.json)\n* Update the **settings.json** file in [android-runtime/build-artifacts/project-template-gradle](https://github.com/NativeScript/android-runtime/tree/master/build-artifacts/project-template-gradle/settings.json)\n* Replace all the needed header and inspector files in the repo. The following [article](https://github.com/NativeScript/android-runtime/blob/master/docs/extending-inspector.md) might be helpful\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnativescript%2Fandroid-v8","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnativescript%2Fandroid-v8","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnativescript%2Fandroid-v8/lists"}