daily update
[external/binutils.git] / sim / common / Makefile.in
index 176f684..ec7794d 100644 (file)
@@ -1,19 +1,19 @@
-#    Makefile template for Configure for simulator common parts
-#    Copyright (C) 1996 Free Software Foundation, Inc.
+#    Makefile template for Configure for simulator common directory
+#    Copyright (C) 1996, 1997, 2007, 2008, 2009, 2010
+#    Free Software Foundation, Inc.
 # 
 # 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 default: all
 
@@ -32,6 +32,7 @@ bindir = @bindir@
 libdir = @libdir@
 tooldir = $(libdir)/$(target_alias)
 
+datarootdir = @datarootdir@
 datadir = @datadir@
 mandir = @mandir@
 man1dir = $(mandir)/man1
@@ -40,20 +41,19 @@ includedir = @includedir@
 
 SHELL = /bin/sh
 
-INSTALL = $(srcroot)/install.sh -c
+INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
-INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
-INSTALL_XFORM1= $(INSTALL_XFORM) -b=.1
 
 CC = @CC@
 CC_FOR_BUILD = @CC_FOR_BUILD@
-CPP = @CPP@
-CPP_FOR_TARGET = @CPP_FOR_TARGET@
-TARGET_SUBDIR = @TARGET_SUBDIR@
 CFLAGS = @CFLAGS@
 SIM_CFLAGS = @sim_cflags@
 
+# These are used to rebuild nltvals.def.
+CPP_FOR_TARGET = @CPP_FOR_TARGET@
+TARGET_SUBDIR = @TARGET_SUBDIR@
+
 HDEFINES = @HDEFINES@
 TDEFINES =
 
@@ -70,58 +70,21 @@ MAKEINFO = makeinfo
 .NOEXPORT:
 MAKEOVERRIDES=
 
-all: libcommon.a
-
-LIB_OBJS = callback.o targ-map.o
+all:
 
-# FIXME: Ideally, callback.o and friends live in a library outside of
-# both the gdb and simulator source trees (e.g. devo/remote.  Not
-# devo/libremote because this directory would contain more than just
-# a library).
-
-libcommon.a: $(LIB_OBJS)
-       rm -f libcommon.a
-       $(AR) $(ARFLAGS) libcommon.a $(LIB_OBJS)
-       $(RANLIB) libcommon.a
-
-callback.o: callback.c targ-vals.h $(srcroot)/include/callback.h
-
-targ-map.o: targ-map.c targ-vals.h
-
-# Generate TARG_VALS_H for newlib using devo and build tree.
+# Generate nltvals.def for newlib/libgloss using devo and build tree.
 # This file is shipped with distributions so we build in the source dir.
-# This is built in srcdir so putting dependencies here is risky.
 # Use `make headers' to rebuild.
-headers: nltvals.def
+# Note: If gdb releases begin to contain target header files (not a good idea,
+# but if they did ...), targ-vals.def coud be generated at build time.
+# An alternative is to slurp in the tables at runtime.
 .PHONY: headers
-
-# Note: If gdb releases begin to contain target header files, generate
-# targ-vals.def at build time.
-
-nltvals.def: Makefile gentvals.sh
+headers:
        rootme=`pwd` ; \
        cd $(srcdir) ; \
        rm -f nltvals.new ; \
-       echo '/* Newlib macro values needed by simulator.  */' >nltvals.new ; \
-       echo '/* This file is machine generated by gentvalh.sh.  */' >>nltvals.new ; \
-       $(SHELL) $(srcdir)/gentvals.sh errno $(srcroot)/newlib/libc/include \
-         "errno.h sys/errno.h" 'E[A-Z0-9]*' "$(CPP_FOR_TARGET)" >>nltvals.new ; \
-       $(SHELL) $(srcdir)/gentvals.sh signal $(srcroot)/newlib/libc/include \
-         "signal.h sys/signal.h" 'SIG[A-Z0-9]*' "$(CPP_FOR_TARGET)" >>nltvals.new ; \
-       $(SHELL) $(srcdir)/gentvals.sh open $(srcroot)/newlib/libc/include \
-         "fcntl.h sys/fcntl.h" 'O_[A-Z0-9]*' "$(CPP_FOR_TARGET)" >>nltvals.new ; \
-       $(srcroot)/move-if-change nltvals.new nltvals.def
-
-gentmap: Makefile gentmap.c
-       $(CC_FOR_BUILD) $(srcdir)/gentmap.c -o gentmap $(BUILD_CFLAGS)
-
-targ-vals.h: Makefile gentmap
-       rm -f targ-vals.h
-       ./gentmap -h >targ-vals.h
-
-targ-map.c: Makefile gentmap
-       rm -f targ-map.c
-       ./gentmap -c >targ-map.c
+       $(SHELL) $(srcdir)/gennltvals.sh $(SHELL) $(srcroot) "$(CPP_FOR_TARGET)" > nltvals.new ; \
+       $(SHELL) $(srcroot)/move-if-change nltvals.new nltvals.def
 
 .c.o:
        $(CC) -c $< $(ALL_CFLAGS)
@@ -134,26 +97,33 @@ install-info:
 
 tags etags: TAGS
 
+# Macros like EXTERN_SIM_CORE confuse tags.
+# And the sim-n-foo.h files create functions that can't be found either.
 TAGS: force
-       etags *.c *.h
+       cd $(srcdir) && \
+       etags --regex '/^\([a-z_]+\) (/\1/' --regex '/^.*\/[*] TAGS: .*/' \
+               *.c *.h
 
 clean:
-       rm -f *.[oa] *~ core gentmap
-       rm -f $(ALL)
+       rm -f *.[oa] *~ core
 
 distclean mostlyclean maintainer-clean realclean: clean
        rm -f TAGS
        rm -f Makefile config.cache config.log config.status
-       rm -f config.h stamp-h
+       rm -f cconfig.h config.h stamp-h
 
 # Dummy target to force execution of dependent targets.
 force:
 
 # Copy the files into directories where they will be run.
-install:
+install: install-man
 
-install-man:
-       $(INSTALL_XFORM1) $(srcdir)/run.1 $(man1dir)/run.1
+install-man: installdirs
+       n=`echo run | sed '$(program_transform_name)'`; \
+       $(INSTALL_DATA) $(srcdir)/run.1 $(DESTDIR)$(man1dir)/$$n.1
+
+installdirs:
+       $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(man1dir)
 
 Makefile: Makefile.in config.status
        $(SHELL) ./config.status
@@ -161,12 +131,6 @@ Makefile: Makefile.in config.status
 config.status: configure
        $(SHELL) ./config.status --recheck
 
-# We can't add dependencies to configure because it causes too much trouble
-# to end users if configure's timestamp is out of sync.
-.PHONY: run-autoconf
-run-autoconf:
-       cd $(srcdir) && autoconf
-
 config.h: stamp-h ; @true
 stamp-h: config.in config.status
        CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status