about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog27
-rw-r--r--Makefile1
-rw-r--r--Makerules22
-rw-r--r--math/e_exp2l.c12
-rw-r--r--stdlib/Makefile4
5 files changed, 51 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 94ce153853..c9010328af 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,30 @@
+2006-01-16  Roland McGrath  <roland@redhat.com>
+
+	* Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules to install
+	into $(inst_includedir)/%.h from sysdirs.
+	[headers]: Change static pattern rule for installing
+	$(headers) to do only those not matching %.h.
+	($(inst_includedir)/%.h: $(objpfx)%.h): Add this pattern rule instead.
+	($(inst_includedir)/%.h: %.h): Likewise.
+	($(inst_includedir)/%.h: $(..)include/%.h): Likewise.
+
+	* Makefile ($(inst_includedir)/gnu/stubs.h):
+	Add $(make-target-directory).
+
+	* stdlib/Makefile (headers): Restore headers removed in last change.
+
+2006-01-16  Jakub Jelinek  <jakub@redhat.com>
+
+	* math/e_exp2l.c: Don't include stdio.h, errno.h, stub-tag.h, include
+	math_private.h.
+	(__ieee754_exp2l): Compute for now as expl (M_LN2l * x)
+	instead of failing.
+	(exp2l): Remove stub_warning.
+
+2006-01-15  Jakub Jelinek  <jakub@redhat.com>
+
+	* io/tst-faccessat.c (do_test): Don't fail if geteuid () == 0.
+
 2006-01-16  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/kernel-features.h: Define
diff --git a/Makefile b/Makefile
index 061e68da81..8a7fbf307f 100644
--- a/Makefile
+++ b/Makefile
@@ -163,6 +163,7 @@ else
 installed-stubs = $(inst_includedir)/gnu/stubs-$(biarch).h
 
 $(inst_includedir)/gnu/stubs.h: include/stubs-biarch.h $(+force)
+	$(make-target-directory)
 	$(INSTALL_DATA) $< $@
 
 install-others-nosubdir: $(installed-stubs)
diff --git a/Makerules b/Makerules
index 027beef31b..e376dabae1 100644
--- a/Makerules
+++ b/Makerules
@@ -267,6 +267,8 @@ $(+sysdir_pfx)sysd-rules: $(+sysdir_pfx)config.make $(..)Makerules \
 	   done; \
 	   echo "\$$(objpfx)m_%.S: $$dir/s_%.S; \$$(+make-include-of-dep)";   \
 	   echo "\$$(objpfx)m_%.c: $$dir/s_%.c; \$$(+make-include-of-dep)";   \
+	   echo "\$$(inst_includedir)/%.h: $$dir/%.h \$$(+force); \
+	   	 	\$$(do-install)"; 				      \
 	 done;								      \
 	 echo "\$$(objpfx)m_%.c: s_%.c; \$$(+make-include-of-dep)";   \
 	 echo 'sysd-rules-done = t') > $@T
@@ -283,11 +285,6 @@ echo '#include <$<>' > $@T
 mv -f $@T $@
 endef
 
-# It matters that this set of rules, for compiling from sources in
-# the current directory (the $srcdir/$subdir) come before the
-# generated sysdep rules in included from sysd-rules below.  When
-# compiling in the source tree, generated sources go into the current
-# directory, and those should be chosen before any sources in sysdeps.
 define o-iterator-doit
 $(objpfx)%$o: %.S $(before-compile); $$(compile-command.S)
 endef
@@ -1126,8 +1123,21 @@ $(addprefix $(inst_datadir)/,$(install-data)): $(inst_datadir)/%: % $(+force)
 endif
 headers := $(strip $(headers))
 ifdef headers
-$(addprefix $(inst_includedir)/,$(headers)): $(inst_includedir)/%: % $(+force)
+# This implicit rule installs headers from the source directory.
+# It may be ignored in preference to rules from sysd-rules to find
+# headers in the sysdeps tree.
+$(inst_includedir)/%.h: $(objpfx)%.h $(+force)
 	$(do-install)
+$(inst_includedir)/%.h: %.h $(+force)
+	$(do-install)
+$(inst_includedir)/%.h: $(..)include/%.h $(+force)
+	$(do-install)
+headers-nonh := $(filter-out %.h,$(headers))
+ifdef headers-nonh
+$(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \
+						 % $(+force)
+	$(do-install)
+endif	# headers-nonh
 endif	# headers
 
 .PHONY: install-bin-nosubdir install-bin-script-nosubdir \
diff --git a/math/e_exp2l.c b/math/e_exp2l.c
index 64ef6d3d50..7e598d8d2d 100644
--- a/math/e_exp2l.c
+++ b/math/e_exp2l.c
@@ -1,14 +1,10 @@
 #include <math.h>
-#include <stdio.h>
-#include <errno.h>
+#include "math_private.h"
 
 long double
 __ieee754_exp2l (long double x)
 {
-  fputs ("__ieee754_exp2l not implemented\n", stderr);
-  __set_errno (ENOSYS);
-  return 0.0;
+  /* This is a very stupid and inprecise implementation.  It'll get
+     replaced sometime (soon?).  */
+  return __ieee754_expl (M_LN2l * x);
 }
-
-stub_warning (exp2l)
-#include <stub-tag.h>
diff --git a/stdlib/Makefile b/stdlib/Makefile
index bc97d70252..2690d5dd47 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -24,7 +24,9 @@ subdir	:= stdlib
 headers	:= stdlib.h bits/stdlib.h bits/stdlib-ldbl.h			      \
 	   monetary.h bits/monetary-ldbl.h				      \
 	   inttypes.h stdint.h bits/wordsize.h				      \
-	   errno.h sys/errno.h bits/errno.h
+	   errno.h sys/errno.h bits/errno.h				      \
+	   ucontext.h sys/ucontext.h					      \
+	   alloca.h fmtmsg.h
 
 routines	:=							      \
 	atof atoi atol atoll						      \