Changeset 501 in kBuild for vendor/gnumake/current/config
- Timestamp:
- Sep 15, 2006 2:30:32 AM (18 years ago)
- Location:
- vendor/gnumake/current/config
- Files:
-
- 10 added
- 1 deleted
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/gnumake/current/config/ChangeLog
r53 r501 1 2006-03-09 Paul Smith <[email protected]> 2 3 * dospaths.m4: Add MSYS to the list of targets allowing DOS-style 4 pathnames. Reported by David Ergo <[email protected]>. 5 6 2005-07-01 Paul D. Smith <[email protected]> 7 8 * Makefile.am (EXTRA_DIST): Added more M4 files to EXTRA_DIST, so 9 users can re-run aclocal. 10 1 11 2003-04-30 Paul D. Smith <[email protected]> 2 12 … … 18 28 * Makefile.am: New file. 19 29 30 31 32 Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. 33 This file is part of GNU Make. 34 35 GNU Make is free software; you can redistribute it and/or modify it under the 36 terms of the GNU General Public License as published by the Free Software 37 Foundation; either version 2, or (at your option) any later version. 38 39 GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY 40 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 41 A PARTICULAR PURPOSE. See the GNU General Public License for more details. 42 43 You should have received a copy of the GNU General Public License along with 44 GNU Make; see the file COPYING. If not, write to the Free Software 45 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -
vendor/gnumake/current/config/Makefile.am
r53 r501 1 1 # -*-Makefile-*-, or close enough 2 # Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. 3 # This file is part of GNU Make. 4 # 5 # GNU Make is free software; you can redistribute it and/or modify it under the 6 # terms of the GNU General Public License as published by the Free Software 7 # Foundation; either version 2, or (at your option) any later version. 8 # 9 # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY 10 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 11 # A PARTICULAR PURPOSE. See the GNU General Public License for more details. 12 # 13 # You should have received a copy of the GNU General Public License along with 14 # GNU Make; see the file COPYING. If not, write to the Free Software 15 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2 16 3 17 EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 nls.m4 \ 4 18 intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 \ 5 19 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 \ 6 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 \ 7 dospaths.m4 po.m4 20 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 longlong.m4 \ 21 dospaths.m4 po.m4 signed.m4 longdouble.m4 wchar_t.m4 \ 22 wint_t.m4 intmax.m4 printf-posix.m4 xsize.m4 size_max.m4 -
vendor/gnumake/current/config/Makefile.in
r152 r501 1 # Makefile.in generated by automake 1. 8.2from Makefile.am.1 # Makefile.in generated by automake 1.9.6 from Makefile.am. 2 2 # @configure_input@ 3 3 4 4 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 5 # 2003, 2004 Free Software Foundation, Inc.5 # 2003, 2004, 2005 Free Software Foundation, Inc. 6 6 # This Makefile.in is free software; the Free Software Foundation 7 7 # gives unlimited permission to copy and/or distribute it, … … 16 16 17 17 # -*-Makefile-*-, or close enough 18 # Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. 19 # This file is part of GNU Make. 20 # 21 # GNU Make is free software; you can redistribute it and/or modify it under the 22 # terms of the GNU General Public License as published by the Free Software 23 # Foundation; either version 2, or (at your option) any later version. 24 # 25 # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY 26 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 27 # A PARTICULAR PURPOSE. See the GNU General Public License for more details. 28 # 29 # You should have received a copy of the GNU General Public License along with 30 # GNU Make; see the file COPYING. If not, write to the Free Software 31 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 32 srcdir = @srcdir@ 19 33 top_srcdir = @top_srcdir@ … … 36 50 PRE_UNINSTALL = : 37 51 POST_UNINSTALL = : 52 build_triplet = @build@ 38 53 host_triplet = @host@ 39 54 subdir = config 40 55 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \ 41 56 compile config.guess config.rpath config.sub depcomp \ 42 install-sh m issing mkinstalldirs texinfo.tex57 install-sh mdate-sh missing mkinstalldirs texinfo.tex 43 58 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 44 59 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ … … 126 141 USE_NLS = @USE_NLS@ 127 142 VERSION = @VERSION@ 143 WINDOWSENV_FALSE = @WINDOWSENV_FALSE@ 144 WINDOWSENV_TRUE = @WINDOWSENV_TRUE@ 128 145 XGETTEXT = @XGETTEXT@ 129 146 ac_ct_CC = @ac_ct_CC@ … … 135 152 am__leading_dot = @am__leading_dot@ 136 153 am__quote = @am__quote@ 154 am__tar = @am__tar@ 155 am__untar = @am__untar@ 137 156 bindir = @bindir@ 138 157 build = @build@ … … 166 185 intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 \ 167 186 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 \ 168 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 \ 169 dospaths.m4 po.m4 187 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 longlong.m4 \ 188 dospaths.m4 po.m4 signed.m4 longdouble.m4 wchar_t.m4 \ 189 wint_t.m4 intmax.m4 printf-posix.m4 xsize.m4 size_max.m4 170 190 171 191 all: all-am … … 259 279 260 280 distclean-generic: 261 - rm -f $(CONFIG_CLEAN_FILES)281 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) 262 282 263 283 maintainer-clean-generic: -
vendor/gnumake/current/config/compile
-
Property svn:executable
set to
*
r152 r501 2 2 # Wrapper for compilers which do not understand `-c -o'. 3 3 4 scriptversion=200 3-11-09.004 scriptversion=2005-05-14.22 5 5 6 # Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.6 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. 7 7 # Written by Tom Tromey <[email protected]>. 8 8 # … … 19 19 # You should have received a copy of the GNU General Public License 20 20 # along with this program; if not, write to the Free Software 21 # Foundation, Inc., 5 9 Temple Place - Suite 330, Boston, MA 02111-1307, USA.21 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 22 22 23 23 # As a special exception to the GNU General Public License, if you … … 48 48 Report bugs to <[email protected]>. 49 49 EOF 50 exit 050 exit $? 51 51 ;; 52 52 -v | --v*) 53 53 echo "compile $scriptversion" 54 exit 054 exit $? 55 55 ;; 56 56 esac 57 57 58 59 prog=$160 shift61 62 58 ofile= 63 59 cfile= 64 args= 65 while test $# -gt 0; do 66 case "$1" in 67 -o) 68 # configure might choose to run compile as `compile cc -o foo foo.c'. 69 # So we do something ugly here. 70 ofile=$2 71 shift 72 case "$ofile" in 73 *.o | *.obj) 74 ;; 75 *) 76 args="$args -o $ofile" 77 ofile= 78 ;; 79 esac 80 ;; 81 *.c) 82 cfile=$1 83 args="$args $1" 84 ;; 85 *) 86 args="$args $1" 87 ;; 88 esac 60 eat= 61 62 for arg 63 do 64 if test -n "$eat"; then 65 eat= 66 else 67 case $1 in 68 -o) 69 # configure might choose to run compile as `compile cc -o foo foo.c'. 70 # So we strip `-o arg' only if arg is an object. 71 eat=1 72 case $2 in 73 *.o | *.obj) 74 ofile=$2 75 ;; 76 *) 77 set x "$@" -o "$2" 78 shift 79 ;; 80 esac 81 ;; 82 *.c) 83 cfile=$1 84 set x "$@" "$1" 85 shift 86 ;; 87 *) 88 set x "$@" "$1" 89 shift 90 ;; 91 esac 92 fi 89 93 shift 90 94 done … … 96 100 # `.c' file was seen then we are probably linking. That is also 97 101 # ok. 98 exec "$ prog" $args102 exec "$@" 99 103 fi 100 104 101 105 # Name of file we expect compiler to create. 102 cofile=`echo $cfile| sed -e 's|^.*/||' -e 's/\.c$/.o/'`106 cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'` 103 107 104 108 # Create the lock directory. … … 106 110 # that we are using for the .o file. Also, base the name on the expected 107 111 # object file name, since that is what matters with a parallel build. 108 lockdir=`echo $cofile| sed -e 's|[/.-]|_|g'`.d112 lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d 109 113 while true; do 110 if mkdir $lockdir >/dev/null 2>&1; then114 if mkdir "$lockdir" >/dev/null 2>&1; then 111 115 break 112 116 fi … … 114 118 done 115 119 # FIXME: race condition here if user kills between mkdir and trap. 116 trap "rmdir $lockdir; exit 1" 1 2 15120 trap "rmdir '$lockdir'; exit 1" 1 2 15 117 121 118 122 # Run the compile. 119 "$ prog" $args120 status=$?123 "$@" 124 ret=$? 121 125 122 126 if test -f "$cofile"; then 123 127 mv "$cofile" "$ofile" 128 elif test -f "${cofile}bj"; then 129 mv "${cofile}bj" "$ofile" 124 130 fi 125 131 126 rmdir $lockdir127 exit $ status132 rmdir "$lockdir" 133 exit $ret 128 134 129 135 # Local Variables: -
Property svn:executable
set to
-
vendor/gnumake/current/config/config.guess
r152 r501 2 2 # Attempt to guess a canonical system name. 3 3 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4 # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 5 6 timestamp='2004-03-03' 4 # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, 5 # Inc. 6 7 timestamp='2006-03-13' 7 8 8 9 # This file is free software; you can redistribute it and/or modify it … … 18 19 # You should have received a copy of the GNU General Public License 19 20 # along with this program; if not, write to the Free Software 20 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 21 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 22 # 02110-1301, USA. 21 23 # 22 24 # As a special exception to the GNU General Public License, if you … … 24 26 # configuration script generated by Autoconf, you may include it under 25 27 # the same distribution terms that you use for the rest of that program. 28 26 29 27 30 # Originally written by Per Bothner <[email protected]>. … … 54 57 55 58 Originally written by Per Bothner. 56 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 59 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 57 60 Free Software Foundation, Inc. 58 61 … … 67 70 case $1 in 68 71 --time-stamp | --time* | -t ) 69 echo "$timestamp" ; exit 0;;72 echo "$timestamp" ; exit ;; 70 73 --version | -v ) 71 echo "$version" ; exit 0;;74 echo "$version" ; exit ;; 72 75 --help | --h* | -h ) 73 echo "$usage"; exit 0;;76 echo "$usage"; exit ;; 74 77 -- ) # Stop option processing 75 78 shift; break ;; … … 105 108 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; 106 109 : ${TMPDIR=/tmp} ; 107 { tmp=`(umask 077 && mktemp -d -q"$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||110 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || 108 111 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || 109 112 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || … … 124 127 ,,*) CC_FOR_BUILD=$CC ;; 125 128 ,*,*) CC_FOR_BUILD=$HOST_CC ;; 126 esac ; '129 esac ; set_cc_for_build= ;' 127 130 128 131 # This is needed to find uname on a Pyramid OSx when run in the BSD universe. … … 197 200 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 198 201 echo "${machine}-${os}${release}" 199 exit 0 ;; 200 amd64:OpenBSD:*:*) 201 echo x86_64-unknown-openbsd${UNAME_RELEASE} 202 exit 0 ;; 203 amiga:OpenBSD:*:*) 204 echo m68k-unknown-openbsd${UNAME_RELEASE} 205 exit 0 ;; 206 arc:OpenBSD:*:*) 207 echo mipsel-unknown-openbsd${UNAME_RELEASE} 208 exit 0 ;; 209 cats:OpenBSD:*:*) 210 echo arm-unknown-openbsd${UNAME_RELEASE} 211 exit 0 ;; 212 hp300:OpenBSD:*:*) 213 echo m68k-unknown-openbsd${UNAME_RELEASE} 214 exit 0 ;; 215 mac68k:OpenBSD:*:*) 216 echo m68k-unknown-openbsd${UNAME_RELEASE} 217 exit 0 ;; 218 macppc:OpenBSD:*:*) 219 echo powerpc-unknown-openbsd${UNAME_RELEASE} 220 exit 0 ;; 221 mvme68k:OpenBSD:*:*) 222 echo m68k-unknown-openbsd${UNAME_RELEASE} 223 exit 0 ;; 224 mvme88k:OpenBSD:*:*) 225 echo m88k-unknown-openbsd${UNAME_RELEASE} 226 exit 0 ;; 227 mvmeppc:OpenBSD:*:*) 228 echo powerpc-unknown-openbsd${UNAME_RELEASE} 229 exit 0 ;; 230 pegasos:OpenBSD:*:*) 231 echo powerpc-unknown-openbsd${UNAME_RELEASE} 232 exit 0 ;; 233 pmax:OpenBSD:*:*) 234 echo mipsel-unknown-openbsd${UNAME_RELEASE} 235 exit 0 ;; 236 sgi:OpenBSD:*:*) 237 echo mipseb-unknown-openbsd${UNAME_RELEASE} 238 exit 0 ;; 239 sun3:OpenBSD:*:*) 240 echo m68k-unknown-openbsd${UNAME_RELEASE} 241 exit 0 ;; 242 wgrisc:OpenBSD:*:*) 243 echo mipsel-unknown-openbsd${UNAME_RELEASE} 244 exit 0 ;; 202 exit ;; 245 203 *:OpenBSD:*:*) 246 echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} 247 exit 0 ;; 204 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 205 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 206 exit ;; 248 207 *:ekkoBSD:*:*) 249 208 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} 250 exit 0 ;; 209 exit ;; 210 *:SolidBSD:*:*) 211 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} 212 exit ;; 251 213 macppc:MirBSD:*:*) 252 214 echo powerppc-unknown-mirbsd${UNAME_RELEASE} 253 exit 0;;215 exit ;; 254 216 *:MirBSD:*:*) 255 217 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} 256 exit 0;;218 exit ;; 257 219 alpha:OSF1:*:*) 258 220 case $UNAME_RELEASE in … … 307 269 # 1.2 uses "1.2" for uname -r. 308 270 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` 309 exit 0 ;; 310 Alpha*:OpenVMS:*:*) 311 echo alpha-hp-vms 312 exit 0 ;; 271 exit ;; 313 272 Alpha\ *:Windows_NT*:*) 314 273 # How do we know it's Interix rather than the generic POSIX subsystem? … … 316 275 # of the specific Alpha model? 317 276 echo alpha-pc-interix 318 exit 0;;277 exit ;; 319 278 21064:Windows_NT:50:3) 320 279 echo alpha-dec-winnt3.5 321 exit 0;;280 exit ;; 322 281 Amiga*:UNIX_System_V:4.0:*) 323 282 echo m68k-unknown-sysv4 324 exit 0;;283 exit ;; 325 284 *:[Aa]miga[Oo][Ss]:*:*) 326 285 echo ${UNAME_MACHINE}-unknown-amigaos 327 exit 0;;286 exit ;; 328 287 *:[Mm]orph[Oo][Ss]:*:*) 329 288 echo ${UNAME_MACHINE}-unknown-morphos 330 exit 0;;289 exit ;; 331 290 *:OS/390:*:*) 332 291 echo i370-ibm-openedition 333 exit 0 ;; 292 exit ;; 293 *:z/VM:*:*) 294 echo s390-ibm-zvmoe 295 exit ;; 334 296 *:OS400:*:*) 335 297 echo powerpc-ibm-os400 336 exit 0;;298 exit ;; 337 299 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 338 300 echo arm-acorn-riscix${UNAME_RELEASE} 339 exit 0;; 301 exit ;; 302 arm:riscos:*:*|arm:RISCOS:*:*) 303 echo arm-unknown-riscos 304 exit ;; 340 305 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 341 306 echo hppa1.1-hitachi-hiuxmpp 342 exit 0;;307 exit ;; 343 308 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) 344 309 # [email protected] (Earle F. Ake) contributed MIS and NILE. … … 348 313 echo pyramid-pyramid-bsd 349 314 fi 350 exit 0;;315 exit ;; 351 316 NILE*:*:*:dcosx) 352 317 echo pyramid-pyramid-svr4 353 exit 0;;318 exit ;; 354 319 DRS?6000:unix:4.0:6*) 355 320 echo sparc-icl-nx6 356 exit 0;;357 DRS?6000:UNIX_SV:4.2*:7* )321 exit ;; 322 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) 358 323 case `/usr/bin/uname -p` in 359 sparc) echo sparc-icl-nx7 && exit 0;;324 sparc) echo sparc-icl-nx7; exit ;; 360 325 esac ;; 361 326 sun4H:SunOS:5.*:*) 362 327 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 363 exit 0;;328 exit ;; 364 329 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) 365 330 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 366 exit 0;;331 exit ;; 367 332 i86pc:SunOS:5.*:*) 368 333 echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 369 exit 0;;334 exit ;; 370 335 sun4*:SunOS:6*:*) 371 336 # According to config.sub, this is the proper way to canonicalize … … 373 338 # it's likely to be more like Solaris than SunOS4. 374 339 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 375 exit 0;;340 exit ;; 376 341 sun4*:SunOS:*:*) 377 342 case "`/usr/bin/arch -k`" in … … 382 347 # Japanese Language versions have a version number like `4.1.3-JL'. 383 348 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` 384 exit 0;;349 exit ;; 385 350 sun3*:SunOS:*:*) 386 351 echo m68k-sun-sunos${UNAME_RELEASE} 387 exit 0;;352 exit ;; 388 353 sun*:*:4.2BSD:*) 389 354 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` … … 397 362 ;; 398 363 esac 399 exit 0;;364 exit ;; 400 365 aushp:SunOS:*:*) 401 366 echo sparc-auspex-sunos${UNAME_RELEASE} 402 exit 0;;367 exit ;; 403 368 # The situation for MiNT is a little confusing. The machine name 404 369 # can be virtually everything (everything which is not … … 411 376 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) 412 377 echo m68k-atari-mint${UNAME_RELEASE} 413 exit 0;;378 exit ;; 414 379 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) 415 380 echo m68k-atari-mint${UNAME_RELEASE} 416 exit 0;;381 exit ;; 417 382 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) 418 383 echo m68k-atari-mint${UNAME_RELEASE} 419 exit 0;;384 exit ;; 420 385 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) 421 386 echo m68k-milan-mint${UNAME_RELEASE} 422 exit 0;;387 exit ;; 423 388 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) 424 389 echo m68k-hades-mint${UNAME_RELEASE} 425 exit 0;;390 exit ;; 426 391 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) 427 392 echo m68k-unknown-mint${UNAME_RELEASE} 428 exit 0;;393 exit ;; 429 394 m68k:machten:*:*) 430 395 echo m68k-apple-machten${UNAME_RELEASE} 431 exit 0;;396 exit ;; 432 397 powerpc:machten:*:*) 433 398 echo powerpc-apple-machten${UNAME_RELEASE} 434 exit 0;;399 exit ;; 435 400 RISC*:Mach:*:*) 436 401 echo mips-dec-mach_bsd4.3 437 exit 0;;402 exit ;; 438 403 RISC*:ULTRIX:*:*) 439 404 echo mips-dec-ultrix${UNAME_RELEASE} 440 exit 0;;405 exit ;; 441 406 VAX*:ULTRIX*:*:*) 442 407 echo vax-dec-ultrix${UNAME_RELEASE} 443 exit 0;;408 exit ;; 444 409 2020:CLIX:*:* | 2430:CLIX:*:*) 445 410 echo clipper-intergraph-clix${UNAME_RELEASE} 446 exit 0;;411 exit ;; 447 412 mips:*:*:UMIPS | mips:*:*:RISCos) 448 413 eval $set_cc_for_build … … 468 433 } 469 434 EOF 470 $CC_FOR_BUILD -o $dummy $dummy.c \ 471 && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ 472 && exit 0 435 $CC_FOR_BUILD -o $dummy $dummy.c && 436 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && 437 SYSTEM_NAME=`$dummy $dummyarg` && 438 { echo "$SYSTEM_NAME"; exit; } 473 439 echo mips-mips-riscos${UNAME_RELEASE} 474 exit 0;;440 exit ;; 475 441 Motorola:PowerMAX_OS:*:*) 476 442 echo powerpc-motorola-powermax 477 exit 0;;443 exit ;; 478 444 Motorola:*:4.3:PL8-*) 479 445 echo powerpc-harris-powermax 480 exit 0;;446 exit ;; 481 447 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) 482 448 echo powerpc-harris-powermax 483 exit 0;;449 exit ;; 484 450 Night_Hawk:Power_UNIX:*:*) 485 451 echo powerpc-harris-powerunix 486 exit 0;;452 exit ;; 487 453 m88k:CX/UX:7*:*) 488 454 echo m88k-harris-cxux7 489 exit 0;;455 exit ;; 490 456 m88k:*:4*:R4*) 491 457 echo m88k-motorola-sysv4 492 exit 0;;458 exit ;; 493 459 m88k:*:3*:R3*) 494 460 echo m88k-motorola-sysv3 495 exit 0;;461 exit ;; 496 462 AViiON:dgux:*:*) 497 463 # DG/UX returns AViiON for all architectures … … 509 475 echo i586-dg-dgux${UNAME_RELEASE} 510 476 fi 511 exit 0;;477 exit ;; 512 478 M88*:DolphinOS:*:*) # DolphinOS (SVR3) 513 479 echo m88k-dolphin-sysv3 514 exit 0;;480 exit ;; 515 481 M88*:*:R3*:*) 516 482 # Delta 88k system running SVR3 517 483 echo m88k-motorola-sysv3 518 exit 0;;484 exit ;; 519 485 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) 520 486 echo m88k-tektronix-sysv3 521 exit 0;;487 exit ;; 522 488 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) 523 489 echo m68k-tektronix-bsd 524 exit 0;;490 exit ;; 525 491 *:IRIX*:*:*) 526 492 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` 527 exit 0;;493 exit ;; 528 494 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. 529 echo romp-ibm-aix 530 exit 0 ;;# Note that: echo "'`uname -s`'" gives 'AIX '495 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id 496 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' 531 497 i*86:AIX:*:*) 532 498 echo i386-ibm-aix 533 exit 0;;499 exit ;; 534 500 ia64:AIX:*:*) 535 501 if [ -x /usr/bin/oslevel ] ; then … … 539 505 fi 540 506 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} 541 exit 0;;507 exit ;; 542 508 *:AIX:2:3) 543 509 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then … … 554 520 } 555 521 EOF 556 $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 557 echo rs6000-ibm-aix3.2.5 522 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` 523 then 524 echo "$SYSTEM_NAME" 525 else 526 echo rs6000-ibm-aix3.2.5 527 fi 558 528 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then 559 529 echo rs6000-ibm-aix3.2.4 … … 561 531 echo rs6000-ibm-aix3.2 562 532 fi 563 exit 0;;533 exit ;; 564 534 *:AIX:*:[45]) 565 535 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` … … 575 545 fi 576 546 echo ${IBM_ARCH}-ibm-aix${IBM_REV} 577 exit 0;;547 exit ;; 578 548 *:AIX:*:*) 579 549 echo rs6000-ibm-aix 580 exit 0;;550 exit ;; 581 551 ibmrt:4.4BSD:*|romp-ibm:BSD:*) 582 552 echo romp-ibm-bsd4.4 583 exit 0;;553 exit ;; 584 554 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and 585 555 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to 586 exit 0 ;;# report: romp-ibm BSD 4.3556 exit ;; # report: romp-ibm BSD 4.3 587 557 *:BOSX:*:*) 588 558 echo rs6000-bull-bosx 589 exit 0;;559 exit ;; 590 560 DPX/2?00:B.O.S.:*:*) 591 561 echo m68k-bull-sysv3 592 exit 0;;562 exit ;; 593 563 9000/[34]??:4.3bsd:1.*:*) 594 564 echo m68k-hp-bsd 595 exit 0;;565 exit ;; 596 566 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) 597 567 echo m68k-hp-bsd4.4 598 exit 0;;568 exit ;; 599 569 9000/[34678]??:HP-UX:*:*) 600 570 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` … … 658 628 if [ ${HP_ARCH} = "hppa2.0w" ] 659 629 then 660 # avoid double evaluation of $set_cc_for_build 661 test -n "$CC_FOR_BUILD" || eval $set_cc_for_build 662 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null 630 eval $set_cc_for_build 631 632 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating 633 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler 634 # generating 64-bit code. GNU and HP use different nomenclature: 635 # 636 # $ CC_FOR_BUILD=cc ./config.guess 637 # => hppa2.0w-hp-hpux11.23 638 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess 639 # => hppa64-hp-hpux11.23 640 641 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | 642 grep __LP64__ >/dev/null 663 643 then 664 644 HP_ARCH="hppa2.0w" … … 668 648 fi 669 649 echo ${HP_ARCH}-hp-hpux${HPUX_REV} 670 exit 0;;650 exit ;; 671 651 ia64:HP-UX:*:*) 672 652 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` 673 653 echo ia64-hp-hpux${HPUX_REV} 674 exit 0;;654 exit ;; 675 655 3050*:HI-UX:*:*) 676 656 eval $set_cc_for_build … … 700 680 } 701 681 EOF 702 $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 682 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && 683 { echo "$SYSTEM_NAME"; exit; } 703 684 echo unknown-hitachi-hiuxwe2 704 exit 0;;685 exit ;; 705 686 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) 706 687 echo hppa1.1-hp-bsd 707 exit 0;;688 exit ;; 708 689 9000/8??:4.3bsd:*:*) 709 690 echo hppa1.0-hp-bsd 710 exit 0;;691 exit ;; 711 692 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) 712 693 echo hppa1.0-hp-mpeix 713 exit 0;;694 exit ;; 714 695 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) 715 696 echo hppa1.1-hp-osf 716 exit 0;;697 exit ;; 717 698 hp8??:OSF1:*:*) 718 699 echo hppa1.0-hp-osf 719 exit 0;;700 exit ;; 720 701 i*86:OSF1:*:*) 721 702 if [ -x /usr/sbin/sysversion ] ; then … … 724 705 echo ${UNAME_MACHINE}-unknown-osf1 725 706 fi 726 exit 0;;707 exit ;; 727 708 parisc*:Lites*:*:*) 728 709 echo hppa1.1-hp-lites 729 exit 0;;710 exit ;; 730 711 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) 731 712 echo c1-convex-bsd 732 exit 0;;713 exit ;; 733 714 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) 734 715 if getsysinfo -f scalar_acc … … 736 717 else echo c2-convex-bsd 737 718 fi 738 exit 0;;719 exit ;; 739 720 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) 740 721 echo c34-convex-bsd 741 exit 0;;722 exit ;; 742 723 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) 743 724 echo c38-convex-bsd 744 exit 0;;725 exit ;; 745 726 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) 746 727 echo c4-convex-bsd 747 exit 0;;728 exit ;; 748 729 CRAY*Y-MP:*:*:*) 749 730 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 750 exit 0;;731 exit ;; 751 732 CRAY*[A-Z]90:*:*:*) 752 733 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ … … 754 735 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ 755 736 -e 's/\.[^.]*$/.X/' 756 exit 0;;737 exit ;; 757 738 CRAY*TS:*:*:*) 758 739 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 759 exit 0;;740 exit ;; 760 741 CRAY*T3E:*:*:*) 761 742 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 762 exit 0;;743 exit ;; 763 744 CRAY*SV1:*:*:*) 764 745 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 765 exit 0;;746 exit ;; 766 747 *:UNICOS/mp:*:*) 767 echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'768 exit 0;;748 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' 749 exit ;; 769 750 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) 770 751 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` … … 772 753 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` 773 754 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 774 exit 0;;755 exit ;; 775 756 5000:UNIX_System_V:4.*:*) 776 757 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` 777 758 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` 778 759 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" 779 exit 0;;760 exit ;; 780 761 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) 781 762 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} 782 exit 0;;763 exit ;; 783 764 sparc*:BSD/OS:*:*) 784 765 echo sparc-unknown-bsdi${UNAME_RELEASE} 785 exit 0;;766 exit ;; 786 767 *:BSD/OS:*:*) 787 768 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} 788 exit 0;;769 exit ;; 789 770 *:FreeBSD:*:*) 790 # Determine whether the default compiler uses glibc. 791 eval $set_cc_for_build 792 sed 's/^ //' << EOF >$dummy.c 793 #include <features.h> 794 #if __GLIBC__ >= 2 795 LIBC=gnu 796 #else 797 LIBC= 798 #endif 799 EOF 800 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` 801 # GNU/KFreeBSD systems have a "k" prefix to indicate we are using 802 # FreeBSD's kernel, but not the complete OS. 803 case ${LIBC} in gnu) kernel_only='k' ;; esac 804 echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} 805 exit 0 ;; 771 case ${UNAME_MACHINE} in 772 pc98) 773 echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 774 *) 775 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; 776 esac 777 exit ;; 806 778 i*:CYGWIN*:*) 807 779 echo ${UNAME_MACHINE}-pc-cygwin 808 exit 0;;780 exit ;; 809 781 i*:MINGW*:*) 810 782 echo ${UNAME_MACHINE}-pc-mingw32 811 exit 0 ;; 783 exit ;; 784 i*:windows32*:*) 785 # uname -m includes "-pc" on this system. 786 echo ${UNAME_MACHINE}-mingw32 787 exit ;; 812 788 i*:PW*:*) 813 789 echo ${UNAME_MACHINE}-pc-pw32 814 exit 0 ;; 815 x86:Interix*:[34]*) 816 echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' 817 exit 0 ;; 790 exit ;; 791 x86:Interix*:[345]*) 792 echo i586-pc-interix${UNAME_RELEASE} 793 exit ;; 794 EM64T:Interix*:[345]*) 795 echo x86_64-unknown-interix${UNAME_RELEASE} 796 exit ;; 818 797 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) 819 798 echo i${UNAME_MACHINE}-pc-mks 820 exit 0;;799 exit ;; 821 800 i*:Windows_NT*:* | Pentium*:Windows_NT*:*) 822 801 # How do we know it's Interix rather than the generic POSIX subsystem? … … 824 803 # UNAME_MACHINE based on the output of uname instead of i386? 825 804 echo i586-pc-interix 826 exit 0;;805 exit ;; 827 806 i*:UWIN*:*) 828 807 echo ${UNAME_MACHINE}-pc-uwin 829 exit 0 ;; 808 exit ;; 809 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) 810 echo x86_64-unknown-cygwin 811 exit ;; 830 812 p*:CYGWIN*:*) 831 813 echo powerpcle-unknown-cygwin 832 exit 0;;814 exit ;; 833 815 prep*:SunOS:5.*:*) 834 816 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` 835 exit 0;;817 exit ;; 836 818 *:GNU:*:*) 837 819 # the GNU system 838 820 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 839 exit 0;;821 exit ;; 840 822 *:GNU/*:*:*) 841 823 # other systems with GNU libc and userland 842 824 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 843 exit 0;;825 exit ;; 844 826 i*86:Minix:*:*) 845 827 echo ${UNAME_MACHINE}-pc-minix 846 exit 0;;828 exit ;; 847 829 arm*:Linux:*:*) 848 830 echo ${UNAME_MACHINE}-unknown-linux-gnu 849 exit 0;;831 exit ;; 850 832 cris:Linux:*:*) 851 833 echo cris-axis-linux-gnu 852 exit 0 ;; 834 exit ;; 835 crisv32:Linux:*:*) 836 echo crisv32-axis-linux-gnu 837 exit ;; 838 frv:Linux:*:*) 839 echo frv-unknown-linux-gnu 840 exit ;; 853 841 ia64:Linux:*:*) 854 842 echo ${UNAME_MACHINE}-unknown-linux-gnu 855 exit 0 ;; 843 exit ;; 844 m32r*:Linux:*:*) 845 echo ${UNAME_MACHINE}-unknown-linux-gnu 846 exit ;; 856 847 m68*:Linux:*:*) 857 848 echo ${UNAME_MACHINE}-unknown-linux-gnu 858 exit 0;;849 exit ;; 859 850 mips:Linux:*:*) 860 851 eval $set_cc_for_build … … 873 864 #endif 874 865 EOF 875 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 876 test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 866 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 867 /^CPU/{ 868 s: ::g 869 p 870 }'`" 871 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 877 872 ;; 878 873 mips64:Linux:*:*) … … 892 887 #endif 893 888 EOF 894 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` 895 test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 889 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 890 /^CPU/{ 891 s: ::g 892 p 893 }'`" 894 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 896 895 ;; 896 or32:Linux:*:*) 897 echo or32-unknown-linux-gnu 898 exit ;; 897 899 ppc:Linux:*:*) 898 900 echo powerpc-unknown-linux-gnu 899 exit 0;;901 exit ;; 900 902 ppc64:Linux:*:*) 901 903 echo powerpc64-unknown-linux-gnu 902 exit 0;;904 exit ;; 903 905 alpha:Linux:*:*) 904 906 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in … … 914 916 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 915 917 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 916 exit 0;;918 exit ;; 917 919 parisc:Linux:*:* | hppa:Linux:*:*) 918 920 # Look for CPU level … … 922 924 *) echo hppa-unknown-linux-gnu ;; 923 925 esac 924 exit 0;;926 exit ;; 925 927 parisc64:Linux:*:* | hppa64:Linux:*:*) 926 928 echo hppa64-unknown-linux-gnu 927 exit 0;;929 exit ;; 928 930 s390:Linux:*:* | s390x:Linux:*:*) 929 931 echo ${UNAME_MACHINE}-ibm-linux 930 exit 0;;932 exit ;; 931 933 sh64*:Linux:*:*) 932 934 echo ${UNAME_MACHINE}-unknown-linux-gnu 933 exit 0;;935 exit ;; 934 936 sh*:Linux:*:*) 935 937 echo ${UNAME_MACHINE}-unknown-linux-gnu 936 exit 0;;938 exit ;; 937 939 sparc:Linux:*:* | sparc64:Linux:*:*) 938 940 echo ${UNAME_MACHINE}-unknown-linux-gnu 939 exit 0 ;; 941 exit ;; 942 vax:Linux:*:*) 943 echo ${UNAME_MACHINE}-dec-linux-gnu 944 exit ;; 940 945 x86_64:Linux:*:*) 941 946 echo x86_64-unknown-linux-gnu 942 exit 0;;947 exit ;; 943 948 i*86:Linux:*:*) 944 949 # The BFD linker knows what the default object file format is, so … … 958 963 a.out-i386-linux) 959 964 echo "${UNAME_MACHINE}-pc-linux-gnuaout" 960 exit 0;;965 exit ;; 961 966 coff-i386) 962 967 echo "${UNAME_MACHINE}-pc-linux-gnucoff" 963 exit 0;;968 exit ;; 964 969 "") 965 970 # Either a pre-BFD a.out linker (linux-gnuoldld) or 966 971 # one that does not give us useful --help. 967 972 echo "${UNAME_MACHINE}-pc-linux-gnuoldld" 968 exit 0;;973 exit ;; 969 974 esac 970 975 # Determine whether the default compiler is a.out or elf … … 983 988 # endif 984 989 #else 985 #if def __INTEL_COMPILER990 #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__sun) 986 991 LIBC=gnu 987 992 #else … … 993 998 #endif 994 999 EOF 995 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` 996 test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 997 test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 1000 eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' 1001 /^LIBC/{ 1002 s: ::g 1003 p 1004 }'`" 1005 test x"${LIBC}" != x && { 1006 echo "${UNAME_MACHINE}-pc-linux-${LIBC}" 1007 exit 1008 } 1009 test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } 998 1010 ;; 999 1011 i*86:DYNIX/ptx:4*:*) … … 1002 1014 # sysname and nodename. 1003 1015 echo i386-sequent-sysv4 1004 exit 0;;1016 exit ;; 1005 1017 i*86:UNIX_SV:4.2MP:2.*) 1006 1018 # Unixware is an offshoot of SVR4, but it has its own version … … 1010 1022 # Use sysv4.2uw... so that sysv4* matches it. 1011 1023 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} 1012 exit 0;;1024 exit ;; 1013 1025 i*86:OS/2:*:*) 1014 1026 # If we were able to find `uname', then EMX Unix compatibility 1015 1027 # is probably installed. 1016 1028 echo ${UNAME_MACHINE}-pc-os2-emx 1017 exit 0;;1029 exit ;; 1018 1030 i*86:XTS-300:*:STOP) 1019 1031 echo ${UNAME_MACHINE}-unknown-stop 1020 exit 0;;1032 exit ;; 1021 1033 i*86:atheos:*:*) 1022 1034 echo ${UNAME_MACHINE}-unknown-atheos 1023 exit 0;;1024 1035 exit ;; 1036 i*86:syllable:*:*) 1025 1037 echo ${UNAME_MACHINE}-pc-syllable 1026 exit 0;;1038 exit ;; 1027 1039 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) 1028 1040 echo i386-unknown-lynxos${UNAME_RELEASE} 1029 exit 0;;1041 exit ;; 1030 1042 i*86:*DOS:*:*) 1031 1043 echo ${UNAME_MACHINE}-pc-msdosdjgpp 1032 exit 0;;1044 exit ;; 1033 1045 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) 1034 1046 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` … … 1038 1050 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} 1039 1051 fi 1040 exit 0 ;; 1041 i*86:*:5:[78]*) 1052 exit ;; 1053 i*86:*:5:[678]*) 1054 # UnixWare 7.x, OpenUNIX and OpenServer 6. 1042 1055 case `/bin/uname -X | grep "^Machine"` in 1043 1056 *486*) UNAME_MACHINE=i486 ;; … … 1046 1059 esac 1047 1060 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} 1048 exit 0;;1061 exit ;; 1049 1062 i*86:*:3.2:*) 1050 1063 if test -f /usr/options/cb.name; then … … 1064 1077 echo ${UNAME_MACHINE}-pc-sysv32 1065 1078 fi 1066 exit 0;;1079 exit ;; 1067 1080 pc:*:*:*) 1068 1081 # Left here for compatibility: … … 1070 1083 # the processor, so we play safe by assuming i386. 1071 1084 echo i386-pc-msdosdjgpp 1072 exit 0;;1085 exit ;; 1073 1086 Intel:Mach:3*:*) 1074 1087 echo i386-pc-mach3 1075 exit 0;;1088 exit ;; 1076 1089 paragon:*:*:*) 1077 1090 echo i860-intel-osf1 1078 exit 0;;1091 exit ;; 1079 1092 i860:*:4.*:*) # i860-SVR4 1080 1093 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then … … 1083 1096 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 1084 1097 fi 1085 exit 0;;1098 exit ;; 1086 1099 mini*:CTIX:SYS*5:*) 1087 1100 # "miniframe" 1088 1101 echo m68010-convergent-sysv 1089 exit 0;;1102 exit ;; 1090 1103 mc68k:UNIX:SYSTEM5:3.51m) 1091 1104 echo m68k-convergent-sysv 1092 exit 0;;1105 exit ;; 1093 1106 M680?0:D-NIX:5.3:*) 1094 1107 echo m68k-diab-dnix 1095 exit 0;;1096 M68*:*:R3V[567 ]*:*)1097 test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0;;1098 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 )1108 exit ;; 1109 M68*:*:R3V[5678]*:*) 1110 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 1111 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) 1099 1112 OS_REL='' 1100 1113 test -r /etc/.relid \ 1101 1114 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` 1102 1115 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1103 && echo i486-ncr-sysv4.3${OS_REL} && exit 01116 && { echo i486-ncr-sysv4.3${OS_REL}; exit; } 1104 1117 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ 1105 && echo i586-ncr-sysv4.3${OS_REL} && exit 0;;1118 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 1106 1119 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) 1107 1120 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ 1108 && echo i486-ncr-sysv4 && exit 0;;1121 && { echo i486-ncr-sysv4; exit; } ;; 1109 1122 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) 1110 1123 echo m68k-unknown-lynxos${UNAME_RELEASE} 1111 exit 0;;1124 exit ;; 1112 1125 mc68030:UNIX_System_V:4.*:*) 1113 1126 echo m68k-atari-sysv4 1114 exit 0;;1127 exit ;; 1115 1128 TSUNAMI:LynxOS:2.*:*) 1116 1129 echo sparc-unknown-lynxos${UNAME_RELEASE} 1117 exit 0;;1130 exit ;; 1118 1131 rs6000:LynxOS:2.*:*) 1119 1132 echo rs6000-unknown-lynxos${UNAME_RELEASE} 1120 exit 0;;1133 exit ;; 1121 1134 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) 1122 1135 echo powerpc-unknown-lynxos${UNAME_RELEASE} 1123 exit 0;;1136 exit ;; 1124 1137 SM[BE]S:UNIX_SV:*:*) 1125 1138 echo mips-dde-sysv${UNAME_RELEASE} 1126 exit 0;;1139 exit ;; 1127 1140 RM*:ReliantUNIX-*:*:*) 1128 1141 echo mips-sni-sysv4 1129 exit 0;;1142 exit ;; 1130 1143 RM*:SINIX-*:*:*) 1131 1144 echo mips-sni-sysv4 1132 exit 0;;1145 exit ;; 1133 1146 *:SINIX-*:*:*) 1134 1147 if uname -p 2>/dev/null >/dev/null ; then … … 1138 1151 echo ns32k-sni-sysv 1139 1152 fi 1140 exit 0;;1153 exit ;; 1141 1154 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort 1142 1155 # says <[email protected]> 1143 1156 echo i586-unisys-sysv4 1144 exit 0;;1157 exit ;; 1145 1158 *:UNIX_System_V:4*:FTX*) 1146 1159 # From Gerald Hewes <[email protected]>. 1147 1160 # How about differentiating between stratus architectures? -djm 1148 1161 echo hppa1.1-stratus-sysv4 1149 exit 0;;1162 exit ;; 1150 1163 *:*:*:FTX*) 1151 1164 # From [email protected]. 1152 1165 echo i860-stratus-sysv4 1153 exit 0 ;; 1166 exit ;; 1167 i*86:VOS:*:*) 1168 # From [email protected]. 1169 echo ${UNAME_MACHINE}-stratus-vos 1170 exit ;; 1154 1171 *:VOS:*:*) 1155 1172 # From [email protected]. 1156 1173 echo hppa1.1-stratus-vos 1157 exit 0;;1174 exit ;; 1158 1175 mc68*:A/UX:*:*) 1159 1176 echo m68k-apple-aux${UNAME_RELEASE} 1160 exit 0;;1177 exit ;; 1161 1178 news*:NEWS-OS:6*:*) 1162 1179 echo mips-sony-newsos6 1163 exit 0;;1180 exit ;; 1164 1181 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) 1165 1182 if [ -d /usr/nec ]; then … … 1168 1185 echo mips-unknown-sysv${UNAME_RELEASE} 1169 1186 fi 1170 exit 0;;1187 exit ;; 1171 1188 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. 1172 1189 echo powerpc-be-beos 1173 exit 0;;1190 exit ;; 1174 1191 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. 1175 1192 echo powerpc-apple-beos 1176 exit 0;;1193 exit ;; 1177 1194 BePC:BeOS:*:*) # BeOS running on Intel PC compatible. 1178 1195 echo i586-pc-beos 1179 exit 0;;1196 exit ;; 1180 1197 SX-4:SUPER-UX:*:*) 1181 1198 echo sx4-nec-superux${UNAME_RELEASE} 1182 exit 0;;1199 exit ;; 1183 1200 SX-5:SUPER-UX:*:*) 1184 1201 echo sx5-nec-superux${UNAME_RELEASE} 1185 exit 0;;1202 exit ;; 1186 1203 SX-6:SUPER-UX:*:*) 1187 1204 echo sx6-nec-superux${UNAME_RELEASE} 1188 exit 0;;1205 exit ;; 1189 1206 Power*:Rhapsody:*:*) 1190 1207 echo powerpc-apple-rhapsody${UNAME_RELEASE} 1191 exit 0;;1208 exit ;; 1192 1209 *:Rhapsody:*:*) 1193 1210 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} 1194 exit 0;;1211 exit ;; 1195 1212 *:Darwin:*:*) 1196 case `uname -p` in1197 *86) UNAME_PROCESSOR=i686 ;;1198 powerpc) UNAME_PROCESSOR=powerpc ;;1213 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1214 case $UNAME_PROCESSOR in 1215 unknown) UNAME_PROCESSOR=powerpc ;; 1199 1216 esac 1200 1217 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1201 exit 0;;1218 exit ;; 1202 1219 *:procnto*:*:* | *:QNX:[0123456789]*:*) 1203 1220 UNAME_PROCESSOR=`uname -p` … … 1207 1224 fi 1208 1225 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} 1209 exit 0;;1226 exit ;; 1210 1227 *:QNX:*:4*) 1211 1228 echo i386-pc-qnx 1212 exit 0 ;; 1229 exit ;; 1230 NSE-?:NONSTOP_KERNEL:*:*) 1231 echo nse-tandem-nsk${UNAME_RELEASE} 1232 exit ;; 1213 1233 NSR-?:NONSTOP_KERNEL:*:*) 1214 1234 echo nsr-tandem-nsk${UNAME_RELEASE} 1215 exit 0;;1235 exit ;; 1216 1236 *:NonStop-UX:*:*) 1217 1237 echo mips-compaq-nonstopux 1218 exit 0;;1238 exit ;; 1219 1239 BS2000:POSIX*:*:*) 1220 1240 echo bs2000-siemens-sysv 1221 exit 0;;1241 exit ;; 1222 1242 DS/*:UNIX_System_V:*:*) 1223 1243 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} 1224 exit 0;;1244 exit ;; 1225 1245 *:Plan9:*:*) 1226 1246 # "uname -m" is not consistent, so use $cputype instead. 386 … … 1233 1253 fi 1234 1254 echo ${UNAME_MACHINE}-unknown-plan9 1235 exit 0;;1255 exit ;; 1236 1256 *:TOPS-10:*:*) 1237 1257 echo pdp10-unknown-tops10 1238 exit 0;;1258 exit ;; 1239 1259 *:TENEX:*:*) 1240 1260 echo pdp10-unknown-tenex 1241 exit 0;;1261 exit ;; 1242 1262 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) 1243 1263 echo pdp10-dec-tops20 1244 exit 0;;1264 exit ;; 1245 1265 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) 1246 1266 echo pdp10-xkl-tops20 1247 exit 0;;1267 exit ;; 1248 1268 *:TOPS-20:*:*) 1249 1269 echo pdp10-unknown-tops20 1250 exit 0;;1270 exit ;; 1251 1271 *:ITS:*:*) 1252 1272 echo pdp10-unknown-its 1253 exit 0;;1273 exit ;; 1254 1274 SEI:*:*:SEIUX) 1255 1275 echo mips-sei-seiux${UNAME_RELEASE} 1256 exit 0;;1276 exit ;; 1257 1277 *:DragonFly:*:*) 1258 1278 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` 1259 exit 0 ;; 1279 exit ;; 1280 *:*VMS:*:*) 1281 UNAME_MACHINE=`(uname -p) 2>/dev/null` 1282 case "${UNAME_MACHINE}" in 1283 A*) echo alpha-dec-vms ; exit ;; 1284 I*) echo ia64-dec-vms ; exit ;; 1285 V*) echo vax-dec-vms ; exit ;; 1286 esac ;; 1287 *:XENIX:*:SysV) 1288 echo i386-pc-xenix 1289 exit ;; 1290 i*86:skyos:*:*) 1291 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' 1292 exit ;; 1293 i*86:rdos:*:*) 1294 echo ${UNAME_MACHINE}-pc-rdos 1295 exit ;; 1260 1296 esac 1261 1297 … … 1289 1325 1290 1326 #if defined (__arm) && defined (__acorn) && defined (__unix) 1291 printf ("arm-acorn-riscix "); exit (0);1327 printf ("arm-acorn-riscix\n"); exit (0); 1292 1328 #endif 1293 1329 … … 1378 1414 EOF 1379 1415 1380 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 1416 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && 1417 { echo "$SYSTEM_NAME"; exit; } 1381 1418 1382 1419 # Apollos put the system type in the environment. 1383 1420 1384 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }1421 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } 1385 1422 1386 1423 # Convex versions that predate uname can use getsysinfo(1) … … 1391 1428 c1*) 1392 1429 echo c1-convex-bsd 1393 exit 0;;1430 exit ;; 1394 1431 c2*) 1395 1432 if getsysinfo -f scalar_acc … … 1397 1434 else echo c2-convex-bsd 1398 1435 fi 1399 exit 0;;1436 exit ;; 1400 1437 c34*) 1401 1438 echo c34-convex-bsd 1402 exit 0;;1439 exit ;; 1403 1440 c38*) 1404 1441 echo c38-convex-bsd 1405 exit 0;;1442 exit ;; 1406 1443 c4*) 1407 1444 echo c4-convex-bsd 1408 exit 0;;1445 exit ;; 1409 1446 esac 1410 1447 fi … … 1417 1454 download the most up to date version of the config scripts from 1418 1455 1419 ftp://ftp.gnu.org/pub/gnu/config/ 1456 http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess 1457 and 1458 http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub 1420 1459 1421 1460 If the version you run ($0) is already up to date, please -
vendor/gnumake/current/config/config.rpath
-
Property svn:executable
set to
*
-
Property svn:executable
set to
-
vendor/gnumake/current/config/config.sub
r152 r501 2 2 # Configuration validation subroutine script. 3 3 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 4 # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 5 6 timestamp='2004-02-23' 4 # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, 5 # Inc. 6 7 timestamp='2006-03-07' 7 8 8 9 # This file is (in principle) common to ALL GNU software. … … 22 23 # You should have received a copy of the GNU General Public License 23 24 # along with this program; if not, write to the Free Software 24 # Foundation, Inc., 5 9 Temple Place - Suite 330,25 # Boston, MA 02111-1307, USA.26 25 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 26 # 02110-1301, USA. 27 # 27 28 # As a special exception to the GNU General Public License, if you 28 29 # distribute this file as part of a program that contains a 29 30 # configuration script generated by Autoconf, you may include it under 30 31 # the same distribution terms that you use for the rest of that program. 32 31 33 32 34 # Please send patches to <[email protected]>. Submit a context … … 71 73 GNU config.sub ($timestamp) 72 74 73 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 75 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 74 76 Free Software Foundation, Inc. 75 77 … … 84 86 case $1 in 85 87 --time-stamp | --time* | -t ) 86 echo "$timestamp" ; exit 0;;88 echo "$timestamp" ; exit ;; 87 89 --version | -v ) 88 echo "$version" ; exit 0;;90 echo "$version" ; exit ;; 89 91 --help | --h* | -h ) 90 echo "$usage"; exit 0;;92 echo "$usage"; exit ;; 91 93 -- ) # Stop option processing 92 94 shift; break ;; … … 100 102 # First pass through any local machine types. 101 103 echo $1 102 exit 0;;104 exit ;; 103 105 104 106 * ) … … 119 121 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 120 122 case $maybe_os in 121 nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ 122 kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) 123 nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ 124 uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ 125 storm-chaos* | os2-emx* | rtmk-nova*) 123 126 os=-$maybe_os 124 127 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` … … 146 149 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 147 150 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 148 -apple | -axis )151 -apple | -axis | -knuth | -cray) 149 152 os= 150 153 basic_machine=$1 … … 171 174 os=-hiuxwe2 172 175 ;; 176 -sco6) 177 os=-sco5v6 178 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 179 ;; 173 180 -sco5) 174 181 os=-sco3.2v5 … … 184 191 ;; 185 192 -sco3.2v[4-9]*) 193 # Don't forget version if it is 3.2v4 or newer. 194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 195 ;; 196 -sco5v6*) 186 197 # Don't forget version if it is 3.2v4 or newer. 187 198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` … … 232 243 | am33_2.0 \ 233 244 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ 245 | bfin \ 234 246 | c4x | clipper \ 235 247 | d10v | d30v | dlx | dsp16xx \ … … 238 250 | i370 | i860 | i960 | ia64 \ 239 251 | ip2k | iq2000 \ 240 | m32r | m 68000 | m68k | m88k| mcore \252 | m32r | m32rle | m68000 | m68k | m88k | maxq | mb | microblaze | mcore \ 241 253 | mips | mipsbe | mipseb | mipsel | mipsle \ 242 254 | mips16 \ … … 247 259 | mips64vr4300 | mips64vr4300el \ 248 260 | mips64vr5000 | mips64vr5000el \ 261 | mips64vr5900 | mips64vr5900el \ 249 262 | mipsisa32 | mipsisa32el \ 250 263 | mipsisa32r2 | mipsisa32r2el \ … … 255 268 | mipstx39 | mipstx39el \ 256 269 | mn10200 | mn10300 \ 270 | mt \ 257 271 | msp430 \ 272 | nios | nios2 \ 258 273 | ns16k | ns32k \ 259 | o penrisc | or32 \274 | or32 \ 260 275 | pdp10 | pdp11 | pj | pjl \ 261 276 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ 262 277 | pyramid \ 263 | sh | sh[1234] | sh[2 3]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \278 | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ 264 279 | sh64 | sh64le \ 265 | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ 280 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ 281 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ 266 282 | strongarm \ 267 283 | tahoe | thumb | tic4x | tic80 | tron \ 268 284 | v850 | v850e \ 269 285 | we32k \ 270 | x86 | xscale | xs tormy16 | xtensa \286 | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ 271 287 | z8k) 288 basic_machine=$basic_machine-unknown 289 ;; 290 m32c) 272 291 basic_machine=$basic_machine-unknown 273 292 ;; … … 278 297 ;; 279 298 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) 299 ;; 300 ms1) 301 basic_machine=mt-unknown 280 302 ;; 281 303 … … 299 321 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 300 322 | avr-* \ 301 | b s2000-* \323 | bfin-* | bs2000-* \ 302 324 | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ 303 | clipper-* | c ydra-* \325 | clipper-* | craynv-* | cydra-* \ 304 326 | d10v-* | d30v-* | dlx-* \ 305 327 | elxsi-* \ … … 309 331 | i*86-* | i860-* | i960-* | ia64-* \ 310 332 | ip2k-* | iq2000-* \ 311 | m32r-* \333 | m32r-* | m32rle-* \ 312 334 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 313 | m88110-* | m88k-* | m core-* \335 | m88110-* | m88k-* | maxq-* | mcore-* \ 314 336 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 315 337 | mips16-* \ … … 320 342 | mips64vr4300-* | mips64vr4300el-* \ 321 343 | mips64vr5000-* | mips64vr5000el-* \ 344 | mips64vr5900-* | mips64vr5900el-* \ 322 345 | mipsisa32-* | mipsisa32el-* \ 323 346 | mipsisa32r2-* | mipsisa32r2el-* \ … … 327 350 | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 328 351 | mipstx39-* | mipstx39el-* \ 352 | mmix-* \ 353 | mt-* \ 329 354 | msp430-* \ 330 | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ 355 | nios-* | nios2-* \ 356 | none-* | np1-* | ns16k-* | ns32k-* \ 331 357 | orion-* \ 332 358 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ … … 334 360 | pyramid-* \ 335 361 | romp-* | rs6000-* \ 336 | sh-* | sh[1234]-* | sh[2 3]e-* | sh[34]eb-* | shbe-* \362 | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 337 363 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 338 | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ 339 | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ 364 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 365 | sparclite-* \ 366 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ 340 367 | tahoe-* | thumb-* \ 341 368 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ … … 343 370 | v850-* | v850e-* | vax-* \ 344 371 | we32k-* \ 345 | x86-* | x86_64-* | xps100-* | xscale-* | xs tormy16-* \346 | x tensa-* \372 | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ 373 | xstormy16-* | xtensa-* \ 347 374 | ymp-* \ 348 375 | z8k-*) 376 ;; 377 m32c-*) 349 378 ;; 350 379 # Recognize the various machine names and aliases which stand … … 446 475 os=-unicos 447 476 ;; 477 craynv) 478 basic_machine=craynv-cray 479 os=-unicosmp 480 ;; 448 481 cr16c) 449 482 basic_machine=cr16c-unknown … … 453 486 basic_machine=m68k-crds 454 487 ;; 488 crisv32 | crisv32-* | etraxfs*) 489 basic_machine=crisv32-axis 490 ;; 455 491 cris | cris-* | etrax*) 456 492 basic_machine=cris-axis … … 481 517 basic_machine=m88k-motorola 482 518 os=-sysv3 519 ;; 520 djgpp) 521 basic_machine=i586-pc 522 os=-msdosdjgpp 483 523 ;; 484 524 dpx20 | dpx20-*) … … 660 700 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 661 701 ;; 662 mmix*)663 basic_machine=mmix-knuth664 os=-mmixware665 ;;666 702 monitor) 667 703 basic_machine=m68k-rom68k … … 675 711 basic_machine=i386-pc 676 712 os=-msdos 713 ;; 714 ms1-*) 715 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 677 716 ;; 678 717 mvs) … … 744 783 basic_machine=np1-gould 745 784 ;; 746 nv1)747 basic_machine=nv1-cray748 os=-unicosmp749 ;;750 785 nsr-tandem) 751 786 basic_machine=nsr-tandem … … 755 790 os=-proelf 756 791 ;; 757 o r32 | or32-*)792 openrisc | openrisc-*) 758 793 basic_machine=or32-unknown 759 os=-coff760 794 ;; 761 795 os400) … … 788 822 basic_machine=ns32k-pc532 789 823 ;; 824 pc98) 825 basic_machine=i386-pc 826 ;; 827 pc98-*) 828 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 829 ;; 790 830 pentium | p5 | k5 | k6 | nexgen | viac3) 791 831 basic_machine=i586-pc … … 844 884 os=-pw32 845 885 ;; 886 rdos) 887 basic_machine=i386-pc 888 os=-rdos 889 ;; 846 890 rom68k) 847 891 basic_machine=m68k-rom68k … … 1029 1073 basic_machine=hppa1.1-winbond 1030 1074 os=-proelf 1075 ;; 1076 xbox) 1077 basic_machine=i686-pc 1078 os=-mingw32 1031 1079 ;; 1032 1080 xps | xps100) … … 1060 1108 basic_machine=romp-ibm 1061 1109 ;; 1110 mmix) 1111 basic_machine=mmix-knuth 1112 ;; 1062 1113 rs6000) 1063 1114 basic_machine=rs6000-ibm … … 1076 1127 basic_machine=we32k-att 1077 1128 ;; 1078 sh 3 | sh4| sh[34]eb | sh[1234]le | sh[23]ele)1129 sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) 1079 1130 basic_machine=sh-unknown 1080 1131 ;; 1081 sh64) 1082 basic_machine=sh64-unknown 1083 ;; 1084 sparc | sparcv9 | sparcv9b) 1132 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1085 1133 basic_machine=sparc-sun 1086 1134 ;; … … 1155 1203 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1156 1204 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1157 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ 1205 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1206 | -openbsd* | -solidbsd* \ 1158 1207 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1159 1208 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ … … 1162 1211 | -chorusos* | -chorusrdb* \ 1163 1212 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1164 | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ 1213 | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ 1214 | -uxpv* | -beos* | -mpeix* | -udk* \ 1165 1215 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1166 1216 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ … … 1168 1218 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1169 1219 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1170 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) 1220 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1221 | -skyos* | -haiku* | -rdos*) 1171 1222 # Remember, each alternative MUST END IN *, to match a version number. 1172 1223 ;; … … 1186 1237 ;; 1187 1238 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1188 | -windows* | -osx | -abug | -netware* | -os9* | -beos* \1239 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1189 1240 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1190 1241 ;; … … 1294 1345 -kaos*) 1295 1346 os=-kaos 1347 ;; 1348 -zvmoe) 1349 os=-zvmoe 1296 1350 ;; 1297 1351 -none) … … 1372 1426 os=-beos 1373 1427 ;; 1428 *-haiku) 1429 os=-haiku 1430 ;; 1374 1431 *-ibm) 1375 1432 os=-aix 1433 ;; 1434 *-knuth) 1435 os=-mmixware 1376 1436 ;; 1377 1437 *-wec) … … 1540 1600 1541 1601 echo $basic_machine$os 1542 exit 01602 exit 1543 1603 1544 1604 # Local variables: -
vendor/gnumake/current/config/depcomp
-
Property svn:executable
set to
*
r152 r501 2 2 # depcomp - compile a program generating dependencies as side-effects 3 3 4 scriptversion=200 3-11-08.235 6 # Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc.4 scriptversion=2005-07-09.11 5 6 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. 7 7 8 8 # This program is free software; you can redistribute it and/or modify … … 18 18 # You should have received a copy of the GNU General Public License 19 19 # along with this program; if not, write to the Free Software 20 # Foundation, Inc., 5 9 Temple Place - Suite 330, Boston, MA21 # 0211 1-1307, USA.20 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 21 # 02110-1301, USA. 22 22 23 23 # As a special exception to the GNU General Public License, if you … … 44 44 source Source file read by `PROGRAMS ARGS'. 45 45 object Object file output by `PROGRAMS ARGS'. 46 DEPDIR directory where to store dependencies. 46 47 depfile Dependency file to output. 47 48 tmpdepfile Temporary file to use when outputing dependencies. … … 50 51 Report bugs to <[email protected]>. 51 52 EOF 52 exit 053 exit $? 53 54 ;; 54 55 -v | --v*) 55 56 echo "depcomp $scriptversion" 56 exit 057 exit $? 57 58 ;; 58 59 esac … … 62 63 exit 1 63 64 fi 64 # `libtool' can also be set to `yes' or `no'. 65 66 if test -z "$depfile"; then 67 base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` 68 dir=`echo "$object" | sed 's,/.*$,/,'` 69 if test "$dir" = "$object"; then 70 dir= 71 fi 72 # FIXME: should be _deps on DOS. 73 depfile="$dir.deps/$base" 74 fi 75 65 66 # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. 67 depfile=${depfile-`echo "$object" | 68 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} 76 69 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} 77 70 … … 295 288 296 289 if test "$libtool" = yes; then 297 tmpdepfile1="$dir.libs/$base.lo.d" 298 tmpdepfile2="$dir.libs/$base.d" 290 # With Tru64 cc, shared objects can also be used to make a 291 # static library. This mecanism is used in libtool 1.4 series to 292 # handle both shared and static libraries in a single compilation. 293 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. 294 # 295 # With libtool 1.5 this exception was removed, and libtool now 296 # generates 2 separate objects for the 2 libraries. These two 297 # compilations output dependencies in in $dir.libs/$base.o.d and 298 # in $dir$base.o.d. We have to check for both files, because 299 # one of the two compilations can be disabled. We should prefer 300 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is 301 # automatically cleaned when .libs/ is deleted, while ignoring 302 # the former would cause a distcleancheck panic. 303 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 304 tmpdepfile2=$dir$base.o.d # libtool 1.5 305 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 306 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 299 307 "$@" -Wc,-MD 300 308 else 301 tmpdepfile1="$dir$base.o.d" 302 tmpdepfile2="$dir$base.d" 309 tmpdepfile1=$dir$base.o.d 310 tmpdepfile2=$dir$base.d 311 tmpdepfile3=$dir$base.d 312 tmpdepfile4=$dir$base.d 303 313 "$@" -MD 304 314 fi … … 307 317 if test $stat -eq 0; then : 308 318 else 309 rm -f "$tmpdepfile1" "$tmpdepfile2" 319 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 310 320 exit $stat 311 321 fi 312 322 313 if test -f "$tmpdepfile1"; then 314 tmpdepfile="$tmpdepfile1" 315 else 316 tmpdepfile="$tmpdepfile2" 317 fi 323 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 324 do 325 test -f "$tmpdepfile" && break 326 done 318 327 if test -f "$tmpdepfile"; then 319 328 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" … … 459 468 460 469 "$@" -E | 461 sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 470 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ 471 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 462 472 sed '$ s: \\$::' > "$tmpdepfile" 463 473 rm -f "$depfile" -
Property svn:executable
set to
-
vendor/gnumake/current/config/dospaths.m4
r152 r501 1 1 # Test if the system uses DOS-style pathnames (drive specs and backslashes) 2 2 # By Paul Smith <[email protected]>. Based on dos.m4 by Jim Meyering. 3 4 # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 5 # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. 6 # This file is part of GNU Make. 7 # 8 # GNU Make is free software; you can redistribute it and/or modify it under the 9 # terms of the GNU General Public License as published by the Free Software 10 # Foundation; either version 2, or (at your option) any later version. 11 # 12 # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY 13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 14 # A PARTICULAR PURPOSE. See the GNU General Public License for more details. 15 # 16 # You should have received a copy of the GNU General Public License along with 17 # GNU Make; see the file COPYING. If not, write to the Free Software 18 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 3 19 4 20 AC_DEFUN([pds_AC_DOS_PATHS], … … 7 23 [ 8 24 AC_COMPILE_IFELSE([ 9 #if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __EMX__ 25 #if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __EMX__ && !defined __MSYS__ 10 26 neither MSDOS nor Windows nor OS2 11 27 #endif -
vendor/gnumake/current/config/install-sh
-
Property svn:executable
set to
*
r152 r501 2 2 # install - install a program, script, or datafile 3 3 4 scriptversion=200 4-01-12.104 scriptversion=2005-05-14.22 5 5 6 6 # This originates from X11R5 (mit/util/scripts/install.sh), which was … … 59 59 mkdirprog="${MKDIRPROG-mkdir}" 60 60 61 transformbasename=62 transform_arg=63 instcmd="$mvprog"64 61 chmodcmd="$chmodprog 0755" 65 62 chowncmd= … … 71 68 dst= 72 69 dir_arg= 73 74 usage="Usage: $0 [OPTION]... SRCFILE DSTFILE 70 dstarg= 71 no_target_directory= 72 73 usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE 75 74 or: $0 [OPTION]... SRCFILES... DIRECTORY 76 or: $0 -d DIRECTORIES... 77 78 In the first form, install SRCFILE to DSTFILE, removing SRCFILE by default. 79 In the second, create the directory path DIR. 75 or: $0 [OPTION]... -t DIRECTORY SRCFILES... 76 or: $0 [OPTION]... -d DIRECTORIES... 77 78 In the 1st form, copy SRCFILE to DSTFILE. 79 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. 80 In the 4th, create DIRECTORIES. 80 81 81 82 Options: 82 -b=TRANSFORMBASENAME 83 -c copy source (using $cpprog) instead of moving (using $mvprog). 83 -c (ignored) 84 84 -d create directories instead of installing files. 85 -g GROUP $chgrp installed files to GROUP. 86 -m MODE $chmod installed files to MODE. 87 -o USER $chown installed files to USER. 88 -s strip installed files (using $stripprog). 89 -t=TRANSFORM 85 -g GROUP $chgrpprog installed files to GROUP. 86 -m MODE $chmodprog installed files to MODE. 87 -o USER $chownprog installed files to USER. 88 -s $stripprog installed files. 89 -t DIRECTORY install into DIRECTORY. 90 -T report an error if DSTFILE is a directory. 90 91 --help display this help and exit. 91 92 --version display version info and exit. … … 97 98 while test -n "$1"; do 98 99 case $1 in 99 -b=*) transformbasename=`echo $1 | sed 's/-b=//'` 100 shift 101 continue;; 102 103 -c) instcmd=$cpprog 104 shift 100 -c) shift 105 101 continue;; 106 102 … … 114 110 continue;; 115 111 116 --help) echo "$usage"; exit 0;;112 --help) echo "$usage"; exit $?;; 117 113 118 114 -m) chmodcmd="$chmodprog $2" … … 130 126 continue;; 131 127 132 -t=*) transformarg=`echo $1 | sed 's/-t=//'` 133 shift 134 continue;; 135 136 --version) echo "$0 $scriptversion"; exit 0;; 128 -t) dstarg=$2 129 shift 130 shift 131 continue;; 132 133 -T) no_target_directory=true 134 shift 135 continue;; 136 137 --version) echo "$0 $scriptversion"; exit $?;; 137 138 138 139 *) # When -d is used, all remaining arguments are directories to create. 139 test -n "$dir_arg" && break 140 # When -t is used, the destination is already specified. 141 test -n "$dir_arg$dstarg" && break 140 142 # Otherwise, the last argument is the destination. Remove it from $@. 141 143 for arg … … 175 177 176 178 if test -d "$dst"; then 177 instcmd=:179 mkdircmd=: 178 180 chmodcmd= 179 181 else 180 instcmd=$mkdirprog182 mkdircmd=$mkdirprog 181 183 fi 182 184 else 183 # Waiting for this to be detected by the "$ instcmd$src $dsttmp" command185 # Waiting for this to be detected by the "$cpprog $src $dsttmp" command 184 186 # might cause directories to be created, which would be especially bad 185 187 # if $src (and thus $dsttmp) contains '*'. … … 203 205 # if double slashes aren't ignored. 204 206 if test -d "$dst"; then 207 if test -n "$no_target_directory"; then 208 echo "$0: $dstarg: Is a directory" >&2 209 exit 1 210 fi 205 211 dst=$dst/`basename "$src"` 206 212 fi … … 208 214 209 215 # This sed command emulates the dirname command. 210 dstdir=`echo "$dst" | sed -e 's, [^/]*$,,;s,/$,,;s,^$,.,'`216 dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` 211 217 212 218 # Make sure that the destination directory exists. … … 215 221 if test ! -d "$dstdir"; then 216 222 defaultIFS=' 217 223 ' 218 224 IFS="${IFS-$defaultIFS}" 219 225 … … 221 227 # Some sh's can't handle IFS=/ for some reason. 222 228 IFS='%' 223 set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` 229 set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` 230 shift 224 231 IFS=$oIFS 225 232 … … 229 236 pathcomp=$pathcomp$1 230 237 shift 231 test -d "$pathcomp" || $mkdirprog "$pathcomp" 238 if test ! -d "$pathcomp"; then 239 $mkdirprog "$pathcomp" 240 # mkdir can fail with a `File exist' error in case several 241 # install-sh are creating the directory concurrently. This 242 # is OK. 243 test -d "$pathcomp" || exit 244 fi 232 245 pathcomp=$pathcomp/ 233 246 done … … 235 248 236 249 if test -n "$dir_arg"; then 237 $doit $ instcmd "$dst" \250 $doit $mkdircmd "$dst" \ 238 251 && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ 239 252 && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ … … 242 255 243 256 else 244 # If we're going to rename the final executable, determine the name now. 245 if test -z "$transformarg"; then 246 dstfile=`basename "$dst"` 247 else 248 dstfile=`basename "$dst" $transformbasename \ 249 | sed $transformarg`$transformbasename 250 fi 251 252 # don't allow the sed command to completely eliminate the filename. 253 test -z "$dstfile" && dstfile=`basename "$dst"` 257 dstfile=`basename "$dst"` 254 258 255 259 # Make a couple of temp file names in the proper directory. … … 258 262 259 263 # Trap to clean up those temp files at exit. 260 trap ' status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0264 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 261 265 trap '(exit $?); exit' 1 2 13 15 262 266 263 # Move or copy the file name to the temp name264 $doit $ instcmd"$src" "$dsttmp" &&267 # Copy the file name to the temp name. 268 $doit $cpprog "$src" "$dsttmp" && 265 269 266 270 # and set any options; do chmod last to preserve setuid bits. … … 268 272 # If any of these fail, we abort the whole thing. If we want to 269 273 # ignore errors from any of these, just make sure not to ignore 270 # errors from the above "$doit $ instcmd$src $dsttmp" command.274 # errors from the above "$doit $cpprog $src $dsttmp" command. 271 275 # 272 276 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ … … 275 279 && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && 276 280 277 # Now remove or move aside any old file at destination location. We278 # try this two ways since rm can't unlink itself on some systems and279 # the destination file might be busy for other reasons. In this case,280 # the final cleanup might fail but the new file should still install281 # successfully.282 {283 if test -f "$dstdir/$dstfile"; then284 $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \285 || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \286 || {287 echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2288 (exit 1); exit289 }290 else291 :292 fi293 } &&294 295 281 # Now rename the file to the real destination. 296 $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" 297 fi || { (exit 1); exit; } 282 { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ 283 || { 284 # The rename failed, perhaps because mv can't rename something else 285 # to itself, or perhaps because mv is so ancient that it does not 286 # support -f. 287 288 # Now remove or move aside any old file at destination location. 289 # We try this two ways since rm can't unlink itself on some 290 # systems and the destination file might be busy for other 291 # reasons. In this case, the final cleanup might fail but the new 292 # file should still install successfully. 293 { 294 if test -f "$dstdir/$dstfile"; then 295 $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ 296 || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ 297 || { 298 echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 299 (exit 1); exit 1 300 } 301 else 302 : 303 fi 304 } && 305 306 # Now rename the file to the real destination. 307 $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" 308 } 309 } 310 fi || { (exit 1); exit 1; } 298 311 done 299 312 300 313 # The final little trick to "correctly" pass the exit status to the exit trap. 301 314 { 302 (exit 0); exit 315 (exit 0); exit 0 303 316 } 304 317 -
Property svn:executable
set to
-
vendor/gnumake/current/config/missing
-
Property svn:executable
set to
*
r152 r501 2 2 # Common stub for a few missing GNU programs while installing. 3 3 4 scriptversion=200 3-09-02.235 6 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 4 scriptversion=2005-06-08.21 5 6 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 7 7 # Free Software Foundation, Inc. 8 8 # Originally by Fran,cois Pinard <[email protected]>, 1996. … … 20 20 # You should have received a copy of the GNU General Public License 21 21 # along with this program; if not, write to the Free Software 22 # Foundation, Inc., 5 9 Temple Place - Suite 330, Boston, MA23 # 0211 1-1307, USA.22 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 23 # 02110-1301, USA. 24 24 25 25 # As a special exception to the GNU General Public License, if you … … 61 61 fi 62 62 ;; 63 esac64 65 # If it does not exist, or fails to run (possibly an outdated version),66 # try to emulate it.67 case "$1" in68 63 69 64 -h|--h|--he|--hel|--help) … … 93 88 94 89 Send bug reports to <[email protected]>." 90 exit $? 95 91 ;; 96 92 97 93 -v|--v|--ve|--ver|--vers|--versi|--versio|--version) 98 94 echo "missing $scriptversion (GNU Automake)" 95 exit $? 99 96 ;; 100 97 … … 105 102 ;; 106 103 107 aclocal*) 104 esac 105 106 # Now exit if we have it, but it failed. Also exit now if we 107 # don't have it and --version was passed (most likely to detect 108 # the program). 109 case "$1" in 110 lex|yacc) 111 # Not GNU programs, they don't have --version. 112 ;; 113 114 tar) 115 if test -n "$run"; then 116 echo 1>&2 "ERROR: \`tar' requires --run" 117 exit 1 118 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then 119 exit 1 120 fi 121 ;; 122 123 *) 108 124 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then 109 125 # We have it, but it failed. 110 126 exit 1 111 fi 112 127 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then 128 # Could not run --version or --help. This is probably someone 129 # running `$TOOL --version' or `$TOOL --help' to check whether 130 # $TOOL exists and not knowing $TOOL uses missing. 131 exit 1 132 fi 133 ;; 134 esac 135 136 # If it does not exist, or fails to run (possibly an outdated version), 137 # try to emulate it. 138 case "$1" in 139 aclocal*) 113 140 echo 1>&2 "\ 114 141 WARNING: \`$1' is $msg. You should only need it if … … 120 147 121 148 autoconf) 122 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then123 # We have it, but it failed.124 exit 1125 fi126 127 149 echo 1>&2 "\ 128 150 WARNING: \`$1' is $msg. You should only need it if … … 134 156 135 157 autoheader) 136 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then137 # We have it, but it failed.138 exit 1139 fi140 141 158 echo 1>&2 "\ 142 159 WARNING: \`$1' is $msg. You should only need it if … … 158 175 159 176 automake*) 160 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then161 # We have it, but it failed.162 exit 1163 fi164 165 177 echo 1>&2 "\ 166 178 WARNING: \`$1' is $msg. You should only need it if … … 174 186 175 187 autom4te) 176 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then177 # We have it, but it failed.178 exit 1179 fi180 181 188 echo 1>&2 "\ 182 189 WARNING: \`$1' is needed, but is $msg. … … 255 262 256 263 help2man) 257 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then258 # We have it, but it failed.259 exit 1260 fi261 262 264 echo 1>&2 "\ 263 265 WARNING: \`$1' is $msg. You should only need it if … … 280 282 281 283 makeinfo) 282 if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then283 # We have makeinfo, but it failed.284 exit 1285 fi286 287 284 echo 1>&2 "\ 288 285 WARNING: \`$1' is $msg. You should only need it if … … 292 289 DU, IRIX). You might want to install the \`Texinfo' package or 293 290 the \`GNU make' package. Grab either from any GNU archive site." 291 # The file to touch is that specified with -o ... 294 292 file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` 295 293 if test -z "$file"; then 296 file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` 297 file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` 298 fi 294 # ... or it is the one specified with @setfilename ... 295 infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` 296 file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` 297 # ... or it is derived from the source name (dir/f.texi becomes f.info) 298 test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info 299 fi 300 # If the file does not exist, the user really needs makeinfo; 301 # let's fail without touching anything. 302 test -f $file || exit 1 299 303 touch $file 300 304 ;; … … 302 306 tar) 303 307 shift 304 if test -n "$run"; then305 echo 1>&2 "ERROR: \`tar' requires --run"306 exit 1307 fi308 308 309 309 # We have already tried tar in the generic part. -
Property svn:executable
set to
-
vendor/gnumake/current/config/mkinstalldirs
-
Property svn:executable
set to
*
-
Property svn:executable
set to
-
vendor/gnumake/current/config/texinfo.tex
r152 r501 4 4 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi 5 5 % 6 \def\texinfoversion{200 4-02-25.17}6 \def\texinfoversion{2006-03-21.13} 7 7 % 8 8 % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 9 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software10 % Foundation, Inc.9 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free 10 % Software Foundation, Inc. 11 11 % 12 12 % This texinfo.tex file is free software; you can redistribute it and/or … … 22 22 % You should have received a copy of the GNU General Public License 23 23 % along with this texinfo.tex file; see the file COPYING. If not, write 24 % to the Free Software Foundation, Inc., 5 9 Temple Place - Suite 330,25 % Boston, MA 0211 1-1307, USA.24 % to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 25 % Boston, MA 02110-1301, USA. 26 26 % 27 27 % As a special exception, when this file is read by TeX when processing 28 28 % a Texinfo source document, you may use the result without 29 29 % restriction. (This has been our intent since Texinfo was invented.) 30 % 30 % 31 31 % Please try the latest version of texinfo.tex before submitting bug 32 32 % reports; you can get the latest version from: … … 56 56 % extent. You can get the existing language-specific files from the 57 57 % full Texinfo distribution. 58 % 58 % 59 59 % The GNU Texinfo home page is http://www.gnu.org/software/texinfo. 60 60 … … 90 90 \let\ptexi=\i 91 91 \let\ptexindent=\indent 92 \let\ptexnoindent=\noindent93 92 \let\ptexinsert=\insert 94 93 \let\ptexlbrace=\{ 95 94 \let\ptexless=< 95 \let\ptexnewwrite\newwrite 96 \let\ptexnoindent=\noindent 96 97 \let\ptexplus=+ 97 98 \let\ptexrbrace=\} … … 153 154 \ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi 154 155 155 % In some macros, we cannot use the `\? notation---the left quote is 156 % in some cases the escape char. 157 \chardef\colonChar = `\: 158 \chardef\commaChar = `\, 159 \chardef\dotChar = `\. 160 \chardef\exclamChar= `\! 161 \chardef\questChar = `\? 162 \chardef\semiChar = `\; 163 \chardef\underChar = `\_ 164 165 \chardef\spaceChar = `\ % 156 % Since the category of space is not known, we have to be careful. 166 157 \chardef\spacecat = 10 167 \def\spaceisspace{\catcode \spaceChar=\spacecat}158 \def\spaceisspace{\catcode`\ =\spacecat} 168 159 169 160 % Ignore a token. … … 176 167 % Hyphenation fixes. 177 168 \hyphenation{ 178 Flor-i-da Ghost-script Ghost-view Mac-OS ap-pen-dix bit-map bit-maps 169 Flor-i-da Ghost-script Ghost-view Mac-OS Post-Script 170 ap-pen-dix bit-map bit-maps 179 171 data-base data-bases eshell fall-ing half-way long-est man-u-script 180 172 man-u-scripts mini-buf-fer mini-buf-fers over-view par-a-digm 181 par-a-digms rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces 173 par-a-digms rath-er rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces 174 spell-ing spell-ings 182 175 stand-alone strong-est time-stamp time-stamps which-ever white-space 183 176 wide-spread wrap-around … … 300 293 % before the \shipout runs. 301 294 % 302 \escapechar = `\\ % use backslash in output files.303 295 \indexdummies % don't expand commands in the output. 304 296 \normalturnoffactive % \ in index entries must not stay \, e.g., if 305 % the page break happens to be in the middle of an example. 297 % the page break happens to be in the middle of an example. 298 % We don't want .vr (or whatever) entries like this: 299 % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}} 300 % "\acronym" won't work when it's read back in; 301 % it needs to be 302 % {\code {{\tt \backslashcurfont }acronym} 306 303 \shipout\vbox{% 307 304 % Do this early so pdf references go to the beginning of the page. … … 354 351 \fi 355 352 }% end of \shipout\vbox 356 }% end of group with \ normalturnoffactive353 }% end of group with \indexdummies 357 354 \advancepageno 358 355 \ifnum\outputpenalty>-20000 \else\dosupereject\fi … … 389 386 \def\parsearg{\parseargusing{}} 390 387 \def\parseargusing#1#2{% 391 \def\ next{#2}%388 \def\argtorun{#2}% 392 389 \begingroup 393 390 \obeylines … … 420 417 \def\temp{#3}% 421 418 \ifx\temp\empty 422 % We cannot use \next here, as it holds the macro to run; 423 % thus we reuse \temp. 419 % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: 424 420 \let\temp\finishparsearg 425 421 \else … … 433 429 % to get _exactly_ the rest of the line, we had to prevent such situation. 434 430 % We prepended an \empty token at the very beginning and we expand it now, 435 % just before passing the control to \ next.431 % just before passing the control to \argtorun. 436 432 % (Similarily, we have to think about #3 of \argcheckspacesY above: it is 437 433 % either the null string, or it ends with \^^M---thus there is no danger … … 440 436 % But first, we have to remove the trailing space token. 441 437 % 442 \def\finishparsearg#1 \ArgTerm{\expandafter\ next\expandafter{#1}}438 \def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} 443 439 444 440 % \parseargdef\foo{...} … … 480 476 481 477 % Define the framework for environments in texinfo.tex. It's used like this: 482 % 478 % 483 479 % \envdef\foo{...} 484 480 % \def\Efoo{...} 485 % 481 % 486 482 % It's the responsibility of \envdef to insert \begingroup before the 487 483 % actual body; @end closes the group after calling \Efoo. \envdef also … … 489 485 % whether the environment name matches. The \checkenv macro can also be 490 486 % used to check whether the current environment is the one expected. 491 % 487 % 492 488 % Non-false conditionals (@iftex, @ifset) don't fit into this, so they 493 489 % are not treated as enviroments; they don't open a group. (The … … 564 560 \begingroup 565 561 % Definitions to produce \{ and \} commands for indices, 566 % and @{ and @} for the aux file.562 % and @{ and @} for the aux/toc files. 567 563 \catcode`\{ = \other \catcode`\} = \other 568 564 \catcode`\[ = 1 \catcode`\] = 2 … … 606 602 % The \TeX{} logo, as in plain, but resetting the spacing so that a 607 603 % period following counts as ending a sentence. (Idea found in latex.) 608 % 609 \edef\TeX{\TeX \spacefactor= 3000 }604 % 605 \edef\TeX{\TeX \spacefactor=1000 } 610 606 611 607 % @LaTeX{} logo. Not quite the same results as the definition in … … 614 610 % the \scriptstyle font (since we don't reset \scriptstyle and 615 611 % \scriptscriptstyle). 616 % 612 % 617 613 \def\LaTeX{% 618 614 L\kern-.36em … … 645 641 646 642 % @. is an end-of-sentence period. 647 \def\.{.\spacefactor= 3000}643 \def\.{.\spacefactor=\endofsentencespacefactor\space} 648 644 649 645 % @! is an end-of-sentence bang. 650 \def\!{!\spacefactor= 3000}646 \def\!{!\spacefactor=\endofsentencespacefactor\space} 651 647 652 648 % @? is an end-of-sentence query. 653 \def\?{?\spacefactor=3000 } 649 \def\?{?\spacefactor=\endofsentencespacefactor\space} 650 651 % @frenchspacing on|off says whether to put extra space after punctuation. 652 % 653 \def\onword{on} 654 \def\offword{off} 655 % 656 \parseargdef\frenchspacing{% 657 \def\temp{#1}% 658 \ifx\temp\onword \plainfrenchspacing 659 \else\ifx\temp\offword \plainnonfrenchspacing 660 \else 661 \errhelp = \EMsimple 662 \errmessage{Unknown @frenchspacing option `\temp', must be on/off}% 663 \fi\fi 664 } 654 665 655 666 % @w prevents a word break. Without the \leavevmode, @w at the … … 1029 1040 % which is what @var uses. 1030 1041 { 1031 \catcode \underChar= \active1042 \catcode`\_ = \active 1032 1043 \gdef\mathunderscore{% 1033 \catcode \underChar=\active1044 \catcode`\_=\active 1034 1045 \def_{\ifnum\fam=\slfam \_\else\sb\fi}% 1035 1046 } … … 1090 1101 \def\enddots{% 1091 1102 \dots 1092 \spacefactor= 30001103 \spacefactor=\endofsentencespacefactor 1093 1104 } 1094 1105 1095 1106 % @comma{} is so commas can be inserted into text without messing up 1096 1107 % Texinfo's parsing. 1097 % 1108 % 1098 1109 \let\comma = , 1099 1110 … … 1161 1172 \newif\ifpdfmakepagedest 1162 1173 1174 % when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1 1175 % can be set). So we test for \relax and 0 as well as \undefined, 1176 % borrowed from ifpdf.sty. 1163 1177 \ifx\pdfoutput\undefined 1164 \pdffalse1165 \let\pdfmkdest = \gobble1166 \let\pdfurl = \gobble1167 \let\endlink = \relax1168 \let\linkcolor = \relax1169 \let\pdfmakeoutlines = \relax1170 1178 \else 1171 \pdftrue 1172 \pdfoutput = 1 1179 \ifx\pdfoutput\relax 1180 \else 1181 \ifcase\pdfoutput 1182 \else 1183 \pdftrue 1184 \fi 1185 \fi 1186 \fi 1187 1188 % PDF uses PostScript string constants for the names of xref targets, 1189 % for display in the outlines, and in other places. Thus, we have to 1190 % double any backslashes. Otherwise, a name like "\node" will be 1191 % interpreted as a newline (\n), followed by o, d, e. Not good. 1192 % http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html 1193 % (and related messages, the final outcome is that it is up to the TeX 1194 % user to double the backslashes and otherwise make the string valid, so 1195 % that's what we do). 1196 1197 % double active backslashes. 1198 % 1199 {\catcode`\@=0 \catcode`\\=\active 1200 @gdef@activebackslashdouble{% 1201 @catcode`@\=@active 1202 @let\=@doublebackslash} 1203 } 1204 1205 % To handle parens, we must adopt a different approach, since parens are 1206 % not active characters. hyperref.dtx (which has the same problem as 1207 % us) handles it with this amazing macro to replace tokens. I've 1208 % tinkered with it a little for texinfo, but it's definitely from there. 1209 % 1210 % #1 is the tokens to replace. 1211 % #2 is the replacement. 1212 % #3 is the control sequence with the string. 1213 % 1214 \def\HyPsdSubst#1#2#3{% 1215 \def\HyPsdReplace##1#1##2\END{% 1216 ##1% 1217 \ifx\\##2\\% 1218 \else 1219 #2% 1220 \HyReturnAfterFi{% 1221 \HyPsdReplace##2\END 1222 }% 1223 \fi 1224 }% 1225 \xdef#3{\expandafter\HyPsdReplace#3#1\END}% 1226 } 1227 \long\def\HyReturnAfterFi#1\fi{\fi#1} 1228 1229 % #1 is a control sequence in which to do the replacements. 1230 \def\backslashparens#1{% 1231 \xdef#1{#1}% redefine it as its expansion; the definition is simply 1232 % \lastnode when called from \setref -> \pdfmkdest. 1233 \HyPsdSubst{(}{\realbackslash(}{#1}% 1234 \HyPsdSubst{)}{\realbackslash)}{#1}% 1235 } 1236 1237 \ifpdf 1173 1238 \input pdfcolor 1174 1239 \pdfcatalog{/PageMode /UseOutlines}% … … 1194 1259 \fi} 1195 1260 \def\pdfmkdest#1{{% 1196 % We have to set dummies so commands such as @code in a section title1197 % aren't expanded.1261 % We have to set dummies so commands such as @code, and characters 1262 % such as \, aren't expanded when present in a section title. 1198 1263 \atdummies 1199 \normalturnoffactive 1200 \pdfdest name{#1} xyz% 1201 }} 1202 \def\pdfmkpgn#1{#1} 1264 \activebackslashdouble 1265 \def\pdfdestname{#1}% 1266 \backslashparens\pdfdestname 1267 \pdfdest name{\pdfdestname} xyz% 1268 }}% 1269 % 1270 % used to mark target names; must be expandable. 1271 \def\pdfmkpgn#1{#1}% 1272 % 1203 1273 \let\linkcolor = \Blue % was Cyan, but that seems light? 1204 1274 \def\endlink{\Black\pdfendlink} … … 1211 1281 \expandafter\xdef\csname#1\endcsname{\the\tempnum}} 1212 1282 % 1213 % #1 is the section text. #2 is the pdf expression for the number 1214 % of subentries (or empty, for subsubsections). #3 is the node 1215 % text, which might be empty if this toc entry had no 1216 % corresponding node. #4 is the page number. 1217 % 1283 % #1 is the section text, which is what will be displayed in the 1284 % outline by the pdf viewer. #2 is the pdf expression for the number 1285 % of subentries (or empty, for subsubsections). #3 is the node text, 1286 % which might be empty if this toc entry had no corresponding node. 1287 % #4 is the page number 1288 % 1218 1289 \def\dopdfoutline#1#2#3#4{% 1219 1290 % Generate a link to the node text if that exists; else, use the 1220 1291 % page number. We could generate a destination for the section 1221 1292 % text in the case where a section has no node, but it doesn't 1222 % seem worth while, since most documents are normally structured.1293 % seem worth the trouble, since most documents are normally structured. 1223 1294 \def\pdfoutlinedest{#3}% 1224 \ifx\pdfoutlinedest\empty \def\pdfoutlinedest{#4}\fi 1295 \ifx\pdfoutlinedest\empty 1296 \def\pdfoutlinedest{#4}% 1297 \else 1298 % Doubled backslashes in the name. 1299 {\activebackslashdouble \xdef\pdfoutlinedest{#3}% 1300 \backslashparens\pdfoutlinedest}% 1301 \fi 1225 1302 % 1226 \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{#1}% 1303 % Also double the backslashes in the display string. 1304 {\activebackslashdouble \xdef\pdfoutlinetext{#1}% 1305 \backslashparens\pdfoutlinetext}% 1306 % 1307 \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}% 1227 1308 } 1228 1309 % … … 1236 1317 \def\numchapentry##1##2##3##4{% 1237 1318 \def\thischapnum{##2}% 1238 \ let\thissecnum\empty1239 \ let\thissubsecnum\empty1319 \def\thissecnum{0}% 1320 \def\thissubsecnum{0}% 1240 1321 }% 1241 1322 \def\numsecentry##1##2##3##4{% 1242 1323 \advancenumber{chap\thischapnum}% 1243 1324 \def\thissecnum{##2}% 1244 \ let\thissubsecnum\empty1325 \def\thissubsecnum{0}% 1245 1326 }% 1246 1327 \def\numsubsecentry##1##2##3##4{% … … 1251 1332 \advancenumber{subsec\thissubsecnum}% 1252 1333 }% 1253 \ let\thischapnum\empty1254 \ let\thissecnum\empty1255 \ let\thissubsecnum\empty1334 \def\thischapnum{0}% 1335 \def\thissecnum{0}% 1336 \def\thissubsecnum{0}% 1256 1337 % 1257 1338 % use \def rather than \let here because we redefine \chapentry et … … 1265 1346 \def\unnsubsecentry{\numsubsecentry}% 1266 1347 \def\unnsubsubsecentry{\numsubsubsecentry}% 1267 \ input \jobname.toc1348 \readdatafile{toc}% 1268 1349 % 1269 1350 % Read toc second time, this time actually producing the outlines. 1270 1351 % The `-' means take the \expnumber as the absolute number of 1271 1352 % subentries, which we calculated on our first read of the .toc above. 1272 % 1353 % 1273 1354 % We use the node names as the destinations. 1274 1355 \def\numchapentry##1##2##3##4{% … … 1286 1367 % Latin 2 (0xea) gets translated to a | character. Info from 1287 1368 % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100. 1288 % 1369 % 1289 1370 % xx to do this right, we have to translate 8-bit characters to 1290 1371 % their "best" equivalent, based on the @documentencoding. Right 1291 1372 % now, I guess we'll just let the pdf reader have its way. 1292 1373 \indexnofonts 1293 \turnoffactive 1374 \setupdatafile 1375 \catcode`\\=\active \otherbackslash 1294 1376 \input \jobname.toc 1295 1377 \endgroup 1296 1378 } 1297 1379 % 1298 \def\makelinks #1,{%1299 \def\params{#1}\def\E{END}%1300 \ifx\params\E1301 \let\nextmakelinks=\relax1302 \else1303 \let\nextmakelinks=\makelinks1304 \ifnum\lnkcount>0,\fi1305 \picknum{#1}%1306 \startlink attr{/Border [0 0 0]}1307 goto name{\pdfmkpgn{\the\pgn}}%1308 \linkcolor #1%1309 \advance\lnkcount by 1%1310 \endlink1311 \fi1312 \nextmakelinks1313 }1314 \def\picknum#1{\expandafter\pn#1}1315 \def\pn#1{%1316 \def\p{#1}%1317 \ifx\p\lbrace1318 \let\nextpn=\ppn1319 \else1320 \let\nextpn=\ppnn1321 \def\first{#1}1322 \fi1323 \nextpn1324 }1325 \def\ppn#1{\pgn=#1\gobble}1326 \def\ppnn{\pgn=\first}1327 \def\pdfmklnk#1{\lnkcount=0\makelinks #1,END,}1328 1380 \def\skipspaces#1{\def\PP{#1}\def\D{|}% 1329 1381 \ifx\PP\D\let\nextsp\relax … … 1340 1392 \let \startlink \pdfstartlink 1341 1393 \fi 1394 % make a live url in pdf output. 1342 1395 \def\pdfurl#1{% 1343 1396 \begingroup 1344 \normalturnoffactive\def\@{@}% 1397 % it seems we really need yet another set of dummies; have not 1398 % tried to figure out what each command should do in the context 1399 % of @url. for now, just make @/ a no-op, that's the only one 1400 % people have actually reported a problem with. 1401 % 1402 \normalturnoffactive 1403 \def\@{@}% 1404 \let\/=\empty 1345 1405 \makevalueexpandable 1346 1406 \leavevmode\Red … … 1373 1433 \linkcolor #1\endlink} 1374 1434 \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} 1375 \fi % \ifx\pdfoutput 1435 \else 1436 \let\pdfmkdest = \gobble 1437 \let\pdfurl = \gobble 1438 \let\endlink = \relax 1439 \let\linkcolor = \relax 1440 \let\pdfmakeoutlines = \relax 1441 \fi % \ifx\pdfoutput 1376 1442 1377 1443 … … 1381 1447 % For now, we do not accumulate font styles: @b{@i{foo}} prints foo in 1382 1448 % italics, not bold italics. 1383 % 1449 % 1384 1450 \def\setfontstyle#1{% 1385 1451 \def\curfontstyle{#1}% not as a control sequence, because we are \edef'd. … … 1388 1454 1389 1455 % Select #1 fonts with the current style. 1390 % 1456 % 1391 1457 \def\selectfonts#1{\csname #1fonts\endcsname \csname\curfontstyle\endcsname} 1392 1458 … … 1394 1460 \def\it{\fam=\itfam \setfontstyle{it}} 1395 1461 \def\sl{\fam=\slfam \setfontstyle{sl}} 1396 \def\bf{\fam=\bffam \setfontstyle{bf}} 1462 \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} 1397 1463 \def\tt{\fam=\ttfam \setfontstyle{tt}} 1398 1464 … … 1456 1522 1457 1523 % Text fonts (11.2pt, magstep1). 1458 \newcount\mainmagstep 1459 \ifx\bigger\relax 1460 % not really supported. 1461 \mainmagstep=\magstep1 1462 \setfont\textrm\rmshape{12}{1000} 1463 \setfont\texttt\ttshape{12}{1000} 1464 \else 1465 \mainmagstep=\magstephalf 1466 \setfont\textrm\rmshape{10}{\mainmagstep} 1467 \setfont\texttt\ttshape{10}{\mainmagstep} 1468 \fi 1524 \def\textnominalsize{11pt} 1525 \edef\mainmagstep{\magstephalf} 1526 \setfont\textrm\rmshape{10}{\mainmagstep} 1527 \setfont\texttt\ttshape{10}{\mainmagstep} 1469 1528 \setfont\textbf\bfshape{10}{\mainmagstep} 1470 1529 \setfont\textit\itshape{10}{\mainmagstep} … … 1483 1542 1484 1543 % Fonts for indices, footnotes, small examples (9pt). 1544 \def\smallnominalsize{9pt} 1485 1545 \setfont\smallrm\rmshape{9}{1000} 1486 1546 \setfont\smalltt\ttshape{9}{1000} … … 1495 1555 1496 1556 % Fonts for small examples (8pt). 1557 \def\smallernominalsize{8pt} 1497 1558 \setfont\smallerrm\rmshape{8}{1000} 1498 1559 \setfont\smallertt\ttshape{8}{1000} … … 1507 1568 1508 1569 % Fonts for title page (20.4pt): 1570 \def\titlenominalsize{20pt} 1509 1571 \setfont\titlerm\rmbshape{12}{\magstep3} 1510 1572 \setfont\titleit\itbshape{10}{\magstep4} … … 1521 1583 1522 1584 % Chapter (and unnumbered) fonts (17.28pt). 1585 \def\chapnominalsize{17pt} 1523 1586 \setfont\chaprm\rmbshape{12}{\magstep2} 1524 1587 \setfont\chapit\itbshape{10}{\magstep3} … … 1533 1596 1534 1597 % Section fonts (14.4pt). 1598 \def\secnominalsize{14pt} 1535 1599 \setfont\secrm\rmbshape{12}{\magstep1} 1536 1600 \setfont\secit\itbshape{10}{\magstep2} … … 1545 1609 1546 1610 % Subsection fonts (13.15pt). 1611 \def\ssecnominalsize{13pt} 1547 1612 \setfont\ssecrm\rmbshape{12}{\magstephalf} 1548 1613 \setfont\ssecit\itbshape{10}{1315} … … 1557 1622 1558 1623 % Reduced fonts for @acro in text (10pt). 1624 \def\reducednominalsize{10pt} 1559 1625 \setfont\reducedrm\rmshape{10}{1000} 1560 1626 \setfont\reducedtt\ttshape{10}{1000} … … 1584 1650 % current \fam for math mode. Our \STYLE (e.g., \rm) commands hardwire 1585 1651 % \tenSTYLE to set the current font. 1586 % 1652 % 1587 1653 % Each font-changing command also sets the names \lsize (one size lower) 1588 1654 % and \lllsize (three sizes lower). These relative commands are used in 1589 1655 % the LaTeX logo and acronyms. 1590 % 1656 % 1591 1657 % This all needs generalizing, badly. 1592 % 1658 % 1593 1659 \def\textfonts{% 1594 1660 \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl … … 1596 1662 \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy 1597 1663 \let\tenttsl=\textttsl 1664 \def\curfontsize{text}% 1598 1665 \def\lsize{reduced}\def\lllsize{smaller}% 1599 1666 \resetmathfonts \setleading{\textleading}} … … 1603 1670 \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy 1604 1671 \let\tenttsl=\titlettsl 1672 \def\curfontsize{title}% 1605 1673 \def\lsize{chap}\def\lllsize{subsec}% 1606 1674 \resetmathfonts \setleading{25pt}} … … 1609 1677 \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl 1610 1678 \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc 1611 \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl 1679 \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy 1680 \let\tenttsl=\chapttsl 1681 \def\curfontsize{chap}% 1612 1682 \def\lsize{sec}\def\lllsize{text}% 1613 1683 \resetmathfonts \setleading{19pt}} … … 1617 1687 \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy 1618 1688 \let\tenttsl=\secttsl 1689 \def\curfontsize{sec}% 1619 1690 \def\lsize{subsec}\def\lllsize{reduced}% 1620 1691 \resetmathfonts \setleading{16pt}} … … 1624 1695 \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy 1625 1696 \let\tenttsl=\ssecttsl 1697 \def\curfontsize{ssec}% 1626 1698 \def\lsize{text}\def\lllsize{small}% 1627 1699 \resetmathfonts \setleading{15pt}} … … 1632 1704 \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy 1633 1705 \let\tenttsl=\reducedttsl 1706 \def\curfontsize{reduced}% 1634 1707 \def\lsize{small}\def\lllsize{smaller}% 1635 1708 \resetmathfonts \setleading{10.5pt}} … … 1639 1712 \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy 1640 1713 \let\tenttsl=\smallttsl 1714 \def\curfontsize{small}% 1641 1715 \def\lsize{smaller}\def\lllsize{smaller}% 1642 1716 \resetmathfonts \setleading{10.5pt}} … … 1646 1720 \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy 1647 1721 \let\tenttsl=\smallerttsl 1722 \def\curfontsize{smaller}% 1648 1723 \def\lsize{smaller}\def\lllsize{smaller}% 1649 1724 \resetmathfonts \setleading{9.5pt}} … … 1703 1778 1704 1779 \let\i=\smartitalic 1780 \let\slanted=\smartslanted 1705 1781 \let\var=\smartslanted 1706 1782 \let\dfn=\smartslanted 1707 1783 \let\emph=\smartitalic 1708 1784 1785 % @b, explicit bold. 1709 1786 \def\b#1{{\bf #1}} 1710 1787 \let\strong=\b 1788 1789 % @sansserif, explicit sans. 1790 \def\sansserif#1{{\sf #1}} 1711 1791 1712 1792 % We can't just use \exhyphenpenalty, because that only has effect at … … 1721 1801 % sometimes \x has an active definition that messes things up. 1722 1802 % 1803 \chardef\colonChar = `\: 1804 \chardef\commaChar = `\, 1805 \chardef\dotChar = `\. 1806 \chardef\exclamChar= `\! 1807 \chardef\questChar = `\? 1808 \chardef\semiChar = `\; 1809 % 1723 1810 \catcode`@=11 1724 \def\ frenchspacing{%1811 \def\plainfrenchspacing{% 1725 1812 \sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m 1726 1813 \sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m 1814 \def\endofsentencespacefactor{1000}% for @. and friends 1815 } 1816 \def\plainnonfrenchspacing{% 1817 \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 1818 \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 1819 \def\endofsentencespacefactor{3000}% for @. and friends 1727 1820 } 1728 1821 \catcode`@=\other 1822 \def\endofsentencespacefactor{3000}% default 1729 1823 1730 1824 \def\t#1{% 1731 {\tt \rawbackslash \ frenchspacing #1}%1825 {\tt \rawbackslash \plainfrenchspacing #1}% 1732 1826 \null 1733 1827 } … … 1766 1860 % 1767 1861 \rawbackslash 1768 \ frenchspacing1862 \plainfrenchspacing 1769 1863 #1% 1770 1864 }% … … 1786 1880 % 1787 1881 \global\def\code{\begingroup 1788 \catcode`\-=\active \let-\codedash 1789 \catcode`\_=\active \let_\codeunder 1882 \catcode`\-=\active \catcode`\_=\active 1883 \ifallowcodebreaks 1884 \let-\codedash 1885 \let_\codeunder 1886 \else 1887 \let-\realdash 1888 \let_\realunder 1889 \fi 1790 1890 \codex 1791 1891 } … … 1807 1907 \def\codex #1{\tclose{#1}\endgroup} 1808 1908 1909 % An additional complication: the above will allow breaks after, e.g., 1910 % each of the four underscores in __typeof__. This is undesirable in 1911 % some manuals, especially if they don't have long identifiers in 1912 % general. @allowcodebreaks provides a way to control this. 1913 % 1914 \newif\ifallowcodebreaks \allowcodebreakstrue 1915 1916 \def\keywordtrue{true} 1917 \def\keywordfalse{false} 1918 1919 \parseargdef\allowcodebreaks{% 1920 \def\txiarg{#1}% 1921 \ifx\txiarg\keywordtrue 1922 \allowcodebreakstrue 1923 \else\ifx\txiarg\keywordfalse 1924 \allowcodebreaksfalse 1925 \else 1926 \errhelp = \EMsimple 1927 \errmessage{Unknown @allowcodebreaks option `\txiarg'}% 1928 \fi\fi 1929 } 1930 1809 1931 % @kbd is like @code, except that if the argument is just one @key command, 1810 1932 % then @kbd has no effect. … … 1814 1936 % or `code' (@kbd uses normal tty font always). 1815 1937 \parseargdef\kbdinputstyle{% 1816 \def\ arg{#1}%1817 \ifx\ arg\worddistinct1938 \def\txiarg{#1}% 1939 \ifx\txiarg\worddistinct 1818 1940 \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% 1819 \else\ifx\ arg\wordexample1941 \else\ifx\txiarg\wordexample 1820 1942 \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% 1821 \else\ifx\ arg\wordcode1943 \else\ifx\txiarg\wordcode 1822 1944 \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% 1823 1945 \else 1824 1946 \errhelp = \EMsimple 1825 \errmessage{Unknown @kbdinputstyle option `\ arg'}%1947 \errmessage{Unknown @kbdinputstyle option `\txiarg'}% 1826 1948 \fi\fi\fi 1827 1949 } … … 1839 1961 \else{\tclose{\kbdfont\look}}\fi} 1840 1962 1841 % For @ url, @env, @command quotes seem unnecessary, so use \code.1842 \let\ url=\code1963 % For @indicateurl, @env, @command quotes seem unnecessary, so use \code. 1964 \let\indicateurl=\code 1843 1965 \let\env=\code 1844 1966 \let\command=\code … … 1872 1994 \endgroup} 1873 1995 1996 % @url synonym for @uref, since that's how everyone uses it. 1997 % 1998 \let\url=\uref 1999 1874 2000 % rms does not like angle brackets --karl, 17may97. 1875 2001 % So now @email is just like @uref, unless we are pdf. … … 1913 2039 \def\ii#1{{\it #1}} % italic font 1914 2040 2041 % @acronym for "FBI", "NATO", and the like. 2042 % We print this one point size smaller, since it's intended for 2043 % all-uppercase. 2044 % 1915 2045 \def\acronym#1{\doacronym #1,,\finish} 1916 2046 \def\doacronym#1,#2,#3\finish{% … … 1922 2052 } 1923 2053 1924 % @pounds{} is a sterling sign, which is in the CM italic font. 2054 % @abbr for "Comput. J." and the like. 2055 % No font change, but don't do end-of-sentence spacing. 1925 2056 % 2057 \def\abbr#1{\doabbr #1,,\finish} 2058 \def\doabbr#1,#2,#3\finish{% 2059 {\plainfrenchspacing #1}% 2060 \def\temp{#2}% 2061 \ifx\temp\empty \else 2062 \space ({\unsepspaces \ignorespaces \temp \unskip})% 2063 \fi 2064 } 2065 2066 % @pounds{} is a sterling sign, which Knuth put in the CM italic font. 2067 % 1926 2068 \def\pounds{{\it\$}} 2069 2070 % @euro{} comes from a separate font, depending on the current style. 2071 % We use the free feym* fonts from the eurosym package by Henrik 2072 % Theiling, which support regular, slanted, bold and bold slanted (and 2073 % "outlined" (blackboard board, sort of) versions, which we don't need). 2074 % It is available from http://www.ctan.org/tex-archive/fonts/eurosym. 2075 % 2076 % Although only regular is the truly official Euro symbol, we ignore 2077 % that. The Euro is designed to be slightly taller than the regular 2078 % font height. 2079 % 2080 % feymr - regular 2081 % feymo - slanted 2082 % feybr - bold 2083 % feybo - bold slanted 2084 % 2085 % There is no good (free) typewriter version, to my knowledge. 2086 % A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide. 2087 % Hmm. 2088 % 2089 % Also doesn't work in math. Do we need to do math with euro symbols? 2090 % Hope not. 2091 % 2092 % 2093 \def\euro{{\eurofont e}} 2094 \def\eurofont{% 2095 % We set the font at each command, rather than predefining it in 2096 % \textfonts and the other font-switching commands, so that 2097 % installations which never need the symbol don't have to have the 2098 % font installed. 2099 % 2100 % There is only one designed size (nominal 10pt), so we always scale 2101 % that to the current nominal size. 2102 % 2103 % By the way, simply using "at 1em" works for cmr10 and the like, but 2104 % does not work for cmbx10 and other extended/shrunken fonts. 2105 % 2106 \def\eurosize{\csname\curfontsize nominalsize\endcsname}% 2107 % 2108 \ifx\curfontstyle\bfstylename 2109 % bold: 2110 \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize 2111 \else 2112 % regular: 2113 \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize 2114 \fi 2115 \thiseurofont 2116 } 1927 2117 1928 2118 % @registeredsymbol - R in a circle. The font for the R should really … … 1935 2125 }$% 1936 2126 } 2127 2128 % Laurent Siebenmann reports \Orb undefined with: 2129 % Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 2130 % so we'll define it if necessary. 2131 % 2132 \ifx\Orb\undefined 2133 \def\Orb{\mathhexbox20D} 2134 \fi 1937 2135 1938 2136 … … 2038 2236 % @author should come last, but may come many times. 2039 2237 % It can also be used inside @quotation. 2040 % 2238 % 2041 2239 \parseargdef\author{% 2042 2240 \def\temp{\quotation}% … … 2241 2439 \nobreak \vskip-\parskip 2242 2440 % 2243 % Stop a page break at the \parskip glue coming up. (Unfortunately 2244 % we can't prevent a possible page break at the following 2245 % \baselineskip glue.) However, if what follows is an environment 2246 % such as @example, there will be no \parskip glue; then 2247 % the negative vskip we just would cause the example and the item to 2248 % crash together. So we use this bizarre value of 10001 as a signal 2249 % to \aboveenvbreak to insert \parskip glue after all. 2250 % (Possibly there are other commands that could be followed by 2251 % @example which need the same treatment, but not section titles; or 2252 % maybe section titles are the only special case and they should be 2253 % penalty 10001...) 2441 % Stop a page break at the \parskip glue coming up. However, if 2442 % what follows is an environment such as @example, there will be no 2443 % \parskip glue; then the negative vskip we just inserted would 2444 % cause the example and the item to crash together. So we use this 2445 % bizarre value of 10001 as a signal to \aboveenvbreak to insert 2446 % \parskip glue after all. Section titles are handled this way also. 2447 % 2254 2448 \penalty 10001 2255 2449 \endgroup … … 2277 2471 \envdef\table{% 2278 2472 \let\itemindex\gobble 2279 \table x2473 \tablecheck{table}% 2280 2474 } 2281 2475 \envdef\ftable{% 2282 2476 \def\itemindex ##1{\doind {fn}{\code{##1}}}% 2283 \table x2477 \tablecheck{ftable}% 2284 2478 } 2285 2479 \envdef\vtable{% 2286 2480 \def\itemindex ##1{\doind {vr}{\code{##1}}}% 2287 \tablex 2481 \tablecheck{vtable}% 2482 } 2483 \def\tablecheck#1{% 2484 \ifnum \the\catcode`\^^M=\active 2485 \endgroup 2486 \errmessage{This command won't work in this context; perhaps the problem is 2487 that we are \inenvironment\thisenv}% 2488 \def\next{\doignore{#1}}% 2489 \else 2490 \let\next\tablex 2491 \fi 2492 \next 2288 2493 } 2289 2494 \def\tablex#1{% … … 2538 2743 % #1 is the @columnfraction, usually a decimal number like .5, but might 2539 2744 % be just 1. We just use it, whatever it is. 2540 % 2745 % 2541 2746 \def\pickupwholefraction#1 {% 2542 2747 \global\advance\colcount by 1 … … 2596 2801 % 2597 2802 % @item within a multitable starts a normal row. 2598 \let\item\crcr 2803 % We use \def instead of \let so that if one of the multitable entries 2804 % contains an @itemize, we don't choke on the \item (seen as \crcr aka 2805 % \endtemplate) expanding \doitemize. 2806 \def\item{\crcr}% 2599 2807 % 2600 2808 \tolerance=9500 … … 2681 2889 } 2682 2890 2683 \def\setmultitablespacing{% test to see if user has set \multitablelinespace. 2684 % If so, do nothing. If not, give it an appropriate dimension based on 2685 % current baselineskip. 2891 \def\setmultitablespacing{% 2892 \def\multistrut{\strut}% just use the standard line spacing 2893 % 2894 % Compute \multitablelinespace (if not defined by user) for use in 2895 % \multitableparskip calculation. We used define \multistrut based on 2896 % this, but (ironically) that caused the spacing to be off. 2897 % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100. 2686 2898 \ifdim\multitablelinespace=0pt 2687 2899 \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip 2688 2900 \global\advance\multitablelinespace by-\ht0 2689 %% strut to put in table in case some entry doesn't have descenders, 2690 %% to keep lines equally spaced 2691 \let\multistrut = \strut 2692 \else 2693 %% FIXME: what is \box0 supposed to be? 2694 \gdef\multistrut{\vrule height\multitablelinespace depth\dp0 2695 width0pt\relax} \fi 2901 \fi 2696 2902 %% Test to see if parskip is larger than space between lines of 2697 2903 %% table. If not, do nothing. … … 2751 2957 \def\doignore#1{\begingroup 2752 2958 % Scan in ``verbatim'' mode: 2959 \obeylines 2753 2960 \catcode`\@ = \other 2754 2961 \catcode`\{ = \other … … 2762 2969 % 2763 2970 % Swallow text until we reach the matching `@end #1'. 2764 \dodoignore 2971 \dodoignore{#1}% 2765 2972 } 2766 2973 … … 2769 2976 % 2770 2977 \gdef\dodoignore#1{% 2771 % #1 contains the string`ifinfo'.2978 % #1 contains the command name as a string, e.g., `ifinfo'. 2772 2979 % 2773 % Define a command to find the next `@end #1', which must be on a line 2774 % by itself. 2775 \long\def\doignoretext##1^^M@end #1{\doignoretextyyy##1^^M@#1\_STOP_}% 2980 % Define a command to find the next `@end #1'. 2981 \long\def\doignoretext##1^^M@end #1{% 2982 \doignoretextyyy##1^^M@#1\_STOP_}% 2983 % 2776 2984 % And this command to find another #1 command, at the beginning of a 2777 2985 % line. (Otherwise, we would consider a line `@c @ifset', for … … 2780 2988 % 2781 2989 % And now expand that command. 2782 \obeylines %2783 2990 \doignoretext ^^M% 2784 2991 }% … … 2798 3005 2799 3006 % We have to swallow the remaining "\_STOP_". 2800 % 3007 % 2801 3008 \def\doignoretextzzz#1{% 2802 3009 \ifnum\doignorecount = 0 % We have just found the outermost @end. … … 2810 3017 2811 3018 % Finish off ignored text. 2812 \def\enddoignore{\endgroup\ignorespaces} 3019 { \obeylines% 3020 % Ignore anything after the last `@end #1'; this matters in verbatim 3021 % environments, where otherwise the newline after an ignored conditional 3022 % would result in a blank line in the output. 3023 \gdef\enddoignore#1^^M{\endgroup\ignorespaces}% 3024 } 2813 3025 2814 3026 … … 2923 3135 2924 3136 % Define \newwrite to be identical to plain tex's \newwrite 2925 % except not \outer, so it can be used within \newindex. 2926 {\catcode`\@=11 2927 \gdef\newwrite{\alloc@7\write\chardef\sixt@@n}} 3137 % except not \outer, so it can be used within macros and \if's. 3138 \edef\newwrite{\makecsname{ptexnewwrite}} 2928 3139 2929 3140 % \newindex {foo} defines an index named foo. … … 3011 3222 % 3012 3223 \def\indexdummies{% 3224 \escapechar = `\\ % use backslash in output files. 3013 3225 \def\@{@}% change to @@ when we switch to @ as escape char in index files. 3014 3226 \def\ {\realbackslash\space }% … … 3019 3231 \let\} = \myrbrace 3020 3232 % 3021 % \definedummyword defines \#1 as \realbackslash #1\space, thus3022 % effectively preventing its expansion. This is used only for control3023 % words, not control letters, because the \space would be incorrect3024 % for control characters, but is needed to separate the control word3025 % from whatever follows.3026 %3027 % For control letters, we have \definedummyletter, which omits the3028 % space.3029 %3030 % These can be used both for control words that take an argument and3031 % those that do not. If it is followed by {arg} in the input, then3032 % that will dutifully get written to the index (or wherever).3033 %3034 \def\definedummyword##1{%3035 \expandafter\def\csname ##1\endcsname{\realbackslash ##1\space}%3036 }%3037 \def\definedummyletter##1{%3038 \expandafter\def\csname ##1\endcsname{\realbackslash ##1}%3039 }%3040 %3041 3233 % Do the redefinitions. 3042 3234 \commondummies 3043 3235 } 3044 3236 3045 % For the aux file, @ is the escape character. So we want to redefine 3046 % everything using @ instead of \realbackslash. When everything uses 3047 % @, this will be simpler. 3237 % For the aux and toc files, @ is the escape character. So we want to 3238 % redefine everything using @ as the escape character (instead of 3239 % \realbackslash, still used for index files). When everything uses @, 3240 % this will be simpler. 3048 3241 % 3049 3242 \def\atdummies{% … … 3053 3246 \let\} = \rbraceatcmd 3054 3247 % 3055 % (See comments in \indexdummies.)3056 \def\definedummyword##1{%3057 \expandafter\def\csname ##1\endcsname{@##1\space}%3058 }%3059 \def\definedummyletter##1{%3060 \expandafter\def\csname ##1\endcsname{@##1}%3061 }%3062 %3063 3248 % Do the redefinitions. 3064 3249 \commondummies 3065 } 3066 3067 % Called from \indexdummies and \atdummies. \definedummyword and 3068 % \definedummyletter must be defined first.3250 \otherbackslash 3251 } 3252 3253 % Called from \indexdummies and \atdummies. 3069 3254 % 3070 3255 \def\commondummies{% 3071 3256 % 3257 % \definedummyword defines \#1 as \string\#1\space, thus effectively 3258 % preventing its expansion. This is used only for control% words, 3259 % not control letters, because the \space would be incorrect for 3260 % control characters, but is needed to separate the control word 3261 % from whatever follows. 3262 % 3263 % For control letters, we have \definedummyletter, which omits the 3264 % space. 3265 % 3266 % These can be used both for control words that take an argument and 3267 % those that do not. If it is followed by {arg} in the input, then 3268 % that will dutifully get written to the index (or wherever). 3269 % 3270 \def\definedummyword ##1{\def##1{\string##1\space}}% 3271 \def\definedummyletter##1{\def##1{\string##1}}% 3272 \let\definedummyaccent\definedummyletter 3273 % 3274 \commondummiesnofonts 3275 % 3276 \definedummyletter\_% 3277 % 3278 % Non-English letters. 3279 \definedummyword\AA 3280 \definedummyword\AE 3281 \definedummyword\L 3282 \definedummyword\OE 3283 \definedummyword\O 3284 \definedummyword\aa 3285 \definedummyword\ae 3286 \definedummyword\l 3287 \definedummyword\oe 3288 \definedummyword\o 3289 \definedummyword\ss 3290 \definedummyword\exclamdown 3291 \definedummyword\questiondown 3292 \definedummyword\ordf 3293 \definedummyword\ordm 3294 % 3295 % Although these internal commands shouldn't show up, sometimes they do. 3296 \definedummyword\bf 3297 \definedummyword\gtr 3298 \definedummyword\hat 3299 \definedummyword\less 3300 \definedummyword\sf 3301 \definedummyword\sl 3302 \definedummyword\tclose 3303 \definedummyword\tt 3304 % 3305 \definedummyword\LaTeX 3306 \definedummyword\TeX 3307 % 3308 % Assorted special characters. 3309 \definedummyword\bullet 3310 \definedummyword\comma 3311 \definedummyword\copyright 3312 \definedummyword\registeredsymbol 3313 \definedummyword\dots 3314 \definedummyword\enddots 3315 \definedummyword\equiv 3316 \definedummyword\error 3317 \definedummyword\euro 3318 \definedummyword\expansion 3319 \definedummyword\minus 3320 \definedummyword\pounds 3321 \definedummyword\point 3322 \definedummyword\print 3323 \definedummyword\result 3324 % 3325 % We want to disable all macros so that they are not expanded by \write. 3326 \macrolist 3327 % 3072 3328 \normalturnoffactive 3073 %3074 \commondummiesnofonts3075 %3076 \definedummyletter{_}%3077 %3078 % Non-English letters.3079 \definedummyword{AA}%3080 \definedummyword{AE}%3081 \definedummyword{L}%3082 \definedummyword{OE}%3083 \definedummyword{O}%3084 \definedummyword{aa}%3085 \definedummyword{ae}%3086 \definedummyword{l}%3087 \definedummyword{oe}%3088 \definedummyword{o}%3089 \definedummyword{ss}%3090 \definedummyword{exclamdown}%3091 \definedummyword{questiondown}%3092 \definedummyword{ordf}%3093 \definedummyword{ordm}%3094 %3095 % Although these internal commands shouldn't show up, sometimes they do.3096 \definedummyword{bf}%3097 \definedummyword{gtr}%3098 \definedummyword{hat}%3099 \definedummyword{less}%3100 \definedummyword{sf}%3101 \definedummyword{sl}%3102 \definedummyword{tclose}%3103 \definedummyword{tt}%3104 %3105 \definedummyword{LaTeX}%3106 \definedummyword{TeX}%3107 %3108 % Assorted special characters.3109 \definedummyword{bullet}%3110 \definedummyword{copyright}%3111 \definedummyword{registeredsymbol}%3112 \definedummyword{dots}%3113 \definedummyword{enddots}%3114 \definedummyword{equiv}%3115 \definedummyword{error}%3116 \definedummyword{expansion}%3117 \definedummyword{minus}%3118 \definedummyword{pounds}%3119 \definedummyword{point}%3120 \definedummyword{print}%3121 \definedummyword{result}%3122 3329 % 3123 3330 % Handle some cases of @value -- where it does not contain any 3124 3331 % (non-fully-expandable) commands. 3125 3332 \makevalueexpandable 3126 %3127 % Normal spaces, not active ones.3128 \unsepspaces3129 %3130 % No macro expansion.3131 \turnoffmacros3132 3333 } 3133 3334 3134 3335 % \commondummiesnofonts: common to \commondummies and \indexnofonts. 3135 3336 % 3136 % Better have this without active chars. 3137 { 3138 \catcode`\~=\other 3139 \gdef\commondummiesnofonts{% 3140 % Control letters and accents. 3141 \definedummyletter{!}% 3142 \definedummyletter{"}% 3143 \definedummyletter{'}% 3144 \definedummyletter{*}% 3145 \definedummyletter{,}% 3146 \definedummyletter{.}% 3147 \definedummyletter{/}% 3148 \definedummyletter{:}% 3149 \definedummyletter{=}% 3150 \definedummyletter{?}% 3151 \definedummyletter{^}% 3152 \definedummyletter{`}% 3153 \definedummyletter{~}% 3154 \definedummyword{u}% 3155 \definedummyword{v}% 3156 \definedummyword{H}% 3157 \definedummyword{dotaccent}% 3158 \definedummyword{ringaccent}% 3159 \definedummyword{tieaccent}% 3160 \definedummyword{ubaraccent}% 3161 \definedummyword{udotaccent}% 3162 \definedummyword{dotless}% 3163 % 3164 % Texinfo font commands. 3165 \definedummyword{b}% 3166 \definedummyword{i}% 3167 \definedummyword{r}% 3168 \definedummyword{sc}% 3169 \definedummyword{t}% 3170 % 3171 % Commands that take arguments. 3172 \definedummyword{acronym}% 3173 \definedummyword{cite}% 3174 \definedummyword{code}% 3175 \definedummyword{command}% 3176 \definedummyword{dfn}% 3177 \definedummyword{emph}% 3178 \definedummyword{env}% 3179 \definedummyword{file}% 3180 \definedummyword{kbd}% 3181 \definedummyword{key}% 3182 \definedummyword{math}% 3183 \definedummyword{option}% 3184 \definedummyword{samp}% 3185 \definedummyword{strong}% 3186 \definedummyword{tie}% 3187 \definedummyword{uref}% 3188 \definedummyword{url}% 3189 \definedummyword{var}% 3190 \definedummyword{verb}% 3191 \definedummyword{w}% 3192 } 3337 \def\commondummiesnofonts{% 3338 % Control letters and accents. 3339 \definedummyletter\!% 3340 \definedummyaccent\"% 3341 \definedummyaccent\'% 3342 \definedummyletter\*% 3343 \definedummyaccent\,% 3344 \definedummyletter\.% 3345 \definedummyletter\/% 3346 \definedummyletter\:% 3347 \definedummyaccent\=% 3348 \definedummyletter\?% 3349 \definedummyaccent\^% 3350 \definedummyaccent\`% 3351 \definedummyaccent\~% 3352 \definedummyword\u 3353 \definedummyword\v 3354 \definedummyword\H 3355 \definedummyword\dotaccent 3356 \definedummyword\ringaccent 3357 \definedummyword\tieaccent 3358 \definedummyword\ubaraccent 3359 \definedummyword\udotaccent 3360 \definedummyword\dotless 3361 % 3362 % Texinfo font commands. 3363 \definedummyword\b 3364 \definedummyword\i 3365 \definedummyword\r 3366 \definedummyword\sc 3367 \definedummyword\t 3368 % 3369 % Commands that take arguments. 3370 \definedummyword\acronym 3371 \definedummyword\cite 3372 \definedummyword\code 3373 \definedummyword\command 3374 \definedummyword\dfn 3375 \definedummyword\emph 3376 \definedummyword\env 3377 \definedummyword\file 3378 \definedummyword\kbd 3379 \definedummyword\key 3380 \definedummyword\math 3381 \definedummyword\option 3382 \definedummyword\pxref 3383 \definedummyword\ref 3384 \definedummyword\samp 3385 \definedummyword\strong 3386 \definedummyword\tie 3387 \definedummyword\uref 3388 \definedummyword\url 3389 \definedummyword\var 3390 \definedummyword\verb 3391 \definedummyword\w 3392 \definedummyword\xref 3193 3393 } 3194 3394 … … 3199 3399 % 3200 3400 \def\indexnofonts{% 3201 \def\definedummyword##1{% 3202 \expandafter\let\csname ##1\endcsname\asis 3203 }% 3204 \let\definedummyletter=\definedummyword 3401 % Accent commands should become @asis. 3402 \def\definedummyaccent##1{\let##1\asis}% 3403 % We can just ignore other control letters. 3404 \def\definedummyletter##1{\let##1\empty}% 3405 % Hopefully, all control words can become @asis. 3406 \let\definedummyword\definedummyaccent 3205 3407 % 3206 3408 \commondummiesnofonts … … 3239 3441 % (The following {} will end up in the sort string, but that's ok.) 3240 3442 \def\bullet{bullet}% 3443 \def\comma{,}% 3241 3444 \def\copyright{copyright}% 3242 3445 \def\registeredsymbol{R}% … … 3245 3448 \def\equiv{==}% 3246 3449 \def\error{error}% 3450 \def\euro{euro}% 3247 3451 \def\expansion{==>}% 3248 3452 \def\minus{-}% … … 3251 3455 \def\print{-|}% 3252 3456 \def\result{=>}% 3457 % 3458 % We need to get rid of all macros, leaving only the arguments (if present). 3459 % Of course this is not nearly correct, but it is the best we can do for now. 3460 % makeinfo does not expand macros in the argument to @deffn, which ends up 3461 % writing an index entry, and texindex isn't prepared for an index sort entry 3462 % that starts with \. 3463 % 3464 % Since macro invocations are followed by braces, we can just redefine them 3465 % to take a single TeX argument. The case of a macro invocation that 3466 % goes to end-of-line is not handled. 3467 % 3468 \macrolist 3253 3469 } 3254 3470 … … 3297 3513 % Remember, we are within a group. 3298 3514 \indexdummies % Must do this here, since \bf, etc expand at this stage 3299 \escapechar=`\\3300 3515 \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now 3301 3516 % so it will be output as is; and it will print as backslash. … … 3371 3586 % 3372 3587 \ifx\lastskipmacro\zeroskipmacro 3373 % if \lastskip was zero, perhaps the last item was a 3374 % penalty, and perhaps it was >=10000, e.g., a \nobreak. 3375 % In that case, we want to re-insert the penalty; since we 3376 % just inserted a non-discardable item, any following glue 3377 % (such as a \parskip) would be a breakpoint. For example: 3588 % If \lastskip was zero, perhaps the last item was a penalty, and 3589 % perhaps it was >=10000, e.g., a \nobreak. In that case, we want 3590 % to re-insert the same penalty (values >10000 are used for various 3591 % signals); since we just inserted a non-discardable item, any 3592 % following glue (such as a \parskip) would be a breakpoint. For example: 3593 % 3378 3594 % @deffn deffn-whatever 3379 3595 % @vindex index-whatever … … 3381 3597 % would allow a break between the index-whatever whatsit 3382 3598 % and the "Description." paragraph. 3383 \ifnum\count255>9999 \ nobreak\fi3599 \ifnum\count255>9999 \penalty\count255 \fi 3384 3600 \else 3385 3601 % On the other hand, if we had a nonzero \lastskip, … … 3479 3695 % 3480 3696 % We like breaks before the index initials, so insert a bonus. 3481 \penalty -300 3697 \nobreak 3698 \vskip 0pt plus 3\baselineskip 3699 \penalty 0 3700 \vskip 0pt plus -3\baselineskip 3482 3701 % 3483 3702 % Typeset the initial. Making this add up to a whole number of … … 3489 3708 \vskip 1.67\baselineskip plus .5\baselineskip 3490 3709 \leftline{\secbf #1}% 3491 \vskip .33\baselineskip plus .1\baselineskip3492 %3493 3710 % Do our best not to break after the initial. 3494 3711 \nobreak 3712 \vskip .33\baselineskip plus .1\baselineskip 3495 3713 }} 3496 3714 … … 3504 3722 % @code, which sets - active. This problem was fixed by a kludge--- 3505 3723 % ``-'' was active throughout whole index, but this isn't really right. 3506 % 3724 % 3507 3725 % The right solution is to prevent \entry from swallowing the whole text. 3508 3726 % --kasal, 21nov03 … … 3770 3988 % construct for the sake of pdftex, which needs the actual 3771 3989 % letter in the expansion, not just typeset. 3772 % 3990 % 3773 3991 \def\appendixletter{% 3774 3992 \ifnum\appendixno=`A A% … … 3907 4125 % @chapter, @appendix, @unnumbered. Increment top-level counter, reset 3908 4126 % all lower-level sectioning counters to zero. 3909 % 4127 % 3910 4128 % Also set \chaplevelprefix, which we prepend to @float sequence numbers 3911 4129 % (e.g., figures), q.v. By default (before any chapter), that is empty. 3912 4130 \let\chaplevelprefix = \empty 3913 % 4131 % 3914 4132 \outer\parseargdef\chapter{\numhead0{#1}} % normally numhead0 calls chapterzzz 3915 4133 \def\chapterzzz#1{% … … 4135 4353 4136 4354 % Chapter opening. 4137 % 4355 % 4138 4356 % #1 is the text, #2 is the section type (Ynumbered, Ynothing, 4139 4357 % Yappendix, Yomitfromtoc), #3 the chapter number. 4140 % 4358 % 4141 4359 % To test against our argument. 4142 4360 \def\Ynothingkeyword{Ynothing} … … 4161 4379 \setbox0 = \hbox{}% 4162 4380 \def\toctype{unnchap}% 4163 \ def\thischapter{#1}%4381 \gdef\thischapter{#1}% 4164 4382 \else\ifx\temptype\Yomitfromtockeyword 4165 4383 \setbox0 = \hbox{}% contents like unnumbered, but no toc entry 4166 4384 \def\toctype{omit}% 4167 \ xdef\thischapter{}%4385 \gdef\thischapter{}% 4168 4386 \else\ifx\temptype\Yappendixkeyword 4169 4387 \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% … … 4214 4432 % I don't think this chapter style is supported any more, so I'm not 4215 4433 % updating it with the new noderef stuff. We'll see. --karl, 11aug03. 4216 % 4434 % 4217 4435 \def\setchapterstyle #1 {\csname CHAPF#1\endcsname} 4218 4436 % … … 4238 4456 % Section titles. These macros combine the section number parts and 4239 4457 % call the generic \sectionheading to do the printing. 4240 % 4458 % 4241 4459 \newskip\secheadingskip 4242 4460 \def\secheadingbreak{\dobreak \secheadingskip{-1000}} … … 4252 4470 4253 4471 % Print any size, any type, section title. 4254 % 4472 % 4255 4473 % #1 is the text, #2 is the section level (sec/subsec/subsubsec), #3 is 4256 4474 % the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the 4257 4475 % section number. 4258 % 4476 % 4259 4477 \def\sectionheading#1#2#3#4{% 4260 4478 {% … … 4289 4507 \fi\fi\fi 4290 4508 % 4291 % Write the toc entry (before \donoderef). See comments in \ch fplain.4509 % Write the toc entry (before \donoderef). See comments in \chapmacro. 4292 4510 \writetocentry{\toctype\sectionlevel}{#1}{#4}% 4293 4511 % 4294 4512 % Write the node reference (= pdf destination for pdftex). 4295 % Again, see comments in \ch fplain.4513 % Again, see comments in \chapmacro. 4296 4514 \donoderef{#3}% 4515 % 4516 % Interline glue will be inserted when the vbox is completed. 4517 % That glue will be a valid breakpoint for the page, since it'll be 4518 % preceded by a whatsit (usually from the \donoderef, or from the 4519 % \writetocentry if there was no node). We don't want to allow that 4520 % break, since then the whatsits could end up on page n while the 4521 % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000. 4522 \nobreak 4297 4523 % 4298 4524 % Output the actual section heading. … … 4313 4539 % discardable item.) 4314 4540 \vskip-\parskip 4315 % 4316 % This \nobreak is purely so the last item on the list is a \penalty4317 % of 10000. This is so other code, for instance \parsebodycommon, can4318 % check for and avoid allowing breakpoints. Otherwise, it would4319 % insert a valid breakpoint between:4541 % 4542 % This is purely so the last item on the list is a known \penalty > 4543 % 10000. This is so \startdefun can avoid allowing breakpoints after 4544 % section headings. Otherwise, it would insert a valid breakpoint between: 4545 % 4320 4546 % @section sec-whatever 4321 4547 % @deffn def-whatever 4322 \ nobreak4548 \penalty 10001 4323 4549 } 4324 4550 … … 4329 4555 4330 4556 % Write an entry to the toc file, opening it if necessary. 4331 % Called from @chapter, etc. 4332 % 4557 % Called from @chapter, etc. 4558 % 4333 4559 % Example usage: \writetocentry{sec}{Section Name}{\the\chapno.\the\secno} 4334 4560 % We append the current node name (if any) and page number as additional … … 4336 4562 % read this. The node name is used in the pdf outlines as the 4337 4563 % destination to jump to. 4338 % 4564 % 4339 4565 % We open the .toc file for writing here instead of at @setfilename (or 4340 4566 % any other fixed time) so that @contents can be anywhere in the document. … … 4354 4580 % 4355 4581 \iflinks 4356 \toks0 = {#2}%4357 \toks2 = \expandafter{\lastnode}%4358 \edef\temp{\write\tocfile{\realbackslash #1entry{\the\toks0}{#3}%4359 {\the\toks2}{\noexpand\folio}}}%4360 \temp4582 {\atdummies 4583 \edef\temp{% 4584 \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}% 4585 \temp 4586 }% 4361 4587 \fi 4362 4588 \fi … … 4371 4597 } 4372 4598 4599 4600 % These characters do not print properly in the Computer Modern roman 4601 % fonts, so we must take special care. This is more or less redundant 4602 % with the Texinfo input format setup at the end of this file. 4603 % 4604 \def\activecatcodes{% 4605 \catcode`\"=\active 4606 \catcode`\$=\active 4607 \catcode`\<=\active 4608 \catcode`\>=\active 4609 \catcode`\\=\active 4610 \catcode`\^=\active 4611 \catcode`\_=\active 4612 \catcode`\|=\active 4613 \catcode`\~=\active 4614 } 4615 4616 4617 % Read the toc file, which is essentially Texinfo input. 4618 \def\readtocfile{% 4619 \setupdatafile 4620 \activecatcodes 4621 \input \jobname.toc 4622 } 4623 4373 4624 \newskip\contentsrightmargin \contentsrightmargin=1in 4374 4625 \newcount\savepageno … … 4392 4643 \savepageno = \pageno 4393 4644 \begingroup % Set up to handle contents files properly. 4394 \catcode`\\=0 \catcode`\{=1 \catcode`\}=2 \catcode`\@=11 4395 % We can't do this, because then an actual ^ in a section 4396 % title fails, e.g., @chapter ^ -- exponentiation. --karl, 9jul97. 4397 %\catcode`\^=7 % to see ^^e4 as \"a etc. [email protected] 4398 \raggedbottom % Worry more about breakpoints than the bottom. 4645 \raggedbottom % Worry more about breakpoints than the bottom. 4399 4646 \advance\hsize by -\contentsrightmargin % Don't use the full line length. 4400 4647 % … … 4409 4656 \openin 1 \jobname.toc 4410 4657 \ifeof 1 \else 4411 \ input \jobname.toc4658 \readtocfile 4412 4659 \fi 4413 4660 \vfill \eject … … 4447 4694 \openin 1 \jobname.toc 4448 4695 \ifeof 1 \else 4449 \ input \jobname.toc4696 \readtocfile 4450 4697 \fi 4451 4698 \closein 1 … … 4467 4714 % (This space doesn't include the extra space that gets added after 4468 4715 % the label; that gets put in by \shortchapentry above.) 4469 % 4716 % 4470 4717 % We'd like to right-justify chapter numbers, but that looks strange 4471 4718 % with appendix letters. And right-justifying numbers and … … 4492 4739 % Appendices, in the main contents. 4493 4740 % Need the word Appendix, and a fixed-size box. 4494 % 4741 % 4495 4742 \def\appendixbox#1{% 4496 4743 % We use M since it's probably the widest letter. … … 4637 4884 \let\*=\ptexstar 4638 4885 \let\t=\ptext 4886 \let\frenchspacing=\plainfrenchspacing 4639 4887 % 4640 4888 \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% … … 4665 4913 % 4666 4914 \def\aboveenvbreak{{% 4667 % =10000 instead of <10000 because of a special case in \itemzzz, q.v. 4915 % =10000 instead of <10000 because of a special case in \itemzzz and 4916 % \sectionheading, q.v. 4668 4917 \ifnum \lastpenalty=10000 \else 4669 4918 \advance\envskipamount by \parskip … … 4681 4930 \let\afterenvbreak = \aboveenvbreak 4682 4931 4683 % \nonarrowing is a flag. If "set", @lisp etc don't narrow margins. 4932 % \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will 4933 % also clear it, so that its embedded environments do the narrowing again. 4684 4934 \let\nonarrowing=\relax 4685 4935 … … 4718 4968 \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip 4719 4969 % Flag to tell @lisp, etc., not to narrow margin. 4720 \let\nonarrowing =\comment4970 \let\nonarrowing = t% 4721 4971 \vbox\bgroup 4722 4972 \baselineskip=0pt\parskip=0pt\lineskip=0pt … … 4758 5008 \parindent = 0pt 4759 5009 \emergencystretch = 0pt % don't try to avoid overfull boxes 4760 % @cartouche defines \nonarrowing to inhibit narrowing4761 % at next level down.4762 5010 \ifx\nonarrowing\relax 4763 5011 \advance \leftskip by \lispnarrowing 4764 5012 \exdentamount=\lispnarrowing 5013 \else 5014 \let\nonarrowing = \relax 4765 5015 \fi 4766 5016 \let\exdent=\nofillexdent … … 4862 5112 \advance\rightskip by \lispnarrowing 4863 5113 \exdentamount = \lispnarrowing 5114 \else 4864 5115 \let\nonarrowing = \relax 4865 5116 \fi … … 4869 5120 % We have retained a nonzero parskip for the environment, since we're 4870 5121 % doing normal filling. 4871 % 5122 % 4872 5123 \def\Equotation{% 4873 5124 \par … … 4954 5205 \endgroup 4955 5206 \def\setupverbatim{% 5207 \let\nonarrowing = t% 4956 5208 \nonfillstart 4957 \advance\leftskip by -\defbodyindent4958 5209 % Easiest (and conventionally used) font for verbatim 4959 5210 \tt … … 5026 5277 5027 5278 % @copying ... @end copying. 5028 % Save the text away for @insertcopying later. Many commands won't be 5029 % allowed in this context, but that's ok. 5279 % Save the text away for @insertcopying later. 5030 5280 % 5031 5281 % We save the uninterpreted tokens, rather than creating a box. … … 5036 5286 % possible is very desirable. 5037 5287 % 5038 \def\copying{\begingroup 5039 % Define a command to swallow text until we reach `@end copying'. 5040 % \ is the escape char in this texinfo.tex file, so it is the 5041 % delimiter for the command; @ will be the escape char when we read 5042 % it, but that doesn't matter. 5043 \long\def\docopying##1\end copying{\gdef\copyingtext{##1}\enddocopying}% 5044 % 5045 % We must preserve ^^M's in the input file; see \insertcopying below. 5046 \catcode`\^^M = \active 5047 \docopying 5048 } 5049 5050 % What we do to finish off the copying text. 5051 % 5052 \def\enddocopying{\endgroup\ignorespaces} 5053 5054 % @insertcopying. Here we must play games with ^^M's. On the one hand, 5055 % we need them to delimit commands such as `@end quotation', so they 5056 % must be active. On the other hand, we certainly don't want every 5057 % end-of-line to be a \par, as would happen with the normal active 5058 % definition of ^^M. On the third hand, two ^^M's in a row should still 5059 % generate a \par. 5060 % 5061 % Our approach is to make ^^M insert a space and a penalty1 normally; 5062 % then it can also check if \lastpenalty=1. If it does, then manually 5063 % do \par. 5064 % 5065 % This messes up the normal definitions of @c[omment], so we redefine 5066 % it. Similarly for @ignore. (These commands are used in the gcc 5067 % manual for man page generation.) 5068 % 5069 % Seems pretty fragile, most line-oriented commands will presumably 5070 % fail, but for the limited use of getting the copying text (which 5071 % should be quite simple) inserted, we can hope it's ok. 5072 % 5073 {\catcode`\^^M=\active % 5074 \gdef\insertcopying{\begingroup % 5075 \parindent = 0pt % looks wrong on title page 5076 \def^^M{% 5077 \ifnum \lastpenalty=1 % 5078 \par % 5079 \else % 5080 \space \penalty 1 % 5081 \fi % 5082 }% 5083 % 5084 % Fix @c[omment] for catcode 13 ^^M's. 5085 \def\c##1^^M{\ignorespaces}% 5086 \let\comment = \c % 5087 % 5088 % Don't bother jumping through all the hoops that \doignore does, it 5089 % would be very hard since the catcodes are already set. 5090 \long\def\ignore##1\end ignore{\ignorespaces}% 5091 % 5092 \copyingtext % 5093 \endgroup}% 5288 \def\copying{\checkenv{}\begingroup\scanargctxt\docopying} 5289 \def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} 5290 % 5291 \def\insertcopying{% 5292 \begingroup 5293 \parindent = 0pt % paragraph indentation looks wrong on title page 5294 \scanexp\copyingtext 5295 \endgroup 5094 5296 } 5095 5297 … … 5109 5311 % which is there to keep the function description together with its 5110 5312 % header. But if there's nothing but headers, we need to allow a 5111 % break somewhere. Check for penalty 10002 (inserted by 5112 % \defargscommonending) instead of 10000, since the sectioning 5113 % commands insert a \penalty10000, and we don't want to allow a break 5114 % between a section heading and a defun. 5313 % break somewhere. Check specifically for penalty 10002, inserted 5314 % by \defargscommonending, instead of 10000, since the sectioning 5315 % commands also insert a nobreak penalty, and we don't want to allow 5316 % a break between a section heading and a defun. 5317 % 5115 5318 \ifnum\lastpenalty=10002 \penalty2000 \fi 5116 5319 % … … 5272 5475 % #2 is the return type, if any. 5273 5476 % #3 is the function name. 5274 % 5477 % 5275 5478 % We are followed by (but not passed) the arguments, if any. 5276 5479 % … … 5330 5533 % the argument list (groff manual), and ttsl and tt are not very 5331 5534 % distinguishable. Prevent hyphenation at `-' chars. 5332 % 5535 % 5333 5536 \def\defunargs#1{% 5334 % use sl by default (not ttsl), 5537 % use sl by default (not ttsl), 5335 5538 % tt for the names. 5336 5539 \df \sl \hyphenchar\font=0 … … 5436 5639 \newwrite\macscribble 5437 5640 \def\scantokens#1{% 5438 \toks0={#1 \endinput}%5641 \toks0={#1}% 5439 5642 \immediate\openout\macscribble=\jobname.tmp 5440 5643 \immediate\write\macscribble{\the\toks0}% … … 5449 5652 \let\xeatspaces\eatspaces 5450 5653 % Undo catcode changes of \startcontents and \doprintindex 5451 \catcode`\@=0 \catcode`\\=\other \escapechar=`\@ 5654 % When called from @insertcopying or (short)caption, we need active 5655 % backslash to get it printed correctly. Previously, we had 5656 % \catcode`\\=\other instead. We'll see whether a problem appears 5657 % with macro expansion. --kasal, 19aug04 5658 \catcode`\@=0 \catcode`\\=\active \escapechar=`\@ 5452 5659 % ... and \example 5453 5660 \spaceisspace … … 5461 5668 } 5462 5669 5670 \def\scanexp#1{% 5671 \edef\temp{\noexpand\scanmacro{#1}}% 5672 \temp 5673 } 5674 5463 5675 \newcount\paramno % Count of parameters 5464 5676 \newtoks\macname % Macro name 5465 5677 \newif\ifrecursive % Is it recursive? 5466 \def\macrolist{} % List of all defined macros in the form 5467 % \do\macro1\do\macro2... 5678 5679 % List of all defined macros in the form 5680 % \definedummyword\macro1\definedummyword\macro2... 5681 % Currently is also contains all @aliases; the list can be split 5682 % if there is a need. 5683 \def\macrolist{} 5684 5685 % Add the macro to \macrolist 5686 \def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname} 5687 \def\addtomacrolistxxx#1{% 5688 \toks0 = \expandafter{\macrolist\definedummyword#1}% 5689 \xdef\macrolist{\the\toks0}% 5690 } 5468 5691 5469 5692 % Utility routines. 5470 % This does \let #1 = #2, except with \csnames. 5693 % This does \let #1 = #2, with \csnames; that is, 5694 % \let \csname#1\endcsname = \csname#2\endcsname 5695 % (except of course we have to play expansion games). 5696 % 5471 5697 \def\cslet#1#2{% 5472 \expandafter\expandafter 5473 \expandafter\let 5474 \expandafter\expandafter 5475 \csname#1\endcsname 5476 \csname#2\endcsname} 5698 \expandafter\let 5699 \csname#1\expandafter\endcsname 5700 \csname#2\endcsname 5701 } 5477 5702 5478 5703 % Trim leading and trailing spaces off a string. … … 5501 5726 % body, and then making it the \newlinechar in \scanmacro. 5502 5727 5503 \def\macrobodyctxt{% 5504 \catcode`\~=\other 5728 \def\scanctxt{% 5729 \catcode`\"=\other 5730 \catcode`\+=\other 5731 \catcode`\<=\other 5732 \catcode`\>=\other 5733 \catcode`\@=\other 5505 5734 \catcode`\^=\other 5506 5735 \catcode`\_=\other 5507 5736 \catcode`\|=\other 5508 \catcode`\<=\other 5509 \catcode`\>=\other 5510 \catcode`\+=\other 5737 \catcode`\~=\other 5738 } 5739 5740 \def\scanargctxt{% 5741 \scanctxt 5742 \catcode`\\=\other 5743 \catcode`\^^M=\other 5744 } 5745 5746 \def\macrobodyctxt{% 5747 \scanctxt 5511 5748 \catcode`\{=\other 5512 5749 \catcode`\}=\other 5513 \catcode`\@=\other5514 5750 \catcode`\^^M=\other 5515 \usembodybackslash} 5751 \usembodybackslash 5752 } 5516 5753 5517 5754 \def\macroargctxt{% 5518 \catcode`\~=\other 5519 \catcode`\^=\other 5520 \catcode`\_=\other 5521 \catcode`\|=\other 5522 \catcode`\<=\other 5523 \catcode`\>=\other 5524 \catcode`\+=\other 5525 \catcode`\@=\other 5526 \catcode`\\=\other} 5755 \scanctxt 5756 \catcode`\\=\other 5757 } 5527 5758 5528 5759 % \mbodybackslash is the definition of \ in @macro bodies. … … 5555 5786 \global\cslet{macsave.\the\macname}{\the\macname}% 5556 5787 \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% 5557 % Add the macroname to \macrolist 5558 \toks0 = \expandafter{\macrolist\do}% 5559 \xdef\macrolist{\the\toks0 5560 \expandafter\noexpand\csname\the\macname\endcsname}% 5788 \addtomacrolist{\the\macname}% 5561 5789 \fi 5562 5790 \begingroup \macrobodyctxt … … 5572 5800 \begingroup 5573 5801 \expandafter\let\csname#1\endcsname \relax 5574 \let\d o\unmacrodo5802 \let\definedummyword\unmacrodo 5575 5803 \xdef\macrolist{\macrolist}% 5576 5804 \endgroup … … 5584 5812 % 5585 5813 \def\unmacrodo#1{% 5586 \ifx #1\relax5814 \ifx #1\relax 5587 5815 % remove this 5588 5816 \else 5589 \noexpand\d o \noexpand#1%5817 \noexpand\definedummyword \noexpand#1% 5590 5818 \fi 5591 5819 } … … 5700 5928 % line. Whatever was read is then fed to the next control sequence 5701 5929 % as an argument (by \parsebrace or \parsearg) 5702 \def\braceorline#1{\let\ next=#1\futurelet\nchar\braceorlinexxx}5930 \def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} 5703 5931 \def\braceorlinexxx{% 5704 5932 \ifx\nchar\bgroup\else 5705 5933 \expandafter\parsearg 5706 \fi \next} 5707 5708 % We mant to disable all macros during \shipout so that they are not 5709 % expanded by \write. 5710 \def\turnoffmacros{\begingroup \def\do##1{\let\noexpand##1=\relax}% 5711 \edef\next{\macrolist}\expandafter\endgroup\next} 5934 \fi \macnamexxx} 5712 5935 5713 5936 … … 5720 5943 {% 5721 5944 \expandafter\let\obeyedspace=\empty 5945 \addtomacrolist{#1}% 5722 5946 \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}% 5723 5947 }% … … 5739 5963 5740 5964 % @node's only job in TeX is to define \lastnode, which is used in 5741 % cross-references. 5742 \parseargdef\node{\checkenv{}\nodexxx #1,\finishnodeparse} 5743 \def\nodexxx#1,#2\finishnodeparse{\gdef\lastnode{#1}} 5965 % cross-references. The @node line might or might not have commas, and 5966 % might or might not have spaces before the first comma, like: 5967 % @node foo , bar , ... 5968 % We don't want such trailing spaces in the node name. 5969 % 5970 \parseargdef\node{\checkenv{}\donode #1 ,\finishnodeparse} 5971 % 5972 % also remove a trailing comma, in case of something like this: 5973 % @node Help-Cross, , , Cross-refs 5974 \def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse} 5975 \def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}} 5976 5744 5977 \let\nwnode=\node 5745 5978 \let\lastnode=\empty … … 5747 5980 % Write a cross-reference definition for the current node. #1 is the 5748 5981 % type (Ynumbered, Yappendix, Ynothing). 5749 % 5982 % 5750 5983 \def\donoderef#1{% 5751 5984 \ifx\lastnode\empty\else … … 5770 6003 % empty for anchors. 5771 6004 % 3) NAME-pg - the page number. 5772 % 6005 % 5773 6006 % This is called from \donoderef, \anchor, and \dofloat. In the case of 5774 6007 % floats, there is an additional part, which is not written here: 5775 6008 % 4) NAME-lof - the text as it should appear in a @listoffloats. 5776 % 6009 % 5777 6010 \def\setref#1#2{% 5778 6011 \pdfmkdest{#1}% … … 5780 6013 {% 5781 6014 \atdummies % preserve commands, but don't expand them 5782 \turnoffactive5783 \otherbackslash5784 6015 \edef\writexrdef##1##2{% 5785 6016 \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef … … 5835 6066 \leavevmode 5836 6067 \getfilename{#4}% 5837 {\turnoffactive \otherbackslash 6068 {\turnoffactive 6069 % See comments at \activebackslashdouble. 6070 {\activebackslashdouble \xdef\pdfxrefdest{#1}% 6071 \backslashparens\pdfxrefdest}% 6072 % 5838 6073 \ifnum\filenamelength>0 5839 6074 \startlink attr{/Border [0 0 0]}% 5840 goto file{\the\filename.pdf} name{ #1}%6075 goto file{\the\filename.pdf} name{\pdfxrefdest}% 5841 6076 \else 5842 6077 \startlink attr{/Border [0 0 0]}% 5843 goto name{\pdfmkpgn{ #1}}%6078 goto name{\pdfmkpgn{\pdfxrefdest}}% 5844 6079 \fi 5845 6080 }% … … 5855 6090 \indexnofonts 5856 6091 \turnoffactive 5857 \otherbackslash5858 6092 \expandafter\global\expandafter\let\expandafter\Xthisreftitle 5859 6093 \csname XR#1-title\endcsname … … 5863 6097 % print it instead of our usual "Figure 1.2". 5864 6098 \ifdim\wd0 = 0pt 5865 \refx{#1-snt} %6099 \refx{#1-snt}{}% 5866 6100 \else 5867 6101 \printedrefname … … 5869 6103 % 5870 6104 % if the user also gave the printed manual name (fifth arg), append 5871 % "in MANUALNAME". 6105 % "in MANUALNAME". 5872 6106 \ifdim \wd1 > 0pt 5873 6107 \space \putwordin{} \cite{\printedmanual}% … … 5875 6109 \else 5876 6110 % node/anchor (non-float) references. 5877 % 6111 % 5878 6112 % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not 5879 6113 % insert empty discretionaries after hyphens, which means that it will … … 5890 6124 % printing. So we \turnoffactive for the \refx-snt, back on for the 5891 6125 % printing, back off for the \refx-pg. 5892 {\turnoffactive \otherbackslash6126 {\turnoffactive 5893 6127 % Only output a following space if the -snt ref is nonempty; for 5894 6128 % @unnumbered and @anchor, it won't be. … … 5903 6137 % 5904 6138 % output the `page 3'. 5905 \turnoffactive \ otherbackslash \putwordpage\tie\refx{#1-pg}{}%6139 \turnoffactive \putwordpage\tie\refx{#1-pg}{}% 5906 6140 \fi 5907 6141 \fi … … 5986 6220 \expandafter\let\expandafter\floatlist 5987 6221 \csname floatlist\iffloattype\endcsname 5988 % 6222 % 5989 6223 % Is this the first time we've seen this float type? 5990 6224 \expandafter\ifx\floatlist\relax … … 6002 6236 6003 6237 % Read the last existing aux file, if any. No error if none exists. 6004 % 6238 % 6005 6239 \def\tryauxfile{% 6006 6240 \openin 1 \jobname.aux 6007 6241 \ifeof 1 \else 6008 \read auxfile6242 \readdatafile{aux}% 6009 6243 \global\havexrefstrue 6010 6244 \fi … … 6012 6246 } 6013 6247 6014 \def\ readauxfile{\begingroup6248 \def\setupdatafile{% 6015 6249 \catcode`\^^@=\other 6016 6250 \catcode`\^^A=\other … … 6081 6315 % Make the characters 128-255 be printing characters. 6082 6316 {% 6083 \count 6317 \count1=128 6084 6318 \def\loop{% 6085 \catcode\count 6086 \advance\count 6087 \ifnum \count 6319 \catcode\count1=\other 6320 \advance\count1 by 1 6321 \ifnum \count1<256 \loop \fi 6088 6322 }% 6089 6323 }% … … 6093 6327 \catcode`\}=2 6094 6328 \catcode`\@=0 6095 % 6096 \input \jobname.aux 6329 } 6330 6331 \def\readdatafile#1{% 6332 \begingroup 6333 \setupdatafile 6334 \input\jobname.#1 6097 6335 \endgroup} 6098 6099 6336 6100 6337 \message{insertions,} … … 6290 6527 \nobreak\vskip\parskip 6291 6528 \nobreak 6292 \line\bgroup \hss6529 \line\bgroup 6293 6530 \fi 6294 6531 % … … 6303 6540 \fi 6304 6541 % 6305 \ifimagevmode \ hss \egroup \bigbreak \fi % space after the image6542 \ifimagevmode \egroup \bigbreak \fi % space after the image 6306 6543 \endgroup} 6307 6544 6308 6545 6309 % @float FLOATTYPE,LOC ... @end float for displayed figures, tables, etc. 6310 % We don't actually implement floating yet, we just plop the float "here". 6311 % But it seemed the best name for the future. 6312 % 6313 \envparseargdef\float{\dofloat #1,,,\finish} 6546 % @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables, 6547 % etc. We don't actually implement floating yet, we always include the 6548 % float "here". But it seemed the best name for the future. 6549 % 6550 \envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish} 6551 6552 % There may be a space before second and/or third parameter; delete it. 6553 \def\eatcommaspace#1, {#1,} 6314 6554 6315 6555 % #1 is the optional FLOATTYPE, the text label for this float, typically 6316 6556 % "Figure", "Table", "Example", etc. Can't contain commas. If omitted, 6317 6557 % this float will not be numbered and cannot be referred to. 6318 % 6558 % 6319 6559 % #2 is the optional xref label. Also must be present for the float to 6320 6560 % be referable. 6321 % 6561 % 6322 6562 % #3 is the optional positioning argument; for now, it is ignored. It 6323 6563 % will somehow specify the positions allowed to float to (here, top, bottom). 6324 % 6564 % 6325 6565 % We keep a separate counter for each FLOATTYPE, which we reset at each 6326 6566 % chapter-level command. … … 6332 6572 % 6333 6573 % don't lose footnotes inside @float. 6574 % 6575 % BEWARE: when the floats start float, we have to issue warning whenever an 6576 % insert appears inside a float which could possibly float. --kasal, 26may04 6577 % 6334 6578 \startsavinginserts 6335 6579 % … … 6358 6602 % We want each FLOATTYPE to be numbered separately (Figure 1, 6359 6603 % Table 1, Figure 2, ...). (And if no label, no number.) 6360 % 6604 % 6361 6605 \expandafter\getfloatno\csname\safefloattype floatno\endcsname 6362 6606 \global\advance\floatno by 1 … … 6368 6612 % node and anchor labels. And \xrdef uses it to construct the 6369 6613 % lists of floats. 6370 % 6614 % 6371 6615 \edef\thissection{\floatmagic=\safefloattype}% 6372 6616 \setref{\floatlabel}{Yfloat}% … … 6416 6660 % 6417 6661 % caption text. 6418 \appendtomacro\captionline \thiscaption6662 \appendtomacro\captionline{\scanexp\thiscaption}% 6419 6663 \fi 6420 6664 % … … 6424 6668 \vskip.5\parskip 6425 6669 \captionline 6670 % 6671 % Space below caption. 6672 \vskip\parskip 6426 6673 \fi 6427 6674 % … … 6433 6680 % caption if specified, else the full caption if specified, else nothing. 6434 6681 {% 6435 \atdummies \turnoffactive \otherbackslash 6436 \immediate\write\auxfile{@xrdef{\floatlabel-lof}{% 6437 \floatident 6438 \ifx\thisshortcaption\empty 6439 \ifx\thiscaption\empty \else : \thiscaption \fi 6440 \else 6441 : \thisshortcaption 6442 \fi 6443 }}% 6682 \atdummies 6683 % 6684 % since we read the caption text in the macro world, where ^^M 6685 % is turned into a normal character, we have to scan it back, so 6686 % we don't write the literal three characters "^^M" into the aux file. 6687 \scanexp{% 6688 \xdef\noexpand\gtemp{% 6689 \ifx\thisshortcaption\empty 6690 \thiscaption 6691 \else 6692 \thisshortcaption 6693 \fi 6694 }% 6695 }% 6696 \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident 6697 \ifx\gtemp\empty \else : \gtemp \fi}}% 6444 6698 }% 6445 6699 \fi 6446 %6447 % Space below caption, if we printed anything.6448 \ifx\printedsomething\empty \else \vskip\parskip \fi6449 6700 \egroup % end of \vtop 6701 % 6702 % place the captured inserts 6703 % 6704 % BEWARE: when the floats start floating, we have to issue warning 6705 % whenever an insert appears inside a float which could possibly 6706 % float. --kasal, 26may04 6707 % 6450 6708 \checkinserts 6451 6709 } 6452 6710 6453 6711 % Append the tokens #2 to the definition of macro #1, not expanding either. 6454 % 6455 \newtoks\appendtomacroAtoks 6456 \newtoks\appendtomacroBtoks 6712 % 6457 6713 \def\appendtomacro#1#2{% 6458 \ appendtomacroAtoks = \expandafter{#1}%6459 \appendtomacroBtoks = {#2}% 6460 \edef#1{\the\appendtomacroAtoks \the\appendtomacroBtoks}% 6461 } 6462 6463 % @caption, @shortcaption are easy. 6464 % 6465 \ long\def\caption#1{\checkenv\float \def\thiscaption{#1}}6466 \def\ shortcaption#1{\checkenv\float \def\thisshortcaption{#1}}6714 \expandafter\def\expandafter#1\expandafter{#1#2}% 6715 } 6716 6717 % @caption, @shortcaption 6718 % 6719 \def\caption{\docaption\thiscaption} 6720 \def\shortcaption{\docaption\thisshortcaption} 6721 \def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} 6722 \def\defcaption#1#2{\egroup \def#1{#2}} 6467 6723 6468 6724 % The parameter is the control sequence identifying the counter we are … … 6483 6739 % to the FLOATLABEL to expand to "Figure 3.1". We call \setref when we 6484 6740 % first read the @float command. 6485 % 6741 % 6486 6742 \def\Yfloat{\floattype@tie \chaplevelprefix\the\floatno}% 6487 6743 … … 6493 6749 % which is true if #1 represents a float ref. That is, the magic 6494 6750 % \thissection value which we \setref above. 6495 % 6751 % 6496 6752 \def\iffloat#1{\expandafter\doiffloat#1==\finish} 6497 6753 % 6498 6754 % #1 is (maybe) the \floatmagic string. If so, #2 will be the 6499 6755 % (safe) float type for this float. We set \iffloattype to #2. 6500 % 6756 % 6501 6757 \def\doiffloat#1=#2=#3\finish{% 6502 6758 \def\temp{#1}% … … 6506 6762 6507 6763 % @listoffloats FLOATTYPE - print a list of floats like a table of contents. 6508 % 6764 % 6509 6765 \parseargdef\listoffloats{% 6510 6766 \def\floattype{#1}% floattype … … 6536 6792 % aux file. We strip off the -title and look up \XRLABEL-lof, which 6537 6793 % has the text we're supposed to typeset here. 6538 % 6794 % 6539 6795 % Figures without xref labels will not be included in the list (since 6540 6796 % they won't appear in the aux file). 6541 % 6797 % 6542 6798 \def\listoffloatsdo#1{\listoffloatsdoentry#1\finish} 6543 6799 \def\listoffloatsdoentry#1-title\finish{{% … … 6616 6872 } 6617 6873 6618 % Parameters in order: 1) textheight; 2) textwidth; 3) voffset;6619 % 4) hoffset; 5) binding offset; 6) topskip; 7) physical page height; 8)6620 % physical page width.6874 % Parameters in order: 1) textheight; 2) textwidth; 6875 % 3) voffset; 4) hoffset; 5) binding offset; 6) topskip; 6876 % 7) physical page height; 8) physical page width. 6621 6877 % 6622 6878 % We also call \setleading{\textleading}, so the caller should define … … 6665 6921 }} 6666 6922 6667 % Use @smallbook to reset parameters for 7x9. 5 (or so) format.6923 % Use @smallbook to reset parameters for 7x9.25 trim size. 6668 6924 \def\smallbook{{\globaldefs = 1 6669 6925 \parskip = 2pt plus 1pt … … 6680 6936 \contentsrightmargin = 0pt 6681 6937 \defbodyindent = .5cm 6938 }} 6939 6940 % Use @smallerbook to reset parameters for 6x9 trim size. 6941 % (Just testing, parameters still in flux.) 6942 \def\smallerbook{{\globaldefs = 1 6943 \parskip = 1.5pt plus 1pt 6944 \textleading = 12pt 6945 % 6946 \internalpagesizes{7.4in}{4.8in}% 6947 {-.2in}{-.4in}% 6948 {0pt}{14pt}% 6949 {9in}{6in}% 6950 % 6951 \lispnarrowing = 0.25in 6952 \tolerance = 700 6953 \hfuzz = 1pt 6954 \contentsrightmargin = 0pt 6955 \defbodyindent = .4cm 6682 6956 }} 6683 6957 … … 6834 7108 \catcode`\_=\active 6835 7109 \def_{\ifusingtt\normalunderscore\_} 7110 \let\realunder=_ 6836 7111 % Subroutine for the previous macro. 6837 7112 \def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em } … … 6856 7131 \def\otherifyactive{\catcode`+=\other \catcode`\_=\other} 6857 7132 7133 % Used sometimes to turn off (effectively) the active characters even after 7134 % parsing them. 7135 \def\turnoffactive{% 7136 \normalturnoffactive 7137 \otherbackslash 7138 } 7139 6858 7140 \catcode`\@=0 6859 7141 … … 6863 7145 \global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work 6864 7146 7147 % \realbackslash is an actual character `\' with catcode other, and 7148 % \doublebackslash is two of them (for the pdf outlines). 7149 {\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}} 7150 7151 % In texinfo, backslash is an active character; it prints the backslash 7152 % in fixed width font. 7153 \catcode`\\=\active 7154 @def@normalbackslash{{@tt@backslashcurfont}} 7155 % On startup, @fixbackslash assigns: 7156 % @let \ = @normalbackslash 7157 6865 7158 % \rawbackslash defines an active \ to do \backslashcurfont. 6866 7159 % \otherbackslash defines an active \ to be a literal `\' character with 6867 7160 % catcode other. 6868 {\catcode`\\=\active 6869 @gdef@rawbackslash{@let\=@backslashcurfont} 6870 @gdef@otherbackslash{@let\=@realbackslash} 6871 } 6872 6873 % \realbackslash is an actual character `\' with catcode other. 6874 {\catcode`\\=\other @gdef@realbackslash{\}} 6875 6876 % \normalbackslash outputs one backslash in fixed width font. 6877 \def\normalbackslash{{\tt\backslashcurfont}} 6878 6879 \catcode`\\=\active 6880 6881 % Used sometimes to turn off (effectively) the active characters 6882 % even after parsing them. 6883 @def@turnoffactive{% 7161 @gdef@rawbackslash{@let\=@backslashcurfont} 7162 @gdef@otherbackslash{@let\=@realbackslash} 7163 7164 % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of 7165 % the literal character `\'. 7166 % 7167 @def@normalturnoffactive{% 7168 @let\=@normalbackslash 6884 7169 @let"=@normaldoublequote 6885 @let\=@realbackslash6886 7170 @let~=@normaltilde 6887 7171 @let^=@normalcaret … … 6895 7179 } 6896 7180 6897 % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of6898 % the literal character `\'. (Thus, \ is not expandable when this is in6899 % effect.)6900 %6901 @def@normalturnoffactive{@turnoffactive @let\=@normalbackslash}6902 6903 7181 % Make _ and + \other characters, temporarily. 6904 7182 % This is canceled by @fixbackslash. … … 6913 7191 6914 7192 % On the other hand, perhaps the file did not have a `\input texinfo'. Then 6915 % the first `\ {in the file would cause an error. This macro tries to fix7193 % the first `\' in the file would cause an error. This macro tries to fix 6916 7194 % that, assuming it is called before the first `\' could plausibly occur. 6917 % Also back turnon active characters that might appear in the input7195 % Also turn back on active characters that might appear in the input 6918 7196 % file name, in case not using a pre-dumped format. 6919 7197 %
Note:
See TracChangeset
for help on using the changeset viewer.