Sat Jan 22 16:25:09 1994 Stan Shebs (shebs@andros.cygnus.com)
authorStan Shebs <shebs@codesourcery.com>
Sun, 23 Jan 1994 00:34:31 +0000 (00:34 +0000)
committerStan Shebs <shebs@codesourcery.com>
Sun, 23 Jan 1994 00:34:31 +0000 (00:34 +0000)
* mpw-build.in: New file, build script fragment for MPW make.
* mpw-make.in: New file, MPW makefile fragment for binutils.
(Normally automatically generated from Makefile.in.)

binutils/.Sanitize
binutils/ChangeLog.mpw [new file with mode: 0644]
binutils/mpw-build.in [new file with mode: 0644]
binutils/mpw-make.in [new file with mode: 0644]

index ed17d8c..2cf1e66 100644 (file)
@@ -1,7 +1,6 @@
-# Sanitize.in for devo.
-#
+# Sanitize.in for devo/binutils
 
-# Each directory to survive it's way into a release will need a file
+# Each directory to survive its way into a release will need a file
 # like this one called "./.Sanitize".  All keyword lines must exist,
 # and must exist in the order specified by this file.  Each directory
 # in the tree will be processed, top down, in the following order.
 
 Do-first:
 
+if ( echo $* | grep keep\-mpw > /dev/null ) ; then
+       keep_these_too="mpw-build.in mpw-make.in ChangeLog.mpw"
+else
+       lose_these_too="mpw-build.in mpw-make.in ChangeLog.mpw"
+fi
 
 # All files listed between the "Things-to-keep:" line and the
 # "Files-to-sed:" line will be kept.  All other files will be removed.
diff --git a/binutils/ChangeLog.mpw b/binutils/ChangeLog.mpw
new file mode 100644 (file)
index 0000000..de7e16e
--- /dev/null
@@ -0,0 +1,7 @@
+Sat Jan 22 16:25:09 1994  Stan Shebs  (shebs@andros.cygnus.com)
+
+       * mpw-build.in: New file, build script fragment for MPW make.
+       * mpw-make.in: New file, MPW makefile fragment for binutils.
+       (Normally automatically generated from Makefile.in.)
+
+
diff --git a/binutils/mpw-build.in b/binutils/mpw-build.in
new file mode 100644 (file)
index 0000000..aa037e8
--- /dev/null
@@ -0,0 +1,49 @@
+# Script fragment to build MPW binutils.
+
+Set BuildTarget "none"
+
+Loop
+       Break If {#} == 0
+       If "{1}" =~ /--srcdir/
+               Set srcdir "{2}"
+               Shift 1
+       Else If "{1}" =~ /--topdir/
+               Set topsrcdir "{2}"
+               Shift 1
+       Else If "{1}" =~ /--prefix/
+               Set prefix "{2}"
+               Shift 1
+       Else If "{1}" =~ /-v/
+               Set verify 1
+               Set verifystr "-v"
+               Shift 1
+       Else
+               If "{BuildTarget}" =~ /none/
+                       Set BuildTarget "{1}"
+               Else
+                       Echo Only one build target allowed, ignoring "{1}"
+               End If
+       End If
+       Shift 1
+End Loop
+
+Set libsubdir "{libdir}"gcc-lib:"{target_canonical}":"{version}":
+
+If "{BuildTarget}" =~ /all/
+       Echo "Set Echo 1" >all.makeout
+       Make >>all.makeout
+       all.makeout
+       Delete all.makeout
+Else If "{BuildTarget}" =~ /install/
+       If "`Exists "{prefix}"`" == ""
+               Echo "{prefix}" does not exist, cannot install anything
+               Exit 1
+       End If
+       If "`Exists "{bindir}"`" == ""
+               NewFolder "{bindir}"
+       End If
+       # Need to copy all the tools
+       Duplicate -y :objdump "{bindir}"objdump
+Else
+       Echo {BuildTarget} not a valid build target
+End If
diff --git a/binutils/mpw-make.in b/binutils/mpw-make.in
new file mode 100644 (file)
index 0000000..24bc9f0
--- /dev/null
@@ -0,0 +1,554 @@
+
+s = "{srcdir}"
+
+o = :
+
+# File in object dir can come from either the current dir or srcdir.
+"{o}" \Option-f : "{s}"
+
+# Default rule that puts each file into separate segment.
+
+.c.o  \Option-f .c
+   {CC}  {DepDir}{Default}.c {ALL_CFLAGS} {SymOptions} -s {Default} -o {TargDir}{Default}.c.o
+
+# Makefile for GNU binary-file utilities
+# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+
+# This file is part of GNU binutils.
+
+# This program is free software; you can redistribute it and:or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+# srcdir = :
+
+prefix = :usr:local
+
+program_transform_name =
+exec_prefix = {prefix}
+bindir = {exec_prefix}:bin
+libdir = {exec_prefix}:lib
+tooldir = {exec_prefix}:{target_alias}
+
+datadir = {prefix}:lib
+mandir = {prefix}:man
+man1dir = {mandir}:man1
+man2dir = {mandir}:man2
+man3dir = {mandir}:man3
+man4dir = {mandir}:man4
+man5dir = {mandir}:man5
+man6dir = {mandir}:man6
+man7dir = {mandir}:man7
+man8dir = {mandir}:man8
+man9dir = {mandir}:man9
+infodir = {prefix}:info
+includedir = {prefix}:include
+docdir = {datadir}:doc
+
+SHELL = :bin:sh
+
+INSTALL = Duplicate -y
+INSTALL_PROGRAM = {INSTALL}
+INSTALL_DATA = {INSTALL}
+INSTALL_XFORM = {INSTALL} -t='{program_transform_name}'
+INSTALL_XFORM1 = {INSTALL_XFORM} -b=.1
+
+AR = ar
+AR_FLAGS = qv
+#CFLAGS = -g
+MAKEINFO = makeinfo
+TEXI2DVI = texi2dvi
+RANLIB = ranlib
+BISONFLAGS = -d
+TEXI2ROFF=texi2roff
+MAKEOVERRIDES=
+
+NM_FOR_TARGET = nm
+NM = {NM_FOR_TARGET}
+SYMLINK = ln -s
+
+BISON = byacc
+# Comment these out if using lex.
+LEX_OPTIONS = -i  -Cem 
+LEX = flex
+
+# Distribution version
+VERSION=cygnus-2.3.1
+# Distribution name
+DIST_NAME=binutils-{VERSION}
+
+# version=`:::gcc:gcc -dumpversion`
+
+# Where to find texinfo.tex to format docn with TeX
+TEXIDIR = "{srcdir}":texinfo
+
+MANPAGES= ar nm objdump ranlib size strings strip c++filt objcopy nlmconv
+
+#CC=gcc -Wall
+# these two are almost the same program
+AR_PROG=ar
+RANLIB_PROG=ranlib
+
+# objcopy and strip should be the same program
+OBJCOPY_PROG=objcopy
+STRIP_PROG=strip
+
+STRINGS_PROG=strings
+
+# These should all be the same program too.
+SIZE_PROG=size
+NM_PROG=nm
+OBJDUMP_PROG=objdump
+
+# This is the demangler, as a standalone program.
+DEMANGLER_PROG=c++filt
+
+NLMCONV_PROG=nlmconv
+
+PROGS = {SIZE_PROG} {OBJDUMP_PROG} {NM_PROG} {AR_PROG} {STRINGS_PROG} {STRIP_PROG} {RANLIB_PROG} {DEMANGLER_PROG} {OBJCOPY_PROG} 
+STAGESTUFF = {PROGS} "{o}"\Option-x.c.o
+# Files that can be generated, but should be in the distribution.
+DISTSTUFF=arparse.c :arlex.c "{s}"nlmheader.c info
+
+BASEDIR = "{srcroot}"
+BFDDIR = {BASEDIR}bfd
+INCDIR = {BASEDIR}include
+INCLUDES = -i "{srcroot}"extra-include -i : -i {srcdir} -i ::bfd: -i {BFDDIR} -i {INCDIR}
+
+#### host and target dependant Makefile fragments come in here.
+###
+
+ALL_CFLAGS = {INCLUDES} {HDEFINES} {TDEFINES} {CFLAGS}
+
+"{o}".c.c.o \Option-f 
+       {CC} -c {ALL_CFLAGS} $<
+
+#\f
+## Random definitions
+# Hopefully all these may be flushed once we get configuration down pat.
+
+# alloca only needed for systems which don't have it and when cc != gcc.
+# ALLOCA = "{o}"alloca.c.o
+
+# nm tries to malloc enough space for the string table.  The old GNU malloc
+# rounds this up to a power of two (e.g. 5M becomes 8M), and so it might 
+# fail unnecessarily.  I've also seen some Unix malloc's fail, even when
+# there is enough memory.  So use the new GNU malloc.
+# MALLOC = "{o}"gmalloc.c.o
+# Use this if the system malloc is good enough.
+MALLOC =
+
+# Use the GNU getopt unless you have problems with it.
+# The IRIS version could probably benefit from being assembled with
+# libmalloc rather than the ordinary malloc.
+LIBIBERTY = ::libiberty:libiberty.o
+
+# Code shared by all the binutils.
+BULIBS = "{o}"bucomm.c.o "{o}"version.c.o "{o}"filemode.c.o
+
+ADDL_LIBS = {MALLOC} {BULIBS} {BFD} {LIBIBERTY} 
+
+BFD = ::bfd:libbfd.o
+OPCODES = ::opcodes:libopcodes.o
+
+RUNTEST = runtest
+RUNTEST_FLAGS = 
+FLAGS_TO_PASS = \Option-d
+       "CC={CC}" \Option-d
+       "CFLAGS={CFLAGS}" \Option-d
+       "RUNTEST={RUNTEST}" \Option-d
+       "RUNTEST_FLAGS={RUNTEST_FLAGS} \Option-d
+       SIZE=`if [ -f $$rootme:{SIZE_PROG} ] ; then echo $$rootme:{SIZE_PROG} ; else echo {SIZE_PROG}; fi` \Option-d
+       OBJCOPY=`if [ -f $$rootme:{OBJCOPY_PROG} ] ; then echo $$rootme:{OBJCOPY_PROG} ; else echo {OBJCOPY_PROG}; fi` \Option-d
+       NM=`if [ -f $$rootme:{NM_PROG} ] ; then echo $$rootme:{NM_PROG} ; else echo {NM_PROG}; fi` \Option-d
+       AR=`if [ -f $$rootme:{AR_PROG} ] ; then echo $$rootme:{AR_PROG} ; else echo {AR_PROG}; fi` \Option-d
+       OBJDUMP=`if [ -f $$rootme:{OBJDUMP_PROG} ] ; then echo $$rootme:{OBJDUMP_PROG} ; else echo {OBJDUMP_PROG}; fi` \Option-d
+       STRINGS=`if [ -f $$rootme:{STRINGS_PROG} ] ; then echo $$rootme:{STRINGS_PROG} ; else echo {STRINGS_PROG}; fi` \Option-d
+       STRIP=`if [ -f $$rootme:{STRIP_PROG} ] ; then echo $$rootme:{STRIP_PROG} ; else echo {STRIP_PROG}; fi` \Option-d
+       RANLIB=`if [ -f $$rootme:{RANLIB_PROG} ] ; then echo $$rootme:{RANLIB_PROG} ; else echo {RANLIB_PROG}; fi` \Option-d
+       DEMANGLE=`if [ -f $$rootme:{DEMANGLER_PROG} ] ; then echo $$rootme:{DEMANGLER_PROG} ; else echo {DEMANGLER_PROG}; fi`"
+
+#\f
+## The rules
+
+all \Option-f  {ADDL_LIBS} {PROGS}
+
+testsuite \Option-f 
+       if [ -f testsuite:Makefile.in ]; then \Option-d
+               (rootme=`pwd`: ; export rootme ; \Option-d
+                rootsrc=`cd {srcdir}; pwd`: ; export rootsrc ; \Option-d
+                cd testsuite; {MAKE} FLAGS_TO_PASS={FLAGS_TO_PASS}); \Option-d
+       else true ; fi
+
+check \Option-f  force
+       rootme=`pwd`; export rootme; cd testsuite ; \Option-d
+       {MAKE} check {FLAGS_TO_PASS}
+#      :bin:sh "{srcdir}"sanity.sh .
+
+installcheck \Option-f 
+       :bin:sh "{srcdir}"sanity.sh {bindir}
+
+info \Option-f  binutils.info
+
+dvi \Option-f  binutils.dvi
+
+{SIZE_PROG} \Option-f  {ADDL_LIBS} "{o}"size.c.o {BFD}
+       Link    {LDFLAGS} -o {SIZE_PROG} "{o}"size.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{OBJCOPY_PROG} \Option-f  {ADDL_LIBS} "{o}"objcopy.c.o "{o}"not-strip.c.o {BFD}
+       Link    {LDFLAGS} -o {OBJCOPY_PROG} "{o}"objcopy.c.o "{o}"not-strip.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{STRINGS_PROG} \Option-f  {ADDL_LIBS} "{o}"strings.c.o {BFD}
+       Link    {LDFLAGS} -o {STRINGS_PROG} "{o}"strings.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{STRIP_PROG} \Option-f  {ADDL_LIBS} "{o}"objcopy.c.o "{o}"is-strip.c.o {BFD}
+       Link    {LDFLAGS} -o {STRIP_PROG} "{o}"objcopy.c.o "{o}"is-strip.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{NM_PROG} \Option-f  {ADDL_LIBS} "{o}"nm.c.o "{o}"demangle.c.o {BFD}
+       Link    {LDFLAGS} -o {NM_PROG} "{o}"nm.c.o "{o}"demangle.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{OBJDUMP_PROG} \Option-f  {ADDL_LIBS} "{o}"objdump.c.o {BFD} {OPCODES}
+       Link    {LDFLAGS} -o {OBJDUMP_PROG} "{o}"objdump.c.o {OPCODES} {ADDL_LIBS} {EXTRALIBS}
+
+"{o}"objdump.c.o \Option-f  "{s}"objdump.c config.status
+       {CC} {INCLUDES} {HDEFINES} {TDEFINES} {ARCHDEFS} {CFLAGS} "{srcdir}"objdump.c -o "{o}"objdump.c.o
+
+:underscore.c \Option-f 
+       echo "int prepends_underscore = 0;" >underscore.c
+
+"{o}"version.c.o \Option-f  "{s}"version.c
+       {CC} {INCLUDES} {HDEFINES} {TDEFINES} -d VERSION='"{VERSION}"' {CFLAGS} "{srcdir}"version.c -o "{o}"version.c.o
+
+"{o}"demangle.c.o \Option-f  "{BASEDIR}"libiberty:cplus-dem.c
+       {CC} {INCLUDES} {HDEFINES} {TDEFINES} {CFLAGS} "{BASEDIR}"libiberty:cplus-dem.c -o "{o}"cplus-dem.c.o
+       Rename -y "{o}"cplus-dem.c.o "{o}"demangle.c.o
+
+# For parallel compiling, depend on "{o}"demangle.c.o so that one gets done first.
+"{o}"cplus-dem.c.o \Option-f  "{BASEDIR}"libiberty:cplus-dem.c "{INCDIR}":getopt.h "{o}"demangle.c.o
+       {CC} -d MAIN {INCLUDES} {HDEFINES} {TDEFINES} {CFLAGS} "{BASEDIR}"libiberty:cplus-dem.c -o "{o}"cplus-dem.c.o
+
+{DEMANGLER_PROG} \Option-f  "{o}"cplus-dem.c.o {LIBIBERTY} "{o}"underscore.c.o "{o}"version.c.o
+       Link    {LDFLAGS}  -o {DEMANGLER_PROG} "{o}"cplus-dem.c.o {LIBIBERTY} {EXTRALIBS} "{o}"underscore.c.o "{o}"version.c.o
+
+:arparse.h :arparse.c \Option-f  "{s}"arparse.y
+       {BISON} {BISONFLAGS}  "{srcdir}"arparse.y
+       Rename -y y.tab.c :arparse.c
+       Rename -y y.tab.h :arparse.h
+
+:arlex.c \Option-f  "{s}"arlex.l
+       {LEX} {LEX_OPTIONS} "{srcdir}"arlex.l
+       Rename -y :lex.yy.c :arlex.c
+
+{AR_PROG} \Option-f  {ADDL_LIBS} "{o}"ar.c.o "{o}"arparse.c.o "{o}"arlex.c.o "{o}"not-ranlib.c.o {BFD} "{o}"arsup.c.o
+       Link    {LDFLAGS} -o {AR_PROG} "{o}"ar.c.o "{o}"arparse.c.o "{o}"arlex.c.o "{o}"arsup.c.o "{o}"not-ranlib.c.o {ADDL_LIBS} {EXTRALIBS}
+
+{RANLIB_PROG} \Option-f  {ADDL_LIBS} "{o}"ar.c.o "{o}"is-ranlib.c.o "{o}"arparse.c.o "{o}"arlex.c.o "{o}"arsup.c.o {BFD}
+       Link    {LDFLAGS} -o {RANLIB_PROG} "{o}"ar.c.o "{o}"arparse.c.o "{o}"arlex.c.o "{o}"arsup.c.o "{o}"is-ranlib.c.o {ADDL_LIBS} {EXTRALIBS}
+
+# This rule creates a single binary that switches between ar and ranlib
+# by looking at argv[0].  Use this kludge to save some disk space.
+# However, you have to install things by hand.
+# (That is after 'make install', replace the installed ranlib by a link to ar.)
+
+# Alternatively, you can install ranlib.sh as ranlib.
+
+ar_with_ranlib \Option-f  {ADDL_LIBS} "{o}"ar.c.o "{o}"maybe-ranlib.c.o {BFD}
+       Link    {LDFLAGS} -o {AR_PROG} "{o}"ar.c.o "{o}"maybe-ranlib.c.o {ADDL_LIBS} {EXTRALIBS}
+       Delete -y {RANLIB_PROG}
+       # ln {AR_PROG} {RANLIB_PROG}
+
+# objcopy and strip in one binary that uses argv[0] to decide its action.
+
+objcopy_with_strip \Option-f  {ADDL_LIBS} "{o}"objcopy.c.o "{o}"maybe-strip.c.o {BFD}
+       Link    {LDFLAGS} -o {OBJCOPY_PROG} "{o}"objcopy.c.o "{o}"maybe-strip.c.o {ADDL_LIBS} {EXTRALIBS}
+       Delete -y {STRIP_PROG}
+       # ln {OBJCOPY_PROG} {STRIP_PROG}
+
+nlmheader.c \Option-f  "{s}"nlmheader.y
+       {BISON} "{srcdir}"nlmheader.y
+       Delete -y "{s}"nlmheader.c
+       Rename -y y.tab.c "{s}"nlmheader.c
+
+"{o}"nlmconv.c.o \Option-f  "{s}"nlmconv.c
+       ldname=`t='{program_transform_name}'; echo ld | sed -e "" $$t`; \Option-d
+       {CC} -d LD_NAME="\"${ldname}\"" {INCLUDES} {HDEFINES} {TDEFINES} {CFLAGS} "{srcdir}"nlmconv.c -o "{o}"nlmconv.c.o
+
+{NLMCONV_PROG} \Option-f  "{o}"nlmconv.c.o "{o}"nlmheader.c.o {ADDL_LIBS} {BFD}
+       Link    {LDFLAGS} -o $@ "{o}"nlmconv.c.o "{o}"nlmheader.c.o {ADDL_LIBS} {EXTRALIBS}
+
+# This list of dependencies was generated by doing a make with gcc -MM
+# saving the output in a file and removing the gcc commands
+# changing "::::devo:binutils:::bfd" to "{BFDDIR}"
+# removing "::::devo:binutils:"
+# changing "::include" to "{INCDIR}"
+
+"{o}"bucomm.c.o \Option-f  "{s}"bucomm.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{s}"bucomm.h
+"{o}"filemode.c.o \Option-f  "{s}"filemode.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h 
+"{o}"size.c.o \Option-f  "{s}"size.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{INCDIR}":getopt.h 
+"{o}"objdump.c.o \Option-f  "{s}"objdump.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{INCDIR}":getopt.h \Option-d
+  "{INCDIR}":dis-asm.h "{INCDIR}":aout:aout64.h \Option-d
+  "{INCDIR}":elf:internal.h {INCDIR}:aout:stab.def 
+"{o}"nm.c.o \Option-f  "{s}"nm.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{s}"bucomm.h "{INCDIR}":getopt.h \Option-d
+  "{INCDIR}":aout:stab_gnu.h {INCDIR}:aout:stab.def \Option-d
+  "{INCDIR}":aout:ranlib.h "{INCDIR}":demangle.h
+"{o}"ar.c.o \Option-f  "{s}"ar.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{s}"bucomm.h "{INCDIR}":aout:ar.h \Option-d
+  "{BFDDIR}":libbfd.h "{s}"arsup.h 
+"{o}"arparse.c.o \Option-f  :arparse.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h "{s}"arsup.h 
+"{o}"arlex.c.o \Option-f  :arlex.c :arparse.h 
+"{o}"not-ranlib.c.o \Option-f  "{s}"not-ranlib.c 
+"{o}"arsup.c.o \Option-f  "{s}"arsup.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h "{s}"arsup.h "{s}"bucomm.h 
+"{o}"strings.c.o \Option-f  "{s}"strings.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h "{s}"bucomm.h 
+"{o}"objcopy.c.o \Option-f  "{s}"objcopy.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d
+  "{INCDIR}":obstack.h ::bfd:sysdep.h "{BFDDIR}":hosts:std-host.h \Option-d
+  "{INCDIR}":fopen-same.h "{s}"bucomm.h 
+"{o}"is-strip.c.o \Option-f  "{s}"is-strip.c 
+"{o}"is-ranlib.c.o \Option-f  "{s}"is-ranlib.c 
+"{o}"underscore.c.o \Option-f :underscore.c
+"{o}"not-strip.c.o \Option-f  "{s}"not-strip.c 
+"{o}"nlmheader.c.o \Option-f  "{s}"nlmheader.c "{s}"nlmconv.h "{INCDIR}":nlm:common.h \Option-d
+  "{INCDIR}":nlm:internal.h
+"{o}"nlmconv.c.o \Option-f  "{INCDIR}":nlm:common.h "{INCDIR}":nlm:internal.h \Option-d
+  "{BFDDIR}":libnlm.h "{s}"bucomm.h
+
+stage1 \Option-f  force
+        mkdir stage1
+        Rename -y {STAGESTUFF} stage1
+
+stage2 \Option-f  force
+        mkdir stage2
+        Rename -y {STAGESTUFF} stage2
+
+stage3 \Option-f  force
+        mkdir stage3
+        Rename -y {STAGESTUFF} stage3
+
+against=stage2
+
+comparison \Option-f  force
+       for i in {STAGESTUFF} ; do cmp $$i {against}:$$i ; done
+
+de-stage1 \Option-f  force
+        (cd stage1 ; mv -f \Option-x ..)
+        rmdir stage1
+
+de-stage2 \Option-f  force
+        (cd stage2 ; mv -f \Option-x ..)
+        rmdir stage2
+
+de-stage3 \Option-f  force
+        (cd stage3 ; mv -f \Option-x ..)
+        rmdir stage3
+
+######################################################################
+# DOCUMENTATION TARGETS
+# TeX output
+binutils.dvi \Option-f  "{srcdir}"binutils.texi
+       TEXINPUTS={TEXIDIR} \Option-f $$TEXINPUTS {TEXI2DVI} "{srcdir}"binutils.texi
+
+# info file for online browsing
+binutils.info \Option-f  "{srcdir}"binutils.texi
+       {MAKEINFO} -o binutils.info "{srcdir}"binutils.texi
+
+#   different targets for -ms, -mm, -me
+# Try to use a recent texi2roff.  v2 was put on prep in jan91.
+# If you want an index, see texi2roff doc for postprocessing 
+# and add -i to texi2roff invocations below.
+# Workarounds for texi2roff-2 (probably fixed in later texi2roff's, delete
+#    corresponding -e lines when later texi2roff's are current)
+# + @ifinfo's deleted explicitly due to texi2roff-2 bug w nested constructs.
+# + @c's deleted explicitly because texi2roff sees texinfo commands in them
+# + @   (that's at-BLANK) not recognized by texi2roff, turned into blank
+# + @alphaenumerate is ridiculously new, turned into @enumerate
+
+# roff output (-ms)
+binutils.ms \Option-f  "{srcdir}"binutils.texi
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"binutils.texi | \Option-d
+       {TEXI2ROFF} -ms | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+       >binutils.ms 
+
+# roff output (-mm)
+# '@noindent's removed due to texi2roff-2 mm bug; if yours is newer, 
+#   try leaving them in
+binutils.mm \Option-f  "{srcdir}"binutils.texi
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e ':@noindent:d' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"binutils.texi | \Option-d
+       {TEXI2ROFF} -mm | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+               >binutils.mm
+
+# roff output (-me)
+binutils.me \Option-f  "{srcdir}"binutils.texi
+       sed -e ':\\input texinfo:d' \Option-d
+               e ':@c TEXI2ROFF-KILL:,:@c END TEXI2ROFF-KILL:d' \Option-d
+               e ':^end ifinfo:d' \Option-d
+               e ':^@c:d' \Option-d
+               e 's:{.\Option-x,,:{:' \Option-d
+               e 's:@ : :g' \Option-d
+               e 's:^enumerate:g' \Option-d
+               e 's:^@end alphaenumerate:@end enumerate:g' \Option-d
+               "{srcdir}"binutils.texi | \Option-d
+       {TEXI2ROFF} -me | \Option-d
+       sed -e 's:---:\\(em:g' \Option-d
+       >binutils.me 
+
+
+######################################################################
+
+mostlyclean \Option-f 
+       Delete -y "{o}"\Option-x.c.o \Option-x~ \#\Option-x core binutils.?? binutils.???
+clean \Option-f  mostlyclean
+       @if [ -d testsuite ] ; then \Option-d
+         cd testsuite ; {MAKE} {FLAGS_TO_PASS} clean ; \Option-d
+       else true; fi
+       Delete -y {PROGS} :underscore.c
+distclean \Option-f 
+       @if [ -d testsuite ] ; then \Option-d
+         cd testsuite ; {MAKE} {FLAGS_TO_PASS} distclean ; \Option-d
+       else true; fi
+       Delete -y Makefile config.status "{s}"sysdep.h "{o}"\Option-x.c.o \Option-x~ \#\Option-x core \Option-d
+               binutils.?? binutils.??s binutils.aux "{s}"binutils.log binutils.toc
+realclean \Option-f  clean distclean
+       Delete -y {DISTSTUFF} TAGS
+
+etags tags \Option-f  TAGS
+
+TAGS \Option-f  force
+       etags {INCDIR}:\Option-x.h "{srcdir}"\Option-x.[hc] 
+
+install \Option-f  all
+       for i in {PROGS} ; do \Option-d
+         {INSTALL_XFORM} $$i {bindir}:$$i ; \Option-d
+       done
+       for i in {MANPAGES} ; do \Option-d
+         {INSTALL_XFORM1} "{srcdir}"$$i.1 {man1dir}:$$i.1 ; \Option-d
+       done
+       if [ -d {tooldir} ]; then \Option-d
+          if [ -d {tooldir}:bin ] ; then true ; else mkdir {tooldir}:bin ; fi; \Option-d
+          for i in nm strip ar ranlib; do \Option-d
+            Delete -y {tooldir}:bin:$$i; \Option-d
+            # ln {bindir}:`t='{program_transform_name}'; echo $$i | sed -e "" $$t` {tooldir}:bin:$$i \Option-d
+             || {INSTALL_PROGRAM} $$i {tooldir}:bin:$$i; \Option-d
+          done; \Option-d
+        else true; fi          
+
+# Use binutils.info as the target so that VPATH will DTRT.
+# (Use "$<\Option-x" in case the output is multiple files, though.)
+install-info \Option-f  binutils.info
+       for i in $<\Option-x ; do \Option-d
+               {INSTALL_DATA} $$i {infodir}:$$i ; \Option-d
+       done
+
+clean-info \Option-f 
+       Delete -y -rf \Option-x.info\Option-x
+
+# Making a dist \Option-f 
+# cvs rtag binutils-x-yy ld+utils
+# cvs co -r binutils-x-yy ld+utils
+# Sanitize
+# cd {HERE}; make dist [-f Makefile.in]
+
+dist \Option-f  {DIST_NAME}.tar.z
+
+diststuff \Option-f  {DISTSTUFF}
+
+{DIST_NAME}.tar.z \Option-f 
+       cd ::..; rm -f {DIST_NAME}; ln -s devo {DIST_NAME}
+       make diststuff -f Makefile.in
+       cd ::ld; make diststuff -f Makefile.in
+       cd ::gprof; make diststuff -f Makefile.in
+       cd ::texinfo; mv texinfo.tex ..; rm -rf \Option-x; mv ::texinfo.tex .
+       # Take out texinfo from configurable dirs
+       Rename -y ::configure.in tmp; \Option-d
+         sed -e ':^host_tools=:s:texinfo ::' <tmp >::configure.in; rm tmp
+       cd ..; chmod og=u `find . -print`
+       cd ::..; tar chf - {DIST_NAME} | gzip >{DIST_NAME}.tar.z
+       Delete -y -rf ::::{DIST_NAME}
+
+#-----------------------------------------------------------------------------
+#              'STANDARD' GNU:960 TARGETS BELOW THIS POINT
+#
+# 'VERSION' file must be present and contain a string of the form "{s}""x.y"
+#-----------------------------------------------------------------------------
+
+ver960.c \Option-f  FORCE
+       Delete -y "{s}"ver960.c
+       echo "char {TARG}_ver[]= \"{TARG} `cat VERSION`, `date`\";" > "{s}"ver960.c
+
+
+# Dummy target to force execution of dependent targets.
+#
+force \Option-f 
+
+# Target to uncomment host-specific lines in this makefile.  Such lines must
+# have the following string beginning in column 1 \Option-f  #__<hostname>__#
+# Original Makefile is backed up as "{o}"'Makefile.c.old'.
+#
+# Invoke with \Option-f   make make HOST=xxx
+#
+make \Option-f 
+       @if test {HOST}x = x ; then \Option-d
+               echo '\aSpecify "make make HOST=???"'; \Option-d
+               exit 1; \Option-d
+       fi ; \Option-d
+       grep -s "^#The next line was generated by 'make make'" Makefile; \Option-d
+       if test $$? = 0 ; then  \Option-d
+               echo "\aMakefile has already been processed with 'make make'";\Option-d
+               exit 1; \Option-d
+       fi ; \Option-d
+       Rename -y Makefile "{o}"Makefile.c.old; \Option-d
+       echo "#The next line was generated by 'make make'"       >Makefile ; \Option-d
+       echo "HOST={HOST}"                                      >>Makefile ; \Option-d
+       echo                                                    >>Makefile ; \Option-d
+       sed "s:^#__{HOST}__#::" < "{o}"Makefile.c.old                   >>Makefile
+
+Makefile \Option-f  "{srcdir}"Makefile.in {host_makefile_frag} {target_makefile_frag}
+       {SHELL} :config.status
+
+### Local Variables \Option-f  \Option-x\Option-x\Option-x
+### mode \Option-f fundamental \Option-x\Option-x\Option-x
+### page-delimiter \Option-f  "^#\f" \Option-x\Option-x\Option-x
+### End \Option-f  \Option-x\Option-x\Option-x
+### end of file