diff options
author | Ron Yorston <rmy@pobox.com> | 2018-03-28 11:51:27 +0100 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2018-03-28 11:51:27 +0100 |
commit | 9348221cef7762c2f5814f50b18c6a79701f5cda (patch) | |
tree | 759fbd8aaf17a8ecc24bf929d2443bfa13572a51 | |
parent | d9c5d3c61ce7d71e3d08c6675bb5aa99a308a9eb (diff) | |
download | busybox-w32-9348221cef7762c2f5814f50b18c6a79701f5cda.tar.gz busybox-w32-9348221cef7762c2f5814f50b18c6a79701f5cda.tar.bz2 busybox-w32-9348221cef7762c2f5814f50b18c6a79701f5cda.zip |
Add a VERSIONINFO resource to the binary
If icons are enabled we might as well store some version information.
The string manipulation is based on this:
https://stackoverflow.com/questions/8540485/how-do-i-split-a-string-in-make
Closes issue #108.
-rw-r--r-- | win32/icon/Kbuild.src | 12 | ||||
-rw-r--r-- | win32/icon/icon.rc | 24 |
2 files changed, 34 insertions, 2 deletions
diff --git a/win32/icon/Kbuild.src b/win32/icon/Kbuild.src index bde74091f..d9087172c 100644 --- a/win32/icon/Kbuild.src +++ b/win32/icon/Kbuild.src | |||
@@ -8,8 +8,16 @@ obj-y := | |||
8 | 8 | ||
9 | obj-$(CONFIG_FEATURE_ICON) += icon.o | 9 | obj-$(CONFIG_FEATURE_ICON) += icon.o |
10 | 10 | ||
11 | # return commit level if available or 0 | ||
12 | bb_level = $(or $(word 2,$(subst -, ,$1)),0) | ||
13 | |||
14 | WRFLAGS := -D"KBUILD_STR(s)=\#s" -D"BB_VER=KBUILD_STR($(BB_VER))" \ | ||
15 | -D"BB_VERSION=$(VERSION)" -D"BB_PATCHLEVEL=$(PATCHLEVEL)" \ | ||
16 | -D"BB_SUBLEVEL=$(SUBLEVEL)" \ | ||
17 | -D"BB_EXTRAVERSION=$(call bb_level,$(EXTRAVERSION))" | ||
18 | |||
11 | quiet_cmd_windres = WINDRES $@ | 19 | quiet_cmd_windres = WINDRES $@ |
12 | cmd_windres = $(WINDRES) $< $@ | 20 | cmd_windres = $(WINDRES) $(WRFLAGS) $< $@ |
13 | 21 | ||
14 | win32/icon/icon.o: win32/icon/icon.rc .config | 22 | win32/icon/icon.o: win32/icon/icon.rc .config .kernelrelease |
15 | $(call cmd,windres) | 23 | $(call cmd,windres) |
diff --git a/win32/icon/icon.rc b/win32/icon/icon.rc index d91c4a482..cdd399957 100644 --- a/win32/icon/icon.rc +++ b/win32/icon/icon.rc | |||
@@ -6,3 +6,27 @@ | |||
6 | #if CONFIG_FEATURE_ICON_STERM || CONFIG_FEATURE_ICON_ALL | 6 | #if CONFIG_FEATURE_ICON_STERM || CONFIG_FEATURE_ICON_ALL |
7 | 2 ICON "sterm.ico" | 7 | 2 ICON "sterm.ico" |
8 | #endif | 8 | #endif |
9 | |||
10 | 1 VERSIONINFO | ||
11 | FILEVERSION BB_VERSION,BB_PATCHLEVEL,BB_SUBLEVEL,BB_EXTRAVERSION | ||
12 | PRODUCTVERSION BB_VERSION,BB_PATCHLEVEL,BB_SUBLEVEL,BB_EXTRAVERSION | ||
13 | BEGIN | ||
14 | BLOCK "StringFileInfo" | ||
15 | BEGIN | ||
16 | BLOCK "080904E4" | ||
17 | BEGIN | ||
18 | VALUE "CompanyName", "frippery.org" | ||
19 | VALUE "FileDescription", "BusyBox multi-call binary" | ||
20 | VALUE "FileVersion", BB_VER | ||
21 | VALUE "InternalName", "busybox" | ||
22 | VALUE "LegalCopyright", "(C) 1998-2018 Many authors" | ||
23 | VALUE "OriginalFilename", "busybox.exe" | ||
24 | VALUE "ProductName", "busybox-w32" | ||
25 | VALUE "ProductVersion", BB_VER | ||
26 | END | ||
27 | END | ||
28 | BLOCK "VarFileInfo" | ||
29 | BEGIN | ||
30 | VALUE "Translation", 0x809, 1252 | ||
31 | END | ||
32 | END | ||