a8c582b6af9a695acd1c1594015be729f3d88010
[metze/samba/wip.git] / packaging / RHEL-CTDB / makespec.sh
1 #!/bin/sh
2 #
3 # Copyright (C) Michael Adam 2008
4 #
5 # Script to determine the samba version and create the SPEC file from template
6
7 DIRNAME=$(dirname $0)
8 TOPDIR=${DIRNAME}/../..
9 SRCDIR=${TOPDIR}/source3
10 VERSION_H=${SRCDIR}/include/autoconf/version.h
11 SPECFILE=${DIRNAME}/samba.spec
12
13 ##
14 ## determine the samba version and create the SPEC file
15 ##
16 pushd ${SRCDIR}
17 ./script/mkversion.sh
18 popd
19 if [ ! -f ${VERSION_H} ] ; then
20         echo "Error creating version.h"
21         exit 1
22 fi
23
24 VERSION=`grep "^#define SAMBA_VERSION_OFFICIAL_STRING " ${VERSION_H} | awk '{print $3}'`
25 vendor_version=`grep "^#define SAMBA_VERSION_VENDOR_SUFFIX " ${VERSION_H} | awk '{print $3}'`
26 if test "x${vendor_version}"  != "x" ; then
27         VERSION="${VERSION}-${vendor_version}"
28 fi
29 vendor_patch=`grep "^#define SAMBA_VERSION_VENDOR_PATCH " ${VERSION_H} | awk '{print $3}'`
30 if test "x${vendor_patch}" != "x" ; then
31         VERSION="${VERSION}-${vendor_patch}"
32 fi
33 VERSION=`echo ${VERSION} | sed 's/-/_/g'`
34 VERSION=`echo ${VERSION} | sed 's/\"//g'`
35 echo "VERSION: ${VERSION}"
36
37 # to build a release-rpm, set USE_GITHASH="no"
38 # in the environmet
39 #
40 if test "x$USE_GITHASH" = "xno" ; then
41         GITHASH=""
42         echo "GITHASH: not used"
43 else
44         GITHASH=".$(git log --pretty=format:%h -1)"
45         echo "GITHASH: ${GITHASH}"
46 fi
47
48
49 sed \
50         -e s/PVERSION/${VERSION}/g \
51         -e s/GITHASH/${GITHASH}/g \
52         -e s/LIBTDBVERSION/${LIBTDBVERSION}/g \
53         -e s/LIBTALLOCVERSION/${LIBTALLOCVERSION}/g \
54         < ${SPECFILE}.tmpl \
55         > ${SPECFILE}
56