source: git/make_release @ 991289b

RELEASE/1.2debug-cidebug-ci-sanitisersstereowalls-data
Last change on this file since 991289b was 991289b, checked in by Olly Betts <olly@…>, 13 years ago

make_release: Use the URL field from svn info in the command we give
to take this release rather than hard-coding the URL for trunk.

git-svn-id: file:///home/survex-svn/survex/trunk@3678 4b37db11-9a0c-4f06-9ece-9ab7cdaee568

  • Property mode set to 100755
File size: 2.3 KB
Line 
1#! /bin/sh
2
3set -e
4
5rel=yes
6if test x"$1" = x-t ; then
7   rel=
8   shift
9fi
10
11if test x"$rel" = xyes ; then
12  # Check everything is checked into SVN.
13  if svn st | grep -v '^?' | grep . > /dev/null 2> /dev/null ; then
14    echo 'There are changes not checked into SVN - please rectify'
15    echo 'If you just want to test, run with option -t'
16    exit 1
17  fi
18
19  test ! -f Makefile || make distclean
20  cp -u /usr/share/misc/config.guess .
21  cp -u /usr/share/misc/config.sub .
22  autoreconf --force -i
23  ./configure CC=gcc CXX=g++
24  make distcheck
25  # FIXME: setting c89 doesn't define unix and suppresses getc_unlocked().
26  # Tell the preprocessor to be C89 - this makes it reject // comments
27  # FIXME -Werror makes configure explode CFLAGS="-Werror -Wp,-std=c89"
28  # FIXME   CXXFLAGS="-Werror"
29else
30  make dist
31fi
32
33# Perform mingw build on a clean unpacked source tree from the release tarball
34# so that (a) we don't need to "make distclean" on the source tree and (b) we
35# ensure that any files required to build the mingw version and installer
36# package are actually shipped in the source tarball.
37tarball=`ls -1t survex-*.tar.gz`
38tardir=`basename "$tarball" .tar.gz`
39rm -rf "$tardir"
40tar xf "$tarball"
41cd "$tardir"
42
43test -n "$build_platform" || build_platform=`sh config.guess`
44SAVE_PATH=$PATH
45if test -d /usr/i586-mingw32msvc/bin ; then
46  # debian mingw32 package
47  PATH=/usr/i586-mingw32msvc/bin:$PATH
48  CC=/usr/bin/i586-mingw32msvc-gcc
49  CXX=/usr/bin/i586-mingw32msvc-g++
50else
51  # variant of debian mingw32 package?
52  PATH=/usr/i386-mingw32msvc/bin:$PATH
53  CC=/usr/bin/i386-mingw32msvc-gcc
54  CXX=/usr/bin/i386-mingw32msvc-g++
55fi
56wxc=/usr/lib/wx/config/i586-mingw32msvc-msw-unicode-release-static-2.8
57# Passing -Werror to configure causes AC_CHECK_FUNCS to fail, so pass it to
58# make instead.
59./configure --host=mingw32 --build="$build_platform" CC="$CC" CXX="$CXX" CXXFLAGS="-fno-strict-aliasing -Werror" WX_CONFIG="$wxc" LDFLAGS=-s
60make CFLAGS=-Werror
61make mingw_iss
62PATH=$SAVE_PATH
63
64mv survex-win32-*.exe ..
65cd ..
66
67if test x"$rel" = xyes ; then
68  rm -rf "$tardir"
69fi
70
71VERSION=`sed 's/^VERSION *= *//p;d' Makefile`
72URL=`svn info|sed 's/^URL: //p;d'`
73REPO_ROOT=`svn info|sed 's/^Repository Root: //p;d'`
74echo "To tag this release, run:"
75echo svn cp -m"'Tagging $VERSION'" "$URL" "$REPO_ROOT/tags/$VERSION"
Note: See TracBrowser for help on using the repository browser.