Можно ли определить CXXFLAGS относительно текущего компилятора в bazel? - PullRequest
1 голос
/ 10 апреля 2019

Я пытаюсь преобразовать проект Make в Bazel. В настоящее время makefile обнаруживает используемый компилятор и соответственно устанавливает определенные CXXFLAGS (не все флаги понятны всем компиляторам).

Например:

ifeq ($(shell $(CC) -dM -E -x c++ /dev/null | grep __clang__),)
CXXFLAGS=-DUSE_GCC
else
CXXFLAGS=-DUSE_CLANG
endif

(Аналогично, код для версий компилятора.)

Как мне добиться этого в Базеле? Соотношение между компилятором и используемыми флагами должно быть определено где-то внутри проекта (не в командной строке).

Я знаю опцию --define, но есть ли способ напрямую связать конфигурацию с используемым компилятором?

1 Ответ

0 голосов
/ 12 апреля 2019

Использование аргумента copts в вашем cc_library или cc_binary установит флаги компилятора.

https://docs.bazel.build/versions/master/be/c-cpp.html#cc_binary_args

...