Merge commit 'release-4-0-0alpha15' into master4-tmp
[kai/samba-autobuild/.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/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 #
50 # get the versions of libtdb and libtalloc we provide
51 #
52 #LIBTDBVERSION=1.2.9
53 LIBTDBVERSION=$(grep ^VERSION ${DIRNAME}/../../lib/tdb/wscript | sed -e "s/'//g" -e 's/.* //')
54
55 #LIBTALLOCVERSION=2.0.1
56 LIBTALLOCVERSION=$(grep ^VERSION ${DIRNAME}/../../lib/talloc/wscript | sed -e "s/'//g" -e 's/.* //')
57
58 sed \
59         -e s/PVERSION/${VERSION}/g \
60         -e s/GITHASH/${GITHASH}/g \
61         -e s/LIBTDBVERSION/${LIBTDBVERSION}/g \
62         -e s/LIBTALLOCVERSION/${LIBTALLOCVERSION}/g \
63         < ${SPECFILE}.tmpl \
64         > ${SPECFILE}
65