mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
86 lines
2.8 KiB
Text
86 lines
2.8 KiB
Text
|
#!/usr/bin/env sh
|
||
|
|
||
|
quadVersionNum() {
|
||
|
num=$(echo "${1:-0}" | cut -d. -f"$2")
|
||
|
if [ "$num" != "0" ]; then
|
||
|
echo "${num#0}"
|
||
|
else
|
||
|
echo "$num"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Create version quad for Windows of the form major.minor.patch.build
|
||
|
VERSION_QUAD=$(printf "%s" "$VERSION" | sed -re 's/^([0-9.]*).*$/\1/' | 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/')
|
||
|
|
||
|
# Generate winres.json to be able to create a syso file which contains
|
||
|
# Microsoft Windows Version Information and an icon using go-winres.
|
||
|
# https://docs.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-block
|
||
|
# https://github.com/tc-hib/go-winres#json-format
|
||
|
cat > "./cli/winresources/${BINARY_SHORT_NAME}/winres.json" << EOL
|
||
|
{
|
||
|
"RT_GROUP_ICON": {
|
||
|
"#1": {
|
||
|
"0409": "../../winresources/docker.ico"
|
||
|
}
|
||
|
},
|
||
|
"RT_MANIFEST": {
|
||
|
"#1": {
|
||
|
"0409": {
|
||
|
"identity": {},
|
||
|
"description": "Docker Engine",
|
||
|
"minimum-os": "vista",
|
||
|
"execution-level": "",
|
||
|
"ui-access": false,
|
||
|
"auto-elevate": false,
|
||
|
"dpi-awareness": "unaware",
|
||
|
"disable-theming": false,
|
||
|
"disable-window-filtering": false,
|
||
|
"high-resolution-scrolling-aware": false,
|
||
|
"ultra-high-resolution-scrolling-aware": false,
|
||
|
"long-path-aware": false,
|
||
|
"printer-driver-isolation": false,
|
||
|
"gdi-scaling": false,
|
||
|
"segment-heap": false,
|
||
|
"use-common-controls-v6": false
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
"RT_MESSAGETABLE": {
|
||
|
"#1": {
|
||
|
"0409": "../../winresources/event_messages.bin"
|
||
|
}
|
||
|
},
|
||
|
"RT_VERSION": {
|
||
|
"#1": {
|
||
|
"0409": {
|
||
|
"fixed": {
|
||
|
"file_version": "$(quadVersionNum "$VERSION_QUAD" 1).$(quadVersionNum "$VERSION_QUAD" 2).$(quadVersionNum "$VERSION_QUAD" 3).$(quadVersionNum "$VERSION_QUAD" 4)",
|
||
|
"product_version": "$(quadVersionNum "$VERSION_QUAD" 1).$(quadVersionNum "$VERSION_QUAD" 2).$(quadVersionNum "$VERSION_QUAD" 3).$(quadVersionNum "$VERSION_QUAD" 4)",
|
||
|
"type": "Unknown"
|
||
|
},
|
||
|
"info": {
|
||
|
"0000": {
|
||
|
"CompanyName": "${PACKAGER_NAME}",
|
||
|
"FileVersion": "${VERSION}",
|
||
|
"LegalCopyright": "Copyright © 2015-$(date +'%Y') Docker Inc.",
|
||
|
"OriginalFileName": "$(basename "${BINARY_FULLNAME}")",
|
||
|
"ProductName": "${PRODUCT}",
|
||
|
"ProductVersion": "${VERSION}",
|
||
|
"SpecialBuild": "${GITCOMMIT}"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
EOL
|
||
|
(
|
||
|
set -x
|
||
|
cat "./cli/winresources/${BINARY_SHORT_NAME}/winres.json"
|
||
|
)
|
||
|
|
||
|
# Create winresources package stub if removed while using tmpfs in Dockerfile
|
||
|
if [ ! -f "./cli/winresources/${BINARY_SHORT_NAME}/winresources.go" ]; then
|
||
|
echo "package winresources" > "./cli/winresources/${BINARY_SHORT_NAME}/winresources.go"
|
||
|
fi
|