mirror of https://github.com/docker/cli.git
46 lines
1.2 KiB
Bash
Executable File
46 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# Compile the Windows resources into the sources
|
|
#
|
|
|
|
set -eu -o pipefail
|
|
|
|
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
# shellcheck source=/go/src/github.com/docker/cli/scripts/build/.variables
|
|
source "$SCRIPTDIR"/../build/.variables
|
|
|
|
RESOURCES=$SCRIPTDIR/../winresources
|
|
|
|
TEMPDIR=$(mktemp -d)
|
|
trap 'rm -rf $TEMPDIR' EXIT
|
|
|
|
if [ "$(go env GOHOSTOS)" = "windows" ]; then
|
|
WINDRES=windres
|
|
else
|
|
# Cross compiling
|
|
WINDRES=x86_64-w64-mingw32-windres
|
|
fi
|
|
|
|
# Generate a Windows file version of the form major,minor,patch,build (with any part optional)
|
|
VERSION_QUAD=$(printf "%s" "$VERSION" | sed -re 's/^([0-9.]*).*$/\1/' | tr . ,)
|
|
|
|
# Pass version and commit information into the resource compiler
|
|
defs=
|
|
[ -n "$VERSION" ] && defs+=( "-D DOCKER_VERSION=\"$VERSION\"")
|
|
[ -n "$VERSION_QUAD" ] && defs+=( "-D DOCKER_VERSION_QUAD=$VERSION_QUAD")
|
|
[ -n "$GITCOMMIT" ] && defs+=( "-D DOCKER_COMMIT=\"$GITCOMMIT\"")
|
|
|
|
makeres() {
|
|
# shellcheck disable=SC2086
|
|
"$WINDRES" \
|
|
-i "$RESOURCES/$1" \
|
|
-o "$3" \
|
|
-F "$2" \
|
|
--use-temp-file \
|
|
-I "$TEMPDIR" \
|
|
${defs[*]}
|
|
}
|
|
|
|
makeres docker.rc pe-x86-64 rsrc_amd64.syso
|
|
makeres docker.rc pe-i386 rsrc_386.syso
|