Files
OpenROAD/bazel/install.sh
Øyvind Harboe dc04ecd404 bazel: fix installed binary Tcl init failure
install.sh deleted openroad.runfiles/_main which contains the Tcl
resource files (init.tcl, tclreadline, etc.) needed by the Bazel-built
binary.  Remove that rm so the runfiles tree stays intact after install.

Add an install smoke test that extracts the packaging tarball and
verifies the binary can evaluate a Tcl expression — catches regressions
like this automatically.

Validate: bazelisk test //test/install/...

Fixes #10115

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
2026-04-12 13:39:48 +02:00

23 lines
559 B
Bash
Executable File

#!/usr/bin/env bash
set -e
# Install binary and runfiles from bazel build
TARFILE=$(cd $BUILD_WORKSPACE_DIRECTORY; bazelisk info bazel-bin)/packaging/openroad.tar
DEST_DIR=${1:-${BUILD_WORKSPACE_DIRECTORY}/../install/OpenROAD/bin}
mkdir -p "$DEST_DIR"
cp -f "$TARFILE" "$DEST_DIR"
cd "$DEST_DIR"
tar -xf openroad.tar
rm -f openroad.tar
# Remove useless files from pkg_tar from bazel
if [ -e openroad.repo_mapping ]; then
chmod u+w openroad.repo_mapping
rm -rf openroad.repo_mapping
fi
echo "OpenROAD binary installed to $(realpath "$DEST_DIR")"