Browse Source
fragment, generate config.h. * mpw-make.sed: New file, sed commands to edit Unix makefile into MPW syntax. * mpw-make.in: Remove. * mac-binutils.r: New file, Mac resources.gdb-4_18-branch
4 changed files with 123 additions and 554 deletions
@ -0,0 +1,42 @@ |
|||
/* Resources for GNU binutils. */ |
|||
|
|||
#include "SysTypes.r" |
|||
|
|||
/* Version resources. */ |
|||
|
|||
resource 'vers' (1) { |
|||
0, |
|||
0, |
|||
0, |
|||
0, |
|||
verUs, |
|||
VERSION_STRING, |
|||
VERSION_STRING " (c) 1986-95 FSF, Inc. " |
|||
}; |
|||
|
|||
resource 'vers' (2, purgeable) { |
|||
0, |
|||
0, |
|||
0, |
|||
0, |
|||
verUs, |
|||
VERSION_STRING, |
|||
"binutils " /* fill in major/minor versions */ "for MPW" |
|||
}; |
|||
|
|||
#ifdef WANT_CFRG |
|||
|
|||
#include "CodeFragmentTypes.r" |
|||
|
|||
resource 'cfrg' (0) { |
|||
{ |
|||
kPowerPC, |
|||
kFullLib, |
|||
kNoVersionNum, kNoVersionNum, |
|||
0,0, |
|||
kIsApp, kOnDiskFlat, kZeroOffset, kWholeFork, |
|||
PROG_NAME |
|||
} |
|||
}; |
|||
|
|||
#endif /* WANT_CFRG */ |
|||
@ -1,550 +0,0 @@ |
|||
|
|||
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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, 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 cplusfilt 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=cplusfilt |
|||
|
|||
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 "{INCDIR}":mpw: -i ::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} $< |
|||
|
|||
# |
|||
## 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`" |
|||
|
|||
# |
|||
## 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 {BFD} |
|||
Link {LDFLAGS} -o {NM_PROG} "{o}"nm.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}"cplus-dem.c.o \Option-f "{BASEDIR}"libiberty:cplus-dem.c |
|||
{CC} -d MAIN -d VERSION='"{VERSION}"' {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}"arparse.c \Option-f "{s}"arparse.y |
|||
{BISON} {BISONFLAGS} "{srcdir}"arparse.y |
|||
Rename -y y.tab.c "{o}"arparse.c |
|||
Rename -y y.tab.h "{o}"arparse.h |
|||
|
|||
"{o}"arparse.h \Option-f "{o}"arparse.c |
|||
|
|||
"{o}"arlex.c \Option-f "{s}"arlex.l |
|||
{LEX} {LEX_OPTIONS} "{srcdir}"arlex.l |
|||
Rename -y :lex.yy.c "{o}"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 "{o}"arparse.c ::bfd:bfd.h "{INCDIR}":ansidecl.h \Option-d |
|||
"{INCDIR}":obstack.h "{s}"arsup.h |
|||
"{o}"arlex.c.o \Option-f :arlex.c "{o}"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 install-only |
|||
|
|||
install-only \Option-f |
|||
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 |
|||
For prog in {PROGS} |
|||
Duplicate -y :{prog} "{bindir}"{prog} |
|||
End For |
|||
|
|||
# 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 'Specify "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 "Makefile 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 "^#" \Option-x\Option-x\Option-x |
|||
### End \Option-f \Option-x\Option-x\Option-x |
|||
### end of file |
|||
@ -0,0 +1,68 @@ |
|||
# Sed commands to finish translating the binutils Unix makefile into MPW syntax. |
|||
|
|||
# Define undefined makefile variables. |
|||
/^#### .*/a\ |
|||
\ |
|||
BUILD_NLMCONV = \ |
|||
BUILD_SRCONV = \ |
|||
SYSINFO_PROG = \ |
|||
BUILD_DLLTOOL = \ |
|||
\ |
|||
"{o}"underscore.c.o \\Option-f "{o}"underscore.c\ |
|||
|
|||
# Whack out unused host define bits. |
|||
/HDEFINES/s/@HDEFINES@// |
|||
|
|||
/BUILD_NLMCONV/s/@BUILD_NLMCONV@// |
|||
/BUILD_SRCONV/s/@BUILD_SRCONV@// |
|||
/BUILD_DLLTOOL/s/@BUILD_DLLTOOL@// |
|||
|
|||
/UNDERSCORE/s/@UNDERSCORE@/{UNDERSCORE}/ |
|||
|
|||
# Whack out target makefile fragment. |
|||
/target_makefile_fragment/s/target_makefile_fragment@// |
|||
|
|||
# Fix and add to the include paths. |
|||
/^INCLUDES = .*$/s/$/ -i "{INCDIR}":mpw: -i ::extra-include:/ |
|||
/BFDDIR/s/-i {BFDDIR} /-i "{BFDDIR}": / |
|||
/INCDIR/s/-i {INCDIR} /-i "{INCDIR}": / |
|||
|
|||
# Use byacc instead of bison (for now anyway). |
|||
/BISON/s/^BISON =.*$/BISON = byacc/ |
|||
#/BISONFLAGS/s/^BISONFLAGS =.*$/BISONFLAGS = / |
|||
|
|||
# '+' is a special char to MPW, don't use it ever. |
|||
/c++filt/s/c++filt/cplusfilt/ |
|||
|
|||
/^{[A-Z]*_PROG}/s/$/ "{s}"mac-binutils.r/ |
|||
/{[A-Z]*_PROG}\.r/s/{[A-Z]*_PROG}\.r/mac-binutils.r/ |
|||
|
|||
# Fix the locations of generated files. |
|||
/config/s/"{s}"config\.h/"{o}"config.h/g |
|||
/config/s/^config\.h/"{o}"config\.h/ |
|||
/underscore/s/"{s}"underscore\.c/"{o}"underscore.c/g |
|||
/underscore/s/^underscore\.c/"{o}"underscore\.c/ |
|||
|
|||
# Fix paths to generated source files. |
|||
/lex.yy.c/s/"{s}"lex\.yy\.c/"{o}"lex.yy.c/g |
|||
/lex.yy.c/s/^lex\.yy\.c/"{o}"lex.yy.c/ |
|||
/arlex.c/s/"{s}"arlex\.c/"{o}"arlex.c/g |
|||
/arlex.c/s/^arlex\.c/"{o}"arlex.c/ |
|||
/arparse.c/s/"{s}"arparse\.c/"{o}"arparse.c/g |
|||
/arparse.c/s/^arparse\.c/"{o}"arparse.c/ |
|||
/arparse.h/s/"{s}"arparse\.h/"{o}"arparse.h/g |
|||
/arparse.h/s/^arparse\.h/"{o}"arparse.h/ |
|||
|
|||
/"{s}"{INCDIR}/s/"{s}"{INCDIR}/"{INCDIR}"/g |
|||
|
|||
# The generated lexer may include an ifdef for older Mac compilers that |
|||
# needs to work with newer compilers also. |
|||
/lex.yy.c/s/Rename -y \([^ ]*\) \([^ ]*\)$/sed -e 's,ifdef macintosh,if defined(macintosh) || defined(__MWERKS__),' \1 > \2/ |
|||
|
|||
# Fix an over-eagerness. |
|||
/echo.*WARNING.*This file/s/'.*'/' '/ |
|||
|
|||
# Remove un-useful targets. |
|||
/^Makefile \\Option-f/,/^$/d |
|||
/^"{o}"config.h \\Option-f/,/^$/d |
|||
/^config.status \\Option-f/,/^$/d |
|||
Loading…
Reference in new issue