commit | 4928295b236ec8f590a7e9d863502bc2f50a77d9 | [log] [tgz] |
---|---|---|
author | Jingwen Chen <jingwen@google.com> | Fri Mar 05 02:56:12 2021 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Fri Mar 05 02:57:16 2021 -0800 |
tree | ec7efc9921615c6643b0e77be0b72d3c85e2312b | |
parent | 2adf7d1377f08f996ddee2eb21f63378df8c99c5 [diff] |
Allow .S files in C++ Starlark cc_common.compile. .S files are (typically handwritten) assembly files that require preprocessing, compared to their lower-capital .s counterparts that can be compiled directly into object files. Native cc_library rules already allow .S files in srcs [1]. However, the Starlark cc_common.compile srcs argument doesn't accept them. This change adds .S files to the list of valid srcs for cc_common.compile. This is required for building AOSP, as there are handwritten source files in Android's libc with the .S extension [2] that will be compiled through Starlark C++ rules, e.g. directly into .o files. [1] https://cs.opensource.google/bazel/bazel/+/master:src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java;l=280;drc=35de1e352459729f95d552b6ae5af9ce7d00a943 [2] https://cs.android.com/search?q=f:%5C.S$&sq= Closes #13155. PiperOrigin-RevId: 361106705
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
See CONTRIBUTING.md