1#    Makefile template for Configure for simulator common directory
2#    Copyright (C) 1996, 1997, 2007 Free Software Foundation, Inc.
3# 
4# This program is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation; either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17default: all
18
19VPATH = @srcdir@
20srcdir = @srcdir@
21srcroot = $(srcdir)/../..
22
23prefix = @prefix@
24exec_prefix = @exec_prefix@
25
26host_alias = @host_alias@
27target_alias = @target_alias@
28program_transform_name = @program_transform_name@
29bindir = @bindir@
30
31libdir = @libdir@
32tooldir = $(libdir)/$(target_alias)
33
34datadir = @datadir@
35mandir = @mandir@
36man1dir = $(mandir)/man1
37infodir = @infodir@
38includedir = @includedir@
39
40SHELL = /bin/sh
41
42INSTALL = @INSTALL@
43INSTALL_PROGRAM = @INSTALL_PROGRAM@
44INSTALL_DATA = @INSTALL_DATA@
45
46CC = @CC@
47CC_FOR_BUILD = @CC_FOR_BUILD@
48CFLAGS = @CFLAGS@
49SIM_CFLAGS = @sim_cflags@
50
51# These are used to rebuild nltvals.def.
52CPP_FOR_TARGET = @CPP_FOR_TARGET@
53TARGET_SUBDIR = @TARGET_SUBDIR@
54
55HDEFINES = @HDEFINES@
56TDEFINES =
57
58CONFIG_CFLAGS = @DEFS@ $(SIM_CFLAGS) $(HDEFINES) $(TDEFINES)
59CSEARCH = -I. -I$(srcdir) -I$(srcroot)/include
60ALL_CFLAGS = $(CFLAGS) $(CONFIG_CFLAGS) $(CSEARCH)
61BUILD_CFLAGS = -g -O $(CSEARCH)
62
63AR = @AR@
64AR_FLAGS = rc
65RANLIB = @RANLIB@
66MAKEINFO = makeinfo
67
68.NOEXPORT:
69MAKEOVERRIDES=
70
71all:
72
73# Generate nltvals.def for newlib/libgloss using devo and build tree.
74# This file is shipped with distributions so we build in the source dir.
75# Use `make headers' to rebuild.
76# Note: If gdb releases begin to contain target header files (not a good idea,
77# but if they did ...), targ-vals.def coud be generated at build time.
78# An alternative is to slurp in the tables at runtime.
79.PHONY: headers
80headers:
81	rootme=`pwd` ; \
82	cd $(srcdir) ; \
83	rm -f nltvals.new ; \
84	$(SHELL) $(srcdir)/gennltvals.sh $(SHELL) $(srcroot) "$(CPP_FOR_TARGET)" > nltvals.new ; \
85	$(SHELL) $(srcroot)/move-if-change nltvals.new nltvals.def
86
87.c.o:
88	$(CC) -c $< $(ALL_CFLAGS)
89
90check:
91
92info:
93clean-info:
94install-info:
95
96tags etags: TAGS
97
98# Macros like EXTERN_SIM_CORE confuse tags.
99# And the sim-n-foo.h files create functions that can't be found either.
100TAGS: force
101	cd $(srcdir) && \
102	etags --regex '/^\([a-z_]+\) (/\1/' --regex '/^.*\/[*] TAGS: .*/' \
103		*.c *.h
104
105clean:
106	rm -f *.[oa] *~ core
107
108distclean mostlyclean maintainer-clean realclean: clean
109	rm -f TAGS
110	rm -f Makefile config.cache config.log config.status
111	rm -f cconfig.h config.h stamp-h
112
113# Dummy target to force execution of dependent targets.
114force:
115
116# Copy the files into directories where they will be run.
117install: install-man
118
119install-man: installdirs
120	n=`echo run | sed '$(program_transform_name)'`; \
121	$(INSTALL_DATA) $(srcdir)/run.1 $(DESTDIR)$(man1dir)/$$n.1
122
123installdirs:
124	$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(man1dir)
125
126Makefile: Makefile.in config.status
127	$(SHELL) ./config.status
128
129config.status: configure
130	$(SHELL) ./config.status --recheck
131
132config.h: stamp-h ; @true
133stamp-h: config.in config.status
134	CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status
135