2 changed files with 607 additions and 0 deletions
@ -0,0 +1,14 @@ |
|||
@echo off |
|||
echo Configuring GAS for H8/300 |
|||
|
|||
copy config\ho-go32.h host.h |
|||
copy config\tc-h8300.c targ-cpu.c |
|||
copy config\tc-h8300.h targ-cpu.h |
|||
copy config\te-generic.h targ-env.h |
|||
copy config\objcoff-bfd.h obj-format.h |
|||
copy config\objcoff-bfd.c obj-format.c |
|||
copy config\atof-ieee.c atof-targ.c |
|||
|
|||
copy Makefile.dos Makefile |
|||
|
|||
|
|||
@ -0,0 +1,593 @@ |
|||
# Makefile for GNU Assembler |
|||
# Copyright (C) 1987, 1988, 1990, 1991 Free Software Foundation, Inc. |
|||
|
|||
#This file is part of GNU GAS. |
|||
|
|||
#GNU GAS 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 1, or (at your option) |
|||
#any later version. |
|||
|
|||
#GNU GAS 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 GNU GAS; see the file COPYING. If not, write to |
|||
#the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. |
|||
|
|||
# $Id$ |
|||
|
|||
# The targets for external use include: |
|||
# all, doc, proto, install, uninstall, includes, TAGS, |
|||
# clean, cleanconfig, realclean, stage1, stage2, stage3, stage4. |
|||
|
|||
# Variables that exist for you to override. |
|||
# See below for how to change them for certain systems. |
|||
|
|||
LIBDEPS= |
|||
CROSS= |
|||
HDEFINES= |
|||
CPPFLAGS= |
|||
|
|||
ALLOCA = |
|||
CFLAGS = -g -D__MSDOS__ -D__GO32__ -I../include |
|||
INTERNAL_CFLAGS = $(CROSS) |
|||
OLDCC = cc |
|||
BISON = bison |
|||
BISONFLAGS = -v |
|||
AR = ar |
|||
OLDAR_FLAGS = qc |
|||
AR_FLAGS = rc |
|||
SHELL = /bin/sh |
|||
# on sysV, define this as cp. |
|||
INSTALL = install -c |
|||
# These permit overriding just for certain files. |
|||
INSTALL_PROGRAM = $(INSTALL) |
|||
INSTALL_FILE = $(INSTALL) |
|||
|
|||
# Define this as & to perform parallel make on a Sequent. |
|||
# Note that this has some bugs, and it seems currently necessary |
|||
# to compile all the gen* files first by hand to avoid erroneous results. |
|||
P = |
|||
|
|||
# How to invoke ranlib. |
|||
RANLIB = ranlib |
|||
# Test to use to see whether ranlib exists on the system. |
|||
RANLIB_TEST = [ -f /usr/bin/ranlib -o -f /bin/ranlib ] |
|||
|
|||
# CFLAGS for use with OLDCC, for compiling gnulib. |
|||
# NOTE: -O does not work on some Unix systems! |
|||
CCLIBFLAGS = -O |
|||
|
|||
# Version of ar to use when compiling gnulib. |
|||
OLDAR = ar |
|||
|
|||
version=`$(unsubdir)/../gcc$(subdir)/gcc -dumpversion` |
|||
|
|||
# Directory where sources are, from where we are. |
|||
srcdir = . |
|||
# Common prefix for installation directories. |
|||
# NOTE: This directory must exist when you start installation. |
|||
ddestdir = /usr/local |
|||
# Directory in which to put the executable for the command `gcc' |
|||
bindir = $(ddestdir)/bin |
|||
# Directory in which to put the directories used by the compiler. |
|||
libdir = $(ddestdir)/lib |
|||
# Directory in which the compiler finds executables, libraries, etc. |
|||
libsubdir = $(libdir)/gcc/$(target_alias)/$(version) |
|||
# Number to put in man-page filename. |
|||
manext = 1 |
|||
# Directory in which to put man pages. |
|||
mandir = $(destdir)/H-independent/man/man$(manext) |
|||
|
|||
# Additional system libraries to link with. |
|||
CLIB= |
|||
|
|||
# Specify the rule for actually making gnulib. |
|||
GNULIB = gnulib.portable |
|||
|
|||
# Specify the rule for actually making gnulib2. |
|||
GNULIB2 = gnulib2.portable |
|||
|
|||
# List of extra C and assembler files to add to gnulib. |
|||
# Assembler files should have names ending in `.asm'. |
|||
LIBFUNCS_EXTRA = |
|||
|
|||
# Program to convert libraries. |
|||
LIBCONVERT = |
|||
|
|||
# Control whether header files are installed. |
|||
INSTALL_HEADERS=install-headers |
|||
|
|||
# Change this to empty to prevent installing limits.h |
|||
LIMITS_H = limits.h |
|||
|
|||
# Directory to link to, when using the target `maketest'. |
|||
DIR = ../gcc |
|||
|
|||
# For better debugging under COFF, define SEPARATE_AUX_OUTPUT in config.h |
|||
# and define the following variable as `aux-output2.c' in make-... |
|||
AUX_OUTPUT2 = |
|||
|
|||
# Flags to use when cross-building GCC. |
|||
# Prefix to apply to names of object files when using them |
|||
# to run on the machine we are compiling on. |
|||
HOST_PREFIX= |
|||
# Prefix to apply to names of object files when compiling them |
|||
# to run on the machine we are compiling on. |
|||
# The default for this variable is chosen to keep these rules |
|||
# out of the way of the other rules for compiling the same source files. |
|||
HOST_PREFIX_1=loser- |
|||
HOST_CC=$(CC) |
|||
HOST_CFLAGS=$(ALL_CFLAGS) |
|||
HOST_LDFLAGS=$(LDFLAGS) |
|||
HOST_CPPFLAGS=$(CPPFLAGS) |
|||
|
|||
# Choose the real default target. |
|||
ALL=as.new |
|||
|
|||
# End of variables for you to override. |
|||
|
|||
# Lists of files for various purposes. |
|||
|
|||
REAL_SOURCES = \ |
|||
app.c \ |
|||
as.c \ |
|||
atof-generic.c \ |
|||
bignum-copy.c \ |
|||
cond.c \ |
|||
expr.c \ |
|||
fn-const.c \ |
|||
fn-copy.c \ |
|||
flonum-mult.c \ |
|||
frags.c \ |
|||
hash.c \ |
|||
hex-value.c \ |
|||
input-file.c \ |
|||
input-scrub.c \ |
|||
messages.c \ |
|||
output-file.c \ |
|||
read.c \ |
|||
strstr.c \ |
|||
subsegs.c \ |
|||
symbols.c \ |
|||
version.c \ |
|||
write.c \ |
|||
xmalloc.c \ |
|||
xrealloc.c |
|||
|
|||
# in an expedient order |
|||
LINKED_SOURCES = \ |
|||
targ-cpu.c \ |
|||
obj-format.c \ |
|||
atof-targ.c |
|||
|
|||
SOURCES = $(LINKED_SOURCES) $(REAL_SOURCES) |
|||
|
|||
REAL_HEADERS = \ |
|||
as.h \ |
|||
bignum.h \ |
|||
expr.h \ |
|||
flonum.h \ |
|||
frags.h \ |
|||
hash.h \ |
|||
input-file.h \ |
|||
tc.h \ |
|||
obj.h \ |
|||
read.h \ |
|||
struc-symbol.h \ |
|||
subsegs.h \ |
|||
symbols.h \ |
|||
syscalls.h \ |
|||
write.h |
|||
|
|||
LINKED_HEADERS = \ |
|||
a.out.gnu.h \ |
|||
a.out.h \ |
|||
host.h \ |
|||
targ-env.h \ |
|||
targ-cpu.h \ |
|||
obj-format.h \ |
|||
atof-targ.h |
|||
|
|||
HEADERS = $(LINKED_HEADERS) $(REAL_HEADERS) |
|||
|
|||
OBJS = \ |
|||
targ-cpu.o \ |
|||
obj-format.o \ |
|||
atof-targ.o \ |
|||
app.o \ |
|||
as.o \ |
|||
atof-generic.o \ |
|||
bignum-copy.o \ |
|||
cond.o \ |
|||
expr.o \ |
|||
fn-const.o \ |
|||
fn-copy.o \ |
|||
flonum-mult.o \ |
|||
frags.o \ |
|||
hash.o \ |
|||
hex-value.o \ |
|||
input-file.o \ |
|||
input-scrub.o \ |
|||
messages.o \ |
|||
output-file.o \ |
|||
read.o \ |
|||
strstr.o \ |
|||
subsegs.o \ |
|||
symbols.o \ |
|||
version.o \ |
|||
write.o \ |
|||
xmalloc.o \ |
|||
xrealloc.o |
|||
|
|||
#### host, target, and site specific Makefile frags come in here. |
|||
TARG_CPU_DEPENDENTS=../include/h8300-opcode.h |
|||
LOCAL_LOADLIBES=../bfd/libbfd.a |
|||
TDEFINES=-DBFD -DBFD_HEADERS -DMANY_SEGMENTS |
|||
|
|||
|
|||
# Definition of `all' is here so that new rules inserted by sed |
|||
# do not specify the default target. |
|||
# The real definition is under `all.internal'. |
|||
|
|||
all: $(ALL) |
|||
all-info: |
|||
install-info: |
|||
|
|||
fake-as: force |
|||
- rm -f ./as.new |
|||
cp /bin/as ./fake-as |
|||
|
|||
# Now figure out from those variables how to compile and link. |
|||
|
|||
# This is the variable actually used when we compile. |
|||
ALL_CFLAGS = $(INTERNAL_CFLAGS) $(CFLAGS) $(HDEFINES) $(TDEFINES) |
|||
|
|||
# Even if ALLOCA is set, don't use it if compiling with GCC. |
|||
USE_ALLOCA= `if [ x"${CC}" = x"${OLDCC}" ] ; then echo ${ALLOCA}; else true; fi` |
|||
USE_HOST_ALLOCA= `if [ x"${CC}" = x"${OLDCC}" ] ; then echo ${HOST_PREFIX}${ALLOCA}; else true; fi` |
|||
|
|||
# Likewise, for use in the tools that must run on this machine |
|||
# even if we are cross-building GCC. |
|||
# We don't use USE_ALLOCA because backquote expansion doesn't work in deps. |
|||
HOST_LIBDEPS= $(HOST_PREFIX)$(OBSTACK) $(HOST_PREFIX)$(ALLOCA) $(HOST_PREFIX)$(MALLOC) |
|||
|
|||
# How to link with both our special library facilities |
|||
# and the system's installed libraries. |
|||
|
|||
LIBS = $(LOCAL_LOADLIBES) $(CLIB) $(unsubdir)/../libiberty$(subdir)/libiberty.a |
|||
|
|||
# Likewise, for use in the tools that must run on this machine |
|||
# even if we are cross-building GCC. |
|||
HOST_LIBS = $(HOST_PREFIX)$(OBSTACK) $(USE_HOST_ALLOCA) $(HOST_PREFIX)$(MALLOC) $(CLIB) |
|||
|
|||
# Specify the directories to be searched for header files. |
|||
# Both . and srcdir are used, in that order, |
|||
# so that tm.h and config.h will be found in the compilation |
|||
# subdirectory rather than in the source directory. |
|||
INCLUDES = -I. -I$(srcdir) -Iconfig |
|||
SUBDIR_INCLUDES = -I.. -I../$(srcdir) -I../config |
|||
|
|||
# Always use -Iconfig when compiling. |
|||
.c.o: |
|||
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $< |
|||
|
|||
# This tells GNU make version 3 not to export all the variables |
|||
# defined in this file into the environment. |
|||
.NOEXPORT: |
|||
|
|||
# Files to be copied away after each stage in building. |
|||
STAGE_GCC=gcc |
|||
STAGESTUFF = *.o as.new |
|||
|
|||
# The files that "belong" in CONFIG_H are deliberately omitted |
|||
# because having them there would not be useful in actual practice. |
|||
# All they would do is cause complete recompilation every time |
|||
# one of the machine description files is edited. |
|||
# That may or may not be what one wants to do. |
|||
# If it is, rm *.o is an easy way to do it. |
|||
# CONFIG_H = config.h tm.h |
|||
CONFIG_H = |
|||
|
|||
as.new: $(OBJS) $(LIBDEPS) |
|||
-mv -f as.new as.old |
|||
>as.rf $(ALL_CFLAGS) $(LDFLAGS) -o as.new $(OBJS) $(LIBS) $(LOADLIBES) |
|||
$(CC) @as.rf |
|||
|
|||
objdump: |
|||
|
|||
all.internal: native |
|||
# This is what is made with the host's compiler if making a cross assembler. |
|||
native: config.status as |
|||
|
|||
config.status: |
|||
@echo You must configure gas. Look at the INSTALL file for details. |
|||
@false |
|||
|
|||
compilations: ${OBJS} |
|||
|
|||
# Compiling object files from source files. |
|||
|
|||
app.o : app.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
as.o : as.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
atof-generic.o : atof-generic.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
bignum-copy.o : bignum-copy.c as.h host.h \ |
|||
targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
cond.o : cond.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
|
|||
debug.o : debug.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
subsegs.h |
|||
expr.o : expr.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
|
|||
fn-const.o : fn-const.c flonum.h bignum.h |
|||
fn-copy.o : fn-copy.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
flonum-mult.o : flonum-mult.c flonum.h bignum.h |
|||
frags.o : frags.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
subsegs.h |
|||
hash.o : hash.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
hex-value.o : hex-value.c |
|||
input-file.o : input-file.c as.h host.h \ |
|||
targ-env.h obj-format.h targ-cpu.h \ |
|||
struc-symbol.h write.h flonum.h bignum.h expr.h \ |
|||
frags.h hash.h read.h symbols.h tc.h obj.h input-file.h |
|||
input-scrub.o : input-scrub.c \ |
|||
as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
input-file.h |
|||
messages.o : messages.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h |
|||
obstack.o : obstack.c |
|||
output-file.o : output-file.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
output-file.h |
|||
read.o : read.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
|
|||
strstr.o : strstr.c |
|||
subsegs.o : subsegs.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
subsegs.h |
|||
symbols.o : symbols.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
subsegs.h |
|||
version.o : version.c |
|||
write.o : write.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h symbols.h tc.h obj.h \ |
|||
subsegs.h output-file.h |
|||
xmalloc.o : xmalloc.c |
|||
xrealloc.o : xrealloc.c |
|||
atof-targ.o : atof-targ.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h \ |
|||
symbols.h tc.h obj.h |
|||
obj-format.o : obj-format.c as.h host.h targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h \ |
|||
symbols.h tc.h obj.h |
|||
targ-cpu.o : targ-cpu.c targ-env.h obj-format.h \ |
|||
targ-cpu.h struc-symbol.h \ |
|||
write.h flonum.h bignum.h expr.h frags.h hash.h read.h \ |
|||
symbols.h tc.h obj.h $(TARG_CPU_DEPENDENTS) |
|||
|
|||
|
|||
# Compile the libraries to be used by gen*. |
|||
# If we are not cross-building, gen* use the same .o's that cc1 will use, |
|||
# and HOST_PREFIX_1 is `foobar', just to ensure these rules don't conflict |
|||
# with the rules for rtl.o, alloca.o, etc. |
|||
$(HOST_PREFIX_1)alloca.o: alloca.c |
|||
rm -f $(HOST_PREFIX)alloca.c |
|||
cp alloca.c $(HOST_PREFIX)alloca.c |
|||
$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)alloca.c |
|||
|
|||
$(HOST_PREFIX_1)obstack.o: obstack.c |
|||
rm -f $(HOST_PREFIX)obstack.c |
|||
cp obstack.c $(HOST_PREFIX)obstack.c |
|||
$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)obstack.c |
|||
|
|||
$(HOST_PREFIX_1)malloc.o: malloc.c |
|||
rm -f $(HOST_PREFIX)malloc.c |
|||
cp malloc.c $(HOST_PREFIX)malloc.c |
|||
$(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)malloc.c |
|||
|
|||
# Remake the info files. |
|||
|
|||
doc: as.info |
|||
|
|||
as.info: doc/as.texinfo |
|||
(cd doc; make as.info; mv as.info $srcdir) |
|||
|
|||
|
|||
# Deletion of files made during compilation. |
|||
# There are three levels of this: `clean', `cleanconfig' and `realclean'. |
|||
# `clean' deletes what you want to delete ordinarily to save space. |
|||
# This is most, but not all, of the files made by compilation. |
|||
# `cleanconfig' also deletes everything depending |
|||
# on the choice of config files. |
|||
# `realclean' also deletes everything that could be regenerated automatically. |
|||
|
|||
clean: |
|||
-rm -f $(STAGESTUFF) |
|||
# Delete the temporary source copies for cross compilation. |
|||
-rm -f $(HOST_PREFIX_1)alloca.c $(HOST_PREFIX_1)malloc.c |
|||
-rm -f $(HOST_PREFIX_1)obstack.c |
|||
# Delete the stamp files except stamp-gnulib2. |
|||
-rm -f core |
|||
|
|||
# Like clean but also delete the links made to configure gas. |
|||
cleanconfig: clean |
|||
-rm -f config.status Makefile host.h targ-env.h |
|||
-rm -f targ-cpu.h targ-cpu.c |
|||
-rm -f obj-format.h obj-format.c |
|||
-rm -f atof-targ.c |
|||
|
|||
# Get rid of every file that's generated from some other file (except INSTALL). |
|||
realclean: cleanconfig |
|||
-rm -f gas.aux gas.cps gas.fns gas.info gas.kys gas.pgs gas.tps gas.vrs |
|||
-rm -f TAGS |
|||
-rm -f gas.info* gas.?? gas.??s gas.log gas.toc gas.*aux |
|||
-rm -f *.dvi |
|||
|
|||
# Entry points `install', `includes' and `uninstall'. |
|||
|
|||
# Copy the files into directories where they will be run. |
|||
install: $(ALL) |
|||
$(INSTALL_PROGRAM) $(ALL) $(libsubdir)/as |
|||
# cp $(ALL) $(bindir)/as.new |
|||
# mv -f $(bindir)/as.new $(bindir)/as |
|||
|
|||
# Create the installation directory. |
|||
install-dir: |
|||
-mkdir $(libdir) |
|||
-mkdir $(libdir)/gcc |
|||
-mkdir $(libdir)/gcc/$(target) |
|||
-mkdir $(libdir)/gcc/$(target)/$(version) |
|||
|
|||
# Install the compiler executables built during cross compilation. |
|||
install-cross: native install-dir |
|||
-if [ -f cc1 ] ; then $(INSTALL_PROGRAM) cc1 $(libsubdir)/cc1; else true; fi |
|||
-if [ -f cc1plus ] ; then $(INSTALL_PROGRAM) cc1plus $(libsubdir)/cc1plus; else true; fi |
|||
$(INSTALL_PROGRAM) cpp $(libsubdir)/cpp |
|||
./gcc -dumpspecs > $(libsubdir)/specs |
|||
$(INSTALL_PROGRAM) gcc $(bindir)/gcc |
|||
|
|||
# Install the man pages. |
|||
install-man: install-dir gcc.1 protoize.1 unprotoize.1 |
|||
$(INSTALL_FILE) gcc.1 $(mandir)/gcc.$(manext) |
|||
chmod a-x $(mandir)/gcc.$(manext) |
|||
$(INSTALL_FILE) protoize.1 $(mandir)/protoize.$(manext) |
|||
chmod a-x $(mandir)/protoize.$(manext) |
|||
$(INSTALL_FILE) unprotoize.1 $(mandir)/unprotoize.$(manext) |
|||
chmod a-x $(mandir)/unprotoize.$(manext) |
|||
|
|||
# Cancel installation by deleting the installed files. |
|||
uninstall: |
|||
-rm -rf $(libsubdir) |
|||
-rm -rf $(bindir)/as |
|||
-rm -rf $(mandir)/gas.$(manext) |
|||
|
|||
|
|||
# These exist for maintenance purposes. |
|||
|
|||
tags TAGS: force |
|||
etags $(REAL_SOURCES) $(REAL_HEADERS) README Makefile config/*.[hc] |
|||
|
|||
bootstrap: $(ALL) force |
|||
$(MAKE) stage1 |
|||
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage1/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(ALL) |
|||
$(MAKE) stage2 |
|||
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage2/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(ALL) |
|||
$(MAKE) comparison against=stage2 |
|||
|
|||
bootstrap2: force |
|||
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage1/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(ALL) |
|||
$(MAKE) stage2 |
|||
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage2/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(ALL) |
|||
$(MAKE) comparison against=stage2 |
|||
|
|||
bootstrap3: force |
|||
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage2/ $(CFLAGS)" libdir=$(libdir) ALLOCA= $(ALL) |
|||
$(MAKE) comparison against=stage2 |
|||
|
|||
# Copy the object files from a particular stage into a subdirectory. |
|||
stage1: force |
|||
-mkdir stage1 |
|||
-mv $(STAGESTUFF) stage1 |
|||
if [ -f stage1/as.new -a ! -f stage1/as ] ; then (cd stage1 ; ln -s as.new as) ; fi |
|||
|
|||
stage2: force |
|||
-mkdir stage2 |
|||
-mv $(STAGESTUFF) stage2 |
|||
if [ -f stage2/as.new -a ! -f stage2/as ] ; then (cd stage2 ; ln -s as.new as) ; fi |
|||
|
|||
stage3: force |
|||
-mkdir stage3 |
|||
-mv $(STAGESTUFF) stage3 |
|||
if [ -f stage3/as.new -a ! -f stage3/as ] ; then (cd stage3 ; ln -s as.new as) ; fi |
|||
|
|||
against=stage2 |
|||
|
|||
comparison: force |
|||
for i in $(STAGESTUFF) ; do cmp $$i $(against)/$$i ; done |
|||
|
|||
de-stage1: force |
|||
- (cd stage1 ; rm as ; mv -f * ..) |
|||
- rmdir stage1 |
|||
|
|||
de-stage2: force |
|||
- (cd stage2 ; rm as ; mv -f * ..) |
|||
- rmdir stage2 |
|||
|
|||
de-stage3: force |
|||
- (cd stage3 ; rm as ; mv -f * ..) |
|||
- rmdir stage3 |
|||
|
|||
# Copy just the executable files from a particular stage into a subdirectory, |
|||
# and delete the object files. Use this if you're just verifying a version |
|||
# that is pretty sure to work, and you are short of disk space. |
|||
risky-stage1: force |
|||
-mkdir stage1 |
|||
-mv cc1 cpp cccp gcc stage1 |
|||
-rm -f stage1/gnulib |
|||
-cp gnulib stage1 && $(RANLIB) stage1/gnulib |
|||
-make clean |
|||
|
|||
risky-stage2: force |
|||
-mkdir stage2 |
|||
-mv cc1 cpp cccp gcc stage2 |
|||
-rm -f stage2/gnulib |
|||
-cp gnulib stage2 && $(RANLIB) stage2/gnulib |
|||
-make clean |
|||
|
|||
risky-stage3: force |
|||
-mkdir stage3 |
|||
-mv cc1 cpp cccp gcc stage3 |
|||
-rm -f stage3/gnulib |
|||
-cp gnulib stage3 && $(RANLIB) stage3/gnulib |
|||
-make clean |
|||
|
|||
risky-stage4: force |
|||
-mkdir stage4 |
|||
-mv cc1 cpp cccp gcc stage4 |
|||
-rm -f stage4/gnulib |
|||
-cp gnulib stage4 && $(RANLIB) stage4/gnulib |
|||
-make clean |
|||
|
|||
#In GNU Make, ignore whether `stage*' exists. |
|||
.PHONY: stage1 stage2 stage3 stage4 clean realclean TAGS bootstrap |
|||
.PHONY: risky-stage1 risky-stage2 risky-stage3 risky-stage4 |
|||
|
|||
force: |
|||
|
|||
Makefile: Makefile.in $(host_makefile_frag) $(target_makefile_frag) |
|||
$(SHELL) ./config.status |
|||
|
|||
Loading…
Reference in new issue