1
Fork 0
hermetic_cc_toolchain/toolchain
laurynasl b73d167c6c Support bazel compilation_mode
Bazel has a special command line option (--compilation_mode) for specifying how
c artifacts should be compiled. Copy over the implementation without too much
thought on whether they make sense.

See https://docs.bazel.build/versions/main/user-manual.html#flag--compilation_mode.

!!! Due to a regression in zig-cc, debug symbols are available under --compilation_mode opt

```
laurynasl@laurynasl ~/bazel-zig-cc
 % bazel build -c opt //test/c:which_libc 2>/dev/null && bazel-bin/test/c/which_libc && gdb -batch --ex 'info line main' bazel-bin/test/c/which_libc
glibc_2.19
Line 4 of "test/c/main.c" starts at address 0x2014f0 <main> and ends at 0x2014f1 <main+1>.
laurynasl@laurynasl ~/bazel-zig-cc
 % bazel build -c dbg //test/c:which_libc 2>/dev/null && bazel-bin/test/c/which_libc && gdb -batch --ex 'info line main' bazel-bin/test/c/which_libc
glibc_2.19
Line 4 of "test/c/main.c" starts at address 0x201500 <main> and ends at 0x201504 <main+4>.
laurynasl@laurynasl ~/bazel-zig-cc
 % bazel build -c fastbuild //test/c:which_libc 2>/dev/null && bazel-bin/test/c/which_libc && gdb -batch --ex 'info line main' bazel-bin/test/c/which_libc
glibc_2.19
Function "main" not defined.
```
2022-06-17 14:46:13 +00:00
..
libc Add libc constraint and libc aware toolchains 2022-04-14 14:29:06 +00:00
libc_aware Add libc constraint and libc aware toolchains 2022-04-14 14:29:06 +00:00
platform added support for Windows targets 2022-06-02 05:27:22 +03:00
private windows: add dynamic_library_linkopts 2022-06-06 10:30:39 +03:00
toolchain Add libc constraint and libc aware toolchains 2022-04-14 14:29:06 +00:00
BUILD add .build.yml 2021-06-08 06:28:15 +03:00
BUILD.sdk.bazel added Windows host support 2022-06-02 05:27:22 +03:00
defs.bzl zig sdk: rename {ext} to {_ext} 2022-06-06 10:32:42 +03:00
zig_toolchain.bzl Support bazel compilation_mode 2022-06-17 14:46:13 +00:00