source: trunk/update-version-h.sh @ 8785

Last change on this file since 8785 was 8785, checked in by livings124, 13 years ago

the Mac build will now use the standard update version script

  • Property svn:executable set to *
File size: 1.6 KB
Line 
1#!/bin/sh
2# Generate files to be included: only overwrite them if changed so make
3# won't rebuild everything unless necessary
4replace_if_differs ()
5{
6    if cmp $1 $2 > /dev/null 2>&1; then
7      rm -f $1
8    else
9      mv -f $1 $2
10    fi
11}
12
13echo "creating libtransmission/version.h"
14
15user_agent_prefix=`grep m4_define configure.ac | sed "s/[][)(]/,/g" | grep user_agent_prefix  | cut -d , -f 6`
16
17peer_id_prefix=`grep m4_define configure.ac | sed "s/[][)(]/,/g" | grep peer_id_prefix  | cut -d , -f 6`
18
19
20# If this is a svn tree, and svnversion is available in PATH, use it to
21# grab the version.
22if [ -d ".svn" ] && type svnversion >/dev/null 2>&1; then
23    svn_revision=`svnversion -n . | cut -d: -f1 | cut -dM -f1 | cut -dS -f1`
24else
25    # Give up and check the source files
26    svn_revision=`awk '/\\$Id: /{ if ($4>i) i=$4 } END {print i}' */*.cc */*.[chm] */*.po`
27fi
28
29cat > libtransmission/version.h.new << EOF
30#define PEERID_PREFIX         "${peer_id_prefix}"
31#define USERAGENT_PREFIX      "${user_agent_prefix}"
32#define SVN_REVISION          "${svn_revision}"
33#define SVN_REVISION_NUM      ${svn_revision}
34#define SHORT_VERSION_STRING  "${user_agent_prefix}"
35#define LONG_VERSION_STRING   "${user_agent_prefix} (${svn_revision})"
36#define VERSION_STRING_INFOPLIST  ${user_agent_prefix}
37EOF
38
39# Add a release definition
40case "${peer_id_prefix}" in
41    *X-) echo '#define TR_BETA_RELEASE       "BETA"' ;;
42    *Z-) echo '#define TR_NIGHTLY_RELEASE    "NIGHTLY"' ;;
43    *)   echo '#define TR_STABLE_RELEASE     "STABLE"' ;;
44esac >> "libtransmission/version.h.new"
45
46replace_if_differs libtransmission/version.h.new libtransmission/version.h
Note: See TracBrowser for help on using the repository browser.