У меня есть C-проект на базе Bazel, и я хочу скомпилировать его с gcc
и clang
в Linux. Чтобы переключаться между компиляторами, я добавляю к вызову CC=<compiler
, например, так:
CC=clang bazel build //my-package:my-target
Это работает, как и ожидалось, за исключением того, что я также вызываю правило Базеля с параметром copts
:
cc_binary(
name = "my-target",
srcs = [
"my-src.c",
],
copts = [
"-std=c89",
"-Wno-unused-label",
"-Wno-unused-variable",
"-Wno-unused-but-set-variable",
"-Wno-misleading-indentation",
],
)
Это работает, но я получаю сообщения "неизвестная опция предупреждения" от clang
:
warning: unknown warning option '-Wno-unused-but-set-variable'; did you mean '-Wno-unused-const-variable'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-misleading-indentation'; did you mean '-Wno-binding-in-condition'? [-Wunknown-warning-option]
Можно ли указать copts
аргументы , условные на компиляторе Cиспользуется для конкретного вызова Bazel?