about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog33
-rw-r--r--Makeconfig4
-rw-r--r--Makefile53
-rw-r--r--Makerules13
-rw-r--r--Rules5
-rw-r--r--csu/Makefile57
-rw-r--r--csu/munch-tmpl.c (renamed from munch-tmpl.c)0
-rw-r--r--csu/munch.awk (renamed from munch.awk)0
-rw-r--r--csu/set-init.c (renamed from set-init.c)0
-rw-r--r--csu/version.c (renamed from version.c)0
-rw-r--r--elf/Makefile7
-rw-r--r--elf/interp.c (renamed from interp.c)0
-rw-r--r--intl/locale.alias2
-rw-r--r--sunrpc/Makefile2
14 files changed, 110 insertions, 66 deletions
diff --git a/ChangeLog b/ChangeLog
index 792436da10..489be7598a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,38 @@
 1998-05-08  Ulrich Drepper  <drepper@cygnus.com>
 
+	* intl/locale.alias: Change italian to it_IT.ISO-8859-1.
+	Reported by Ottavio G. Rizzo <otto@mast.queensu.ca>.
+
+1998-05-08 19:24  Zack Weinberg  <zack@rabi.phys.columbia.edu>
+
+	* Makefile (+subdir-inits): Delete variable.
+	(+init_subdirs): Likewise.
+	(aux): Likewise.
+	(before-compile): Likewise.
+	(libc-init): Delete stanza.
+	(version-info.h): Delete rule and associated variable.
+	(distribute): Don't distribute moved files.
+	* Makerules (interp-obj): It lives in elf now.  Only use it
+	if $(elf) is set.  Delete rule to build it.
+	* csu/Makefile: Build set-init.o and/or munch-init.o.  Build
+	version.o and version-info.h.  Minor cleanups.
+	(routines): Add libc-init, sysdep, version.
+	(generated): Add version-info.h.
+	* elf/Makefile: Build interp.os.
+
+	* interp.c: Moved to elf.
+	* set-init.c: Moved to csu.
+	* munch-init.c: Likewise.
+	* munch.awk: Likewise.
+	* version.c: Likewise.
+
+	* Makeconfig: Add emacs mode marker.
+	* Makerules: Likewise.
+	* Rules: Likewise, and also unconfuse syntax highlighting with
+	a fake comment.
+
+1998-05-08  Ulrich Drepper  <drepper@cygnus.com>
+
 	* sysdeps/unix/sysv/linux/syscalls.list: Add capset and capget
 	syscalls.
 
diff --git a/Makeconfig b/Makeconfig
index 1948e79512..ccaa085d33 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -795,3 +795,7 @@ $(common-objpfx)sysd-dirs: $(common-objpfx)config.make $(all-Subdirs-files)
 	mv -f $@-tmp $@
 
 endif # Makeconfig not yet included
+
+# Local Variables:
+# mode: makefile
+# End:
diff --git a/Makefile b/Makefile
index bbece0bd08..bfbd474a63 100644
--- a/Makefile
+++ b/Makefile
@@ -50,12 +50,6 @@ endif
 configure: configure.in aclocal.m4; $(autoconf-it)
 %/configure: %/configure.in aclocal.m4; $(autoconf-it)
 
-# All initialization source files.
-+subdir_inits	:= $(wildcard $(foreach dir,$(subdirs),$(dir)/init-$(dir).c))
-# All subdirectories containing initialization source files.
-+init_subdirs	:= $(patsubst %/,%,$(dir $(+subdir_inits)))
-
-
 # These are the targets that are made by making them in each subdirectory.
 +subdir_targets	:= subdir_lib objects objs others subdir_mostlyclean	\
 		   subdir_clean subdir_distclean subdir_realclean	\
@@ -68,8 +62,6 @@ configure: configure.in aclocal.m4; $(autoconf-it)
 headers := errno.h sys/errno.h bits/errno.h limits.h values.h	\
 	   features.h gnu-versions.h bits/libc-lock.h bits/xopen_lim.h	\
 	   gnu/libc-version.h
-aux	 = sysdep $(libc-init) version
-before-compile += $(objpfx)version-info.h
 
 echo-headers: subdir_echo-headers
 
@@ -85,17 +77,6 @@ ifeq (yes,$(build-shared))
 install-others += $(inst_includedir)/gnu/lib-names.h
 endif
 
-ifeq (yes,$(gnu-ld))
-libc-init = set-init
-else
-libc-init = munch-init
-$(objpfx)munch-init.c: munch.awk munch-tmpl.c $(+subdir_inits)
-	$(AWK) -f $< subdirs='$(+init_subdirs)' $(word 2,$^) > $@-t
-	mv -f $@-t $@
-generated := $(generated) munch-init.c
-endif
-
-
 include Makerules
 
 # Install from subdirectories too.
@@ -133,35 +114,6 @@ ifeq (yes,$(build-shared))
 lib: $(common-objpfx)libc.so
 endif
 
-all-Banner-files = $(wildcard $(addsuffix /Banner, $(subdirs)))
-$(objpfx)version-info.h: $(+sysdir_pfx)config.make $(all-Banner-files)
-	(case $(config-os) in \
-	   linux*) version=`(echo -e "#include <linux/version.h>\nUTS_RELEASE"\
-			     | $(CC) -E -P - | \
-			     sed -e 's/"\([^"]*\)".*/\1/p' -e d) 2>/dev/null`;\
-		   if [ -z "$$version" ]; then \
-		     if [ -r /proc/version ]; then \
-		       version=`sed 's/.*version \([^ ]*\) .*/>>\1<</' \
-				< /proc/version`; \
-		     else \
-		       version=`uname -r`; \
-		     fi; \
-		   fi; \
-		   echo -n "\"Compiled on a Linux $$version system "; \
-		   echo "on `date +%Y-%m-%d`.\\n\"" ;; \
-	   *) ;; \
-	 esac; \
-	 files="$(all-Banner-files)";				\
-	 if test -n "$$files"; then				\
-	   echo "\"Available extensions:";			\
-	   sed -e '/^#/d' -e 's/^[[:space:]]*/	/' $$files;	\
-	   echo "\"";						\
-	 fi) > $@T
-	mv -f $@T $@
-
-version.c-objects := $(addprefix $(objpfx)version,$(object-suffixes))
-$(version.c-objects): $(objpfx)version-info.h
-
 # Makerules creates a file `stubs' in each subdirectory, which
 # contains `#define __stub_FUNCTION' for each function defined in that
 # directory which is a stub.
@@ -285,18 +237,17 @@ parent_echo-distinfo:
 distribute  := README README.libm INSTALL FAQ NOTES NEWS PROJECTS BUGS	\
 	       COPYING.LIB COPYING ChangeLog ChangeLog.[0-9]		\
 	       Makefile Makeconfig Makerules Rules Make-dist MakeTAGS	\
-	       extra-lib.mk o-iterator.mk				\
+	       extra-lib.mk o-iterator.mk autolock.sh rellns-sh		\
 	       libc.map mkinstalldirs move-if-change install-sh		\
 	       configure configure.in aclocal.m4 config.sub config.guess\
 	       config.h.in config.make.in config-name.in Makefile.in	\
-	       autolock.sh rellns-sh munch-tmpl.c munch.awk interp.c	\
 	       sysdep.h set-hooks.h libc-symbols.h version.h shlib-versions \
 	       rpm/Makefile rpm/template rpm/rpmrc glibcbug.in abi-tags	\
 	       stub-tag.h test-installation.pl test-skeleton.c		\
 	       include/des.h
 
 distribute := $(strip $(distribute))
-generated := $(generated) stubs.h version-info.h
+generated := $(generated) stubs.h
 
 README: README.template version.h ; # Make-dist should update README.
 
diff --git a/Makerules b/Makerules
index 6aca3083b2..8b81a69290 100644
--- a/Makerules
+++ b/Makerules
@@ -344,14 +344,11 @@ else
 no-whole-archive =
 endif
 
-interp-obj = $(common-objpfx)interp.os
-$(interp-obj): $(common-objpfx)%.os: $(..)%.c
-	$(compile-command.c)
-common-generated += interp.os
-CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"'
-
+ifeq ($(elf),yes)
+interp-obj = $(common-objpfx)elf/interp.os
 $(common-objpfx)libc.so: $(interp-obj)
 $(patsubst %,$(objpfx)%.so,$(extra-libs)): $(interp-obj)
+endif
 
 define build-shlib
 $(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS)  \
@@ -977,3 +974,7 @@ ifeq ($(with-cvs),yes)
 endif
 endif
 endif
+
+# Local Variables:
+# mode: makefile
+# End:
diff --git a/Rules b/Rules
index 20aa84a8fe..57f75ebe8e 100644
--- a/Rules
+++ b/Rules
@@ -31,6 +31,7 @@ include ../Makeconfig
 ifndef	subdir
 Each subdirectory makefile must define the `subdir' variable.
 endif
+# This ` unconfuses emacs.
 # This is benign and useless in GNU make before 3.63.
 export subdir := $(subdir)
 
@@ -188,3 +189,7 @@ $(common-objpfx)dummy$o: $(common-objpfx)dummy.c $(before-compile);
 endef
 object-suffixes-left := $(object-suffixes)
 include $(o-iterator)
+
+# Local Variables:
+# mode: makefile
+# End:
diff --git a/csu/Makefile b/csu/Makefile
index da17b2c301..6d804f46aa 100644
--- a/csu/Makefile
+++ b/csu/Makefile
@@ -27,7 +27,7 @@
 
 subdir := csu
 
-routines = init-first libc-start
+routines = init-first libc-start $(libc-init) sysdep version
 csu-dummies = $(filter-out $(start-installed-name),crt1.o Mcrt1.o)
 extra-objs = start.o gmon-start.o \
 	     $(start-installed-name) g$(start-installed-name) \
@@ -36,17 +36,35 @@ omit-deps = $(patsubst %.o,%,$(start-installed-name) g$(start-installed-name) \
 		             $(csu-dummies))
 install-lib = $(start-installed-name) g$(start-installed-name) \
 	      $(csu-dummies)
-distribute = initfini.c gmon-start.c start.c defs.awk abi-note.S init.c
+distribute = initfini.c gmon-start.c start.c defs.awk munch.awk \
+	     abi-note.S init.c
+generated = version-info.h
+before-compile = $(objpfx)version-info.h
 
 all: # Make this the default target; it will be defined in Rules.
 
 include ../Makeconfig
 
-ifeq ($(elf),yes)
-before-compile = $(objpfx)abi-tag.h
+ifeq (yes,$(elf))
+before-compile += $(objpfx)abi-tag.h
 generated += abi-tag.h
 endif
 
+ifeq (yes,$(gnu-ld))
+libc-init = set-init
+else
+libc-init = munch-init
+$(objpfx)munch-init.c: munch.awk munch-tmpl.c $(+subdir_inits)
+	$(AWK) -f $< subdirs='$(+init_subdirs)' $(word 2,$^) > $@-t
+	mv -f $@-t $@
+generated += munch-init.c
+
+# All initialization source files.
++subdir_inits	:= $(wildcard $(foreach dir,$(subdirs),$(dir)/init-$(dir).c))
+# All subdirectories containing initialization source files.
++init_subdirs	:= $(patsubst %/,%,$(dir $(+subdir_inits)))
+endif
+
 ifeq ($(have-initfini),yes)
 
 CPPFLAGS += -DHAVE_INITFINI
@@ -130,11 +148,12 @@ $(addprefix $(objpfx),$(filter-out $(start-installed-name),$(csu-dummies))):
 	$(COMPILE.c) $(@:.o=.c) $(OUTPUT_OPTION)
 	rm -f $(@:.o=.c)
 
+# These headers are used by the startup code.
 / := $$/# bite me.
 $(objpfx)abi-tag.h: $(..)abi-tags
 	$(make-target-directory)
 	rm -f $@.new
-	sed 's/#.*$//;/^[ 	]*$$/d' $< | while read conf tag; do \
+	sed 's/#.*$//;/^[ 	]*$/d' $< | while read conf tag; do \
 	  test `expr '$(config-machine)-$(config-vendor)-$(config-os)' \
 		     : "$$conf"` != 0 || continue; \
 	  echo "$$tag" | sed > $@.new \
@@ -142,3 +161,31 @@ $(objpfx)abi-tag.h: $(..)abi-tags
 	done
 	if test -r $@.new; then mv -f $@.new $@; \
 	else echo >&2 'This configuration not matched in $<'; exit 1; fi
+
+all-Banner-files = $(wildcard $(addsuffix /Banner, \
+					$(addprefix $(..), $(subdirs))))
+$(objpfx)version-info.h: $(common-objpfx)config.make $(all-Banner-files)
+	$(make-target-directory)
+	(case $(config-os) in \
+	   linux*) version=`(echo -e "#include <linux/version.h>\nUTS_RELEASE"\
+			     | $(CC) -E -P - | \
+			     sed -e 's/"\([^"]*\)".*/\1/p' -e d) 2>/dev/null`;\
+		   if [ -z "$$version" ]; then \
+		     if [ -r /proc/version ]; then \
+		       version=`sed 's/.*version \([^ ]*\) .*/>>\1<</' \
+				< /proc/version`; \
+		     else \
+		       version=`uname -r`; \
+		     fi; \
+		   fi; \
+		   echo -n "\"Compiled on a Linux $$version system "; \
+		   echo "on `date +%Y-%m-%d`.\\n\"" ;; \
+	   *) ;; \
+	 esac; \
+	 files="$(all-Banner-files)";				\
+	 if test -n "$$files"; then				\
+	   echo "\"Available extensions:";			\
+	   sed -e '/^#/d' -e 's/^[[:space:]]*/	/' $$files;	\
+	   echo "\"";						\
+	 fi) > $@T
+	mv -f $@T $@
diff --git a/munch-tmpl.c b/csu/munch-tmpl.c
index c24eb89787..c24eb89787 100644
--- a/munch-tmpl.c
+++ b/csu/munch-tmpl.c
diff --git a/munch.awk b/csu/munch.awk
index 1ed68686c1..1ed68686c1 100644
--- a/munch.awk
+++ b/csu/munch.awk
diff --git a/set-init.c b/csu/set-init.c
index 4aea847db5..4aea847db5 100644
--- a/set-init.c
+++ b/csu/set-init.c
diff --git a/version.c b/csu/version.c
index 2285c75506..2285c75506 100644
--- a/version.c
+++ b/csu/version.c
diff --git a/elf/Makefile b/elf/Makefile
index 9ce3ac51e2..2c164158b3 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -39,7 +39,7 @@ ld-map		= $(libc-map)
 distribute	= $(rtld-routines:=.c) dynamic-link.h do-rel.h dl-machine.h \
 		  dl-hash.h soinit.c sofini.c ldd.sh.in ldd.bash.in eval.c \
 		  genrtldtbl.awk atomicity.h dl-procinfo.h ldsodefs.h \
-		  dl-librecon.h
+		  dl-librecon.h interp.c
 
 extra-libs	 = libdl
 extra-libs-others = $(extra-libs)
@@ -54,7 +54,7 @@ all: # Make this the default target; it will be defined in Rules.
 include ../Makeconfig
 
 ifeq (yes,$(build-shared))
-extra-objs	= $(rtld-routines:=.os) soinit.os sofini.os eval.os
+extra-objs	= $(rtld-routines:=.os) soinit.os sofini.os eval.os interp.os
 generated	= librtld.os dl-allobjs.os ld.so trusted-dirs.h rtldtbl.h
 install-others	= $(inst_slibdir)/$(rtld-installed-name)
 install-bin	= ldd
@@ -124,6 +124,9 @@ endef
 # The dl code in the static libc needs a default library path.
 CFLAGS-dl-support.c = -D'DEFAULT_RPATH="$(default-rpath)"'
 
+# interp.c exists just to get this string into the libraries.
+CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"'
+
 ifneq (ld.so,$(rtld-installed-name))
 # Make sure ld.so.1 exists in the build directory so we can link
 # against it.
diff --git a/interp.c b/elf/interp.c
index 540a303620..540a303620 100644
--- a/interp.c
+++ b/elf/interp.c
diff --git a/intl/locale.alias b/intl/locale.alias
index 61dfe917dd..175dd8cd31 100644
--- a/intl/locale.alias
+++ b/intl/locale.alias
@@ -39,7 +39,7 @@ greek           el_GR.ISO-8859-7
 hebrew          iw_IL.ISO-8859-8
 hungarian       hu_HU.ISO-8859-2
 icelandic       is_IS.ISO-8859-1
-italian         it_CH.ISO-8859-1
+italian         it_IT.ISO-8859-1
 japanese	ja_JP.EUC
 norwegian       no_NO.ISO-8859-1
 polish          pl_PL.ISO-8859-2
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index 5ea09e6a4b..2cdcbb9595 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -54,7 +54,7 @@ headers = $(addprefix rpc/,auth.h auth_unix.h clnt.h netdb.h pmap_clnt.h \
 			   des_crypt.h key_prot.h rpc_des.h) \
 	  $(rpcsvc:%=rpcsvc/%)
 install-others = $(inst_sysconfdir)/rpc
-generated = $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
+generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
 	    rpc-proto.c rpc-proto.d rpcgen
 generated-dirs = rpcsvc