#!/bin/bash # # Sample script demonstrating custom C++ toolchain selection: handles # the command that translates a cc_library's .cc (source file) into .o (object # file). echo "$0: running sample cc_library compiler (produces .o output)." # https://docs.bazel.build/versions/master/cc-toolchain-config-reference.html # defines fancier ways to generate custom command lines. This script just shows # the default, which looks like: # # examples/custom_toolchain/sample_compiler -o bazel-out/x86-fastbuild/bin/examples/custom_toolchain/_objs/buildme/buildme.o. # The .o is the last parameter. OBJECT_FILE=${@: -1} # Swap out .o for .d to get expected .d (source dependency output). DOTD_FILE=${OBJECT_FILE%?}d echo "$0: sample .o output" > $OBJECT_FILE echo "sample .d output ($0)" > $DOTD_FILE