From ef5546aea521d806dcdb5a6f3fd15481ae8e9a6e Mon Sep 17 00:00:00 2001 From: Jeroen van Rijn Date: Tue, 3 Dec 2024 12:42:13 +0100 Subject: [PATCH] Add misc\get-date.c Prints the current date as YYYYMMDD without relying on PowerShell. Hopefully fixes #4540 --- build.bat | 7 +++++-- misc/get-date.c | 13 +++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 misc/get-date.c diff --git a/build.bat b/build.bat index 55c71ca9fad..0d6d281b3f8 100644 --- a/build.bat +++ b/build.bat @@ -19,7 +19,11 @@ if "%VSCMD_ARG_TGT_ARCH%" neq "x64" ( ) ) -for /f %%i in ('powershell get-date -format "{yyyyMMdd}"') do ( +pushd misc +cl get-date.c +popd + +for /f %%i in ('misc\get-date') do ( set CURR_DATE_TIME=%%i ) set curr_year=%CURR_DATE_TIME:~0,4% @@ -58,7 +62,6 @@ set V4=0 set odin_version_full="%V1%.%V2%.%V3%.%V4%" set odin_version_raw="dev-%V1%-%V2%" - set compiler_flags= -nologo -Oi -TP -fp:precise -Gm- -MP -FC -EHsc- -GR- -GF rem Parse source code as utf-8 even on shift-jis and other codepages rem See https://learn.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-170 diff --git a/misc/get-date.c b/misc/get-date.c new file mode 100644 index 00000000000..bf5b327386e --- /dev/null +++ b/misc/get-date.c @@ -0,0 +1,13 @@ +/* + Prints the current date as YYYYMMDD + + e.g. 2024-12-25 +*/ +#include +#include + +int main(int arg_count, char const **arg_ptr) { + time_t t = time(NULL); + struct tm* now = localtime(&t); + printf("%04d%02d%02d", now->tm_year + 1900, now->tm_mon + 1, now->tm_mday); +} \ No newline at end of file