openldap/build/mkversion
Douglas Royds c01e45daca ITS#8928 Reproducibility: Remove user, hostname, pwd from version string
When attempting a reproducible build, replace the WHOWHERE value with something
fixed, "openldap". If you're not trying to do a reproducible build,
SOURCE_DATE_EPOCH won't be set, so the existing WHOWHERE string will apply.
See https://reproducible-builds.org/specs/source-date-epoch/
2018-11-19 00:39:56 +00:00

84 lines
1.9 KiB
Bash
Executable File

#! /bin/sh
# Create a version.c file
# $OpenLDAP$
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
## Copyright 1998-2018 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
## modification, are permitted only as authorized by the OpenLDAP
## Public License.
##
## A copy of this license is available in the file LICENSE in the
## top-level directory of the distribution or, alternatively, at
## <http://www.OpenLDAP.org/license.html>.
PACKAGE=OpenLDAP
VERSION=unknown
SYMBOL=__Version
static=static
const=const
while :
do case "$1" in
-p)
PACKAGE=$2
shift; shift ;;
-v)
VERSION=$2
shift; shift ;;
-c)
const=
shift ;;
-n)
SYMBOL=$2
shift; shift ;;
-s)
static=
shift ;;
# -*) shift ;;
*)
break ;;
esac
done
if test $# != 1 ; then
echo 'usage: mkversion [-c] [-s] [-p package] [-v version] application'
exit 1
fi
APPLICATION=$1
# Reproducible builds set SOURCE_DATE_EPOCH, want constant strings
if [ -n "${SOURCE_DATE_EPOCH}" ]; then
WHOWHERE="openldap"
else
WHOWHERE="$USER@$(uname -n):$(pwd)"
fi
cat << __EOF__
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
* Copyright 1998-2018 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted only as authorized by the OpenLDAP
* Public License.
*
* A copy of this license is available in the file LICENSE in the
* top-level directory of the distribution or, alternatively, at
* <http://www.OpenLDAP.org/license.html>.
*/
static const char copyright[] =
"Copyright 1998-2018 The OpenLDAP Foundation. All rights reserved.\n"
"COPYING RESTRICTIONS APPLY\n";
$static $const char $SYMBOL[] =
"@(#) \$$PACKAGE: $APPLICATION $VERSION (" __DATE__ " " __TIME__ ") \$\n"
"\t$WHOWHERE\n";
__EOF__