Skip to content

Commit 04dad42

Browse files
authored
Merge pull request #3048 from tiborvass/win_script_fixes
Fixes to windows scripts
2 parents a32cd16 + 83e9eeb commit 04dad42

1 file changed

Lines changed: 15 additions & 12 deletions

File tree

scripts/build/binary

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -55,20 +55,23 @@ if [ -n "$GO_STRIP" ]; then
5555
fi
5656

5757
if [ "$(go env GOOS)" = "windows" ]; then
58-
# Generate a Windows file version of the form major,minor,patch,build
59-
VERSION_QUAD=$(printf "%s" "$VERSION" | sed -re 's/^([0-9.]*).*$/\1/' | tr . , | sed -re 's/^[0-9]+$/\0,0/' | sed -re 's/^[0-9]+,[0-9]+$/\0,0/' | sed -re 's/^[0-9]+,[0-9]+,[0-9]+$/\0,0/')
58+
: "${WINDRES=$($(go env CC) --print-prog-name=windres)}"
59+
if [ -z "$WINDRES" ]; then
60+
>&2 echo "Empty WINDRES detected, skipping manifesting binary"
61+
else
62+
# Generate a Windows file version of the form major,minor,patch,build
63+
VERSION_QUAD=$(printf "%s" "$VERSION" | sed -re 's/^([0-9.]*).*$/\1/' | tr . , | sed -re 's/,$//' | sed -re 's/^[0-9]+$/\0,0/' | sed -re 's/^[0-9]+,[0-9]+$/\0,0/' | sed -re 's/^[0-9]+,[0-9]+,[0-9]+$/\0,0/')
6064

61-
set --
62-
[ -n "$VERSION" ] && set -- "$@" -D "DOCKER_VERSION=\"$VERSION\""
63-
[ -n "$VERSION_QUAD" ] && set -- "$@" -D "DOCKER_VERSION_QUAD=$VERSION_QUAD"
64-
[ -n "$GITCOMMIT" ] && set -- "$@" -D "DOCKER_COMMIT=\"$GITCOMMIT\""
65+
set --
66+
[ -n "$VERSION" ] && set -- "$@" -D "DOCKER_VERSION=\"$VERSION\""
67+
[ -n "$VERSION_QUAD" ] && set -- "$@" -D "DOCKER_VERSION_QUAD=$VERSION_QUAD"
68+
[ -n "$GITCOMMIT" ] && set -- "$@" -D "DOCKER_COMMIT=\"$GITCOMMIT\""
6569

66-
windres=$($(go env CC) --print-prog-name=windres)
67-
68-
target="$(dirname "$0")/../../cli/winresources/rsrc_$(go env GOARCH).syso"
69-
mkdir -p "$(dirname "${target}")"
70-
"$windres" -i "$(dirname "$0")/../winresources/docker.rc" -o "$target" "$@"
71-
echo "package winresources" > "$(dirname "${target}")/stub_windows.go"
70+
target="$(dirname "$0")/../../cli/winresources/rsrc_$(go env GOARCH).syso"
71+
mkdir -p "$(dirname "${target}")"
72+
"$WINDRES" -i "$(dirname "$0")/../winresources/docker.rc" -o "$target" --use-temp-file "$@"
73+
echo "package winresources" > "$(dirname "${target}")/stub_windows.go"
74+
fi
7275
fi
7376

7477
echo "Building $GO_LINKMODE $(basename "${TARGET}")"

0 commit comments

Comments
 (0)