To check out this repository please hg clone the following URL, or open the URL using EasyMercurial or your preferred Mercurial client.

Statistics Download as Zip
| Branch: | Tag: | Revision:

root / build / update-version.sh

History | View | Annotate | Download (3.61 KB)

1
#!/bin/bash
2

    
3
usage() {
4
    echo "Usage: $0 <version>"
5
    echo "  e.g. $0 2.2"
6
    echo "  e.g. $0 2.2.1"
7
    exit 2;
8
}
9

    
10
version=$1
11
[ -n "$version" ] || usage
12

    
13
major=${version%%.*} # 2.3 -> 2, 2.3.1 -> 2
14
minor=${version#*.}  # 2.3 -> 3, 2.3.1 -> 3.1
15
minor=${minor%.*}    # 3 -> 3, 3.1 -> 3
16

    
17
sdkmajor=$major
18
sdkminor=$minor
19

    
20
hostmajor=$(($major+1)) # there has been one API change in a minor release
21
hostminor=$minor
22

    
23
acs="`echo $version | tr '.' '_'`"
24

    
25
echo "Major version = $major, minor version = $minor"
26
echo "SDK current = $sdkmajor, age = $sdkminor"
27
echo "Host SDK current = $hostmajor, age = $hostminor"
28
echo "Version string = $version"
29
echo "acsymbols string = $acs"
30

    
31
p="perl -i -p -e"
32

    
33
$p 's/(This is version) [^ ]+/$1 '$version'/' \
34
    README
35

    
36
$p 's/(AC_INIT\(vamp-plugin-sdk,) [^,]+,/$1 '$version',/' \
37
    configure.ac
38

    
39
$p 's/(INSTALL_SDK_LIBNAME\s*=\s*libvamp-sdk.so).*/$1.'$sdkmajor'.'$sdkminor'.0/' \
40
    Makefile.in
41

    
42
$p 's/(INSTALL_SDK_LINK_ABI\s*=\s*libvamp-sdk.so).*/$1.'$sdkmajor'/' \
43
    Makefile.in
44

    
45
$p 's/(INSTALL_SDK_LIBNAME\s*=\s*libvamp-sdk-dynamic).*.dylib/$1.'$sdkmajor'.'$sdkminor'.0.dylib/' \
46
    Makefile.in
47

    
48
$p 's/(INSTALL_SDK_LINK_ABI\s*=\s*libvamp-sdk-dynamic).*.dylib/$1.'$sdkmajor'.dylib/' \
49
    Makefile.in
50

    
51
$p 's/(current)=.*/$1='$sdkmajor'/' \
52
    build/libvamp-sdk.la.in
53

    
54
$p 's/(age)=.*/$1='$sdkminor'/' \
55
    build/libvamp-sdk.la.in
56

    
57
$p 's/(INSTALL_HOSTSDK_LIBNAME\s*=\s*libvamp-hostsdk.so).*/$1.'$hostmajor'.'$hostminor'.0/' \
58
    Makefile.in
59

    
60
$p 's/(INSTALL_HOSTSDK_LINK_ABI\s*=\s*libvamp-hostsdk.so).*/$1.'$hostmajor'/' \
61
    Makefile.in
62

    
63
$p 's/(INSTALL_HOSTSDK_LIBNAME\s*=\s*libvamp-hostsdk).*.dylib/$1.'$hostmajor'.'$hostminor'.0.dylib/' \
64
    Makefile.in
65

    
66
$p 's/(INSTALL_HOSTSDK_LINK_ABI\s*=\s*libvamp-hostsdk).*.dylib/$1.'$hostmajor'.dylib/' \
67
    Makefile.in
68

    
69
$p 's/(current)=.*/$1='$hostmajor'/' \
70
    build/libvamp-hostsdk.la.in
71

    
72
$p 's/(age)=.*/$1='$hostminor'/' \
73
    build/libvamp-hostsdk.la.in
74

    
75
$p 's/(PROJECT_NUMBER[^=]*)=.*/$1= '$version'/' \
76
    build/Doxyfile
77

    
78
$p 's/(VAMP_API_VERSION).*/$1 '$major'/' \
79
    vamp/vamp.h
80

    
81
$p 's/(VAMP_SDK_VERSION) +"[^"]*"/$1 "'$version'"/' \
82
    vamp-sdk/plugguard.h
83

    
84
$p 's/(VAMP_SDK_MAJOR_VERSION).*/$1 '$major'/' \
85
    vamp-sdk/plugguard.h
86

    
87
$p 's/(VAMP_SDK_MINOR_VERSION).*/$1 '$minor'/' \
88
    vamp-sdk/plugguard.h
89

    
90
$p 's/(VAMP_SDK_VERSION) +"[^"]*"/$1 "'$version'"/' \
91
    vamp-hostsdk/hostguard.h
92

    
93
$p 's/(VAMP_SDK_MAJOR_VERSION).*/$1 '$major'/' \
94
    vamp-hostsdk/hostguard.h
95

    
96
$p 's/(VAMP_SDK_MINOR_VERSION).*/$1 '$minor'/' \
97
    vamp-hostsdk/hostguard.h
98

    
99
$p 's/(VAMP_SDK_MAJOR_VERSION !=) [\d\.]+/$1 '$major'/' \
100
    src/vamp-sdk/FFT.cpp
101

    
102
$p 's/(VAMP_SDK_MINOR_VERSION !=) [\d\.]+/$1 '$minor'/' \
103
    src/vamp-sdk/FFT.cpp
104

    
105
$p 's/(VAMP_SDK_MAJOR_VERSION !=) [\d\.]+/$1 '$major'/' \
106
    src/vamp-sdk/PluginAdapter.cpp
107

    
108
$p 's/(VAMP_SDK_MINOR_VERSION !=) [\d\.]+/$1 '$minor'/' \
109
    src/vamp-sdk/PluginAdapter.cpp
110

    
111
$p 's/(VAMP_SDK_MAJOR_VERSION !=) [\d\.]+/$1 '$major'/' \
112
    src/vamp-hostsdk/PluginHostAdapter.cpp
113

    
114
$p 's/(VAMP_SDK_MINOR_VERSION !=) [\d\.]+/$1 '$minor'/' \
115
    src/vamp-hostsdk/PluginHostAdapter.cpp
116

    
117
for pc in pkgconfig/*.pc.in ; do
118
    $p 's/(Version:) .*/$1 '$version'/' $pc
119
done
120

    
121
fgrep -q 'libvampsdk_v_'$acs'_present' src/vamp-sdk/acsymbols.c || \
122
    $p 's/^$/\nextern void libvampsdk_v_'$acs'_present(void) { }/' \
123
    src/vamp-sdk/acsymbols.c
124

    
125
fgrep -q 'libvamphostsdk_v_'$acs'_present' src/vamp-hostsdk/acsymbols.c || \
126
$p 's/^$/\nextern void libvamphostsdk_v_'$acs'_present(void) { }/' \
127
    src/vamp-hostsdk/acsymbols.c
128

    
129
echo "Done, now check changes with e.g. hg diff"
130
echo "*** Don't forget to update CHANGELOG"
131
echo "*** Don't forget to re-run \"aclocal -I . && autoconf\""
132