]>
Commit | Line | Data |
---|---|---|
d8f1676e VZ |
1 | #!/bin/sh |
2 | # | |
3 | # This is the script used by VZ to make wxWidgets releases. It is unofficial | |
4 | # because it must be ran from git-svn repository and not the official svn one | |
5 | # and relies on having a recent Perl installation. But it has the advantage of | |
6 | # being very simple because git knows which files should be included in the | |
7 | # distribution and we don't need to maintain the list of them ourselves but we | |
8 | # also don't run the risk of including anything unwanted. | |
9 | # | |
10 | # Another prerequisite for using it is to create the list of files to be | |
11 | # converted to DOS EOLs for Windows distribution, it must exist in the parent | |
12 | # directory and be called eol-native. This can be done using the companion | |
13 | # svn-find-native-eols.pl script. And will only need to be redone when | |
14 | # svn:eol-style property changes for any files (most likely because it will be | |
15 | # set for a newly added file). | |
16 | # | |
17 | # To summarize, here are the steps to create the release: | |
18 | # | |
19 | # % cd $svn | |
20 | # % $git/build/tools/svn-find-native-eols.pl > $git/../eol-native | |
21 | # % cd $git | |
22 | # % git svn tag WX_x_y_z | |
23 | # % ./build/tools/git-make-release x.y.z | |
24 | # % ... upload ../wxWidgets-x.y.z.{7z,tar.bz2,zip} ... | |
25 | # | |
26 | # If anything is wrong and some minor fixes are required, only the last two | |
27 | # steps (tagging and git-make-release) must be repeated. | |
28 | ||
29 | version=$1 | |
30 | if [ -z "$version" ]; then | |
31 | echo "Must specify the distribution version." >2 | |
32 | exit 1 | |
33 | fi | |
34 | ||
35 | set -e | |
36 | set -x | |
37 | ||
38 | prefix=wxWidgets-$version | |
39 | destdir=$(dirname $(readlink -f $0))/../../../$prefix | |
40 | ||
41 | cleanup() { | |
42 | rm -rf $destdir | |
43 | } | |
44 | ||
45 | trap cleanup INT TERM EXIT | |
46 | ||
47 | cleanup | |
48 | ||
49 | git archive --prefix=$prefix/ HEAD | (cd ..; tar x) | |
50 | cd .. | |
51 | mv $prefix/include/wx/msw/setup0.h $prefix/include/wx/msw/setup.h | |
52 | ||
53 | tar cjf $prefix.tar.bz2 $prefix | |
54 | ||
55 | cd $prefix | |
56 | set +x | |
57 | for f in `cat ../eol-native`; do | |
58 | if [ $f == "include/wx/msw/setup0.h" ]; then | |
59 | # we renamed this file above so adjust | |
60 | f="include/wx/msw/setup.h" | |
61 | fi | |
62 | unix2dos $f | |
63 | done | |
64 | set -x | |
65 | ||
66 | zip -q -r ../$prefix.zip . | |
67 | ||
68 | 7z a ../$prefix.7z . >/dev/null |