]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Generate file which recognizes __need_FOPEN_MAX.
authorUlrich Drepper <drepper@redhat.com>
Sun, 21 Dec 1997 21:21:02 +0000 (21:21 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sun, 21 Dec 1997 21:21:02 +0000 (21:21 +0000)
sysdeps/posix/mk-stdiolim.c

index 5df460e89a0241bf19d6bec506ff9440786772c8..ecc6bb7499f37154721df4cec000804e74449efb 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1993, 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1993, 1996, 1997 Free Software Foundation, Inc.
 This file is part of the GNU C Library.
 
 The GNU C Library is free software; you can redistribute it and/or
@@ -23,6 +23,7 @@ main()
 {
   /* These values correspond to the code in sysdeps/posix/tempname.c.
      Change the values here if you change that code.  */
+  puts ("#ifndef __need_FOPEN_MAX");
   printf("#define L_tmpnam %u\n", sizeof("/usr/tmp/") + 9);
   printf("#define TMP_MAX %u\n", 62 * 62 * 62);
 
@@ -31,11 +32,31 @@ main()
   printf("#define L_cuserid 9\n");
   puts  ("#endif");
 
+  printf("#define FILENAME_MAX %u\n",
+#ifdef PATH_MAX
+        PATH_MAX
+#else
+        /* This is supposed to be the size needed to hold the longest file
+           name string the implementation guarantees can be opened.
+           PATH_MAX not being defined means the actual limit on the length
+           of a file name is runtime-variant (or it is unlimited).  ANSI
+           says in such a case FILENAME_MAX should be a good size to
+           allocate for a file name string.  POSIX.1 guarantees that a
+           file name up to _POSIX_PATH_MAX chars long can be opened, so
+           this value must be at least that.  */
+           1024                /* _POSIX_PATH_MAX is 255.  */
+#endif
+        );
+
+  puts ("#endif\n");
+
   /* POSIX does not require that OPEN_MAX and PATH_MAX be defined, so
      <local_lim.h> will not define them if they are run-time variant (which
      is the case in the Hurd).  ANSI still requires that FOPEN_MAX and
      FILENAME_MAX be defined, however.  */
 
+  puts ("#if defined __need_FOPEN_MAX && !defined __defined_FOPEN_MAX");
+  puts ("# define __defined_FOPEN_MAX");
   printf("#define FOPEN_MAX %u\n",
 #ifdef OPEN_MAX
 
@@ -50,22 +71,8 @@ main()
 #endif
 
         );
+  puts ("#endif");
+  puts ("#undef __need_FOPEN_MAX");
 
-  printf("#define FILENAME_MAX %u\n",
-#ifdef PATH_MAX
-        PATH_MAX
-#else
-        /* This is supposed to be the size needed to hold the longest file
-           name string the implementation guarantees can be opened.
-           PATH_MAX not being defined means the actual limit on the length
-           of a file name is runtime-variant (or it is unlimited).  ANSI
-           says in such a case FILENAME_MAX should be a good size to
-           allocate for a file name string.  POSIX.1 guarantees that a
-           file name up to _POSIX_PATH_MAX chars long can be opened, so
-           this value must be at least that.  */
-           1024                /* _POSIX_PATH_MAX is 255.  */
-#endif
-        );
-
-  exit(0);
+  exit (0);
 }