mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-09 13:38:00 +00:00
tools: Replace copy-pasta scripts
There were a bunch of helper scripts to build a go tool and run it. Replace these with a single 'run' command that takes the tool name and arguments. Helps reduce maintainance, file spew. Also add the 'tools/bin' directory to .gitignore. These are the cached tool binaries. Bug: dawn:1339 Change-Id: I012c966736b4d93949f6142c342cdcfefa9f0083 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86063 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Ben Clayton <bclayton@google.com>
This commit is contained in:
committed by
Dawn LUCI CQ
parent
aba5a212ca
commit
9f49ac5493
55
tools/run
Executable file
55
tools/run
Executable file
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 2022 The Tint Authors
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
set -e # Fail on any error.
|
||||
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd )"
|
||||
TOOL="$1"
|
||||
BINARY="${SCRIPT_DIR}/bin/${TOOL}"
|
||||
|
||||
if [ ! -x "$(which go)" ] ; then
|
||||
echo "error: go needs to be on \$PATH to use $0"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function list_tools() {
|
||||
echo "Available tools:"
|
||||
ls "${SCRIPT_DIR}/src/cmd"
|
||||
}
|
||||
|
||||
function show_usage() {
|
||||
echo "run <tool> <args>"
|
||||
echo
|
||||
echo "builds and runs the go tool in <dawn>/tools/src/cmd"
|
||||
echo
|
||||
list_tools
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ -z "${TOOL}" ]; then
|
||||
show_usage
|
||||
fi
|
||||
|
||||
if [ ! -d "${SCRIPT_DIR}/src/cmd/${TOOL}" ]; then
|
||||
show_usage
|
||||
fi
|
||||
|
||||
# Rebuild the binary.
|
||||
# Note, go caches build artifacts, so this is quick for repeat calls
|
||||
pushd "${SCRIPT_DIR}/src" > /dev/null
|
||||
go build -o "${BINARY}" "./cmd/${TOOL}"
|
||||
popd > /dev/null
|
||||
|
||||
"${BINARY}" "${@:2}"
|
||||
Reference in New Issue
Block a user