From dbdb6189d5d66b165b4b502498572cbe7e78874e Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 13 Feb 1996 05:46:59 +0000 Subject: Tue Feb 13 00:12:12 1996 Roland McGrath * gmon/Makefile (headers): Remove machine-gmon.h. * sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed. * gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as the asm name. (_mcount): Define normally, taking no args. Use __builtin_return_address to fetch PC values of caller and caller's caller. Tue Feb 13 00:12:12 1996 Roland McGrath * gmon/Makefile (headers): Remove machine-gmon.h. * sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed. * gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as the asm name. (_mcount): Define normally, taking no args. Use __builtin_return_address to fetch PC values of caller and caller's caller. * Makerules: Rewrote rules to update libc archives of all flavors. Define separate specific rules for each flavor using o-iterator. * sysdeps/unix/Makefile: Include s-proto.d only ifdef subdir. Sat Feb 10 11:35:16 1996 Andreas Schwab * Makerules (ar-symtab-name): New macro. Replace all occurences of __.SYMDEF by $(ar-symtab-name). * sysdeps/unix/sysv/Makefile (ar-symtab-name): Define as empty. * Makefile (configure, %/configure): Depend on aclocal.m4. * Make-dist (configure, %/configure): Likewise. * sysdeps/unix/Makefile: Include s-proto.d for its deps. * gmon/sys/gmon.h: Don't include machine-gmon.h; those defns are only needed in the implementation, not for any users. * time/northamerica: Updated from ADO 96c, new rules for Mexico in 1996. --- Makerules | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) (limited to 'Makerules') diff --git a/Makerules b/Makerules index f6848b7..439f18d 100644 --- a/Makerules +++ b/Makerules @@ -65,6 +65,11 @@ endif # Add -I switches to get the right sysdep directories. # `+includes' in Makeconfig references $(+sysdep-includes). +sysdep-includes := $(addprefix -I,$(+sysdep_dirs)) + +# The name of the symbol table archive member. The default is suitable for +# BSD style archives. It can be overridden in sysdep Makefiles when SYSV +# style archive are used. +ar-symtab-name = __.SYMDEF # Include any system-specific makefiles. @@ -349,7 +354,7 @@ ARFLAGS := r$(verbose) lib: lib-noranlib $(foreach l,$(libtypes),$(patsubst %,$(common-objpfx)$l,c)) # Pattern rule for libraries: depend on the __.SYMDEF member updated by ranlib. -lib%.a: lib%.a(__.SYMDEF) ; +lib%.a: lib%.a($(ar-symtab-name)) ; libobjs: $(foreach o,$(object-suffixes),\ $(common-objpfx)$(patsubst %,$(libtype$o),c)(\ @@ -392,21 +397,18 @@ endif endif -# Rules to update the __.SYMDEF member with ranlib. -# To consolidate, each flavor library's __.SYMDEF member -# depends on the imaginary intermediate file `symdef.SUFFIX', -# where SUFFIX is that flavor's object suffix; then a pattern rule -# "remakes" symdef.% depending on all the libc.a(foo.%) files in $(objects). -$(common-objpfx)$(patsubst %,$(libtype.o),c)(__.SYMDEF): symdef.o -$(common-objpfx)$(patsubst %,$(libtype.so),c)(__.SYMDEF): symdef.so -$(common-objpfx)$(patsubst %,$(libtype.po),c)(__.SYMDEF): symdef.po -$(common-objpfx)$(patsubst %,$(libtype.go),c)(__.SYMDEF): symdef.go -symdef.%: $(foreach o,$(object-suffixes),\ - $(common-objpfx)$(patsubst %,$(libtype$o),c)(\ - $(patsubst $(objpfx)%.o,%.%,$(objects)))) \ - $(filter subdir_lib,$(firstword $(subdir) subdir_lib)) -# The last line above makes it also depend on subdir_lib for the parent. - $(RANLIB) $(common-objpfx)$(patsubst %,$(libtype.$*),c) +# Rules to update the $(ar-symtab-name) member with ranlib, +# one for each object flavor. +define o-iterator-doit +$(common-objpfx)$(patsubst %,$(libtype$o),c)($(ar-symtab-name)): \ + $(common-objpfx)$(patsubst %,$(libtype$o),c)(\ + $(patsubst $(objpfx)%.o,%$o,$(objects))) \ + $(filter subdir_lib,$(firstword $(subdir) subdir_lib)); \ + $$(RANLIB) $$(common-objpfx)$$(patsubst %,$$(libtype$o),c) +endef +object-suffixes-left = $(object-suffixes) +include $(o-iterator) + # This makes all the object files. .PHONY: objects objs @@ -613,7 +615,7 @@ check: tests .PHONY: TAGS TAGS: distinfo $(..)MakeTAGS - $(MAKE) $(addprefix -f ,$^) + $(MAKE) $(addprefix -f ,$^) $@ .PHONY: echo-headers echo-headers: -- cgit v1.1