Skip to content

Commit e3de39d

Browse files
committed
Windows: add version info in binaries
1 parent f4666fc commit e3de39d

File tree

2 files changed

+69
-0
lines changed

2 files changed

+69
-0
lines changed

CMakeLists.txt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ project(fastfetch
77
HOMEPAGE_URL "https://github.com/LinusDierheimer/fastfetch"
88
)
99

10+
set(PROJECT_LICENSE "MIT license")
11+
1012
###################
1113
# Target Platform #
1214
###################
@@ -578,6 +580,26 @@ target_link_libraries(flashfetch
578580
PRIVATE libfastfetch
579581
)
580582

583+
if(WIN32)
584+
if(PROJECT_VERSION_TWEAK)
585+
string(REGEX MATCH "[0-9]+" PROJECT_VERSION_TWEAK_NUM "${PROJECT_VERSION_TWEAK}")
586+
else()
587+
set(PROJECT_VERSION_TWEAK_NUM "0")
588+
endif()
589+
590+
set(TARGET_NAME fastfetch)
591+
configure_file(src/util/windows/version.rc.in version.fastfetch.rc)
592+
target_sources(fastfetch
593+
PRIVATE version.fastfetch.rc
594+
)
595+
596+
set(TARGET_NAME flashfetch)
597+
configure_file(src/util/windows/version.rc.in version.flashfetch.rc)
598+
target_sources(flashfetch
599+
PRIVATE version.flashfetch.rc
600+
)
601+
endif()
602+
581603
###################
582604
# Testing targets #
583605
###################

src/util/windows/version.rc.in

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
//
2+
// Include the necessary resources
3+
//
4+
#include <winver.h>
5+
#include <ntdef.h>
6+
7+
#ifdef RC_INVOKED
8+
9+
//
10+
// Set up debug information
11+
//
12+
#if DEBUG
13+
#define VER_DEBUG VS_FF_DEBUG
14+
#else
15+
#define VER_DEBUG 0
16+
#endif
17+
18+
// ------- version info -------------------------------------------------------
19+
20+
VS_VERSION_INFO VERSIONINFO
21+
FILEVERSION @PROJECT_VERSION_MAJOR@,@PROJECT_VERSION_MINOR@,@PROJECT_VERSION_PATCH@,@PROJECT_VERSION_TWEAK_NUM@
22+
PRODUCTVERSION @PROJECT_VERSION_MAJOR@,@PROJECT_VERSION_MINOR@,@PROJECT_VERSION_PATCH@,@PROJECT_VERSION_TWEAK_NUM@
23+
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
24+
FILEFLAGS (VER_DEBUG|VS_FF_PRERELEASE)
25+
FILEOS VOS_NT
26+
FILETYPE VFT_APP
27+
BEGIN
28+
BLOCK "StringFileInfo"
29+
BEGIN
30+
BLOCK "040904b0"
31+
BEGIN
32+
VALUE "Comments", "@PROJECT_HOMEPAGE_URL@"
33+
VALUE "FileDescription", "@PROJECT_DESCRIPTION@"
34+
VALUE "FileVersion", "@PROJECT_VERSION@@PROJECT_VERSION_TWEAK@"
35+
VALUE "InternalName", "@TARGET_NAME@.exe"
36+
VALUE "LegalCopyright", "@PROJECT_LICENSE@"
37+
VALUE "OriginalFilename", "@TARGET_NAME@.exe"
38+
VALUE "ProductName", "@PROJECT_NAME@"
39+
VALUE "ProductVersion", "@PROJECT_VERSION@@PROJECT_VERSION_TWEAK@"
40+
END
41+
END
42+
BLOCK "VarFileInfo"
43+
BEGIN
44+
VALUE "Translation", 0x0409,1252
45+
END
46+
END
47+
#endif

0 commit comments

Comments
 (0)