From 2510b74aa164d2dc7de3f63501235e33b1430ac0 Mon Sep 17 00:00:00 2001 From: W0LF Date: Sun, 13 Mar 2022 11:45:21 +0300 Subject: [PATCH] Added "autoversioning" when compiling. --- wCenterWindow/Update_Rev.bat | 83 ++++++++++++++++++++ wCenterWindow/Version.h | 12 ++- wCenterWindow/VersionInfo.rc | Bin 1990 -> 0 bytes wCenterWindow/revision.h | 14 ++++ wCenterWindow/wCenterWindow.rc | Bin 14604 -> 14488 bytes wCenterWindow/wCenterWindow.vcxproj | 13 +++ wCenterWindow/wCenterWindow.vcxproj.filters | 3 + 7 files changed, 122 insertions(+), 3 deletions(-) create mode 100644 wCenterWindow/Update_Rev.bat delete mode 100644 wCenterWindow/VersionInfo.rc create mode 100644 wCenterWindow/revision.h diff --git a/wCenterWindow/Update_Rev.bat b/wCenterWindow/Update_Rev.bat new file mode 100644 index 0000000..3f6f51c --- /dev/null +++ b/wCenterWindow/Update_Rev.bat @@ -0,0 +1,83 @@ +@ECHO OFF +SETLOCAL ENABLEDELAYEDEXPANSION + +SET CURRENT_TIME=%TIME% +SET CURRENT_DATE=%DATE% +SET CURRENT_YEAR=%CURRENT_DATE:~10,4% + +SET BUILDTIME=0 +SET GIT_BRANCH=LOCAL +SET GIT_REV_COUNT=0 +SET GIT_DATE=0 +SET GIT_DATE_HUMAN=0 + +SET VerMajor=0 +SET VerMinor=0 +SET VerBuild=0 + +SET PN=0 +SET VS=0 +SET VSF=0 + +SET PCF=0 +SET PYS=0 +SET PA=0 + +SET INT_NAME=0 + +CD /d %~dp0 + +FOR /F "tokens=3" %%A IN ('FINDSTR /I /L /C:"define V_MAJOR" "Version.h"') DO (SET "VerMajor=%%A") +FOR /F "tokens=3" %%A IN ('FINDSTR /I /L /C:"define V_MINOR" "Version.h"') DO (SET "VerMinor=%%A") +FOR /F "tokens=3" %%A IN ('FINDSTR /I /L /C:"define V_BUILD" "Version.h"') DO (SET "VerBuild=%%A") + +FOR /F "tokens=3" %%A IN ('FINDSTR /I /L /C:"define PRODUCT_NAME" "Version.h"') DO (SET "PN=%%~A") +FOR /F "tokens=3" %%A IN ('FINDSTR /I /L /C:"define PRODUCT_YEAR_START" "Version.h"') DO (SET "PYS=%%A") +FOR /F "tokens=2*" %%A IN ('FINDSTR /I /L /C:"define PRODUCT_AUTHORS" "Version.h"') DO (SET "PA=%%~B") + +FOR /F "tokens=1-4 delims=:.," %%A IN ("%CURRENT_TIME%") DO ( + SET /A "BUILDTIME=(100%%A %% 100) * 3600 + (100%%B %% 100) * 60 + (100%%C %% 100)" +) + +FOR /F "delims=" %%A IN ('git symbolic-ref --short HEAD') DO (SET GIT_BRANCH=%%A) + +FOR /F "delims=" %%A IN ('git rev-list --count HEAD') DO ( + SET /A GIT_REV_COUNT=%%A - 57 +) + +FOR /F "tokens=1,2 delims= " %%A IN ('git log -1 --date=format:%%y%%m%%d ^| find /I "Date:"') DO ( + SET GIT_DATE=%%B +) + +FOR /F "tokens=1,2 delims= " %%A IN ('git log -1 --date=format:%%d.%%m.%%Y ^| find /I "Date:"') DO ( + SET GIT_DATE_HUMAN=%%B +) + +SET VSF=%VerMajor%.%VerMinor%.%GIT_DATE%.%BUILDTIME% +SET VS=%VerMajor%.%VerMinor%.%VerBuild% +SET VNF=%VerMajor%,%VerMinor%,%GIT_DATE%,%BUILDTIME% +SET VN=%VerMajor%,%VerMinor%,%VerBuild% + +SET PNF="%PN% v%VS% (C++)" +SET PCF="Copyright (C) %PYS%-%CURRENT_YEAR% by %PA%" + +SET INT_NAME="%PN%C++" +SET ORIG_NAME="%PN%.exe" + +ECHO #pragma once > revision.h +ECHO #define GIT_DATE_HUMAN "%GIT_DATE_HUMAN%" >> revision.h +ECHO #define GIT_DATE "%GIT_DATE%" >> revision.h +ECHO #define GIT_BRANCH %GIT_BRANCH% >> revision.h +ECHO #define GIT_COUNT %GIT_REV_COUNT% >> revision.h +ECHO #define V_SECS %BUILDTIME% >> revision.h +ECHO #define INTERNAL_NAME %INT_NAME% >> revision.h +ECHO #define ORIG_FILE_NAME %ORIG_NAME% >> revision.h +ECHO #define PRODUCT_NAME_FULL %PNF% >> revision.h +ECHO #define PRODUCT_COPYRIGHT %PCF% >> revision.h +ECHO #define VERSION_NUM %VN% >> revision.h +ECHO #define VERSION_STR "%VS%" >> revision.h +ECHO #define VERSION_NUM_FULL %VNF% >> revision.h +ECHO #define VERSION_STR_FULL "%VSF%" >> revision.h + +ENDLOCAL +EXIT diff --git a/wCenterWindow/Version.h b/wCenterWindow/Version.h index 852d323..80b0622 100644 --- a/wCenterWindow/Version.h +++ b/wCenterWindow/Version.h @@ -2,6 +2,12 @@ // Version.h // #pragma once -#define NUM_VERSION 2,3,3 -#define STR_VERSION "2.3.3" -#define PRODUCT_NAME "wCenterWindow v2.3.3 (C++)" +#include "revision.h" + +#define V_MAJOR 2 +#define V_MINOR 3 +#define V_BUILD 3 +#define PRODUCT_NAME "wCenterWindow" +#define PRODUCT_AUTHORS "W0LF aka 'dreamforce'" +#define PRODUCT_YEAR_START 2020 +#define PRODUCT_DESCRIPTION "Centers windows by hotkey (C++)" diff --git a/wCenterWindow/VersionInfo.rc b/wCenterWindow/VersionInfo.rc deleted file mode 100644 index 882532d1ef988d9de3b7231498304bb54ffa298b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1990 zcmd6oUvCmY6vfZ8iQi#@54Eu(U|)QcKPALf8bKPL8fq6LRv>^MdZDXLGuK8{0JzpJl^^SRm z-wVFYJHHdw&C_AgQN(`H#;K+=y=2r91gA@4ch%GfHPnC5Iz+u7_G`6a^_F)}Z$PZ* zp2#D1jKLFf8tIn&M(kaK&{7?gc8a?l$w#Pe{A1mrO#Fa-C1*bc&rpjBbm8Y?pTp6f z^VBC(sjrVH(Ms(ChitzG^E&$Etpai#zjjg;kL!ryu#V8RktkDw!HPOhsPUM}Ovo(8 zV+z-qN-5vqw=0_8`!lL#QqijKKuwX;6aqOkXwE5RO0Sw;{8b z^|NI63ap4c9P3{gPA4e8z{2b-r-eQ-JK4i%H)hbKiRTi3(`$}y{%i#72D?*M{kd^k zC#v3pxyH-s2EI<8nXlj$C$p#I^Ni>8C_cqA8hF%HrrXP$qur|S&e3Y_xlhsRZcEuU zOtbv1a=G~o4#A3uG)_>gnsbyeMaO8f+Ej9T$H~+>MZ+3Zw(&gus&3T%H}&tP{OpvN zHlZJEmhZm(8kNcTo^gmum!Qt*-fwi=>VSGUeMgtj175Ymd#s3lT&J~Q-7MT8+bhM} rXn>-NjlRd+L&e*oPc*wJmQ-zsiun_3{|f$=vb&?2^ipLH+l=>b__Ork diff --git a/wCenterWindow/revision.h b/wCenterWindow/revision.h new file mode 100644 index 0000000..d8e1362 --- /dev/null +++ b/wCenterWindow/revision.h @@ -0,0 +1,14 @@ +#pragma once +#define GIT_DATE_HUMAN "02.03.2022" +#define GIT_DATE "220302" +#define GIT_BRANCH dev +#define GIT_COUNT 3 +#define V_SECS 38575 +#define INTERNAL_NAME "wCenterWindowC++" +#define ORIG_FILE_NAME "wCenterWindow.exe" +#define PRODUCT_NAME_FULL "wCenterWindow v2.3.3 (C++)" +#define PRODUCT_COPYRIGHT "Copyright (C) 2020-2022 by W0LF aka 'dreamforce'" +#define VERSION_NUM 2,3,3 +#define VERSION_STR "2.3.3" +#define VERSION_NUM_FULL 2,3,220302,38575 +#define VERSION_STR_FULL "2.3.220302.38575" diff --git a/wCenterWindow/wCenterWindow.rc b/wCenterWindow/wCenterWindow.rc index 1f3216c4405557f1c7960e03e4c899dcd5e74b3b..0ae6f6d22cd3dc88417b41da6301bbab1defe47e 100644 GIT binary patch delta 431 zcmeAvno&4m3uD;Et=9!P;~Cr-LK%D*d?qIf%THb<6f(I)NI=k;!Ji?3A(A18!IQzA z!Gj?LD7&0lpFw}}T_NSkS|R~pwjqb|0}`dC6FEL&@h^8$R$46Pm2R=_8|>5 zL6D0;p$77jC&=eOUCxu;G}Vy88f1QhriC!NM}h8`Y$zu_`HQB|WIqY6&Hps{_yH_q BVNd`7 delta 544 zcmbPH*i$rN3uD>Ft=9!7=kZ8PUMCclsKnsRkk3%SP{~llkjaqFkik&GpunKPkj$V7 zq>UI1z*rZ`G6ISv0o5ungac)K7~FuYM22i2R$x$PNCBFW3S{Rpqyfz=0-BM^pguX9 zM;d4o+hh;nj>#{C6efQW4w`Jkqck~3rB3(EyE7c z1hMXcx>7Q(Kz629AVZz!r=bS2pHmO${0bljxgdV>Hg&DZyEOPF8)%B)a{T5zO)Y)^ Db>4FI diff --git a/wCenterWindow/wCenterWindow.vcxproj b/wCenterWindow/wCenterWindow.vcxproj index 9130c01..525369f 100644 --- a/wCenterWindow/wCenterWindow.vcxproj +++ b/wCenterWindow/wCenterWindow.vcxproj @@ -102,6 +102,9 @@ + + Update_Rev.bat + @@ -124,6 +127,9 @@ %(AdditionalManifestFiles) + + Update_Rev.bat + @@ -141,6 +147,9 @@ %(AdditionalManifestFiles) + + Update_Rev.bat + @@ -163,11 +172,15 @@ %(AdditionalManifestFiles) + + Update_Rev.bat + + diff --git a/wCenterWindow/wCenterWindow.vcxproj.filters b/wCenterWindow/wCenterWindow.vcxproj.filters index ffa86fb..71b2721 100644 --- a/wCenterWindow/wCenterWindow.vcxproj.filters +++ b/wCenterWindow/wCenterWindow.vcxproj.filters @@ -33,6 +33,9 @@ Header Files + + Header Files +