summary refs log tree commit diff
path: root/Makerules
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-11-15 03:37:24 +0000
committerRoland McGrath <roland@gnu.org>2002-11-15 03:37:24 +0000
commit53da80ab8870138b81b212c540c32b5c1eeccaf4 (patch)
tree99cc0b072130164fccc123c707675c82b8dd8224 /Makerules
parent3fa5f1fa0a4973c6915fbfe0a43cbbe57c9b8ca9 (diff)
downloadglibc-53da80ab8870138b81b212c540c32b5c1eeccaf4.tar.gz
glibc-53da80ab8870138b81b212c540c32b5c1eeccaf4.tar.xz
glibc-53da80ab8870138b81b212c540c32b5c1eeccaf4.zip
* sysdeps/generic/errno.c (__libc_errno): Remove alias.
	* inet/herrno.c (__libc_h_errno): Likewise.
	* resolv/res_libc.c (__libc_res): Likewise.
	[USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
	(__res_state) [! USE___THREAD]: Don't define as weak.
	* csu/Versions: Revert last change.
	* resolv/Versions: Revert last change.

	* Makerules ($(common-objpfx)%.make): New pattern rule.
	* tls.make.c: New file.
	* Makefile (distribute): Add it.
Diffstat (limited to 'Makerules')
-rw-r--r--Makerules14
1 files changed, 14 insertions, 0 deletions
diff --git a/Makerules b/Makerules
index 5508827134..89e8c0eb58 100644
--- a/Makerules
+++ b/Makerules
@@ -146,6 +146,20 @@ before-compile := $(filter-out $(wildcard $(before-compile)),$(before-compile))
 ifdef before-compile
 $(before-compile):
 endif
+
+# If a makefile needs to do something conditional on something that
+# can only be figured out from headers, write a FOO.make.c input
+# file that uses cpp contructs and contains @@@ LINE @@@ for each LINE
+# to emit in the generated makefile, and use -include $(common-objpfx)FOO.make.
+$(common-objpfx)%.make: $(..)%.make.c $(..)Makerules
+	rm -f $@T $@.dT
+	(echo '# Generated from $*.make.c by Makerules.'; \
+	 SUNPRO_DEPENDENCIES='$@.dT $$(common-objpfx)$*.make' \
+	 $(CC) $(CFLAGS) $(CPPFLAGS) -E $< \
+	 | sed -n '/@@@/{s/@@@[	 ]*\(.*\)@@@/\1/;s/[	 ]*$$//p;}'; \
+	 echo 'common-generated += $(@F)'; \
+	 cat $@.dT; rm -f $@.dT) > $@T
+	mv -f $@T $@
 
 # Generate an ordered list of implicit rules which find the source files in
 # each sysdep directory.  The old method was to use vpath to search all the