# Partially borrowed from tensorflow tools/bazel.rc # By default, we don't distinct target and host platfroms. # When doing cross compilation, use --config=cross_compile to distinct them. build --distinct_host_configuration=false build:cross_compile --distinct_host_configuration=true build --verbose_failures build --copt=-std=c++11 build --copt=-fPIC build --copt=-D_GLIBCXX_USE_C99_MATH_TR1 build --copt=-DMACE_OBFUSCATE_LITERALS build --copt=-DGEMMLOWP_USE_OPENMP build --copt=-DMACE_USE_NNLIB_CAF # Usage example: bazel build --config symbol_hidden build:symbol_hidden --copt=-fvisibility=hidden # Usage example: bazel build --config android build:android --config=cross_compile build:android --crosstool_top=//external:android/crosstool build:android --host_crosstool_top=@bazel_tools//tools/cpp:toolchain # Usage example: bazel build --config arm_linux_gnueabihf build:arm_linux_gnueabihf --config=cross_compile build:arm_linux_gnueabihf --crosstool_top=//tools/arm_compiler:toolchain build:arm_linux_gnueabihf --host_crosstool_top=@bazel_tools//tools/cpp:toolchain build:arm_linux_gnueabihf --cpu=armeabi-v7a build:arm_linux_gnueabihf --copt -mfloat-abi=hard build:arm_linux_gnueabihf --copt -mfpu=neon build:arm_linux_gnueabihf --copt -Wno-ignored-attributes build:arm_linux_gnueabihf --copt -Wno-unused-function build:arm_linux_gnueabihf --copt -Wno-sequence-point build:arm_linux_gnueabihf --copt -Wno-implicit-fallthrough # Usage example: bazel build --config aarch64_linux_gnu build:aarch64_linux_gnu --config=cross_compile build:aarch64_linux_gnu --crosstool_top=//tools/aarch64_compiler:toolchain build:aarch64_linux_gnu --host_crosstool_top=@bazel_tools//tools/cpp:toolchain build:aarch64_linux_gnu --cpu=aarch64 build:aarch64_linux_gnu --copt -Wno-ignored-attributes build:aarch64_linux_gnu --copt -Wno-unused-function build:aarch64_linux_gnu --copt -Wno-sequence-point build:aarch64_linux_gnu --copt -Wno-implicit-fallthrough # Usage example: bazel build --config optimization build:optimization -c opt build:optimization --copt=-O3 build:optimization --linkopt=-Wl,--strip-all build:optimization --copt=-ffunction-sections build:optimization --copt=-fdata-sections build:optimization --linkopt=-Wl,--gc-sections # Address sanitizer build:asan --strip=never build:asan --copt -fsanitize=address build:asan --copt -D_FORTIFY_SOURCE build:asan --copt -DADDRESS_SANITIZER build:asan --copt -O0 build:asan --copt -g build:asan --copt -fno-omit-frame-pointer build:asan --linkopt -fsanitize=address # Thread sanitizer build:tsan --strip=never build:tsan --copt -fsanitize=thread build:tsan --copt -DTHREAD_SANITIZER build:tsan --copt -DDYNAMIC_ANNOTATIONS_ENABLED=1 build:tsan --copt -DDYNAMIC_ANNOTATIONS_EXTERNAL_IMPL=1 build:tsan --copt -O0 build:tsan --copt -fno-omit-frame-pointer build:tsan --linkopt -fsanitize=thread # Memory sanitizer build:msan --strip=never build:msan --copt -fsanitize=memory build:msan --copt -DADDRESS_SANITIZER build:msan --copt -O0 build:msan --copt -fno-omit-frame-pointer build:msan --linkopt -fsanitize=memory # Undefined Behavior Sanitizer build:ubsan --strip=never build:ubsan --copt -fsanitize=undefined build:ubsan --copt -O0 build:ubsan --copt -fno-omit-frame-pointer build:ubsan --linkopt -fsanitize=undefined build:ubsan --linkopt -lubsan