зеркало из https://github.com/mozilla/gecko-dev.git
dc5a07f0b1
Backed out changeset e836c26855d4 (bug 1755415) Backed out changeset 69d9d8005a83 (bug 1755415) Backed out changeset a84913234c63 (bug 1755415) Backed out changeset 709af6e17057 (bug 1755415) Backed out changeset 0a5c1fe00f26 (bug 1755415) |
||
---|---|---|
.. | ||
1stage.json | ||
2stages.json | ||
4stages-pgo.json | ||
README | ||
Remove-FlushViewOfFile-when-unmaping-gcda-files.patch | ||
android-mangling-error_clang_12.patch | ||
bug47258-extract-symbols-mbcs.patch | ||
build-clang.py | ||
clang-5.0.json | ||
clang-13.json | ||
clang-tidy-ci.patch | ||
clang-tidy-external-linux64.json | ||
clang-tidy-linux64.json | ||
clang-tidy-macosx64.json | ||
clang-tidy-win64.json | ||
clang-trunk.json | ||
compiler-rt-13-no-codesign.patch | ||
compiler-rt-cross-compile.patch | ||
compiler-rt-no-codesign.patch | ||
downgrade-mangling-error_clang_12.patch | ||
find_symbolizer_linux_clang_10.patch | ||
find_symbolizer_linux_clang_15.patch | ||
fuzzing_ccov_build_clang_12.patch | ||
linux64.json | ||
llvmorg-14-init-3166-gd9ab62ca3d29.patch | ||
llvmorg-14-init-4465-g22ea0cea595e-v2.patch | ||
llvmorg-14-init-12719-gc4b45eeb44fd.patch | ||
llvmorg-14-init-13305-g319181f76718.patch | ||
llvmorg-14-init-13854-g782791ee84d2.patch | ||
macosx64.json | ||
profile-g4a10504e1f70c.patch | ||
profile.json | ||
revert-llvmorg-12-init-7827-g2a078c307204.patch | ||
revert-llvmorg-13-init-8182-gc2297544c047.patch | ||
revert-llvmorg-14-init-3651-g85ba583eba19.patch | ||
revert-llvmorg-14-init-3652-gf3c2094d8c11.patch | ||
skip-3-stages.json | ||
skip-stage-1-win64.json | ||
skip-stage-1.json | ||
static-llvm-symbolizer_clang_12.patch | ||
static-llvm-symbolizer_clang_15.patch | ||
tsan-D101154.patch | ||
unpoison-thread-stacks_clang_10.patch | ||
win64-no-symlink.patch | ||
win64.json |
README
build-clang.py ============== A script to build clang from source. ``` usage: build-clang.py [-h] -c CONFIG [--clean] optional arguments: -h, --help show this help message and exit -c CONFIG, --config CONFIG Clang configuration file --clean Clean the build directory ``` Pre-requisites -------------- * Working build toolchain. * git * CMake * Ninja * Python 2.7 and 3 Please use the latest available CMake for your platform to avoid surprises. Config file format ------------------ build-clang.py accepts a JSON config format with the following fields: * stages: Use 1, 2, 3 or 4 to select different compiler stages. The default is 2. * cc: Path to the bootsraping C Compiler. * cxx: Path to the bootsraping C++ Compiler. * as: Path to the assembler tool. * ar: Path to the library archiver tool. * ranlib: Path to the ranlib tool (optional). * libtool: Path to the libtool tool (optional). * ld: Path to the linker. * patches: Optional list of patches to apply. * build_type: The type of build to make. Supported types: Release, Debug, RelWithDebInfo or MinSizeRel. * build_libcxx: Whether to build with libcxx. The default is false. * build_clang_tidy: Whether to build clang-tidy with the Mozilla checks imported. The default is false. * osx_cross_compile: Whether to invoke CMake for OS X cross compile builds. * assertions: Whether to enable LLVM assertions. The default is false. * pgo: Whether to build with PGO (requires stages == 4). The default is false. The revisions are defined in taskcluster/ci/fetch/toolchains.yml. They are usually commit sha1s corresponding to upstream tags. Environment Variables --------------------- The following environment variables are used for cross-compile builds targeting OS X on Linux. * CROSS_CCTOOLS_PATH: Path to the cctools directory where the cross compiler toolchain is located. * CROSS_SYSROOT: Path to the OS X SDK directory for cross compile builds.