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