1 |
dpavlin |
604 |
#!/bin/bash |
2 |
|
|
|
3 |
|
|
# $Id: configure,v 1.2 2004/09/27 15:59:30 kripke Exp $ |
4 |
|
|
# ./configure /opt/TclTk/8.4.7 |
5 |
|
|
# ./configure -mingw /opt/TclTk/8.3.5.w.a |
6 |
|
|
|
7 |
|
|
mingw=false |
8 |
|
|
case "$1" in |
9 |
|
|
-mingw) mingw=true; shift;; |
10 |
|
|
*) [ -n "$WIN32" ] && mingw=true;; |
11 |
|
|
esac |
12 |
|
|
|
13 |
|
|
cfg=${1:-/usr} |
14 |
|
|
dir=$cfg |
15 |
|
|
tgt=tclconfig.mk |
16 |
|
|
$mingw && tgt=tclconfig.w.mk |
17 |
|
|
|
18 |
|
|
for ext in "" /lib /unix; do |
19 |
|
|
dir=$cfg$ext |
20 |
|
|
[ -f $dir/tclConfig.sh ] && break |
21 |
|
|
done |
22 |
|
|
|
23 |
|
|
if [ ! -f $dir/tclConfig.sh ]; then |
24 |
|
|
echo " |
25 |
|
|
no file tclConfig.sh under $cfg |
26 |
|
|
usage |
27 |
|
|
$0 dir-containing-tclConfig.sh |
28 |
|
|
" >&2 |
29 |
|
|
exit 1 |
30 |
|
|
fi |
31 |
|
|
|
32 |
|
|
echo using cfg $dir |
33 |
|
|
date="`date`" |
34 |
|
|
|
35 |
|
|
cat <<EOF >$tgt |
36 |
|
|
# configured $date by |
37 |
|
|
# $0 $cfg |
38 |
|
|
# |
39 |
|
|
LIB_RUNTIME_DIR=$dir |
40 |
|
|
# $dir/tclConfig.sh: |
41 |
|
|
EOF |
42 |
|
|
|
43 |
|
|
. $dir/tclConfig.sh |
44 |
|
|
# mingw build leaves many options unset |
45 |
|
|
# note it's NOT -ltcl$TCL_VERSION, but libtcl83s.a for mingw :( |
46 |
|
|
# specify -L$TCL_PREFIX/lib anyway for other libs ... |
47 |
|
|
[ -z "$TCL_LIB_SPEC" ] && TCL_LIB_SPEC="-L$TCL_PREFIX/lib $TCL_PREFIX/lib/$TCL_LIB_FILE" |
48 |
|
|
while read line; do |
49 |
|
|
case "$line" in |
50 |
|
|
TCL*=*) |
51 |
|
|
var=${line%%=*} |
52 |
|
|
eval echo $var=\$$var |
53 |
|
|
eval echo $var=\$$var >&2 |
54 |
|
|
esac |
55 |
|
|
done <"$dir"/tclConfig.sh >>$tgt |
56 |
|
|
# include_spec 8.4 only, it seems |
57 |
|
|
[ -z "$TCL_INCLUDE_SPEC" ] && echo TCL_INCLUDE_SPEC=-I$TCL_PREFIX/include >>$tgt |
58 |
|
|
|
59 |
|
|
|
60 |
|
|
if [ -f "$dir"/tclxConfig.sh ]; then |
61 |
|
|
cat <<EOF >>$tgt |
62 |
|
|
# |
63 |
|
|
# $dir/tclxConfig.sh: |
64 |
|
|
# |
65 |
|
|
EOF |
66 |
|
|
|
67 |
|
|
. $dir/tclxConfig.sh |
68 |
|
|
while read line; do |
69 |
|
|
case "$line" in |
70 |
|
|
TCLX*=*) |
71 |
|
|
var=${line%%=*} |
72 |
|
|
eval echo $var=\$$var |
73 |
|
|
eval echo $var=\$$var >&2 |
74 |
|
|
esac |
75 |
|
|
done <"$dir"/tclxConfig.sh >>$tgt |
76 |
|
|
fi |
77 |
|
|
|
78 |
|
|
# tcldom |
79 |
|
|
if [ -f "$dir"/TcldomConfig.sh ]; then |
80 |
|
|
cat <<EOF >>$tgt |
81 |
|
|
# |
82 |
|
|
# $dir/TcldomConfig.sh: |
83 |
|
|
# |
84 |
|
|
EOF |
85 |
|
|
|
86 |
|
|
. $dir/TcldomConfig.sh |
87 |
|
|
while read line; do |
88 |
|
|
case "$line" in |
89 |
|
|
Tcldom*=*) |
90 |
|
|
var=${line%%=*} |
91 |
|
|
eval echo $var=\$$var |
92 |
|
|
eval echo $var=\$$var >&2 |
93 |
|
|
esac |
94 |
|
|
done <"$dir"/TcldomConfig.sh >>$tgt |
95 |
|
|
fi |
96 |
|
|
|
97 |
|
|
|
98 |
|
|
# tclxml |
99 |
|
|
if [ -f "$dir"/TclxmlConfig.sh ]; then |
100 |
|
|
cat <<EOF >>$tgt |
101 |
|
|
# |
102 |
|
|
# $dir/TclxmlConfig.sh: |
103 |
|
|
# |
104 |
|
|
EOF |
105 |
|
|
|
106 |
|
|
. $dir/TclxmlConfig.sh |
107 |
|
|
while read line; do |
108 |
|
|
case "$line" in |
109 |
|
|
Tclxml*=*) |
110 |
|
|
var=${line%%=*} |
111 |
|
|
eval echo $var=\$$var |
112 |
|
|
eval echo $var=\$$var >&2 |
113 |
|
|
esac |
114 |
|
|
done <"$dir"/TclxmlConfig.sh >>$tgt |
115 |
|
|
fi |
116 |
|
|
|
117 |
|
|
|
118 |
|
|
|
119 |
|
|
### Tk stuff |
120 |
|
|
# |
121 |
|
|
if [ ! -f "$dir"/tkConfig.sh ]; then |
122 |
|
|
echo "no tkConfig.sh in $dir" >&2 |
123 |
|
|
echo "# (no $dir/tkConfig.sh)" >>$tgt |
124 |
|
|
# skip other Tk extensions |
125 |
|
|
exit |
126 |
|
|
fi |
127 |
|
|
|
128 |
|
|
cat <<EOF >>$tgt |
129 |
|
|
# |
130 |
|
|
# $dir/tkConfig.sh: |
131 |
|
|
# |
132 |
|
|
EOF |
133 |
|
|
|
134 |
|
|
. $dir/tkConfig.sh |
135 |
|
|
[ -z "$TK_LIB_SPEC" ] && TK_LIB_SPEC="-L$TK_PREFIX/lib $TK_PREFIX/lib/$TK_LIB_FILE" |
136 |
|
|
while read line; do |
137 |
|
|
case "$line" in |
138 |
|
|
TK*=*) |
139 |
|
|
var=${line%%=*} |
140 |
|
|
eval echo $var=\$$var |
141 |
|
|
eval echo $var=\$$var >&2 |
142 |
|
|
esac |
143 |
|
|
done <"$dir"/tkConfig.sh >>$tgt |
144 |
|
|
|
145 |
|
|
|
146 |
|
|
### tkx |
147 |
|
|
if [ -f "$dir"/tkxConfig.sh ]; then |
148 |
|
|
cat <<EOF >>$tgt |
149 |
|
|
# |
150 |
|
|
# $dir/tkxConfig.sh: |
151 |
|
|
# |
152 |
|
|
EOF |
153 |
|
|
|
154 |
|
|
. $dir/tkxConfig.sh |
155 |
|
|
while read line; do |
156 |
|
|
case "$line" in |
157 |
|
|
TKX*=*) |
158 |
|
|
var=${line%%=*} |
159 |
|
|
eval echo $var=\$$var |
160 |
|
|
eval echo $var=\$$var >&2 |
161 |
|
|
esac |
162 |
|
|
done <"$dir"/tkxConfig.sh >>$tgt |
163 |
|
|
fi |
164 |
|
|
|
165 |
|
|
|
166 |
|
|
|
167 |
|
|
### tix |
168 |
|
|
if [ -f "$dir"/tixConfig.sh ]; then |
169 |
|
|
cat <<EOF >>$tgt |
170 |
|
|
# |
171 |
|
|
# $dir/tixConfig.sh: |
172 |
|
|
# |
173 |
|
|
EOF |
174 |
|
|
|
175 |
|
|
. $dir/tixConfig.sh |
176 |
|
|
while read line; do |
177 |
|
|
case "$line" in |
178 |
|
|
TIX*=*) |
179 |
|
|
var=${line%%=*} |
180 |
|
|
eval echo $var=\$$var |
181 |
|
|
eval echo $var=\$$var >&2 |
182 |
|
|
esac |
183 |
|
|
done <"$dir"/tixConfig.sh >>$tgt |
184 |
|
|
fi |
185 |
|
|
|
186 |
|
|
|
187 |
|
|
### blt |
188 |
|
|
if [ -f "$dir/libBLT24.a" ]; then |
189 |
|
|
cat <<EOF >>$tgt |
190 |
|
|
# |
191 |
|
|
# $dir/libBLT24.a: |
192 |
|
|
# |
193 |
|
|
BLT_STATIC=$dir/libBLT24.a |
194 |
|
|
EOF |
195 |
|
|
fi |
196 |
|
|
if [ -f "$dir/libBLT24.so" ]; then |
197 |
|
|
cat <<EOF >>$tgt |
198 |
|
|
# |
199 |
|
|
# $dir/libBLT24.so: |
200 |
|
|
# |
201 |
|
|
BLT_SHARED=-lBLT24 |
202 |
|
|
EOF |
203 |
|
|
fi |