A standalone version of the GN "//build" toolchains and configurations.
This repo is drawn from the Chromium project at git revision a877c035d7, and removed some code coupled with the Chromium project to make it work standalone.
The main purpose of starting this project is to use the perfect iOS/macOS template such as
ios_framework_bundle
,mac_framework_bundle
, and tons of well-tested default toolchain configurations such as cxxflags, ldflags.
Core GN templates and configuration and core Python build scripts.
//build/config
- Common templates via.gni
files.//build/toolchain
- GN toolchain definitions.Other .py files
- Some are used by GN/Ninja. Some by gclient hooks, some are just random utilities.
Clone Google's official GN repository https://gn.googlesource.com/gn/,
which contains a few simple example projects to help you quickly get started with GN.
-
Templates
-
ios_framework_bundle
, supports build complete code signed framework for device, simulator, mac-catalyst. -
mac_framework_bundle
, supports build complete mac framework which contains "Headers" and "Modules".
-
-
Toolchains
-
Default use local Xcode clang toolchains for building iOS/macOS library.
-
Default use local Android NDK toolchains for building Android native library. (Need to set
android_ndk_root
andandroid_ndk_version
args withgn gen --args
) -
Default use local Visual Studio MSVC toolchains for building Windows library.
-