summaryrefslogtreecommitdiff
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)
* 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