source: autobuild/scripts/autobuild

Last change on this file was 1520, checked in by moo, 13 days ago

revert [1464]

File size: 2.4 KB
Line 
1#!/bin/sh
2
3isTest() { # {{{1
4    [[ ! -z "$isTest" ]]
5}
6
7cd() { # {{{1
8    builtin cd "$@"
9    if isTest ; then
10        if [[ $OLDPWD != $PWD ]]; then
11            echo cd "$PWD"
12        fi
13    fi
14}
15
16getOutputDir() { # {{{1
17    valueof "$1"OutputDir
18}
19
20getSubdirs() { # {{{1
21    pushd "$1" >/dev/null 2>&1
22    local dir
23    for dir in *; do
24        [[ -d $dir ]] && echo "$dir"
25    done
26    popd >/dev/null 2>&1
27}
28# }}}
29
30getExtVersions() { # {{{1
31    local ext=$1
32    # script folder prefix
33    getSubdirs "$topdir/$1" | sed 's#^'$(echo "$ext-" | sed 's#.#.#g')'##'
34}
35
36loadExt() { # {{{1
37    ext="$1"
38    extDir="$topdir/$ext"
39
40    extVersions=($(getExtVersions "$ext"))
41
42    configFile="$extDir/.config"
43    if [[ ! -f $configFile ]]; then
44        die "$configFile not found"
45    fi
46    . "$configFile"
47    unset configFile
48}
49
50foreachExt() { # {{{1
51    local ext
52    for ext in "${exts[@]}"; do (
53            loadExt "$ext"
54            "$@"
55    ); done
56}
57
58loadExtVersion() { # {{{1
59    extVersion="$1"
60    extDirVersioned="$topdir/$ext/$ext-$extVersion"
61    if [[ ! -d $extDirVersioned ]]; then
62        die "$extDirVersioned not found"
63    fi
64    configFile="$extDirVersioned/.config"
65    if [[ -f $configFile ]]; then
66        . "$configFile"
67    fi
68    unset configFile
69}
70
71foreachExtVersion() { # {{{1
72    local extVersion
73    for extVersion in "${extVersions[@]}"; do (
74            loadExtVersion "$extVersion"
75        "$@"
76    ); done
77}
78
79loadPhpVersion() { # {{{1
80    phpVersion="$1"
81    phpSourcePackage="$sourceDir/php-$phpVersion.tar.bz2"
82    develDirVersioned="$develDir/php-$phpVersion"
83}
84
85foreachPhpVersion() { # {{{1
86    local phpVersion
87    local badVersion
88    local ok
89    for phpVersion in "${phpVersions[@]}"; do (
90        ok=1
91        for badVersion in "${extBadPhpVersions[@]}"; do
92            case "$extVersion-$phpVersion" in
93            $badVersion)
94                ok=0
95                ;;
96            esac
97        done
98        case "$ok" in
99        1)
100            loadPhpVersion "$phpVersion"
101            "$@"
102            ;;
103        esac
104    ); done
105}
106foreachPhpReleaseVersion() { # {{{1
107    local arch
108    local compiler
109    local nts
110    local phpReleaseVersion
111    local phpReleaseDir
112
113    for nts in '' '-nts'; do
114        case "$phpVersion" in
115        4.*|5.0.*|5.1.*)
116            phpReleaseVersion="php-$phpVersion-Win32"
117            phpReleaseDir="$develDir/$phpReleaseVersion"
118            arch=x86
119            compiler=VC6
120            nts=
121            "$@"
122            break
123            ;;
124        *)
125            for compiler in "${compilers[@]}"; do
126                for arch in "${arches[@]}"; do
127                    phpReleaseVersion=php-$phpVersion$nts-Win32-$compiler-$arch$snapVersion
128                    phpReleaseDir="$develDir/$phpReleaseVersion"
129                    phpReleaseFile="$sourceDir/$phpReleaseVersion"
130                    if [[ -d $phpReleaseDir || -f $phpReleaseFile ]]; then
131                        "$@"
132                    fi
133                done
134            done
135        esac
136    done
137}
138# }}}
Note: See TracBrowser for help on using the repository browser.