X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/f3f065bbe8b7d7fdc4d46dbfa063ae4dfb05bfd7..fa714063ea46ef6dd92dbef3525781d85513394b:/src/exim_monitor/em_version.c diff --git a/src/exim_monitor/em_version.c b/src/exim_monitor/em_version.c index 4a6f3ce4e..b627a6e2b 100644 --- a/src/exim_monitor/em_version.c +++ b/src/exim_monitor/em_version.c @@ -1,17 +1,32 @@ -/* $Cambridge: exim/src/exim_monitor/em_version.c,v 1.5 2007/01/31 16:52:12 ph10 Exp $ */ - /************************************************* * Exim Monitor * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2007 */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 - 2021 */ /* See the file NOTICE for conditions of use and distribution. */ +#define EM_VERSION_C + +/* Needed by macros.h */ +/* Some systems have PATH_MAX and some have MAX_PATH_LEN. */ + +#ifndef PATH_MAX +# ifdef MAX_PATH_LEN +# define PATH_MAX MAX_PATH_LEN +# else +# define PATH_MAX 1024 +# endif +#endif + #include "mytypes.h" +#include "store.h" #include "macros.h" #include #include +#include "version.h" + extern uschar *version_string; extern uschar *version_date; @@ -23,17 +38,28 @@ uschar today[20]; version_string = US"2.06"; -Ustrcpy(today, __DATE__); +#ifdef EXIM_BUILD_DATE_OVERRIDE +/* Reproducible build support; build tooling should have given us something looking like + * "25-Feb-2017 20:15:40" in EXIM_BUILD_DATE_OVERRIDE based on $SOURCE_DATE_EPOCH in environ + * per + */ +version_date = US malloc(32); +version_date[0] = 0; +Ustrncat(version_date, EXIM_BUILD_DATE_OVERRIDE, 31); + +#else +Ustrcpy(today, US __DATE__); if (today[4] == ' ') i = 1; today[3] = today[6] = '-'; -version_date = (uschar *)malloc(32); +version_date = US malloc(32); version_date[0] = 0; Ustrncat(version_date, today+4+i, 3-i); Ustrncat(version_date, today, 4); Ustrncat(version_date, today+7, 4); -Ustrcat(version_date, " "); -Ustrcat(version_date, __TIME__); +Ustrcat(version_date, US" "); +Ustrcat(version_date, US __TIME__); +#endif } /* End of em_version.c */