This repository has been archived by the owner on Nov 9, 2017. It is now read-only.
/
configure
executable file
·164 lines (136 loc) · 2.62 KB
/
configure
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
#!/bin/sh
looking () {
printf "looking $(echo $@)"
}
ok () {
printf " OK\n"
}
missing () {
printf " (missing)\n"
}
found () {
printf " (${1:-found})"
test -n "$2" && printf " $2"
printf "\n"
}
have () {
for f in "$@"
do
path=$(command -v "$1") || continue
echo "$path"
return 0
done
return 1
}
UNAME=$(uname)
HOST=$(hostname)
TIME=$(date)
echo "building for $UNAME on $HOST at $TIME"
looking "for /bin/sh"
SH=$(have /bin/sh) && {
if sh --version 2>/dev/null | grep -q bash
then
found '' "oh ick, it looks like bash"
else
found
fi
} || missing
looking "for dash"
DASH=$(have /bin/dash /usr/bin/dash dash) &&
found "$DASH" || missing
looking "for ln"
LN=$(have /bin/ln ln gln)
found "$LN" || missing
looking "for sed"
SED=$(have /usr/bin/sed sed gsed) &&
found "$SED" || missing
looking "for sort"
SORT=$(have /usr/bin/sort sort gsort)
found "$SORT" || missing
looking "for tr"
TR=$(have /usr/bin/tr tr gtr)
found "$TR" || missing
looking "for cut"
CUT=$(have /usr/bin/cut cut gcut)
found "$CUT" || missing
looking "for perl"
PERL=$(have perl)
found "$PERL" || missing
looking "for readlink"
READLINK=$(have readlink greadlink)
found "$READLINK" || missing
looking "for install"
INSTALL=$(have install ginstall)
found "$INSTALL" || missing
looking "for diff"
DIFF=$(have diff)
found "$DIFF" || missing
looking "for patch"
PATCH=$(have patch)
found "$PATCH" || missing
looking "for schocco"
SHOCCO=$(have shocco) &&
found "$SHOCCO" || missing
looking "for ronn"
RONN=$(have ronn) &&
found "$RONN" || missing
looking "for curl"
CURL=$(have curl)
found "$CURL" || missing
looking "for ruby"
RUBY=$(have ruby) &&
found "$RUBY" || missing
looking "for gem"
GEM=$(have gem) &&
found "$GEM" || missing
set -e
echo writing config.mk...
cat <<EOF > config.mk
SHELL = $SH
DASH = $DASH
LN = $LN
INSTALL = $INSTALL
SED = $SED
SORT = $SORT
TR = $TR
CUT = $CUT
PERL = $PERL
READLINK = $READLINK
DIFF = $DIFF
PATCH = $PATCH
SHOCCO = $SHOCCO
RONN = $RONN
CURL = $CURL
RUBY = $RUBY
GEM = $GEM
EOF
echo writing config.sh...
cat <<EOF > config.sh
SH='$SH'
DASH='$DASH'
LN='$LN'
SED='$SED'
SORT='$SORT'
TR='$TR'
CUT='$CUT'
PERL='$PERL'
READLINK='$READLINK'
DIFF='$DIFF'
PATCH='$PATCH'
CURL='$CURL'
RUBY='$RUBY'
GEM='$GEM'
alias ln="$LN"
alias sed="$SED"
alias sort="$SORT"
alias tr="$TR"
alias cut="$CUT"
alias perl="$PERL"
alias readlink="$READLINK"
alias diff="$DIFF"
alias patch="$PATCH"
alias curl="$CURL"
alias ruby="$RUBY"
alias gem="$GEM"
EOF
echo "done. run \`make' to build and \`make install' to install."