# Makefile template for Configure for the erc32sim library.
-# Copyright (C) 1993 Free Software Foundation, Inc.
+# Copyright (C) 1993-2022 Free Software Foundation, Inc.
# Written by Cygnus Support
# Modified by J.Gaisler ESA/ESTEC
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-VPATH = @srcdir@
-srcdir = @srcdir@
-srcroot = $(srcdir)/../../
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
-host_alias = @host_alias@
-target_alias = @target_alias@
-program_transform_name = @program_transform_name@
-bindir = $(exec_prefix)/bin
-libdir = $(exec_prefix)/lib
-tooldir = $(exec_prefix)/$(target_alias)
+## COMMON_PRE_CONFIG_FRAG
-datadir = $(prefix)/lib
-mandir = $(prefix)/man
-man1dir = $(mandir)/man1
-man2dir = $(mandir)/man2
-man3dir = $(mandir)/man3
-man4dir = $(mandir)/man4
-man5dir = $(mandir)/man5
-man6dir = $(mandir)/man6
-man7dir = $(mandir)/man7
-man8dir = $(mandir)/man8
-man9dir = $(mandir)/man9
-infodir = $(prefix)/info
-includedir = $(prefix)/include
-oldincludedir =
-docdir = $(srcdir)/doc
+READLINE_SRC = $(srcroot)/readline/readline
-SHELL = /bin/sh
+SIM_OBJS = exec.o erc32.o func.o help.o float.o interf.o
+SIM_RUN_OBJS = sis.o
+SIM_EXTRA_CFLAGS = $(READLINE_CFLAGS)
+SIM_EXTRA_LIBS = $(READLINE_LIB) $(TERMCAP_LIB) -lm
+SIM_EXTRA_INSTALL = install-sis
+SIM_EXTRA_CLEAN = clean-sis
-INSTALL = $${srcroot}/install.sh -c
-INSTALL_PROGRAM = $(INSTALL)
-INSTALL_DATA = $(INSTALL)
-INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
-INSTALL_XFORM1= $(INSTALL_XFORM) -b=.1
-
-AR = @AR@
-AR_FLAGS = rc
-CC = @CC@
-CFLAGS = @CFLAGS@
-MAKEINFO = makeinfo
-RANLIB = @RANLIB@
-
-#
# UARTS run at about 115200 baud (simulator time). Add -DFAST_UART to
# CFLAGS if faster (infinite) UART speed is desired. Might affect the
# behaviour of UART interrupt routines ...
-#
-
-AR = ar
-AR_FLAGS = rc
-CFLAGS2 = -g -O3 -DSTAT -DFAST_UART -DIUREV0 -DMECREV0
-BISON = bison
-MAKEINFO = makeinfo
-RANLIB = ranlib
-CC = gcc
-
-INCDIR = $(srcdir)/../../include
-CSEARCH = -I. -I$(srcdir) -I$(INCDIR) -I../../bfd -I$(srcdir)/../../bfd \
- -I$(srcdir)/../../gdb -I$(srcdir)/../../gdb/config
-DEP = mkdep
-
-
-TARGETLIB = libsim.a
-
-CFILES = sis.c exec.c erc32.c interf.c run.c help.c float.c
-OFILES = exec.o erc32.o func.o help.o float.o
-
-
-all: end.h sis run $(TARGETLIB)
-
-end : $(srcdir)/end.c
- $(CC) $(srcdir)/end.c -o end
-
-end.h : end
- end > end.h
-
-sis: sis.o $(OFILES)
- $(CC) $(CFLAGS) $(CLAGS2) -o sis sis.o $(OFILES) \
- ../../opcodes/libopcodes.a ../../readline/libreadline.a \
- ../../bfd/libbfd.a ../../libiberty/libiberty.a \
- -ltermcap -lm
-
-run: run.o interf.o $(OFILES)
- $(CC) $(CFLAGS) $(CLAGS2) -o run run.o interf.o $(OFILES) \
- ../../opcodes/libopcodes.a ../../readline/libreadline.a \
- ../../bfd/libbfd.a ../../libiberty/libiberty.a \
- -ltermcap -lm
-
-clean:
- rm -f *.o libsim.a sis run end end.h
+SIM_EXTRA_CFLAGS += -DFAST_UART -I$(srcroot)
-distclean: clean
- rm -rf Makefile config.status sysdep.h
+# Some modules don't build cleanly yet.
+exec.o: SIM_WERROR_CFLAGS =
-#### host and target dependent Makefile fragments come in here.
-###
+## COMMON_POST_CONFIG_FRAG
-FLAGS_TO_PASS = \
- "against=$(against)" \
- "AR=$(AR)" \
- "AR_FLAGS=$(AR_FLAGS)" \
- "CC=$(CC)" \
- "CFLAGS=$(CFLAGS)" \
- "RANLIB=$(RANLIB)" \
- "MAKEINFO=$(MAKEINFO)" \
- "INSTALL=$(INSTALL)" \
- "INSTALL_DATA=$(INSTALL_DATA)" \
- "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
- "BISON=$(BISON)"
+# `sis' doesn't need interf.o.
+SIS_OFILES = exec.o erc32.o func.o help.o float.o
-$(OFILES) sis.o interf.o : end.h sis.h
-
-.c.o:
- $(CC) -c $(CFLAGS) $(CFLAGS2) $(HDEFINES) $(TDEFINES) $(CSEARCH) $(CSWITCHES) $<
-
-
-# C source files that correspond to .o's.
-
-STAGESTUFF = $(TARGETLIB) $(OFILES)
-
-all: $(TARGETLIB)
-
-
-.NOEXPORT:
-
-check:
-
-info:
-clean-info:
-install-info:
-
-# HDEPFILES comes from the host config; TDEPFILES from the target config.
-
-
-$(TARGETLIB): $(OFILES) interf.o
- rm -f $(TARGETLIB)
- $(AR) $(AR_FLAGS) $(TARGETLIB) $(OFILES) interf.o
- $(RANLIB) $(TARGETLIB)
-
-# Circumvent Sun Make bug with VPATH.
-sparc-opc.o: sparc-opc.c
-
-tags etags: TAGS
-
-TAGS: force
- etags $(INCDIR)/*.h $(srcdir)/*.h $(srcdir)/*.c
-
-
-sis.o: sis.c sis.h end.h
-exec.o: exec.c sis.h end.h
-erc32.o: erc32.c sis.h end.h
-interf.o: interf.c sis.h end.h
-run.o: run.c
-help.o: help.c
-float.o: float.c sis.h end.h
-
-# Mark everything as depending on config.status, since the timestamp on
-# sysdep.h might actually move backwards if we reconfig and relink it
-# to a different hosts/h-xxx.h file. This will force a recompile anyway.
-RECONFIG = config.status
-
-# Dummy target to force execution of dependent targets.
-#
-force:
+all: sis$(EXEEXT)
+sis$(EXEEXT): sis.o $(SIS_OFILES) libsim.a $(LIBDEPS)
+ $(ECHO_CCLD) $(CC) $(ALL_CFLAGS) -o sis$(EXEEXT) \
+ sis.o $(SIS_OFILES) libsim.a $(EXTRA_LIBS)
# Copy the files into directories where they will be run.
-install:
- srcroot=`cd $(srcroot); pwd`; export srcroot; \
- $(INSTALL_XFORM) sis $(bindir)/sis ; \
+install-sis: installdirs
n=`echo sis | sed '$(program_transform_name)'`; \
- if [ -d $(tooldir) ] ; then \
- if [ -d $(tooldir)/bin ] ; then true ; else mkdir $(tooldir)/bin ; fi; \
- rm -f $(tooldir)/bin/sis; \
- ln $(bindir)/$$n $(bindir)/sis \
- || $(INSTALL_PROGRAM) sis $(bindir)/sis; \
- ln $(bindir)/$$n $(tooldir)/bin/sis \
- || $(INSTALL_PROGRAM) sis $(tooldir)/bin/sis; \
- true; fi
-
+ $(INSTALL_PROGRAM) sis$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT)
-Makefile: $(srcdir)/Makefile.in
- $(SHELL) ./config.status
+clean-sis:
+ rm -f sis