make build reproducible

we do this by removing the uname usage everywhere: it is not actually
used at runtime at all.

we keep the timestamp, because it is actually used in user_welcome()
but allow it to be overriden.

ideally, that timestamp would be completely removed, but I am not sure
what to put in its place, or if it would break some mysterious RFC (or
client!) if we remove that announcement.
This commit is contained in:
Antoine Beaupré 2016-02-16 00:29:24 -05:00
parent d670fe5271
commit a393a68a0e
3 changed files with 5 additions and 15 deletions

View file

@ -61,7 +61,6 @@ extern struct SetOptions GlobalSetOptions; /* defined in ircd.c */
extern const char *creation; extern const char *creation;
extern const char *generation; extern const char *generation;
extern const char *platform;
extern const char *infotext[]; extern const char *infotext[];
extern const char *serno; extern const char *serno;
extern const char *ircd_version; extern const char *ircd_version;

View file

@ -17,13 +17,15 @@ fi
generation=`expr $generation + 1` generation=`expr $generation + 1`
uname=`uname -a` if test "$EXTERNAL_BUILD_TIMESTAMP" = ''; then
creation=`LC_ALL=C date | \ creation=`LC_ALL=C date | \
awk '{if (NF == 6) \ awk '{if (NF == 6) \
{ print $1 " " $2 " " $3 " " $6 " at " $4 " " $5 } \ { print $1 " " $2 " " $3 " " $6 " at " $4 " " $5 } \
else \ else \
{ print $1 " " $2 " " $3 " " $7 " at " $4 " " $5 " " $6 }}'` { print $1 " " $2 " " $3 " " $7 " at " $4 " " $5 " " $6 }}'`
else
creation="$EXTERNAL_BUILD_TIMESTAMP"
fi
$spitshell >version.c <<!SUB!THIS! $spitshell >version.c <<!SUB!THIS!
/* /*
@ -54,7 +56,6 @@ $spitshell >version.c <<!SUB!THIS!
const char *generation = "$generation"; const char *generation = "$generation";
const char *creation = "$creation"; const char *creation = "$creation";
const char *platform = "$uname";
const char *ircd_version = PATCHLEVEL; const char *ircd_version = PATCHLEVEL;
const char *serno = SERNO; const char *serno = SERNO;

View file

@ -17,14 +17,6 @@ fi
generation=`expr $generation + 1` generation=`expr $generation + 1`
uname=`uname -a`
creation=`date | \
awk '{if (NF == 6) \
{ print $1 " " $2 " " $3 " " $6 " at " $4 " " $5 } \
else \
{ print $1 " " $2 " " $3 " " $7 " at " $4 " " $5 " " $6 }}'`
$spitshell >version.c <<!SUB!THIS! $spitshell >version.c <<!SUB!THIS!
/* /*
* libratbox: a library used by ircd-ratbox and other things * libratbox: a library used by ircd-ratbox and other things
@ -55,9 +47,7 @@ $spitshell >version.c <<!SUB!THIS!
#include "../include/serno.h" #include "../include/serno.h"
const char *libratbox_generation = "$generation"; const char *libratbox_generation = "$generation";
const char *libratbox_platform = "$uname";
const char *libratbox_serno = SERIALNUM; const char *libratbox_serno = SERIALNUM;
const char *libratbox_creation = "$creation";
const char *libratbox_infotext[] = const char *libratbox_infotext[] =
{ {