X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/0a49a7a4f1090b6f1ce1d0f9d969804c9226b53e..311d71b8f18d544c79cc3a4cb1dafc206aaa1554:/src/exim_monitor/em_version.c diff --git a/src/exim_monitor/em_version.c b/src/exim_monitor/em_version.c index d1e04fa4d..4c562925c 100644 --- a/src/exim_monitor/em_version.c +++ b/src/exim_monitor/em_version.c @@ -1,17 +1,33 @@ -/* $Cambridge: exim/src/exim_monitor/em_version.c,v 1.6 2009/11/16 19:50:36 nm4 Exp $ */ - /************************************************* * Exim Monitor * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2009 */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 - 2021 */ /* See the file NOTICE for conditions of use and distribution. */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#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 +39,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 */