💾 Archived View for gemini.rmf-dev.com › repo › Vaati › Menkar › files › 894e786e16c1d0d94dfc08d6b47… captured on 2023-04-19 at 23:38:41. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-03-20)

➡️ Next capture (2023-09-08)

-=-=-=-=-=-=-

0 #! /bin/sh

1 # Common stub for a few missing GNU programs while installing.

2

3 scriptversion=2005-06-08.21

4

5 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005

6 # Free Software Foundation, Inc.

7 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.

8

9 # This program is free software; you can redistribute it and/or modify

10 # it under the terms of the GNU General Public License as published by

11 # the Free Software Foundation; either version 2, or (at your option)

12 # any later version.

13

14 # This program is distributed in the hope that it will be useful,

15 # but WITHOUT ANY WARRANTY; without even the implied warranty of

16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

17 # GNU General Public License for more details.

18

19 # You should have received a copy of the GNU General Public License

20 # along with this program; if not, write to the Free Software

21 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA

22 # 02110-1301, USA.

23

24 # As a special exception to the GNU General Public License, if you

25 # distribute this file as part of a program that contains a

26 # configuration script generated by Autoconf, you may include it under

27 # the same distribution terms that you use for the rest of that program.

28

29 if test $# -eq 0; then

30 echo 1>&2 "Try \`$0 --help' for more information"

31 exit 1

32 fi

33

34 run=:

35

36 # In the cases where this matters, `missing' is being run in the

37 # srcdir already.

38 if test -f configure.ac; then

39 configure_ac=configure.ac

40 else

41 configure_ac=configure.in

42 fi

43

44 msg="missing on your system"

45

46 case "$1" in

47 --run)

48 # Try to run requested program, and just exit if it succeeds.

49 run=

50 shift

51 "$@" && exit 0

52 # Exit code 63 means version mismatch. This often happens

53 # when the user try to use an ancient version of a tool on

54 # a file that requires a minimum version. In this case we

55 # we should proceed has if the program had been absent, or

56 # if --run hadn't been passed.

57 if test $? = 63; then

58 run=:

59 msg="probably too old"

60 fi

61 ;;

62

63 -h|--h|--he|--hel|--help)

64 echo "\

65 $0 [OPTION]... PROGRAM [ARGUMENT]...

66

67 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an

68 error status if there is no known handling for PROGRAM.

69

70 Options:

71 -h, --help display this help and exit

72 -v, --version output version information and exit

73 --run try to run the given command, and emulate it if it fails

74

75 Supported PROGRAM values:

76 aclocal touch file \`aclocal.m4'

77 autoconf touch file \`configure'

78 autoheader touch file \`config.h.in'

79 automake touch all \`Makefile.in' files

80 bison create \`y.tab.[ch]', if possible, from existing .[ch]

81 flex create \`lex.yy.c', if possible, from existing .c

82 help2man touch the output file

83 lex create \`lex.yy.c', if possible, from existing .c

84 makeinfo touch the output file

85 tar try tar, gnutar, gtar, then tar without non-portable flags

86 yacc create \`y.tab.[ch]', if possible, from existing .[ch]

87

88 Send bug reports to <bug-automake@gnu.org>."

89 exit $?

90 ;;

91

92 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)

93 echo "missing $scriptversion (GNU Automake)"

94 exit $?

95 ;;

96

97 -*)

98 echo 1>&2 "$0: Unknown \`$1' option"

99 echo 1>&2 "Try \`$0 --help' for more information"

100 exit 1

101 ;;

102

103 esac

104

105 # Now exit if we have it, but it failed. Also exit now if we

106 # don't have it and --version was passed (most likely to detect

107 # the program).

108 case "$1" in

109 lex|yacc)

110 # Not GNU programs, they don't have --version.

111 ;;

112

113 tar)

114 if test -n "$run"; then

115 echo 1>&2 "ERROR: \`tar' requires --run"

116 exit 1

117 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then

118 exit 1

119 fi

120 ;;

121

122 *)

123 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then

124 # We have it, but it failed.

125 exit 1

126 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then

127 # Could not run --version or --help. This is probably someone

128 # running `$TOOL --version' or `$TOOL --help' to check whether

129 # $TOOL exists and not knowing $TOOL uses missing.

130 exit 1

131 fi

132 ;;

133 esac

134

135 # If it does not exist, or fails to run (possibly an outdated version),

136 # try to emulate it.

137 case "$1" in

138 aclocal*)

139 echo 1>&2 "\

140 WARNING: \`$1' is $msg. You should only need it if

141 you modified \`acinclude.m4' or \`${configure_ac}'. You might want

142 to install the \`Automake' and \`Perl' packages. Grab them from

143 any GNU archive site."

144 touch aclocal.m4

145 ;;

146

147 autoconf)

148 echo 1>&2 "\

149 WARNING: \`$1' is $msg. You should only need it if

150 you modified \`${configure_ac}'. You might want to install the

151 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU

152 archive site."

153 touch configure

154 ;;

155

156 autoheader)

157 echo 1>&2 "\

158 WARNING: \`$1' is $msg. You should only need it if

159 you modified \`acconfig.h' or \`${configure_ac}'. You might want

160 to install the \`Autoconf' and \`GNU m4' packages. Grab them

161 from any GNU archive site."

162 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`

163 test -z "$files" && files="config.h"

164 touch_files=

165 for f in $files; do

166 case "$f" in

167 *:*) touch_files="$touch_files "`echo "$f" |

168 sed -e 's/^[^:]*://' -e 's/:.*//'`;;

169 *) touch_files="$touch_files $f.in";;

170 esac

171 done

172 touch $touch_files

173 ;;

174

175 automake*)

176 echo 1>&2 "\

177 WARNING: \`$1' is $msg. You should only need it if

178 you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.

179 You might want to install the \`Automake' and \`Perl' packages.

180 Grab them from any GNU archive site."

181 find . -type f -name Makefile.am -print |

182 sed 's/\.am$/.in/' |

183 while read f; do touch "$f"; done

184 ;;

185

186 autom4te)

187 echo 1>&2 "\

188 WARNING: \`$1' is needed, but is $msg.

189 You might have modified some files without having the

190 proper tools for further handling them.

191 You can get \`$1' as part of \`Autoconf' from any GNU

192 archive site."

193

194 file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`

195 test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`

196 if test -f "$file"; then

197 touch $file

198 else

199 test -z "$file" || exec >$file

200 echo "#! /bin/sh"

201 echo "# Created by GNU Automake missing as a replacement of"

202 echo "# $ $@"

203 echo "exit 0"

204 chmod +x $file

205 exit 1

206 fi

207 ;;

208

209 bison|yacc)

210 echo 1>&2 "\

211 WARNING: \`$1' $msg. You should only need it if

212 you modified a \`.y' file. You may need the \`Bison' package

213 in order for those modifications to take effect. You can get

214 \`Bison' from any GNU archive site."

215 rm -f y.tab.c y.tab.h

216 if [ $# -ne 1 ]; then

217 eval LASTARG="\${$#}"

218 case "$LASTARG" in

219 *.y)

220 SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`

221 if [ -f "$SRCFILE" ]; then

222 cp "$SRCFILE" y.tab.c

223 fi

224 SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`

225 if [ -f "$SRCFILE" ]; then

226 cp "$SRCFILE" y.tab.h

227 fi

228 ;;

229 esac

230 fi

231 if [ ! -f y.tab.h ]; then

232 echo >y.tab.h

233 fi

234 if [ ! -f y.tab.c ]; then

235 echo 'main() { return 0; }' >y.tab.c

236 fi

237 ;;

238

239 lex|flex)

240 echo 1>&2 "\

241 WARNING: \`$1' is $msg. You should only need it if

242 you modified a \`.l' file. You may need the \`Flex' package

243 in order for those modifications to take effect. You can get

244 \`Flex' from any GNU archive site."

245 rm -f lex.yy.c

246 if [ $# -ne 1 ]; then

247 eval LASTARG="\${$#}"

248 case "$LASTARG" in

249 *.l)

250 SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`

251 if [ -f "$SRCFILE" ]; then

252 cp "$SRCFILE" lex.yy.c

253 fi

254 ;;

255 esac

256 fi

257 if [ ! -f lex.yy.c ]; then

258 echo 'main() { return 0; }' >lex.yy.c

259 fi

260 ;;

261

262 help2man)

263 echo 1>&2 "\

264 WARNING: \`$1' is $msg. You should only need it if

265 you modified a dependency of a manual page. You may need the

266 \`Help2man' package in order for those modifications to take

267 effect. You can get \`Help2man' from any GNU archive site."

268

269 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`

270 if test -z "$file"; then

271 file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`

272 fi

273 if [ -f "$file" ]; then

274 touch $file

275 else

276 test -z "$file" || exec >$file

277 echo ".ab help2man is required to generate this page"

278 exit 1

279 fi

280 ;;

281

282 makeinfo)

283 echo 1>&2 "\

284 WARNING: \`$1' is $msg. You should only need it if

285 you modified a \`.texi' or \`.texinfo' file, or any other file

286 indirectly affecting the aspect of the manual. The spurious

287 call might also be the consequence of using a buggy \`make' (AIX,

288 DU, IRIX). You might want to install the \`Texinfo' package or

289 the \`GNU make' package. Grab either from any GNU archive site."

290 # The file to touch is that specified with -o ...

291 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`

292 if test -z "$file"; then

293 # ... or it is the one specified with @setfilename ...

294 infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`

295 file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`

296 # ... or it is derived from the source name (dir/f.texi becomes f.info)

297 test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info

298 fi

299 # If the file does not exist, the user really needs makeinfo;

300 # let's fail without touching anything.

301 test -f $file || exit 1

302 touch $file

303 ;;

304

305 tar)

306 shift

307

308 # We have already tried tar in the generic part.

309 # Look for gnutar/gtar before invocation to avoid ugly error

310 # messages.

311 if (gnutar --version > /dev/null 2>&1); then

312 gnutar "$@" && exit 0

313 fi

314 if (gtar --version > /dev/null 2>&1); then

315 gtar "$@" && exit 0

316 fi

317 firstarg="$1"

318 if shift; then

319 case "$firstarg" in

320 *o*)

321 firstarg=`echo "$firstarg" | sed s/o//`

322 tar "$firstarg" "$@" && exit 0

323 ;;

324 esac

325 case "$firstarg" in

326 *h*)

327 firstarg=`echo "$firstarg" | sed s/h//`

328 tar "$firstarg" "$@" && exit 0

329 ;;

330 esac

331 fi

332

333 echo 1>&2 "\

334 WARNING: I can't seem to be able to run \`tar' with the given arguments.

335 You may want to install GNU tar or Free paxutils, or check the

336 command line arguments."

337 exit 1

338 ;;

339

340 *)

341 echo 1>&2 "\

342 WARNING: \`$1' is needed, and is $msg.

343 You might have modified some files without having the

344 proper tools for further handling them. Check the \`README' file,

345 it often tells you about the needed prerequisites for installing

346 this package. You may also peek at any GNU archive site, in case

347 some other package would contain this missing \`$1' program."

348 exit 1

349 ;;

350 esac

351

352 exit 0

353

354 # Local variables:

355 # eval: (add-hook 'write-file-hooks 'time-stamp)

356 # time-stamp-start: "scriptversion="

357 # time-stamp-format: "%:y-%02m-%02d.%02H"

358 # time-stamp-end: "$"

359 # End:

360