diff options
36 files changed, 999 insertions, 87 deletions
@@ -1,3 +1,87 @@ +Fri Aug 30 01:26:44 1996 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/unix/sysv/linux/i386/Dist: Add close.S. + * sysdeps/unix/sysv/linux/m68k/Dist: Likewise. + * sysdeps/unix/sysv/linux/alpha/Dist: Likewise. + + * version.c: Add comment about where to report bugs to. + * catgets/gencat.c (usage): Likewise. + * db/makedb.c (usage): Likewise. + * locale/programs/locale.c (usage): Likewise. + * locale/programs/localedef.c (usage): Likewise. + + * manual/socket.texi: A little bit better wording. + +Thu Aug 29 18:03:06 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makerules: Make sure directory exists before generating stamp file. + (BUILD_CFLAGS): Always refer to using $(..). + * manual/Makefile: Make sure directory exists before generating + stamp file. + (make-target-directory): Add macro definition. + * sysdeps/generic/Makefile: Make sure directory exists before + generating stamp file. + + * Makefile (distribute): Add autolock.sh. Reported by Fila Kolodny. + +Tue Aug 27 10:06:22 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> + + When compiling in separate directory put objects into + subdirectories matching the source layout. + * Makeconfig (objpfx) [ifdef objdir]: Append $(subdir). + When looking for configparms try in $(common-objpfx). + Use $(common-objpfx)SUBDIR to find objects from other subdirectory + builds. + * Makerules: Add $(objpfx) to vpath list. + (make-dummy-dep): Use $(common-objpfx) to avoid creating dummy.d + more than once. All uses in dependency lists changed. + (+make-deps): Make target directory. + (sed-remove-objpfx): Substitute $(common-objpfx). + (do-ar, build-extra-lib, $(common-objpfx)stub-$(subdir)): Use + $(objpfx) instead of $(objdir) for cd command. + (O%-lib): Always find libc relative to $(..). + (subdir-stamps): Collect stamp files from subdirs. + (common-mostlyclean): Remove stub file in $(common-objpfx). + * MakeTAGS ($P/siglist.pot): Find siglist.c in stdio-common. + * Rules (dep-dummy-lib): Use $(common-objpfx) to avoid creating to + more than once. + ($(objpfx)dummy.c, $(objpfx)empty.c): Change target name to use + $(common-objfpx). All uses in dependency lists changed. + (generated): Prepend $(..) to names. + * bare/Makefile ($(objpfx)lib$(config-vendor).a): Remove $(objpfx) + from $@. + * nss/Makefile ($(objpfx)libnss_dns.so, $(objpfx)libnss_db.so): + Use $(common-objpfx) instead of $(..) in dependencies. + * sysdeps/mach/Makefile (mach-objpfx): Unconditionally use + $(common-objpfx) instead of $(..) and (objpfx). + * sysdeps/mach/hurd/Makefile (hurd-objpfx): Likewise. + (rpath-link): Likewise. + (rpcuserlibs): Likewise. + * sysdeps/unix/Makefile [$(subdir) = stdio-common]: Check for + errlist.c in $(objpfx), not $(common-objpfx). + ($(common-objpfx)s-proto.d): Special rule not covered by pattern + rule. + * sysdeps/unix/make-syscalls.sh: Make syscall rules depending on + s-proto.d in $(common-objpfx), not $(objpfx). + +Thu Aug 29 17:45:49 1996 Ulrich Drepper <drepper@cygnus.com> + + * nss/nsswitch.c (nss_dlerror_run): Free returned error + string. + +Thu Aug 29 15:53:33 1996 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/libm-ieee754/e_acoshl.c: New file. `long double' + implementation. + * sysdeps/libm-ieee754/e_atanhl.c: Likewise. + * sysdeps/libm-ieee754/e_remainderl.c: Likewise. + * sysdeps/libm-ieee754/e_scalbl.c: Likewise. + * sysdeps/libm-ieee754/s_asinhl.c: Likewise. + * sysdeps/libm-ieee754/s_cosl.c: Likewise. + * sysdeps/libm-ieee754/s_sinl.c: Likewise. + * sysdeps/libm-ieee754/s_tanhl.c: Likewise. + * sysdeps/libm-ieee754/s_tanl.c: Likewise. + Thu Aug 29 12:00:30 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/setitimer.c (setitimer_locked): Correct @@ -16,7 +100,7 @@ Thu Aug 29 12:00:30 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> Thu Aug 29 00:28:08 1996 Ulrich Drepper <drepper@cygnus.com> - * stdio-common/printf_fp.c (__printf_fp): Use default value `.` if + * stdio-common/printf_fp.c (__printf_fp): Use default value '.' if `decimal' char is 0. * C-numeric.c (not_available): New constant. @@ -145,7 +145,7 @@ else $(extract) endif -$P/siglist.pot: $(common-objpfx)siglist.c; $(extract) +$P/siglist.pot: $(common-objpfx)stdio-common/siglist.c; $(extract) # Extract all strings from this file; its strings are not marked. # Their surroundings are also not interesting. diff --git a/Makeconfig b/Makeconfig index 413a2537e2..d3d7890903 100644 --- a/Makeconfig +++ b/Makeconfig @@ -59,8 +59,8 @@ endif # $(common-objdir) is the place to put objects and # such that are not specific to a single subdir. ifdef objdir -objpfx = $(objdir)/ -common-objpfx = $(objpfx) +objpfx := $(patsubst %//,%/,$(objdir)/$(subdir)/) +common-objpfx = $(objdir)/ common-objdir = $(objdir) else objpfx := @@ -110,8 +110,8 @@ ifneq ($(wildcard $(..)configparms),) include $(..)configparms endif ifneq ($(objpfx),) -ifneq ($(wildcard $(objpfx)configparms),) -include $(objpfx)configparms +ifneq ($(wildcard $(common-objpfx)configparms),) +include $(common-objpfx)configparms endif endif @@ -325,7 +325,7 @@ default-rpath = $(libdir) endif # This is how to find at build-time things that will be installed there. rpath-link = $(common-objdir):$(elfobjdir):$(nssobjdir) -nssobjdir := $(firstword $(objdir) $(patsubst ../$(subdir),.,$(..)nss)) +nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss) else link-libc = $(common-objpfx)libc.a $(gnulib) $(common-objpfx)libc.a endif @@ -337,13 +337,8 @@ ifeq ($(elf),yes) +preinit = $(addprefix $(csu-objpfx),crti.o) +postinit = $(addprefix $(csu-objpfx),crtn.o) endif -ifdef objpfx -csu-objpfx = $(objpfx) -elf-objpfx = $(objpfx) -else -csu-objpfx = $(..)csu/ -elf-objpfx = $(..)elf/ -endif +csu-objpfx = $(common-objpfx)csu/ +elf-objpfx = $(common-objpfx)elf/ ifeq (yes,$(build-shared)) # The name under which the run-time dynamic linker is installed. @@ -231,7 +231,7 @@ distribute := README INSTALL FAQ NOTES NEWS PROJECTS \ ansidecl.h 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 \ - munch-tmpl.c munch.awk \ + autolock.sh munch-tmpl.c munch.awk \ sysdep.h set-hooks.h libc-symbols.h version.h shlib-versions \ rpm/Makefile rpm/template rpm/rpmrc @@ -85,7 +85,7 @@ endif # This is here so things in sysdep Makefiles can easily depend on foo.h as # appropriate and not worry about where foo.h comes from, which may be # system dependent and not known by that Makefile. -vpath %.h $(subst $(empty) ,:,$(strip $(common-objpfx) \ +vpath %.h $(subst $(empty) ,:,$(strip $(common-objpfx) $(objpfx) \ $(addprefix $(sysdep_dir)/,$(sysdirs)) \ $(..))) @@ -150,9 +150,9 @@ endif # have source in .s files, and thus do not in fact need a .d file. # So we must define rules to make .d files for .s files. define make-dummy-dep -$(addprefix ln $(objpfx)dummy.d ,$(filter-out $(wildcard $@),$@)) +$(addprefix ln $(common-objpfx)dummy.d ,$(filter-out $(wildcard $@),$@)) endef -$(objpfx)dummy.d: +$(common-objpfx)dummy.d: echo '# .s files cannot contain includes, so they need no deps.' > $@ # It matters that this set of rules, for compiling from sources in @@ -169,7 +169,7 @@ $(objpfx)%.o: %.s $(before-compile); $(compile-command.s) $(objpfx)%.so: %.s $(before-compile); $(compile-command.s) $(objpfx)%.po: %.s $(before-compile); $(compile-command.s) $(objpfx)%.go: %.s $(before-compile); $(compile-command.s) -$(objpfx)%.d: %.s $(objpfx)dummy.d; $(make-dummy-dep) +$(objpfx)%.d: %.s $(common-objpfx)dummy.d; $(make-dummy-dep) $(objpfx)%.o: %.c $(before-compile); $(compile-command.c) $(objpfx)%.so: %.c $(before-compile); $(compile-command.c) $(objpfx)%.po: %.c $(before-compile); $(compile-command.c) @@ -190,7 +190,7 @@ $(objpfx)%.o: $(objpfx)%.s $(before-compile); $(compile-command.s) $(objpfx)%.so: $(objpfx)%.s $(before-compile); $(compile-command.s) $(objpfx)%.po: $(objpfx)%.s $(before-compile); $(compile-command.s) $(objpfx)%.go: $(objpfx)%.s $(before-compile); $(compile-command.s) -$(objpfx)%.d: $(objpfx)%.s $(objpfx)dummy.d; $(make-dummy-dep) +$(objpfx)%.d: $(objpfx)%.s $(common-objpfx)dummy.d; $(make-dummy-dep) $(objpfx)%.o: $(objpfx)%.c $(before-compile); $(compile-command.c) $(objpfx)%.so: $(objpfx)%.c $(before-compile); $(compile-command.c) $(objpfx)%.po: $(objpfx)%.c $(before-compile); $(compile-command.c) @@ -239,7 +239,7 @@ $(+sysdir_pfx)sysd-rules: $(+sysdir_pfx)config.make $(..)Makerules \ \$$(compile-command.c)"; \ done; \ $(open-check-inhibit-asm) \ - echo "\$$(objpfx)%.d: $$dir/%.s \$$(objpfx)dummy.d; \ + echo "\$$(objpfx)%.d: $$dir/%.s \$$(common-objpfx)dummy.d; \ \$$(make-dummy-dep)"; \ echo "\$$(objpfx)%.d: $$dir/%.S \$$(before-compile); \ \$$(+make-deps)"; \ @@ -279,6 +279,7 @@ OUTPUT_OPTION = -o $@ S-CPPFLAGS = $(asm-CPPFLAGS) define +make-deps +$(make-target-directory) -@rm -f $@ $(+mkdep) $< $(CPPFLAGS) $($(<:$*.%=%)-CPPFLAGS) | \ sed -e 's,$(subst .,\.,$*)\.o,$(foreach o,$(object-suffixes),$(@:.d=$o)) $@,' \ @@ -289,7 +290,9 @@ ifneq (,$(objpfx)) # Continuation lines here are dangerous because they introduce spaces! define sed-remove-objpfx -e 's@ $(subst .,\.,$(subst @,\@,$(objpfx)))@ $$(objpfx)@g' \ --e 's@^$(subst .,\.,$(subst @,\@,$(objpfx)))@$$(objpfx)@g' +-e 's@^$(subst .,\.,$(subst @,\@,$(objpfx)))@$$(objpfx)@g' \ +-e 's@ $(subst .,\.,$(subst @,\@,$(common-objpfx)))@ $$(common-objpfx)@g' \ +-e 's@^$(subst .,\.,$(subst @,\@,$(common-objpfx)))@$$(common-objpfx)@g' endef endif @@ -327,7 +330,7 @@ LDFLAGS-c.so = -nostdlib -nostartfiles # Give libc.so an entry point and make it directly runnable itself. LDFLAGS-c.so += -e __libc_main # Use our own special initializer and finalizer files for libc.so. -elfobjdir := $(firstword $(objdir) $(patsubst ../$(subdir),.,$(..)elf)) +elfobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)elf) $(common-objpfx)libc.so: $(elfobjdir)/soinit.so \ $(common-objpfx)libc_pic.a \ $(elfobjdir)/sofini.so $(elfobjdir)/ld.so @@ -443,6 +446,7 @@ ifndef objects # Create the stamp$o files to keep the parent makefile happy. subdir_lib: $(foreach o,$(object-suffixes),$(objpfx)stamp$o-$(subdir)) $(foreach o,$(object-suffixes),$(objpfx)stamp$o-$(subdir)): + $(make-target-directory) rm -f $@; > $@ else @@ -471,17 +475,13 @@ object-suffixes-left := $(object-suffixes) include $(o-iterator) define do-ar topdir=`cd $(..).; pwd`; \ -$(patsubst %,cd %;,$(objdir)) \ +$(patsubst %/,cd %;,$(objpfx)) \ $$topdir/autolock.sh ${O%-lib}.lck $(AR) cru$(verbose) ${O%-lib} \ $(patsubst $(objpfx)%,%,$^) rm -f $@ touch $@ endef -ifdef subdir -O%-lib = $(filter ../,$(firstword $(objdir) ../))$(patsubst %,$(libtype$*),c) -else -O%-lib = $(patsubst %,$(libtype$*),c) -endif +O%-lib = $(..)$(patsubst %,$(libtype$*),c) endif @@ -496,8 +496,7 @@ $(common-objpfx)$(patsubst %,$(libtype$o),c)($(ar-symtab-name)): \ $$(RANLIB) $$(common-objpfx)$$(patsubst %,$$(libtype$o),c) endef ifndef subdir -subdirs-stamps := $(foreach d,$(subdirs),\ - $(firstword $(objdir) $(subdir))/stamp%-$d) +subdirs-stamps := $(foreach d,$(subdirs),$(common-objpfx)$d/stamp%-$d) subdirs-stamp-o = $(subst %,$o,$(subdirs-stamps)) $(subdirs-stamps): subdir_lib; endif @@ -512,7 +511,7 @@ objects objs: $(foreach o,$(object-suffixes),$(o-objects)) \ # Canned sequence for building an extra library archive. define build-extra-lib -$(patsubst %,cd %;,$(objdir)) \ +$(patsubst %/,cd %;,$(objpfx)) \ $(AR) cru$(verbose) $(@:$(objpfx)%=%) \ $(patsubst $(objpfx)%,%,$^) $(RANLIB) $@ @@ -736,12 +735,7 @@ cd $(@D); $(BUILD_CC) $(BUILD_CFLAGS) $(<:$(common-objpfx)%=%) -o $(@F) endef # We always want to use configuration definitions. -ifdef objdir -# This is always used in $(common-objdir), so we use no directory name. -BUILD_CFLAGS = -include config.h -else BUILD_CFLAGS = -include $(..)config.h -endif # Support the GNU standard name for this target. .PHONY: check @@ -773,7 +767,7 @@ common-mostlyclean: $(addsuffix .o,$(tests) $(others)) \ $(addsuffix .out,$(tests))) -rm -f $(addprefix $(objpfx),$(extra-objs) $(install-lib)) - -rm -f core $(objpfx)stub-$(subdir) + -rm -f core $(common-objpfx)stub-$(subdir) $(rmobjs) define rmobjs $(foreach o,$(object-suffixes), @@ -796,7 +790,7 @@ s = $(sysdep_dir)/stub $(common-objpfx)stub-$(subdir): $(+depfiles) # Use /dev/null since `...` might expand to empty. (s=`cd $s; /bin/pwd`; \ - $(patsubst %,cd %;,$(objdir)) \ + $(patsubst %/,cd %;,$(objpfx)) \ sed -n 's/^stub_warning *(\([^)]*\).*$$/#define __stub_\1/p' \ `sed -n 's@^.*$s/\([a-z0-9_-]*\.c\).*$$@'"$$s"/'\1@p' \ $(patsubst $(objpfx)%,%,$^) /dev/null` \ diff --git a/README.libm b/README.libm new file mode 100644 index 0000000000..fd5dcc3e98 --- /dev/null +++ b/README.libm @@ -0,0 +1,31 @@ +The following functions for the `long double' versions of the libm +function have to be written: + +e_acosl.c +e_asinl.c +e_atan2l.c +e_acoshl.c +e_expl.c +e_fmodl.c +e_hypotl.c +e_j0l.c +e_j1l.c +e_jnl.c +e_lgammal_r.c +e_logl.c +e_log10l.c +e_powl.c +e_rem_pio2l.c +e_sinhl.c +e_sqrtl.c + +k_cosl.c +k_rem_pio2l.c +k_sinl.c +k_tanl.c + +s_atanl.c +s_cbrtl.c +s_erfl.c +s_expm1l.c +s_log1pl.c @@ -62,16 +62,16 @@ subdir_lib: lib-noranlib # Some subdirs need to install a dummy library. # They can use "$(objpfx)libfnord.a: $(dep-dummy-lib); $(make-dummy-lib)". -dep-dummy-lib = $(objpfx)dummy.o +dep-dummy-lib = $(common-objpfx)dummy.o define make-dummy-lib $(AR) cr$(verbose) $@ $< endef -$(objpfx)dummy.c: +$(common-objpfx)dummy.c: rm -f $@ echo 'void __dummy__ () { }' > $@ -$(objpfx)empty.c: +$(common-objpfx)empty.c: cp -f /dev/null $@ -generated := $(generated) dummy.o dummy.c empty.c empty.o +generated := $(generated) $(..)dummy.o $(..)dummy.c $(..)empty.c $(..)empty.o # This makes all the auxilliary and test programs. @@ -141,7 +141,7 @@ endif ifdef static-only-routines # These routines are to be omitted from the shared library object, # so we replace the PIC objects for them with the empty object file. -$(static-only-routines:%=$(objpfx)%.so): %.so: $(objpfx)empty.o +$(static-only-routines:%=$(objpfx)%.so): %.so: $(common-objpfx)empty.o rm -f $@ ln $< $@ endif diff --git a/bare/Makefile b/bare/Makefile index 588a713c83..573515347c 100644 --- a/bare/Makefile +++ b/bare/Makefile @@ -48,7 +48,7 @@ $(objpfx)lib$(config-vendor).a: $(bare-routines:%=$(objpfx)%.o) # from scratch each time. rm -f $@ ifdef objdir - cd $(objdir); $(AR) cq$(verbose) $@ $(^:$(objpfx)%=%) + cd $(objpfx); $(AR) cq$(verbose) $(@:$(objpfx)%=%) $(^:$(objpfx)%=%) else $(AR) cq$(verbose) $@ $^ endif diff --git a/catgets/gencat.c b/catgets/gencat.c index e78fb0ace0..2e275fcef2 100644 --- a/catgets/gencat.c +++ b/catgets/gencat.c @@ -212,7 +212,8 @@ Mandatory arguments to long options are mandatory for short options too.\n\ -o, --output=NAME write output to file NAME\n\ -V, --version output version information and exit\n\ If INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n\ -is -, output is written to standard output.\n"), +is -, output is written to standard output.\n\ +Report bugs to <bug-glibc@gnu.ai.mit.edu>.\n"), program_invocation_name, program_invocation_name); exit (status); diff --git a/db/makedb.c b/db/makedb.c index a215f25e59..d72159579d 100644 --- a/db/makedb.c +++ b/db/makedb.c @@ -207,7 +207,8 @ |
