Mercurial > hg > vamp-build-and-test
comparison SCRIPTS/process.sh @ 13:fb75075c8238
Toward win32 cross-compile
author | Chris Cannam |
---|---|
date | Mon, 04 Aug 2014 18:03:21 +0100 |
parents | 8dd6da2a48ee |
children | 114c03877f21 |
comparison
equal
deleted
inserted
replaced
12:c9da127aa189 | 13:fb75075c8238 |
---|---|
7 ## plugin loads | 7 ## plugin loads |
8 ## passes vamp-plugin-tester tests | 8 ## passes vamp-plugin-tester tests |
9 ## does not export any unnecessary symbols | 9 ## does not export any unnecessary symbols |
10 ## has valid .cat and .n3 | 10 ## has valid .cat and .n3 |
11 | 11 |
12 platform=linux | 12 #platform=linux |
13 bits=64 | 13 #bits=64 |
14 | |
15 platform=mingw | |
16 bits=32 | |
17 toolprefix=i686-w64-mingw32- | |
14 | 18 |
15 plugindirs="$@" | 19 plugindirs="$@" |
16 if [ -z "$plugindirs" ]; then | 20 if [ -z "$plugindirs" ]; then |
17 plugindirs=$(cat .hgsub | grep -v vamp-plugin-sdk | grep -v vamp-plugin-tester | awk '{ print $1; }') | 21 plugindirs=$(cat .hgsub | grep -v vamp-plugin-sdk | grep -v vamp-plugin-tester | awk '{ print $1; }') |
18 fi | 22 fi |
31 if [ -f "$dir/configure" ] ; then | 35 if [ -f "$dir/configure" ] ; then |
32 ( cd "$dir" ; ./configure ) 2>&1 | tee "$reportdir/$dir.configure.txt" | 36 ( cd "$dir" ; ./configure ) 2>&1 | tee "$reportdir/$dir.configure.txt" |
33 fi | 37 fi |
34 } | 38 } |
35 | 39 |
36 configure_maybe() { | |
37 dir="$1" | |
38 if [ ! -f "$dir/Makefile" ] ; then | |
39 configure "$dir" | |
40 fi | |
41 } | |
42 | |
43 find_makefile() { | 40 find_makefile() { |
44 dir="$1" | 41 dir="$1" |
45 | |
46 for f in \ | 42 for f in \ |
47 Makefile \ | 43 build/$platform/Makefile.$platform$bits \ |
44 build/$platform/Makefile.$platform \ | |
45 build/$platform/Makefile \ | |
46 build/Makefile.$platform$bits \ | |
47 build/Makefile.$platform \ | |
48 Makefile.$platform$bits \ | |
48 Makefile.$platform \ | 49 Makefile.$platform \ |
49 Makefile.$platform$bits \ | 50 Makefile ; do |
50 build/$platform/Makefile \ | |
51 build/$platform/Makefile.$platform \ | |
52 build/$platform/Makefile.$platform$bits; do | |
53 if [ -f "$dir/$f" ]; then | 51 if [ -f "$dir/$f" ]; then |
54 echo $f | 52 echo $f |
55 break | 53 break |
56 fi | 54 fi |
57 done | 55 done |
58 } | 56 } |
59 | 57 |
58 configure_maybe() { | |
59 dir="$1" | |
60 mfile=$(find_makefile "$dir") | |
61 if [ -z "$mfile" ]; then | |
62 configure "$dir" | |
63 fi | |
64 } | |
65 | |
60 build() { | 66 build() { |
61 dir="$1" | 67 dir="$1" |
62 if configure_maybe "$dir"; then | 68 if configure_maybe "$dir"; then |
63 mfile=$(find_makefile "$dir") | 69 mfile=$(find_makefile "$dir") |
64 if [ -n "$mfile" ]; then | 70 if [ -n "$mfile" ]; then |
65 make -C "$dir" -f "$mfile" 2>&1 | tee "$reportdir/$dir.build.txt" | 71 make -C "$dir" -f "$mfile" TOOLPREFIX="$toolprefix" 2>&1 | tee "$reportdir/$dir.build.txt" |
66 return ${PIPESTATUS[0]} | 72 return ${PIPESTATUS[0]} |
67 else | 73 else |
68 echo "Failed to find a Makefile in $dir" | 74 echo "Failed to find a Makefile in $dir" |
69 return 1 | 75 return 1 |
70 fi | 76 fi |
71 fi | 77 fi |
72 } | 78 } |
73 | 79 |
74 rebuild() { | 80 rebuild() { |
75 dir="$1" | 81 dir="$1" |
76 if configure "$dir"; then | 82 if configure_maybe "$dir"; then |
77 mfile=$(find_makefile "$dir") | 83 mfile=$(find_makefile "$dir") |
78 if [ -n "$mfile" ]; then | 84 if [ -n "$mfile" ]; then |
79 make -C "$dir" -f "$mfile" clean | 85 make -C "$dir" -f "$mfile" clean |
80 make -C "$dir" -f "$mfile" 2>&1 | tee "$reportdir/$dir.build.txt" | 86 make -C "$dir" -f "$mfile" TOOLPREFIX="$toolprefix" 2>&1 | tee "$reportdir/$dir.build.txt" |
81 return ${PIPESTATUS[0]} | 87 return ${PIPESTATUS[0]} |
82 else | 88 else |
83 echo "Failed to find a Makefile in $dir" | 89 echo "Failed to find a Makefile in $dir" |
84 return 1 | 90 return 1 |
85 fi | 91 fi |
134 echo "NOTE: found library $lib that is not a Vamp plugin library" | 140 echo "NOTE: found library $lib that is not a Vamp plugin library" |
135 fi | 141 fi |
136 done | 142 done |
137 } | 143 } |
138 | 144 |
139 if ! build "vamp-plugin-sdk"; then | 145 if ! rebuild "vamp-plugin-sdk"; then |
140 echo "Failed to build Vamp plugin SDK!" | 146 echo "Failed to build Vamp plugin SDK!" |
141 exit 1 | 147 exit 1 |
142 fi | 148 fi |
143 | 149 |
144 if ! build "vamp-plugin-tester"; then | 150 if ! rebuild "vamp-plugin-tester"; then |
145 echo "Failed to build Vamp plugin tester!" | 151 echo "Failed to build Vamp plugin tester!" |
146 exit 1 | 152 exit 1 |
147 fi | 153 fi |
148 | 154 |
149 for dir in $plugindirs ; do | 155 for dir in $plugindirs ; do |