#    Makefile template for Configure for the erc32sim library.
#    Copyright (C) 1993 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
# (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@

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)

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

SHELL = /bin/sh

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

distclean: clean
	rm -rf Makefile config.status sysdep.h

#### host and target dependent Makefile fragments come in here.
###

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)"

$(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:

# Copy the files into directories where they will be run.
install:
	srcroot=`cd $(srcroot); pwd`; export srcroot; \
	$(INSTALL_XFORM) sis $(bindir)/sis ;  \
	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


Makefile: $(srcdir)/Makefile.in
	$(SHELL) ./config.status