1991-04-05 02:19:53 +08:00
|
|
|
# Makefile for GNU Assembler
|
1997-02-24 07:15:09 +08:00
|
|
|
# Copyright (C) 1987, 88, 89, 90, 91, 92, 93, 94, 95, 96, 1997
|
1996-02-08 03:36:48 +08:00
|
|
|
# Free Software Foundation, Inc.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
# This file is part of GNU GAS.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
# 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 2, or (at your option)
|
|
|
|
# any later version.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
# 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.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
# You should have received a copy of the GNU General Public License
|
1997-02-24 07:15:09 +08:00
|
|
|
# along with GNU GAS; see the file COPYING. If not, write to the Free
|
|
|
|
# Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
|
|
|
# 02111-1307, USA.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# The targets for external use include:
|
|
|
|
# all, doc, proto, install, uninstall, includes, TAGS,
|
1994-06-08 01:37:52 +08:00
|
|
|
# clean, mostlyclean, distclean, realclean, stage1, stage2, stage3, stage4.
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# Variables that exist for you to override.
|
|
|
|
# See below for how to change them for certain systems.
|
|
|
|
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
VPATH = @srcdir@
|
|
|
|
srcdir = @srcdir@
|
1993-11-09 17:57:02 +08:00
|
|
|
srcroot = $(srcdir)/..
|
1991-12-07 15:19:08 +08:00
|
|
|
|
1994-09-08 07:52:59 +08:00
|
|
|
target_alias = @target_alias@
|
1994-09-01 07:51:38 +08:00
|
|
|
prefix = @prefix@
|
1991-12-07 15:19:08 +08:00
|
|
|
|
1994-09-08 07:52:59 +08:00
|
|
|
program_transform_name = @program_transform_name@
|
1994-09-01 07:51:38 +08:00
|
|
|
exec_prefix = @exec_prefix@
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
bindir = @bindir@
|
|
|
|
libdir = @libdir@
|
1994-12-17 09:03:15 +08:00
|
|
|
tooldir = $(exec_prefix)/$(target_alias)
|
1992-03-08 15:47:55 +08:00
|
|
|
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
datadir = @datadir@
|
|
|
|
mandir = @mandir@
|
1991-12-07 15:19:08 +08:00
|
|
|
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
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
infodir = @infodir@
|
|
|
|
includedir = @includedir@
|
1991-12-07 15:19:08 +08:00
|
|
|
|
1996-08-23 08:10:40 +08:00
|
|
|
VERSION=cygnus-2.7.1
|
1993-06-16 08:03:44 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
SHELL = /bin/sh
|
1991-12-07 15:19:08 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
INSTALL = $${srcroot}/install.sh -c
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
|
|
INSTALL_DATA = @INSTALL_DATA@
|
1996-02-08 03:36:48 +08:00
|
|
|
INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
|
1993-06-16 08:03:44 +08:00
|
|
|
INSTALL_XFORM1= $(INSTALL_XFORM) -b=.1
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1997-02-24 07:15:09 +08:00
|
|
|
DISTSTUFF= make-gas.com m68k-parse.c itbl-parse.c itbl-lex.c
|
1994-10-12 03:12:55 +08:00
|
|
|
|
1991-12-07 15:19:08 +08:00
|
|
|
AR = ar
|
|
|
|
AR_FLAGS = qv
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
BISON = `if [ -f ../bison/bison ] ; then echo ../bison/bison -y -L../bison/bison ; else echo bison -y ; fi`
|
|
|
|
BISONFLAGS =
|
1997-02-24 07:15:09 +08:00
|
|
|
LEX = `if [ -f ../flex/flex ] ; then echo ../flex/flex ; else echo flex ; fi`
|
|
|
|
LEXFLAGS =
|
1991-12-07 15:19:08 +08:00
|
|
|
MAKEINFO = makeinfo
|
1993-06-16 08:03:44 +08:00
|
|
|
TEXI2DVI = texi2dvi
|
1991-04-05 02:19:53 +08:00
|
|
|
RANLIB = ranlib
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
CC = @CC@
|
1996-02-08 03:36:48 +08:00
|
|
|
HLDFLAGS = @HLDFLAGS@
|
1996-08-23 08:10:40 +08:00
|
|
|
HLDENV = @HLDENV@
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
RPATH_ENVVAR = @RPATH_ENVVAR@
|
1997-02-24 06:23:12 +08:00
|
|
|
CFLAGS = -g
|
|
|
|
LDFLAGS =
|
1992-08-19 05:24:59 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
MAKEOVERRIDES=
|
|
|
|
|
1995-09-14 04:35:17 +08:00
|
|
|
EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \
|
|
|
|
echo $${rootme}/../expect/expect ; \
|
|
|
|
else echo expect ; fi`
|
|
|
|
|
1992-08-19 05:24:59 +08:00
|
|
|
FLAGS_TO_PASS = \
|
|
|
|
"prefix=$(prefix)" \
|
|
|
|
"exec_prefix=$(exec_prefix)" \
|
|
|
|
"tooldir=$(tooldir)" \
|
|
|
|
"AR=$(AR)" \
|
|
|
|
"AR_FLAGS=$(AR_FLAGS)" \
|
|
|
|
"CC=$(CC)" \
|
|
|
|
"CFLAGS=$(CFLAGS)" \
|
|
|
|
"RANLIB=$(RANLIB)" \
|
|
|
|
"LOADLIBES=$(LOADLIBES)" \
|
|
|
|
"LDFLAGS=$(LDFLAGS)" \
|
|
|
|
"BISON=$(BISON)" \
|
|
|
|
"LEX=$(LEX)" \
|
|
|
|
"MAKEINFO=$(MAKEINFO)" \
|
|
|
|
"INSTALL=$(INSTALL)" \
|
|
|
|
"INSTALL_DATA=$(INSTALL_DATA)" \
|
|
|
|
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)"
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1996-02-08 03:36:48 +08:00
|
|
|
RUNTEST = `if [ -f $${srcdir}/../dejagnu/runtest ] ; then \
|
|
|
|
echo $${srcdir}/../dejagnu/runtest ; else echo runtest; \
|
1995-05-02 14:46:21 +08:00
|
|
|
fi`
|
|
|
|
RUNTESTFLAGS=
|
1993-06-16 08:03:44 +08:00
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
TARG_CPU_C = $(srcdir)/config/tc-@target_cpu_type@.c
|
|
|
|
TARG_CPU_O = tc-@target_cpu_type@.o
|
|
|
|
TARG_CPU_H = $(srcdir)/config/tc-@target_cpu_type@.h
|
|
|
|
OBJ_FORMAT_C = $(srcdir)/config/obj-@obj_format@.c
|
|
|
|
OBJ_FORMAT_O = obj-@obj_format@.o
|
|
|
|
OBJ_FORMAT_H = $(srcdir)/config/obj-@obj_format@.h
|
|
|
|
TARG_ENV_H = $(srcdir)/config/te-@te_file@.h
|
|
|
|
ATOF_TARG_C = $(srcdir)/config/atof-@atof@.c
|
|
|
|
ATOF_TARG_O = atof-@atof@.o
|
|
|
|
|
1997-02-24 06:23:12 +08:00
|
|
|
# use @target_cpu_type@ for refering to configured target name
|
1997-02-26 03:28:05 +08:00
|
|
|
IT_HDRS=itbl-parse.h $(srcdir)/itbl-ops.h
|
1997-02-24 06:23:12 +08:00
|
|
|
IT_SRCS=itbl-parse.c itbl-lex.c $(srcdir)/itbl-ops.c
|
|
|
|
IT_DEPS=$(srcdir)/itbl-parse.y $(srcdir)/itbl-lex.l $(srcdir)/config/itbl-@target_cpu_type@.h
|
|
|
|
IT_OBJS=itbl-parse.o itbl-lex.o itbl-ops.o
|
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Lists of files for various purposes.
|
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
SOURCES = \
|
1991-04-05 02:19:53 +08:00
|
|
|
$(srcdir)/app.c \
|
|
|
|
$(srcdir)/as.c \
|
|
|
|
$(srcdir)/atof-generic.c \
|
|
|
|
$(srcdir)/bignum-copy.c \
|
|
|
|
$(srcdir)/cond.c \
|
|
|
|
$(srcdir)/expr.c \
|
1992-03-14 00:04:21 +08:00
|
|
|
$(srcdir)/flonum-konst.c \
|
1991-04-05 02:19:53 +08:00
|
|
|
$(srcdir)/flonum-copy.c \
|
|
|
|
$(srcdir)/flonum-mult.c \
|
|
|
|
$(srcdir)/frags.c \
|
|
|
|
$(srcdir)/hash.c \
|
|
|
|
$(srcdir)/input-file.c \
|
|
|
|
$(srcdir)/input-scrub.c \
|
1997-02-24 06:23:12 +08:00
|
|
|
$(srcdir)/itbl-ops.c \
|
1994-01-06 09:16:51 +08:00
|
|
|
$(srcdir)/literal.c \
|
1991-04-05 02:19:53 +08:00
|
|
|
$(srcdir)/messages.c \
|
|
|
|
$(srcdir)/output-file.c \
|
|
|
|
$(srcdir)/read.c \
|
|
|
|
$(srcdir)/subsegs.c \
|
|
|
|
$(srcdir)/symbols.c \
|
|
|
|
$(srcdir)/write.c \
|
1992-02-16 05:13:03 +08:00
|
|
|
$(srcdir)/listing.c \
|
1993-11-18 07:25:35 +08:00
|
|
|
$(srcdir)/ecoff.c \
|
1994-12-17 09:03:15 +08:00
|
|
|
$(srcdir)/stabs.c
|
1991-04-05 02:19:53 +08:00
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
HEADERS = \
|
1991-04-05 02:19:53 +08:00
|
|
|
$(srcdir)/as.h \
|
|
|
|
$(srcdir)/bignum.h \
|
|
|
|
$(srcdir)/expr.h \
|
|
|
|
$(srcdir)/flonum.h \
|
|
|
|
$(srcdir)/frags.h \
|
|
|
|
$(srcdir)/hash.h \
|
|
|
|
$(srcdir)/input-file.h \
|
1997-02-24 06:23:12 +08:00
|
|
|
$(srcdir)/itbl-ops.h \
|
1992-02-17 23:54:49 +08:00
|
|
|
$(srcdir)/listing.h \
|
1991-04-05 02:19:53 +08:00
|
|
|
$(srcdir)/tc.h \
|
|
|
|
$(srcdir)/obj.h \
|
|
|
|
$(srcdir)/read.h \
|
|
|
|
$(srcdir)/struc-symbol.h \
|
|
|
|
$(srcdir)/subsegs.h \
|
|
|
|
$(srcdir)/symbols.h \
|
1993-11-18 07:25:35 +08:00
|
|
|
$(srcdir)/write.h \
|
|
|
|
$(srcdir)/ecoff.h
|
1991-04-05 02:19:53 +08:00
|
|
|
|
Add support for macros.
* as.c: Include sb.h and macro.h.
(max_macro_next): New global variable.
(main): Call macro_init.
(macro_expr): New static function.
* as.h (max_macro_nest): Declare.
* read.c (line_label): Rename from mri_line_label. Change all
uses.
(potable): Add exitm, irp, irpc, macro, mexit, rept.
(read_a_source_file): Always clear line_label at the start of a
line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fixup
MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
equ val. Set line_label when calling colon. In MRI mode, a
leading '.' does not imply a pseudo-op. Check for macro expansion
before calling md_assemble.
(s_irp): New function.
(get_line_sb): New static function.
(s_macro): New function.
(s_mexit): New function.
(s_rept): New function.
* read.h (line_label): Rename from mri_line_label.
(s_irp, s_rept): Declare.
(s_macro, s_mexit): Declare.
* input-scrub.c: Include sb.h.
(sb_index, from_sb): New static variables.
(macro_nest): New static variable.
(struct input_save): Add sb_index and from_sb fields. Change
next_saved_file field to be struct input_save *.
(next_saved_file): Changed to be struct input_save *.
(input_scrub_push): Change to return type struct input_save *.
Save sb_index and from_sb.
(input_scrub_pop): Change parameter type to struct input_save *.
Restore sb_index and from_sb.
(input_scrub_include_sb): New function.
(input_scrub_next_buffer): Handle reading from from_sb.
(bump_line_counters): Only increment lines if not using from_sb.
* config/tc-m68k.c (opt_table): Add nest.
(opt_nest): New static function.
* gasp.c: Include sb.h and macro.h. Move all sb related functions
and definitions to sb.h and sb.c. Move all macro related
functions and definitions to macro.h and macro.c.
* sb.h, sb.c: New files, extracted from gasp.c.
* macro.h, macro.c: Likewise.
* Makefile.in (OBJS): Add sb.o and macro.o
(GASPOBJS): Define.
(gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
(gasp.o): Depend upon sb.h and macro.h.
(sb.o): New target.
(macro.o): New target.
(as.o): Depend upon sb.h and macro.h.
(input-scrub.o): Depend upon sb.h.
(read.o): Depend upon sb.h and macro.h.
1995-08-22 02:35:11 +08:00
|
|
|
TE_OBJS=
|
|
|
|
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
# @target_frag@
|
1994-04-15 04:39:39 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
OBJS = \
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
$(TARG_CPU_O) \
|
|
|
|
$(OBJ_FORMAT_O) \
|
|
|
|
$(ATOF_TARG_O) \
|
1991-04-05 02:19:53 +08:00
|
|
|
app.o \
|
|
|
|
as.o \
|
|
|
|
atof-generic.o \
|
|
|
|
bignum-copy.o \
|
|
|
|
cond.o \
|
|
|
|
expr.o \
|
1992-03-14 00:04:21 +08:00
|
|
|
flonum-konst.o \
|
1991-04-05 02:19:53 +08:00
|
|
|
flonum-copy.o \
|
|
|
|
flonum-mult.o \
|
|
|
|
frags.o \
|
|
|
|
hash.o \
|
|
|
|
input-file.o \
|
|
|
|
input-scrub.o \
|
1994-01-06 09:16:51 +08:00
|
|
|
literal.o \
|
1991-04-05 02:19:53 +08:00
|
|
|
messages.o \
|
|
|
|
output-file.o \
|
|
|
|
read.o \
|
|
|
|
subsegs.o \
|
|
|
|
symbols.o \
|
|
|
|
write.o \
|
1992-02-16 05:13:03 +08:00
|
|
|
listing.o \
|
1993-11-18 07:25:35 +08:00
|
|
|
ecoff.o \
|
1993-12-01 00:25:18 +08:00
|
|
|
stabs.o \
|
Add support for macros.
* as.c: Include sb.h and macro.h.
(max_macro_next): New global variable.
(main): Call macro_init.
(macro_expr): New static function.
* as.h (max_macro_nest): Declare.
* read.c (line_label): Rename from mri_line_label. Change all
uses.
(potable): Add exitm, irp, irpc, macro, mexit, rept.
(read_a_source_file): Always clear line_label at the start of a
line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fixup
MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
equ val. Set line_label when calling colon. In MRI mode, a
leading '.' does not imply a pseudo-op. Check for macro expansion
before calling md_assemble.
(s_irp): New function.
(get_line_sb): New static function.
(s_macro): New function.
(s_mexit): New function.
(s_rept): New function.
* read.h (line_label): Rename from mri_line_label.
(s_irp, s_rept): Declare.
(s_macro, s_mexit): Declare.
* input-scrub.c: Include sb.h.
(sb_index, from_sb): New static variables.
(macro_nest): New static variable.
(struct input_save): Add sb_index and from_sb fields. Change
next_saved_file field to be struct input_save *.
(next_saved_file): Changed to be struct input_save *.
(input_scrub_push): Change to return type struct input_save *.
Save sb_index and from_sb.
(input_scrub_pop): Change parameter type to struct input_save *.
Restore sb_index and from_sb.
(input_scrub_include_sb): New function.
(input_scrub_next_buffer): Handle reading from from_sb.
(bump_line_counters): Only increment lines if not using from_sb.
* config/tc-m68k.c (opt_table): Add nest.
(opt_nest): New static function.
* gasp.c: Include sb.h and macro.h. Move all sb related functions
and definitions to sb.h and sb.c. Move all macro related
functions and definitions to macro.h and macro.c.
* sb.h, sb.c: New files, extracted from gasp.c.
* macro.h, macro.c: Likewise.
* Makefile.in (OBJS): Add sb.o and macro.o
(GASPOBJS): Define.
(gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
(gasp.o): Depend upon sb.h and macro.h.
(sb.o): New target.
(macro.o): New target.
(as.o): Depend upon sb.h and macro.h.
(input-scrub.o): Depend upon sb.h.
(read.o): Depend upon sb.h and macro.h.
1995-08-22 02:35:11 +08:00
|
|
|
sb.o \
|
|
|
|
macro.o \
|
1995-07-06 01:56:52 +08:00
|
|
|
@extra_objects@ \
|
1994-04-15 04:39:39 +08:00
|
|
|
$(TE_OBJS)
|
1991-10-10 12:56:18 +08:00
|
|
|
|
Add support for macros.
* as.c: Include sb.h and macro.h.
(max_macro_next): New global variable.
(main): Call macro_init.
(macro_expr): New static function.
* as.h (max_macro_nest): Declare.
* read.c (line_label): Rename from mri_line_label. Change all
uses.
(potable): Add exitm, irp, irpc, macro, mexit, rept.
(read_a_source_file): Always clear line_label at the start of a
line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fixup
MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
equ val. Set line_label when calling colon. In MRI mode, a
leading '.' does not imply a pseudo-op. Check for macro expansion
before calling md_assemble.
(s_irp): New function.
(get_line_sb): New static function.
(s_macro): New function.
(s_mexit): New function.
(s_rept): New function.
* read.h (line_label): Rename from mri_line_label.
(s_irp, s_rept): Declare.
(s_macro, s_mexit): Declare.
* input-scrub.c: Include sb.h.
(sb_index, from_sb): New static variables.
(macro_nest): New static variable.
(struct input_save): Add sb_index and from_sb fields. Change
next_saved_file field to be struct input_save *.
(next_saved_file): Changed to be struct input_save *.
(input_scrub_push): Change to return type struct input_save *.
Save sb_index and from_sb.
(input_scrub_pop): Change parameter type to struct input_save *.
Restore sb_index and from_sb.
(input_scrub_include_sb): New function.
(input_scrub_next_buffer): Handle reading from from_sb.
(bump_line_counters): Only increment lines if not using from_sb.
* config/tc-m68k.c (opt_table): Add nest.
(opt_nest): New static function.
* gasp.c: Include sb.h and macro.h. Move all sb related functions
and definitions to sb.h and sb.c. Move all macro related
functions and definitions to macro.h and macro.c.
* sb.h, sb.c: New files, extracted from gasp.c.
* macro.h, macro.c: Likewise.
* Makefile.in (OBJS): Add sb.o and macro.o
(GASPOBJS): Define.
(gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
(gasp.o): Depend upon sb.h and macro.h.
(sb.o): New target.
(macro.o): New target.
(as.o): Depend upon sb.h and macro.h.
(input-scrub.o): Depend upon sb.h.
(read.o): Depend upon sb.h and macro.h.
1995-08-22 02:35:11 +08:00
|
|
|
GASPOBJS = \
|
|
|
|
gasp.o \
|
|
|
|
macro.o \
|
|
|
|
sb.o \
|
|
|
|
hash.o
|
|
|
|
|
1994-09-30 07:03:07 +08:00
|
|
|
all: .gdbinit as.new gasp.new
|
1993-11-09 17:57:02 +08:00
|
|
|
@srcroot=`cd $(srcroot); pwd`; export srcroot; \
|
|
|
|
(cd doc ; $(MAKE) $(FLAGS_TO_PASS) all)
|
1992-02-21 17:05:26 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
dvi info install-info clean-info:
|
|
|
|
@srcroot=`cd $(srcroot); pwd`; export srcroot; \
|
|
|
|
(cd doc ; $(MAKE) $(FLAGS_TO_PASS) $@)
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1994-03-21 04:06:53 +08:00
|
|
|
make-gas.com: stamp-mk.com
|
|
|
|
stamp-mk.com: vmsconf.sh Makefile
|
1995-07-06 01:56:52 +08:00
|
|
|
sh $(srcdir)/vmsconf.sh $(OBJS) > new-make.com
|
1994-03-21 04:06:53 +08:00
|
|
|
$(srcdir)/../move-if-change new-make.com $(srcdir)/make-gas.com
|
|
|
|
touch stamp-mk.com
|
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Now figure out from those variables how to compile and link.
|
|
|
|
|
|
|
|
# This is the variable actually used when we compile.
|
1997-01-01 04:43:28 +08:00
|
|
|
ALL_CFLAGS = -D_GNU_SOURCE $(INTERNAL_CFLAGS) $(CROSS) $(CFLAGS) $(HDEFINES) $(TDEFINES)
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# How to link with both our special library facilities
|
|
|
|
# and the system's installed libraries.
|
1991-10-10 12:56:18 +08:00
|
|
|
|
1996-02-08 03:36:48 +08:00
|
|
|
LIBDEPS = @OPCODES_DEP@ @BFDDEP@ $(LOCAL_LOADLIBES) ../libiberty/libiberty.a
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
LIBS = @OPCODES_LIB@ @BFDLIB@ $(LOCAL_LOADLIBES) ../libiberty/libiberty.a
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# 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.
|
1995-07-06 01:56:52 +08:00
|
|
|
INCLUDES = -I. -I$(srcdir) -I../bfd -I$(srcdir)/config -I$(srcdir)/../include -I$(srcdir)/.. -I$(srcdir)/../bfd
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# Always use -I$(srcdir)/config 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:
|
1992-02-17 23:54:49 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Files to be copied away after each stage in building.
|
1994-03-21 04:06:53 +08:00
|
|
|
STAGESTUFF = *.o as.new gasp.new
|
1991-04-05 02:19:53 +08:00
|
|
|
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
$(OBJS): @ALL_OBJ_DEPS@
|
1994-04-15 06:46:53 +08:00
|
|
|
|
1996-02-08 03:36:48 +08:00
|
|
|
as.new: $(OBJS) $(LIBDEPS)
|
1996-08-23 08:10:40 +08:00
|
|
|
$(HLDENV) $(CC) $(HLDFLAGS) $(ALL_CFLAGS) $(LDFLAGS) -o as.new $(OBJS) $(LIBS) $(LOADLIBES)
|
1991-04-05 02:19:53 +08:00
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
$(OBJS): config.h as.h $(TARG_ENV_H) $(OBJ_FORMAT_H) $(TARG_CPU_H) flonum.h \
|
|
|
|
expr.h struc-symbol.h write.h frags.h hash.h read.h symbols.h tc.h \
|
|
|
|
obj.h listing.h bignum.h $(srcdir)/../include/libiberty.h
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
|
1995-09-09 02:43:50 +08:00
|
|
|
gasp.new: $(GASPOBJS) ../libiberty/libiberty.a
|
|
|
|
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o gasp.new $(GASPOBJS) ../libiberty/libiberty.a $(LOADLIBES)
|
1994-02-01 00:44:53 +08:00
|
|
|
|
1993-06-16 08:03:44 +08:00
|
|
|
installcheck:
|
|
|
|
@echo No installcheck target is available yet for the GNU assembler.
|
|
|
|
|
1995-09-14 04:35:17 +08:00
|
|
|
site.exp: ./Makefile
|
|
|
|
@echo "Making a new config file..."
|
|
|
|
-@rm -f ./tmp?
|
|
|
|
@touch site.exp
|
|
|
|
-@mv site.exp site.bak
|
|
|
|
@echo "## these variables are automatically generated by make ##" > ./tmp0
|
|
|
|
@echo "# Do not edit here. If you wish to override these values," >> ./tmp0
|
|
|
|
@echo "# do so in the last section." >> ./tmp0
|
|
|
|
@echo set host_os @host_os@ >> ./tmp0
|
|
|
|
@echo set host_alias @host_alias@ >> ./tmp0
|
|
|
|
@echo set host_cpu @host_cpu@ >> ./tmp0
|
|
|
|
@echo set host_vendor @host_vendor@ >> ./tmp0
|
|
|
|
@echo set target_os @target_os@ >> ./tmp0
|
|
|
|
@echo set target_alias @target_alias@ >> ./tmp0
|
|
|
|
@echo set target_cpu @target_cpu@ >> ./tmp0
|
|
|
|
@echo set target_vendor @target_vendor@ >> ./tmp0
|
|
|
|
@echo set host_triplet @host@ >> ./tmp0
|
|
|
|
@echo set target_triplet @target@ >> ./tmp0
|
|
|
|
@echo set target_canonical @target@ >> ./tmp0
|
1995-11-21 05:03:20 +08:00
|
|
|
@echo set srcdir ${srcdir}/testsuite >> ./tmp0
|
1995-09-14 04:35:17 +08:00
|
|
|
@echo set exec_prefix ${exec_prefix} >> ./tmp0
|
|
|
|
@echo set objdir `pwd` >> ./tmp0
|
|
|
|
@echo "## All variables above are generated by configure. Do Not Edit ##" >> ./tmp0
|
|
|
|
@sed -e '1,/^## All variables above are.*##/ d' < site.bak >> ./tmp0
|
|
|
|
@mv -f ./tmp0 site.exp
|
|
|
|
|
|
|
|
check: site.exp
|
|
|
|
if [ -d testsuite ]; then \
|
|
|
|
true; \
|
|
|
|
else \
|
|
|
|
mkdir testsuite; \
|
|
|
|
fi
|
|
|
|
rm -f testsuite/site.exp
|
|
|
|
cp site.exp testsuite/site.exp
|
|
|
|
rootme=`pwd`; export rootme; \
|
|
|
|
srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
$(RPATH_ENVVAR)=$$rootme/../bfd:$$rootme/../opcodes:$$$(RPATH_ENVVAR); \
|
|
|
|
export $(RPATH_ENVVAR); \
|
1995-09-14 04:35:17 +08:00
|
|
|
cd testsuite; \
|
|
|
|
EXPECT=${EXPECT} ; export EXPECT ; \
|
|
|
|
if [ -f $${rootme}/../expect/expect ] ; then \
|
|
|
|
TCL_LIBRARY=$${srcdir}/../tcl/library ; \
|
|
|
|
export TCL_LIBRARY ; fi ; \
|
|
|
|
$(RUNTEST) --tool gas --srcdir $${srcdir}/testsuite $(RUNTESTFLAGS)
|
1992-03-08 15:47:55 +08:00
|
|
|
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
config.status: configure
|
1996-08-23 08:10:40 +08:00
|
|
|
$(SHELL) config.status --recheck
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
|
1993-03-12 10:58:15 +08:00
|
|
|
config.h: config-stamp ; @true
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
config-stamp: Makefile conf
|
1993-03-12 10:58:15 +08:00
|
|
|
-rm -f config.new config-stamp
|
1994-09-13 09:51:26 +08:00
|
|
|
echo '/* config.h. Generated automatically by make. */' > config.new
|
|
|
|
echo '#ifndef GAS_VERSION' >> config.new
|
Conversion to autoconf:
* acconfig.h, aclocal.m4: New files.
* configure.in: Rewritten (except for some target-specific code) for autoconf.
* conf.in, configure: New files, generated from the above.
* Makefile.in: Changed magic sequence indicating insertion of makefile
fragments.
(VPATH, srcdir, CC, LIBS, OBJS dependencies): Use @-substitutions from
configure.
(LINKED_HEADERS): Deleted a.out.gnu.h, a.out.h, and host.h.
(config.status, configure): Rewrite rules.
(config-stamp): Depend on conf. Skip variables that configure is now
substituting itself.
(*.o dependencies): Deleted host.h.
(distclean, realclean): Don't delete host.h.
* as.c: Don't include stdio.h, string.h, sys/types.h. Include signal.h after
as.h.
* as.h: Include alloca-conf.h first. Include ctype.h, string.h, strings.h,
stdlib.h, unistd.h, sys/types.h, fopen-bin.h, fopen-same.h, as suggested by
autoconf test results.
[BROKEN_ASSERT]: Don't include assert.h.
(strdup): Declare.
(volatile, const): Define if not __STDC__ and not already defined.
(malloc, realloc) [NEED_MALLOC_DECLARATION]: Declare.
(free) [NEED_FREE_DECLARATION]: Declare.
* gasp.c: Include config.h, stdlib.h (if HAVE_STDLIB_H). Don't include host.h.
(malloc) [NEED_MALLOC_DECLARATION]: Declare.
* messages.c: Include as.h first. Include errno.h only if HAVE_ERRNO_H. If
HAVE_VARARGS_H and not __STDC__, undefine HAVE_STDARG_H. Set NO_STDARG and
NO_VARARGS as appropriate.
* doc/Makefile.in (srcdir, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Use
autoconf @-substitutions.
1994-08-28 15:59:06 +08:00
|
|
|
echo '#define GAS_VERSION "$(VERSION)"' >> config.new
|
|
|
|
echo '' >> config.new
|
|
|
|
cat conf >> config.new
|
|
|
|
echo '#endif /* GAS_VERSION */' >> config.new
|
1993-03-12 10:58:15 +08:00
|
|
|
$(srcdir)/../move-if-change config.new config.h
|
|
|
|
touch config-stamp
|
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Compiling object files from source files.
|
|
|
|
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_a29k =
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_alpha = $(srcdir)/../include/opcode/alpha.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
# start-sanitize-arc
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_arc = $(srcdir)/../include/opcode/arc.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
# end-sanitize-arc
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_arm = subsegs.h $(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_generic =
|
|
|
|
TARG_CPU_DEP_h8300 = $(srcdir)/../include/opcode/h8300.h
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_h8500 = $(srcdir)/../opcodes/h8500-opc.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_hppa = subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_i386 = $(srcdir)/../include/opcode/i386.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_i860 =
|
|
|
|
TARG_CPU_DEP_i960 =
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
TARG_CPU_DEP_m68k = $(srcdir)/../include/opcode/m68k.h \
|
1997-03-16 08:15:01 +08:00
|
|
|
$(srcdir)/config/m68k-parse.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_m88k = $(srcdir)/config/m88k-opcode.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_mips = $(srcdir)/../include/opcode/mips.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h \
|
1997-02-26 12:33:08 +08:00
|
|
|
$(srcdir)/config/itbl-mips.h $(srcdir)/itbl-ops.h
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_ns32k =
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_ppc = subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_sh = $(srcdir)/../opcodes/sh-opc.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
|
|
|
TARG_CPU_DEP_sparc = subsegs.h $(srcdir)/../include/opcode/sparc.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_tahoe =
|
|
|
|
TARG_CPU_DEP_vax =
|
1997-03-16 08:15:01 +08:00
|
|
|
TARG_CPU_DEP_w65 = $(srcdir)/../opcodes/w65-opc.h subsegs.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1995-05-02 14:46:21 +08:00
|
|
|
TARG_CPU_DEP_z8k = $(srcdir)/../opcodes/z8k-opc.h
|
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
# The implicit .c.o rule doesn't work here, perhaps because of the
|
|
|
|
# variables, or perhaps because the sources are not on vpath.
|
|
|
|
$(TARG_CPU_O): $(TARG_CPU_C) $(TARG_CPU_DEP_@target_cpu_type@)
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(TARG_CPU_C)
|
|
|
|
$(OBJ_FORMAT_O): $(OBJ_FORMAT_C)
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(OBJ_FORMAT_C)
|
|
|
|
$(ATOF_TARG_O): $(ATOF_TARG_C)
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(ATOF_TARG_C)
|
|
|
|
|
Add support for macros.
* as.c: Include sb.h and macro.h.
(max_macro_next): New global variable.
(main): Call macro_init.
(macro_expr): New static function.
* as.h (max_macro_nest): Declare.
* read.c (line_label): Rename from mri_line_label. Change all
uses.
(potable): Add exitm, irp, irpc, macro, mexit, rept.
(read_a_source_file): Always clear line_label at the start of a
line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fixup
MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
equ val. Set line_label when calling colon. In MRI mode, a
leading '.' does not imply a pseudo-op. Check for macro expansion
before calling md_assemble.
(s_irp): New function.
(get_line_sb): New static function.
(s_macro): New function.
(s_mexit): New function.
(s_rept): New function.
* read.h (line_label): Rename from mri_line_label.
(s_irp, s_rept): Declare.
(s_macro, s_mexit): Declare.
* input-scrub.c: Include sb.h.
(sb_index, from_sb): New static variables.
(macro_nest): New static variable.
(struct input_save): Add sb_index and from_sb fields. Change
next_saved_file field to be struct input_save *.
(next_saved_file): Changed to be struct input_save *.
(input_scrub_push): Change to return type struct input_save *.
Save sb_index and from_sb.
(input_scrub_pop): Change parameter type to struct input_save *.
Restore sb_index and from_sb.
(input_scrub_include_sb): New function.
(input_scrub_next_buffer): Handle reading from from_sb.
(bump_line_counters): Only increment lines if not using from_sb.
* config/tc-m68k.c (opt_table): Add nest.
(opt_nest): New static function.
* gasp.c: Include sb.h and macro.h. Move all sb related functions
and definitions to sb.h and sb.c. Move all macro related
functions and definitions to macro.h and macro.c.
* sb.h, sb.c: New files, extracted from gasp.c.
* macro.h, macro.c: Likewise.
* Makefile.in (OBJS): Add sb.o and macro.o
(GASPOBJS): Define.
(gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
(gasp.o): Depend upon sb.h and macro.h.
(sb.o): New target.
(macro.o): New target.
(as.o): Depend upon sb.h and macro.h.
(input-scrub.o): Depend upon sb.h.
(read.o): Depend upon sb.h and macro.h.
1995-08-22 02:35:11 +08:00
|
|
|
gasp.o : gasp.c sb.h macro.h config.h
|
|
|
|
sb.o : sb.c sb.h config.h
|
|
|
|
macro.o : macro.c macro.h sb.h hash.h config.h
|
1994-12-31 07:56:14 +08:00
|
|
|
app.o : app.c write.h
|
1997-03-16 08:15:01 +08:00
|
|
|
as.o : as.c output-file.h write.h subsegs.h sb.h macro.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1994-12-31 07:56:14 +08:00
|
|
|
atof-generic.o : atof-generic.c
|
|
|
|
bignum-copy.o : bignum-copy.c
|
1997-03-16 08:15:01 +08:00
|
|
|
cond.o : cond.c $(srcdir)/../include/obstack.h
|
|
|
|
debug.o : debug.c subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
expr.o : expr.c $(srcdir)/../include/obstack.h
|
1994-12-31 07:56:14 +08:00
|
|
|
flonum-konst.o : flonum-konst.c
|
|
|
|
flonum-copy.o : flonum-copy.c
|
|
|
|
flonum-mult.o : flonum-mult.c
|
1997-03-16 08:15:01 +08:00
|
|
|
frags.o : frags.c subsegs.h $(srcdir)/../include/obstack.h
|
1994-12-31 07:56:14 +08:00
|
|
|
hash.o : hash.c
|
|
|
|
input-file.o : input-file.c input-file.h
|
Add support for macros.
* as.c: Include sb.h and macro.h.
(max_macro_next): New global variable.
(main): Call macro_init.
(macro_expr): New static function.
* as.h (max_macro_nest): Declare.
* read.c (line_label): Rename from mri_line_label. Change all
uses.
(potable): Add exitm, irp, irpc, macro, mexit, rept.
(read_a_source_file): Always clear line_label at the start of a
line, not just when flag_mri or LABELS_WITHOUT_COLONS. Fixup
MRI/LABELS_WITHOUT_COLONS handling. In MRI mode, permit label:
equ val. Set line_label when calling colon. In MRI mode, a
leading '.' does not imply a pseudo-op. Check for macro expansion
before calling md_assemble.
(s_irp): New function.
(get_line_sb): New static function.
(s_macro): New function.
(s_mexit): New function.
(s_rept): New function.
* read.h (line_label): Rename from mri_line_label.
(s_irp, s_rept): Declare.
(s_macro, s_mexit): Declare.
* input-scrub.c: Include sb.h.
(sb_index, from_sb): New static variables.
(macro_nest): New static variable.
(struct input_save): Add sb_index and from_sb fields. Change
next_saved_file field to be struct input_save *.
(next_saved_file): Changed to be struct input_save *.
(input_scrub_push): Change to return type struct input_save *.
Save sb_index and from_sb.
(input_scrub_pop): Change parameter type to struct input_save *.
Restore sb_index and from_sb.
(input_scrub_include_sb): New function.
(input_scrub_next_buffer): Handle reading from from_sb.
(bump_line_counters): Only increment lines if not using from_sb.
* config/tc-m68k.c (opt_table): Add nest.
(opt_nest): New static function.
* gasp.c: Include sb.h and macro.h. Move all sb related functions
and definitions to sb.h and sb.c. Move all macro related
functions and definitions to macro.h and macro.c.
* sb.h, sb.c: New files, extracted from gasp.c.
* macro.h, macro.c: Likewise.
* Makefile.in (OBJS): Add sb.o and macro.o
(GASPOBJS): Define.
(gasp.new): Depend upon $(GASPOBJS). Use $(GASPOBJS) to link.
(TARG_CPU_DEP_m68k): Depend upon subsegs.h.
(gasp.o): Depend upon sb.h and macro.h.
(sb.o): New target.
(macro.o): New target.
(as.o): Depend upon sb.h and macro.h.
(input-scrub.o): Depend upon sb.h.
(read.o): Depend upon sb.h and macro.h.
1995-08-22 02:35:11 +08:00
|
|
|
input-scrub.o : input-scrub.c input-file.h sb.h
|
1997-03-16 08:15:01 +08:00
|
|
|
listing.o : listing.c input-file.h subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
literal.o : literal.c subsegs.h $(srcdir)/../include/obstack.h
|
1994-12-31 07:56:14 +08:00
|
|
|
messages.o : messages.c
|
|
|
|
output-file.o : output-file.c output-file.h
|
1997-03-16 08:15:01 +08:00
|
|
|
read.o : read.c sb.h macro.h $(srcdir)/../include/obstack.h
|
|
|
|
subsegs.o : subsegs.c subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
symbols.o : symbols.c subsegs.h $(srcdir)/../include/obstack.h
|
|
|
|
write.o : write.c subsegs.h output-file.h $(srcdir)/../include/obstack.h
|
1994-12-31 07:56:14 +08:00
|
|
|
ecoff.o : ecoff.c ecoff.h \
|
|
|
|
$(srcdir)/../include/coff/internal.h $(srcdir)/../include/coff/sym.h \
|
|
|
|
$(srcdir)/../include/coff/ecoff.h \
|
|
|
|
$(srcdir)/../include/coff/symconst.h \
|
|
|
|
$(srcdir)/../include/aout/stab_gnu.h
|
1997-03-16 08:15:01 +08:00
|
|
|
stabs.o : stabs.c subsegs.h $(srcdir)/../include/aout/stab_gnu.h \
|
|
|
|
$(srcdir)/../include/obstack.h
|
1991-05-18 11:15:32 +09:00
|
|
|
|
1995-07-06 01:56:52 +08:00
|
|
|
obj-elf.o : $(srcdir)/config/obj-elf.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/obj-elf.c
|
|
|
|
obj-ecoff.o : $(srcdir)/config/obj-ecoff.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/obj-ecoff.c
|
1997-02-26 12:33:08 +08:00
|
|
|
obj-coff.o: $(srcdir)/config/obj-coff.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/obj-coff.c
|
1995-07-06 01:56:52 +08:00
|
|
|
|
|
|
|
e-mipself.o : $(srcdir)/config/e-mipself.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/e-mipself.c
|
|
|
|
e-mipsecoff.o : $(srcdir)/config/e-mipsecoff.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/e-mipsecoff.c
|
1997-02-26 12:33:08 +08:00
|
|
|
e-i386coff.o: $(srcdir)/config/e-i386coff.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/e-i386coff.c
|
|
|
|
e-i386elf.o: $(srcdir)/config/e-i386elf.c
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/config/e-i386elf.c
|
1995-07-06 01:56:52 +08:00
|
|
|
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
# The m68k operand parser.
|
|
|
|
|
1997-03-21 02:43:10 +08:00
|
|
|
# Depend upon itbl-parse.c to serialize a parallel make.
|
|
|
|
m68k-parse.c: $(srcdir)/config/m68k-parse.y itbl-parse.c
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
$(BISON) $(BISONFLAGS) $(srcdir)/config/m68k-parse.y
|
|
|
|
mv -f y.tab.c m68k-parse.c
|
1995-08-11 00:43:00 +08:00
|
|
|
m68k-parse.o: m68k-parse.c $(srcdir)/config/m68k-parse.h
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
|
1997-02-24 06:23:12 +08:00
|
|
|
# The instruction table specification lexical analyzer and parser.
|
|
|
|
|
|
|
|
itbl-parse.h : $(srcdir)/itbl-parse.y
|
|
|
|
itbl-parse.c : $(srcdir)/itbl-parse.y
|
|
|
|
itbl-lex.c : $(srcdir)/itbl-lex.l
|
|
|
|
|
|
|
|
itbl-lex.c: $(srcdir)/itbl-lex.l
|
|
|
|
$(LEX) $(LEXFLAGS) $(srcdir)/itbl-lex.l
|
|
|
|
mv -f lex.yy.c itbl-lex.c
|
|
|
|
|
1997-02-26 12:33:08 +08:00
|
|
|
itbl-lex.o: itbl-lex.c itbl-parse.h
|
1997-02-26 03:28:05 +08:00
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) itbl-lex.c
|
1997-02-24 06:23:12 +08:00
|
|
|
|
1997-03-21 02:43:10 +08:00
|
|
|
itbl-parse.c: $(srcdir)/itbl-parse.y
|
1997-03-15 04:34:08 +08:00
|
|
|
$(BISON) -d $(BISONFLAGS) $(srcdir)/itbl-parse.y
|
1997-02-24 06:23:12 +08:00
|
|
|
mv -f y.tab.c itbl-parse.c
|
|
|
|
mv -f y.tab.h itbl-parse.h
|
|
|
|
|
1997-03-21 02:43:10 +08:00
|
|
|
itbl-parse.h: itbl-parse.c
|
|
|
|
|
1997-02-26 03:28:05 +08:00
|
|
|
itbl-parse.o: itbl-parse.c itbl-parse.h $(srcdir)/itbl-ops.h
|
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) itbl-parse.c
|
1997-02-24 06:23:12 +08:00
|
|
|
|
1997-02-26 12:33:08 +08:00
|
|
|
itbl-ops.o: $(srcdir)/itbl-ops.c $(srcdir)/itbl-ops.h itbl-parse.h
|
1997-02-24 06:23:12 +08:00
|
|
|
$(CC) -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/itbl-ops.c
|
|
|
|
|
1997-02-24 09:44:47 +08:00
|
|
|
# stand-alone itbl assembler & disassembler
|
1997-02-24 06:23:12 +08:00
|
|
|
itbl-test-ops.o: $(srcdir)/itbl-ops.c \
|
1997-02-26 03:28:05 +08:00
|
|
|
$(srcdir)/itbl-ops.h itbl-parse.h
|
1997-02-24 06:23:12 +08:00
|
|
|
$(CC) -o itbl-test-ops.o -DSTAND_ALONE -c $(ALL_CFLAGS) $(CPPFLAGS) $(INCLUDES) $(srcdir)/itbl-ops.c
|
|
|
|
|
1997-02-26 03:28:05 +08:00
|
|
|
itbl-test.o: $(srcdir)/testsuite/gas/all/itbl-test.c $(srcdir)/itbl-ops.h
|
1997-02-24 09:44:47 +08:00
|
|
|
$(CC) -c -DSTAND_ALONE $(ALL_CFLAGS) $(INCLUDES)\
|
|
|
|
$(srcdir)/testsuite/gas/all/itbl-test.c
|
1997-02-24 06:23:12 +08:00
|
|
|
|
|
|
|
IT_TEST_OBJS= itbl-parse.o itbl-lex.o itbl-test-ops.o
|
|
|
|
itbl-test: $(IT_TEST_OBJS) itbl-test.o $(LIBDEPS)
|
|
|
|
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o itbl-test itbl-test.o $(IT_TEST_OBJS) $(LIBS)
|
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Remake the info files.
|
|
|
|
|
1991-10-12 09:20:38 +08:00
|
|
|
doc: $(srcdir)/as.info
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1991-10-12 09:20:38 +08:00
|
|
|
$(srcdir)/as.info: $(srcdir)/doc/as.texinfo
|
1993-06-16 08:03:44 +08:00
|
|
|
@(cd doc; $(MAKE) $(FLAGS_TO_PASS) as.info; mv as.info $srcdir)
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1995-11-21 05:03:20 +08:00
|
|
|
diststuff: $(DISTSTUFF) info
|
1994-10-01 12:17:56 +08:00
|
|
|
|
1993-11-09 17:57:02 +08:00
|
|
|
clean-here:
|
Changes from net 2.5.2 release branch:
* configure.in: Put AC_DEFINE(sparcv9) on its own line, so that the shell
variable settings associated with it are permanent. For CPUs requiring
bfd_gas=yes, select it based on CPU only, not individual target names. Handle
m68k-hp-hpux*, not just -hpux.
* config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument to match
prototype in obj-coff.h.
* configure.in: Skip tests for defining WANT_FOPEN_BIN and IBM_COMPILER_SUX.
* acconfig.h: Deleted them.
* configure, conf.in: Rebuild with autoconf 2.0.
* config/go32.cfg, config/vms-conf.h: Updated.
* config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
IBM_COMPILER_SUX version of code, with comments indicating why.
* listing.c (file_info): Use text mode when opening file for read. Use "r"
directly, no macro.
* input-file.c (input_file_open): Don't use FOPEN_RT, just use "r".
* read.c (s_include): Ditto.
* output-file.c (output_file_create): Try both "wb" and "w", don't bother with
FOPEN_* macros.
* as.h: Don't include fopen-*.h.
* config/alpha-opcode.h: Make "ret" with no operands equivalent to "ret
zero,(ra)", to match OSF1 and to be consistent with both one-operand forms.
Patches from DJ Delorie:
* as.h (alloca): undef alloca before defining it just in case
* config/go32.cfg: new file for autoconf values
* config/te-go32.h: new file
* configure.bat: new for autoconf
* config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had = for ==.
* configure.in: If target_frag doesn't exist, use /dev/null.
* as.c (parse_args): For non-VMS systems, re-add `v' to std_shortopts. Add
"verbose" to list of long options.
* write.c (adjust_reloc_syms): When generating an absolute section symbol as a
placeholder, don't mark it as used in a relocation entry, here.
* Makefile.in (comparison): Compare using makefile code from gcc, stripped down
to discard subdir stuff and adapted to give a non-zero exit status if either
file differs.
1994-11-04 07:15:54 +08:00
|
|
|
-rm -f $(STAGESTUFF) core stamp-mk.com
|
1995-11-21 05:03:20 +08:00
|
|
|
-rm -f testsuite/*.o testsuite/*.out \
|
|
|
|
testsuite/gas.log testsuite/gas.sum testsuite/site.exp
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1994-06-08 01:37:52 +08:00
|
|
|
clean mostlyclean: clean-here
|
|
|
|
@cd doc ; $(MAKE) $(FLAGS_TO_PASS) $@
|
1993-11-09 17:57:02 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Like clean but also delete the links made to configure gas.
|
1996-02-08 03:36:48 +08:00
|
|
|
|
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
1997-03-22 04:48:27 +08:00
|
|
|
DISTCLEAN_HERE = config.status Makefile targ-env.h targ-cpu.h obj-format.h \
|
|
|
|
TAGS itbl-cpu.h \
|
1996-02-08 03:36:48 +08:00
|
|
|
config-stamp config.h conf config.log config.cache .gdbinit \
|
|
|
|
testsuite/Makefile testsuite/config.status
|
|
|
|
|
1994-10-01 12:17:56 +08:00
|
|
|
distclean: clean-here
|
1994-06-08 01:37:52 +08:00
|
|
|
@cd doc ; $(MAKE) $(FLAGS_TO_PASS) $@
|
1996-02-08 03:36:48 +08:00
|
|
|
-rm -f $(DISTCLEAN_HERE)
|
|
|
|
|
|
|
|
maintainer-clean realclean: clean-here
|
1995-10-06 08:57:16 +08:00
|
|
|
@echo "This command is intended for maintainers to use;"
|
|
|
|
@echo "it deletes files that may require special tools to rebuild."
|
1996-02-08 03:36:48 +08:00
|
|
|
@cd doc ; $(MAKE) $(FLAGS_TO_PASS) $@
|
|
|
|
-rm -rf $(DISTCLEAN_HERE) $(DISTSTUFF)
|
1992-02-17 23:54:49 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# Entry points `install', `includes' and `uninstall'.
|
|
|
|
|
|
|
|
# Copy the files into directories where they will be run.
|
1992-02-17 23:54:49 +08:00
|
|
|
install:
|
1993-11-09 17:57:02 +08:00
|
|
|
srcroot=`cd $(srcroot); pwd`; export srcroot; \
|
1993-06-16 08:03:44 +08:00
|
|
|
$(INSTALL_XFORM) as.new $(bindir)/as; \
|
1993-11-09 17:57:02 +08:00
|
|
|
$(INSTALL_XFORM1) $(srcdir)/doc/as.1 $(man1dir)/as.1; \
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
test -d $(tooldir) || mkdir $(tooldir); \
|
|
|
|
test -d $(tooldir)/bin || mkdir $(tooldir)/bin; \
|
* Makefile.in (*_FOR_TARGET, INSTALL_XFORM, install, uninstall): Rewrite
handling of program_transform_name.
* configure.in: Test for "unlink" and "delete", define USE_DELETE_FOR_UNLINK if
only the latter is found. Not expected to be triggered on UNIX/POSIX systems.
* acconfig.h (USE_DELETE_FOR_UNLINK): Undef here, provide comments.
Update for autoconf 1.118:
* gdbinit.in: New file, created from old .gdbinit.
* .gdbinit: Deleted.
* aclocal.m4 (GAS_GDBINIT): Deleted.
* configure.in: Don't use it. Instead, generate .gdbinit from gdbinit.in.
Don't substitute cpu_type, obj_format, emulation, atof. Switched order of
AC_LINK_FILES arguments. Use AC_PREREQ to ensure that older versions of
autoconf aren't used.
* Makefile.in: Added @configure_input@ line.
(configure): Deleted rule.
[regenerated conf.in, configure]
1994-09-14 06:27:20 +08:00
|
|
|
n=`echo as | sed '$(program_transform_name)'`; \
|
* Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
(docdir): Removed.
* configure.in (AC_PREREQ): autoconf 2.5 or higher.
* doc/Makefile.in (bindir, libdir, datadir, mandir, infodir,
includedir): Use autoconf set values.
(docdir): Removed.
1996-06-25 20:40:48 +08:00
|
|
|
rm -f $(tooldir)/bin/as; \
|
|
|
|
ln $(bindir)/$$n $(tooldir)/bin/as >/dev/null 2>/dev/null \
|
|
|
|
|| $(INSTALL_PROGRAM) as.new $(tooldir)/bin/as
|
1994-02-01 00:44:53 +08:00
|
|
|
srcroot=`cd $(srcroot); pwd`; export srcroot; \
|
1995-09-09 02:43:50 +08:00
|
|
|
$(INSTALL_XFORM) gasp.new $(bindir)/gasp
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# Cancel installation by deleting the installed files.
|
|
|
|
uninstall:
|
1994-09-08 07:52:59 +08:00
|
|
|
-n=`t='$(program_transform_name)'; echo as | sed $$t`; \
|
1992-09-01 09:14:04 +08:00
|
|
|
rm -f $(bindir)/$$n; \
|
|
|
|
rm -f $(mandir)/$$n.1
|
1994-09-08 07:52:59 +08:00
|
|
|
-n=`t='$(program_transform_name)'; echo gasp | sed $$t`; \
|
1994-02-01 00:44:53 +08:00
|
|
|
rm -f $(bindir)/$$n; \
|
1992-02-17 23:54:49 +08:00
|
|
|
|
1991-04-05 02:19:53 +08:00
|
|
|
# These exist for maintenance purposes.
|
|
|
|
|
|
|
|
tags TAGS: force
|
1992-03-08 15:47:55 +08:00
|
|
|
etags $(REAL_HEADERS) $(REAL_SOURCES) $(srcdir)/config/*.[hc] $(srcdir)/README $(srcdir)/Makefile.in
|
1994-05-19 01:11:19 +08:00
|
|
|
|
1992-02-17 23:54:49 +08:00
|
|
|
bootstrap: as.new force
|
1991-04-05 02:19:53 +08:00
|
|
|
$(MAKE) stage1
|
1994-10-12 13:46:05 +08:00
|
|
|
rm -f stage && ln -s stage1 stage
|
|
|
|
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= as.new gasp.new
|
1991-04-05 02:19:53 +08:00
|
|
|
$(MAKE) stage2
|
1994-10-12 13:46:05 +08:00
|
|
|
rm -f stage && ln -s stage2 stage
|
|
|
|
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= as.new gasp.new
|
1991-06-10 05:27:20 +09:00
|
|
|
$(MAKE) comparison against=stage2
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
bootstrap2: force
|
1994-10-12 13:46:05 +08:00
|
|
|
rm -f stage && ln -s stage1 stage
|
|
|
|
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= as.new gasp.new
|
1991-04-05 02:19:53 +08:00
|
|
|
$(MAKE) stage2
|
1994-10-12 13:46:05 +08:00
|
|
|
rm -f stage && ln -s stage2 stage
|
|
|
|
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= as.new gasp.new
|
1991-09-02 08:38:30 +09:00
|
|
|
$(MAKE) comparison against=stage2
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
bootstrap3: force
|
1994-10-12 13:46:05 +08:00
|
|
|
rm -f stage && ln -s stage2 stage
|
|
|
|
$(MAKE) CC="$(CC)" CFLAGS="-O -Bstage/ $(CFLAGS)" libdir=$(libdir) ALLOCA= as.new gasp.new
|
1991-06-10 05:27:20 +09:00
|
|
|
$(MAKE) comparison against=stage2
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
# Copy the object files from a particular stage into a subdirectory.
|
|
|
|
stage1: force
|
|
|
|
-mkdir stage1
|
|
|
|
-mv $(STAGESTUFF) stage1
|
1991-11-20 11:46:20 +08:00
|
|
|
if [ -f stage1/as.new -a ! -f stage1/as ] ; then (cd stage1 ; ln -s as.new as) ; fi
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
stage2: force
|
|
|
|
-mkdir stage2
|
|
|
|
-mv $(STAGESTUFF) stage2
|
1991-11-20 11:46:20 +08:00
|
|
|
if [ -f stage2/as.new -a ! -f stage2/as ] ; then (cd stage2 ; ln -s as.new as) ; fi
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
stage3: force
|
|
|
|
-mkdir stage3
|
1991-04-25 01:52:32 +09:00
|
|
|
-mv $(STAGESTUFF) stage3
|
1991-11-20 11:46:20 +08:00
|
|
|
if [ -f stage3/as.new -a ! -f stage3/as ] ; then (cd stage3 ; ln -s as.new as) ; fi
|
1991-04-05 02:19:53 +08:00
|
|
|
|
1991-06-10 05:27:20 +09:00
|
|
|
against=stage2
|
|
|
|
|
Changes from net 2.5.2 release branch:
* configure.in: Put AC_DEFINE(sparcv9) on its own line, so that the shell
variable settings associated with it are permanent. For CPUs requiring
bfd_gas=yes, select it based on CPU only, not individual target names. Handle
m68k-hp-hpux*, not just -hpux.
* config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument to match
prototype in obj-coff.h.
* configure.in: Skip tests for defining WANT_FOPEN_BIN and IBM_COMPILER_SUX.
* acconfig.h: Deleted them.
* configure, conf.in: Rebuild with autoconf 2.0.
* config/go32.cfg, config/vms-conf.h: Updated.
* config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
IBM_COMPILER_SUX version of code, with comments indicating why.
* listing.c (file_info): Use text mode when opening file for read. Use "r"
directly, no macro.
* input-file.c (input_file_open): Don't use FOPEN_RT, just use "r".
* read.c (s_include): Ditto.
* output-file.c (output_file_create): Try both "wb" and "w", don't bother with
FOPEN_* macros.
* as.h: Don't include fopen-*.h.
* config/alpha-opcode.h: Make "ret" with no operands equivalent to "ret
zero,(ra)", to match OSF1 and to be consistent with both one-operand forms.
Patches from DJ Delorie:
* as.h (alloca): undef alloca before defining it just in case
* config/go32.cfg: new file for autoconf values
* config/te-go32.h: new file
* configure.bat: new for autoconf
* config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had = for ==.
* configure.in: If target_frag doesn't exist, use /dev/null.
* as.c (parse_args): For non-VMS systems, re-add `v' to std_shortopts. Add
"verbose" to list of long options.
* write.c (adjust_reloc_syms): When generating an absolute section symbol as a
placeholder, don't mark it as used in a relocation entry, here.
* Makefile.in (comparison): Compare using makefile code from gcc, stripped down
to discard subdir stuff and adapted to give a non-zero exit status if either
file differs.
1994-11-04 07:15:54 +08:00
|
|
|
# This rule is derived from corresponding code in the Makefile.in for gcc.
|
|
|
|
# The "tail +16c" is to bypass headers which may include timestamps or
|
|
|
|
# temporary assembly file names.
|
1991-06-10 05:27:20 +09:00
|
|
|
comparison: force
|
Changes from net 2.5.2 release branch:
* configure.in: Put AC_DEFINE(sparcv9) on its own line, so that the shell
variable settings associated with it are permanent. For CPUs requiring
bfd_gas=yes, select it based on CPU only, not individual target names. Handle
m68k-hp-hpux*, not just -hpux.
* config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument to match
prototype in obj-coff.h.
* configure.in: Skip tests for defining WANT_FOPEN_BIN and IBM_COMPILER_SUX.
* acconfig.h: Deleted them.
* configure, conf.in: Rebuild with autoconf 2.0.
* config/go32.cfg, config/vms-conf.h: Updated.
* config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
IBM_COMPILER_SUX version of code, with comments indicating why.
* listing.c (file_info): Use text mode when opening file for read. Use "r"
directly, no macro.
* input-file.c (input_file_open): Don't use FOPEN_RT, just use "r".
* read.c (s_include): Ditto.
* output-file.c (output_file_create): Try both "wb" and "w", don't bother with
FOPEN_* macros.
* as.h: Don't include fopen-*.h.
* config/alpha-opcode.h: Make "ret" with no operands equivalent to "ret
zero,(ra)", to match OSF1 and to be consistent with both one-operand forms.
Patches from DJ Delorie:
* as.h (alloca): undef alloca before defining it just in case
* config/go32.cfg: new file for autoconf values
* config/te-go32.h: new file
* configure.bat: new for autoconf
* config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had = for ==.
* configure.in: If target_frag doesn't exist, use /dev/null.
* as.c (parse_args): For non-VMS systems, re-add `v' to std_shortopts. Add
"verbose" to list of long options.
* write.c (adjust_reloc_syms): When generating an absolute section symbol as a
placeholder, don't mark it as used in a relocation entry, here.
* Makefile.in (comparison): Compare using makefile code from gcc, stripped down
to discard subdir stuff and adapted to give a non-zero exit status if either
file differs.
1994-11-04 07:15:54 +08:00
|
|
|
x=0 ; \
|
1995-10-06 08:57:16 +08:00
|
|
|
for file in *.o ; do \
|
Changes from net 2.5.2 release branch:
* configure.in: Put AC_DEFINE(sparcv9) on its own line, so that the shell
variable settings associated with it are permanent. For CPUs requiring
bfd_gas=yes, select it based on CPU only, not individual target names. Handle
m68k-hp-hpux*, not just -hpux.
* config/tc-z8k.c (tc_coff_symbol_emit_hook): Add dummy argument to match
prototype in obj-coff.h.
* configure.in: Skip tests for defining WANT_FOPEN_BIN and IBM_COMPILER_SUX.
* acconfig.h: Deleted them.
* configure, conf.in: Rebuild with autoconf 2.0.
* config/go32.cfg, config/vms-conf.h: Updated.
* config/tc-m68k.c (md_apply_fix_2, md_convert_frag_1): Always use
IBM_COMPILER_SUX version of code, with comments indicating why.
* listing.c (file_info): Use text mode when opening file for read. Use "r"
directly, no macro.
* input-file.c (input_file_open): Don't use FOPEN_RT, just use "r".
* read.c (s_include): Ditto.
* output-file.c (output_file_create): Try both "wb" and "w", don't bother with
FOPEN_* macros.
* as.h: Don't include fopen-*.h.
* config/alpha-opcode.h: Make "ret" with no operands equivalent to "ret
zero,(ra)", to match OSF1 and to be consistent with both one-operand forms.
Patches from DJ Delorie:
* as.h (alloca): undef alloca before defining it just in case
* config/go32.cfg: new file for autoconf values
* config/te-go32.h: new file
* configure.bat: new for autoconf
* config/tc-i386.c (md_assemble): Fix typo in GOTPC check; had = for ==.
* configure.in: If target_frag doesn't exist, use /dev/null.
* as.c (parse_args): For non-VMS systems, re-add `v' to std_shortopts. Add
"verbose" to list of long options.
* write.c (adjust_reloc_syms): When generating an absolute section symbol as a
placeholder, don't mark it as used in a relocation entry, here.
* Makefile.in (comparison): Compare using makefile code from gcc, stripped down
to discard subdir stuff and adapted to give a non-zero exit status if either
file differs.
1994-11-04 07:15:54 +08:00
|
|
|
tail +16c ./$$file > tmp-foo1; \
|
|
|
|
if tail +16c ${against}/$$file > tmp-foo2 2>/dev/null ; then \
|
|
|
|
if cmp tmp-foo1 tmp-foo2 ; then \
|
|
|
|
true ; \
|
|
|
|
else \
|
|
|
|
echo $$file differs ; \
|
|
|
|
x=1 ; \
|
|
|
|
fi ; \
|
|
|
|
else true; fi ; \
|
|
|
|
done ; \
|
|
|
|
exit $$x
|
|
|
|
-rm -f tmp-foo*
|
1991-06-10 05:27:20 +09:00
|
|
|
|
1991-04-25 01:52:32 +09:00
|
|
|
de-stage1: force
|
1994-04-15 04:39:39 +08:00
|
|
|
- (cd stage1 ; rm -f as ; mv -f * ..)
|
1991-04-25 01:52:32 +09:00
|
|
|
- rmdir stage1
|
|
|
|
|
|
|
|
de-stage2: force
|
1994-04-15 04:39:39 +08:00
|
|
|
- (cd stage2 ; rm -f as ; mv -f * ..)
|
1991-04-25 01:52:32 +09:00
|
|
|
- rmdir stage2
|
|
|
|
|
|
|
|
de-stage3: force
|
1994-04-15 04:39:39 +08:00
|
|
|
- (cd stage3 ; rm -f as ; mv -f * ..)
|
1991-04-25 01:52:32 +09:00
|
|
|
- rmdir stage3
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
#In GNU Make, ignore whether `stage*' exists.
|
1994-06-08 01:37:52 +08:00
|
|
|
.PHONY: stage1 stage2 stage3 stage4 clean mostlyclean realclean distclean
|
|
|
|
.PHONY: TAGS bootstrap
|
1991-04-05 02:19:53 +08:00
|
|
|
|
|
|
|
force:
|
|
|
|
|
1993-03-12 10:58:15 +08:00
|
|
|
Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag) \
|
* config/m68k-parse.y: New file: bison grammar for m68k operands,
including support for Motorola syntax.
* config/m68k-parse.h: New file; definitions shared between
m68k-parse.y and tc-m68k.c.
* config/tc-m68k.c: Include m68k-parse.h.
(enum operand_type): Move to m68k-parse.h, where it is named
m68k_operand_type. Rename all uses. Rearrange somewhat. Add
FPREG. Rename AOFF to DISP. Rename AINDX to BASE. Rename APODX
to POST. Rename APRDX to PRE. Remove AMIND. Rename MSCR to
CONTROL. Remove DINDR.
(struct m68k_exp): Move to m68k-parse.h. Remove e_beg, e_end and
e_seg fields. Rename e_exp to exp. Rename e_siz to size, and
change type to enum m68k_size. Change all uses.
(enum _register): Move to m68k-parse.h, where it is named
m68k_register. Rename all uses. Add ZDATA0-7 and ZADDR0-7.
(struct m68k_op): Move to m68k-parse.h. Change all fields.
(seg): Don't define.
(add_exp): Remove.
(FAIL, OK): Remove.
(m68k_reg_parse): Move to m68k-parse.y, and rewrite.
(SKIP_WHITE, SKIP_W): Remove.
(try_moto_index, try_index): Remove.
(m68k_ip_op): Move to m68k-parse.y, and rewrite to use grammar.
(main): Remove obsolete test function.
(m68k_ip): Extensive changes to use new grammar.
(get_regs): Remove.
(crack_operand): m68k_ip_op now returns 0 on success.
(init_table): Add ssp, zd0-7 and za0-7.
(md_assemble): Make er const. Correct loop over operands when
looking for error message.
(md_begin): Set alt_notend_table for '(' and '@'.
(get_num): Expression is already parsed. Don't set seg.
* configure.in: If cpu_type is m68k, put m68k-parse.o in
extra-objects.
* configure: Rebuild.
* Makefile.in (DISTSTUFF): Add m68k-parse.c.
(BISON): Use ../bison/bison if it exists.
(BISONFLAGS): Define as empty.
(TARG_CPU_DEP_m68k): Depend upon $(srcdir)/config/m68k-parse.h.
(m68k-parse.c, m68k-parse.o): New targets.
1995-08-08 10:36:10 +08:00
|
|
|
$(srcdir)/configure.in config.status conf.in
|
1991-10-01 11:46:00 +08:00
|
|
|
$(SHELL) ./config.status
|
1994-09-30 07:03:07 +08:00
|
|
|
.gdbinit: $(srcdir)/gdbinit.in config.status
|
|
|
|
$(SHELL) ./config.status
|