fb633ea
2004-11-26  Jakub Jelinek  <jakub@redhat.com>
fb633ea
fb633ea
	* posix/Makefile (generated: Add getconf.speclist.
fb633ea
	($(inst_libexecdir)/getconf): Use getconf.speclist instead of
fb633ea
	getconf output.
fb633ea
	($(objpfx)getconf.speclist): New rule.
fb633ea
	* posix/getconf.speclist.h: New file.
fb633ea
fb633ea
diff -Nrup a/posix/Makefile b/posix/Makefile
fb633ea
--- a/posix/Makefile	2012-06-05 07:42:49.000000000 -0600
fb633ea
+++ b/posix/Makefile	2012-06-07 12:15:21.820318664 -0600
fb633ea
@@ -305,15 +305,8 @@ $(inst_libexecdir)/getconf: $(inst_bindi
fb633ea
 	  mv -f $@/$$spec.new $@/$$spec; \
fb633ea
 	done < $(objpfx)getconf.speclist
fb633ea
 
fb633ea
-$(objpfx)getconf.speclist: $(objpfx)getconf
fb633ea
-ifeq (no,$(cross-compiling))
fb633ea
-	LC_ALL=C GETCONF_DIR=/dev/null \
fb633ea
-	$(run-program-prefix) $< _POSIX_V7_WIDTH_RESTRICTED_ENVS > $@.new
fb633ea
-	LC_ALL=C GETCONF_DIR=/dev/null \
fb633ea
-	$(run-program-prefix) $< _POSIX_V6_WIDTH_RESTRICTED_ENVS >> $@.new
fb633ea
-	LC_ALL=C GETCONF_DIR=/dev/null \
fb633ea
-	$(run-program-prefix) $< _XBS5_WIDTH_RESTRICTED_ENVS >> $@.new
fb633ea
-else
fb633ea
-	> $@.new
fb633ea
-endif
fb633ea
+$(objpfx)getconf.speclist: getconf.speclist.h
fb633ea
+	$(CC) -E $(CFLAGS) $(CPPFLAGS) $< \
fb633ea
+	  | sed -n -e '/START_OF_STRINGS/,$${/\(POSIX_V[67]\|XBS5\)_/{s/^[^"]*"//;s/".*$$//;p}}' \
fb633ea
+	  > $@.new
fb633ea
 	mv -f $@.new $@
fb633ea
diff -Nrup a/posix/getconf.speclist.h b/posix/getconf.speclist.h
fb633ea
--- a/posix/getconf.speclist.h	1969-12-31 17:00:00.000000000 -0700
fb633ea
+++ b/posix/getconf.speclist.h	2012-06-07 12:15:21.820318664 -0600
fb633ea
@@ -0,0 +1,39 @@
fb633ea
+#include <unistd.h>
fb633ea
+const char *START_OF_STRINGS =
fb633ea
+#if _POSIX_V7_ILP32_OFF32 == 1
fb633ea
+"POSIX_V7_ILP32_OFF32"
fb633ea
+#endif
fb633ea
+#if _POSIX_V7_ILP32_OFFBIG == 1
fb633ea
+"POSIX_V7_ILP32_OFFBIG"
fb633ea
+#endif
fb633ea
+#if _POSIX_V7_LP64_OFF64 == 1
fb633ea
+"POSIX_V7_LP64_OFF64"
fb633ea
+#endif
fb633ea
+#if _POSIX_V7_LPBIG_OFFBIG == 1
fb633ea
+"POSIX_V7_LPBIG_OFFBIG"
fb633ea
+#endif
fb633ea
+#if _POSIX_V6_ILP32_OFF32 == 1
fb633ea
+"POSIX_V6_ILP32_OFF32"
fb633ea
+#endif
fb633ea
+#if _POSIX_V6_ILP32_OFFBIG == 1
fb633ea
+"POSIX_V6_ILP32_OFFBIG"
fb633ea
+#endif
fb633ea
+#if _POSIX_V6_LP64_OFF64 == 1
fb633ea
+"POSIX_V6_LP64_OFF64"
fb633ea
+#endif
fb633ea
+#if _POSIX_V6_LPBIG_OFFBIG == 1
fb633ea
+"POSIX_V6_LPBIG_OFFBIG"
fb633ea
+#endif
fb633ea
+#if _XBS5_ILP32_OFF32 == 1
fb633ea
+"XBS5_ILP32_OFF32"
fb633ea
+#endif
fb633ea
+#if _XBS5_ILP32_OFFBIG == 1
fb633ea
+"XBS5_ILP32_OFFBIG"
fb633ea
+#endif
fb633ea
+#if _XBS5_LP64_OFF64 == 1
fb633ea
+"XBS5_LP64_OFF64"
fb633ea
+#endif
fb633ea
+#if _XBS5_LPBIG_OFFBIG == 1
fb633ea
+"XBS5_LPBIG_OFFBIG"
fb633ea
+#endif
fb633ea
+"";