[v5,2/5] libio: Do not autogenerate stdio_lim.h
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
Commit Message
From: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
Instead define the required fields in system dependend files. Thee only
system dependent definition is FILENAME_MAX, which should match POSIX
PATH_MAX, and it is obtained from either kernel UAPI or mach headers.
Currently set pre-defined value from current kernels.
It avoid a circular dependendy when including stdio.h in
gen-as-const-headers files.
Checked on x86_64-linux-gnu and i686-linux-gnu
---
Makerules | 40 -------------------
Rules | 3 --
libio/stdio.h | 19 +++++----
.../mach/hurd/bits/stdio_lim.h | 17 ++------
sysdeps/posix/Makefile | 5 ---
sysdeps/unix/sysv/linux/bits/stdio_lim.h | 28 +++++++++++++
6 files changed, 43 insertions(+), 69 deletions(-)
rename stdio-common/stdio_lim.h.in => sysdeps/mach/hurd/bits/stdio_lim.h (72%)
delete mode 100644 sysdeps/posix/Makefile
create mode 100644 sysdeps/unix/sysv/linux/bits/stdio_lim.h
Comments
On Mon, Mar 6, 2023 at 1:18 PM Adhemerval Zanella via Libc-alpha
<libc-alpha@sourceware.org> wrote:
>
> From: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
>
> Instead define the required fields in system dependend files. Thee only
Thee -> the
> system dependent definition is FILENAME_MAX, which should match POSIX
> PATH_MAX, and it is obtained from either kernel UAPI or mach headers.
> Currently set pre-defined value from current kernels.
>
> It avoid a circular dependendy when including stdio.h in
avoid -> avoids
> gen-as-const-headers files.
>
> Checked on x86_64-linux-gnu and i686-linux-gnu
> ---
> Makerules | 40 -------------------
> Rules | 3 --
> libio/stdio.h | 19 +++++----
> .../mach/hurd/bits/stdio_lim.h | 17 ++------
> sysdeps/posix/Makefile | 5 ---
> sysdeps/unix/sysv/linux/bits/stdio_lim.h | 28 +++++++++++++
> 6 files changed, 43 insertions(+), 69 deletions(-)
> rename stdio-common/stdio_lim.h.in => sysdeps/mach/hurd/bits/stdio_lim.h (72%)
> delete mode 100644 sysdeps/posix/Makefile
> create mode 100644 sysdeps/unix/sysv/linux/bits/stdio_lim.h
>
> diff --git a/Makerules b/Makerules
> index f6071eab50..57b3f093c4 100644
> --- a/Makerules
> +++ b/Makerules
> @@ -1351,46 +1351,6 @@ endif
>
> endif
>
> -# These will have been set by sysdeps/posix/Makefile.
> -L_tmpnam ?= 1
> -TMP_MAX ?= 0
> -L_ctermid ?= 1
> -L_cuserid ?= 1
> -
> -stdio_lim = $(common-objpfx)bits/stdio_lim.h
> -
> -$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @:
> -$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
> - $(common-objpfx)config.make
> - $(make-target-directory)
> - { echo '#include "$(..)posix/bits/posix1_lim.h"'; \
> - } | \
> - $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \
> - $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT)
> - sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
> - $(@:st=dT) > $(@:st=dt)
> - mv -f $(@:st=dt) $(@:st=d)
> - fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \
> - filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \
> - fopen_max=$${fopen_max:-16}; \
> - filename_max=$${filename_max:-1024}; \
> - sed -e "s/@FOPEN_MAX@/$$fopen_max/" \
> - -e "s/@FILENAME_MAX@/$$filename_max/" \
> - -e "s/@L_tmpnam@/$(L_tmpnam)/" \
> - -e "s/@TMP_MAX@/$(TMP_MAX)/" \
> - -e "s/@L_ctermid@/$(L_ctermid)/" \
> - -e "s/@L_cuserid@/$(L_cuserid)/" \
> - $< > $(@:st=h.new)
> - $(move-if-change) $(@:st=h.new) $(@:st=h)
> -# Remove these last so that they can be examined if something went wrong.
> - rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt)
> - touch $@
> -# Get dependencies.
> -ifndef no_deps
> --include $(stdio_lim:h=d)
> -endif
> -common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
> -
> FORCE:
>
> .PHONY: echo-headers
> diff --git a/Rules b/Rules
> index fdff415fdc..5e945d7347 100644
> --- a/Rules
> +++ b/Rules
> @@ -60,9 +60,6 @@ ifneq "$(findstring env,$(origin common-generated))" ""
> common-generated :=
> endif
>
> -# See below. This must be set before Makerules processes it.
> -before-compile += $(common-objpfx)bits/stdio_lim.h
> -
> include $(..)Makerules
>
> .PHONY: subdir_lib
> diff --git a/libio/stdio.h b/libio/stdio.h
> index 857f02888d..686c40f28d 100644
> --- a/libio/stdio.h
> +++ b/libio/stdio.h
> @@ -120,18 +120,23 @@ typedef __fpos64_t fpos64_t;
> # define P_tmpdir "/tmp"
> #endif
>
> +#define L_tmpnam 20
> +#define TMP_MAX 238328
>
> /* Get the values:
> - L_tmpnam How long an array of chars must be to be passed to `tmpnam'.
> - TMP_MAX The minimum number of unique filenames generated by tmpnam
> - (and tempnam when it uses tmpnam's name space),
> - or tempnam (the two are separate).
> - L_ctermid How long an array to pass to `ctermid'.
> - L_cuserid How long an array to pass to `cuserid'.
> - FOPEN_MAX Minimum number of files that can be open at once.
> FILENAME_MAX Maximum length of a filename. */
> #include <bits/stdio_lim.h>
>
> +#ifdef __USE_POSIX
> +# define L_ctermid 9
> +# if !defined __USE_XOPEN2K || defined __USE_GNU
> +# define L_cuserid 9
> +# endif
> +#endif
> +
> +#undef FOPEN_MAX
> +#define FOPEN_MAX 16
> +
>
> #if __GLIBC_USE (ISOC2X)
> /* Maximum length of printf output for a NaN. */
> diff --git a/stdio-common/stdio_lim.h.in b/sysdeps/mach/hurd/bits/stdio_lim.h
> similarity index 72%
> rename from stdio-common/stdio_lim.h.in
> rename to sysdeps/mach/hurd/bits/stdio_lim.h
> index bc7aacc35e..f3ef0be96e 100644
> --- a/stdio-common/stdio_lim.h.in
> +++ b/sysdeps/mach/hurd/bits/stdio_lim.h
> @@ -1,4 +1,5 @@
> -/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
> +/* System specific stdio.h definitions. Hurd version.
> + Copyright (C) 2023 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
> @@ -22,18 +23,6 @@
> # error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
> #endif
>
> -#define L_tmpnam @L_tmpnam@
> -#define TMP_MAX @TMP_MAX@
> -#define FILENAME_MAX @FILENAME_MAX@
> -
> -#ifdef __USE_POSIX
> -# define L_ctermid @L_ctermid@
> -# if !defined __USE_XOPEN2K || defined __USE_GNU
> -# define L_cuserid @L_cuserid@
> -# endif
> -#endif
> -
> -#undef FOPEN_MAX
> -#define FOPEN_MAX @FOPEN_MAX@
> +#define FILENAME_MAX 1024
>
> #endif /* bits/stdio_lim.h */
> diff --git a/sysdeps/posix/Makefile b/sysdeps/posix/Makefile
> deleted file mode 100644
> index b58aa6aadb..0000000000
> --- a/sysdeps/posix/Makefile
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -# These affect the generated bits/stdio_lim.h file.
> -L_tmpnam = 20
> -TMP_MAX = 238328
> -L_ctermid = 9
> -L_cuserid = 9
> diff --git a/sysdeps/unix/sysv/linux/bits/stdio_lim.h b/sysdeps/unix/sysv/linux/bits/stdio_lim.h
> new file mode 100644
> index 0000000000..4c3f36d7ce
> --- /dev/null
> +++ b/sysdeps/unix/sysv/linux/bits/stdio_lim.h
> @@ -0,0 +1,28 @@
> +/* System specific stdio.h definitions. Linux version.
> + Copyright (C) 2023 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
> + modify it under the terms of the GNU Lesser General Public
> + License as published by the Free Software Foundation; either
> + version 2.1 of the License, or (at your option) any later version.
> +
> + The GNU C Library is distributed in the hope that it will be useful,
> + but WITHOUT ANY WARRANTY; without even the implied warranty of
> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> + Lesser General Public License for more details.
> +
> + You should have received a copy of the GNU Lesser General Public
> + License along with the GNU C Library; if not, see
> + <https://www.gnu.org/licenses/>. */
> +
> +#ifndef _BITS_STDIO_LIM_H
> +#define _BITS_STDIO_LIM_H 1
> +
> +#ifndef _STDIO_H
> +# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
> +#endif
> +
> +#define FILENAME_MAX 4096
> +
> +#endif /* bits/stdio_lim.h */
> --
> 2.34.1
>
On 3/6/23 14:16, Adhemerval Zanella wrote:
> From: Adhemerval Zanella Netto <adhemerval.zanella@linaro.org>
>
> Instead define the required fields in system dependend files. Thee only
s/Thee/The/g
> system dependent definition is FILENAME_MAX, which should match POSIX
> PATH_MAX, and it is obtained from either kernel UAPI or mach headers.
> Currently set pre-defined value from current kernels.
Agreed.
>
> It avoid a circular dependendy when including stdio.h in
s/avoid/avoids/g
> gen-as-const-headers files.
All the better!
>
> Checked on x86_64-linux-gnu and i686-linux-gnu
LGTM. All 6 values defined.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
> ---
> Makerules | 40 -------------------
> Rules | 3 --
> libio/stdio.h | 19 +++++----
> .../mach/hurd/bits/stdio_lim.h | 17 ++------
> sysdeps/posix/Makefile | 5 ---
> sysdeps/unix/sysv/linux/bits/stdio_lim.h | 28 +++++++++++++
> 6 files changed, 43 insertions(+), 69 deletions(-)
> rename stdio-common/stdio_lim.h.in => sysdeps/mach/hurd/bits/stdio_lim.h (72%)
> delete mode 100644 sysdeps/posix/Makefile
> create mode 100644 sysdeps/unix/sysv/linux/bits/stdio_lim.h
>
> diff --git a/Makerules b/Makerules
> index f6071eab50..57b3f093c4 100644
> --- a/Makerules
> +++ b/Makerules
> @@ -1351,46 +1351,6 @@ endif
>
> endif
>
> -# These will have been set by sysdeps/posix/Makefile.
> -L_tmpnam ?= 1
> -TMP_MAX ?= 0
> -L_ctermid ?= 1
> -L_cuserid ?= 1
> -
> -stdio_lim = $(common-objpfx)bits/stdio_lim.h
> -
> -$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @:
> -$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
> - $(common-objpfx)config.make
> - $(make-target-directory)
> - { echo '#include "$(..)posix/bits/posix1_lim.h"'; \
> - } | \
> - $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \
> - $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT)
> - sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
> - $(@:st=dT) > $(@:st=dt)
> - mv -f $(@:st=dt) $(@:st=d)
> - fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \
> - filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \
> - fopen_max=$${fopen_max:-16}; \
> - filename_max=$${filename_max:-1024}; \
> - sed -e "s/@FOPEN_MAX@/$$fopen_max/" \
> - -e "s/@FILENAME_MAX@/$$filename_max/" \
> - -e "s/@L_tmpnam@/$(L_tmpnam)/" \
> - -e "s/@TMP_MAX@/$(TMP_MAX)/" \
> - -e "s/@L_ctermid@/$(L_ctermid)/" \
> - -e "s/@L_cuserid@/$(L_cuserid)/" \
> - $< > $(@:st=h.new)
> - $(move-if-change) $(@:st=h.new) $(@:st=h)
> -# Remove these last so that they can be examined if something went wrong.
> - rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt)
> - touch $@
> -# Get dependencies.
> -ifndef no_deps
> --include $(stdio_lim:h=d)
> -endif
> -common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
> -
> FORCE:
>
> .PHONY: echo-headers
> diff --git a/Rules b/Rules
> index fdff415fdc..5e945d7347 100644
> --- a/Rules
> +++ b/Rules
> @@ -60,9 +60,6 @@ ifneq "$(findstring env,$(origin common-generated))" ""
> common-generated :=
> endif
>
> -# See below. This must be set before Makerules processes it.
> -before-compile += $(common-objpfx)bits/stdio_lim.h
> -
> include $(..)Makerules
>
> .PHONY: subdir_lib
> diff --git a/libio/stdio.h b/libio/stdio.h
> index 857f02888d..686c40f28d 100644
> --- a/libio/stdio.h
> +++ b/libio/stdio.h
> @@ -120,18 +120,23 @@ typedef __fpos64_t fpos64_t;
> # define P_tmpdir "/tmp"
> #endif
>
> +#define L_tmpnam 20
> +#define TMP_MAX 238328
OK. Define 1/6, 2/6.
>
> /* Get the values:
> - L_tmpnam How long an array of chars must be to be passed to `tmpnam'.
> - TMP_MAX The minimum number of unique filenames generated by tmpnam
> - (and tempnam when it uses tmpnam's name space),
> - or tempnam (the two are separate).
> - L_ctermid How long an array to pass to `ctermid'.
> - L_cuserid How long an array to pass to `cuserid'.
> - FOPEN_MAX Minimum number of files that can be open at once.
> FILENAME_MAX Maximum length of a filename. */
> #include <bits/stdio_lim.h>
>
> +#ifdef __USE_POSIX
> +# define L_ctermid 9
OK. Define 3/6.
> +# if !defined __USE_XOPEN2K || defined __USE_GNU
> +# define L_cuserid 9
OK. Define 4/6.
> +# endif
> +#endif
> +
> +#undef FOPEN_MAX
> +#define FOPEN_MAX 16
OK. Define 5/6.
> +
>
> #if __GLIBC_USE (ISOC2X)
> /* Maximum length of printf output for a NaN. */
> diff --git a/stdio-common/stdio_lim.h.in b/sysdeps/mach/hurd/bits/stdio_lim.h
> similarity index 72%
> rename from stdio-common/stdio_lim.h.in
> rename to sysdeps/mach/hurd/bits/stdio_lim.h
> index bc7aacc35e..f3ef0be96e 100644
> --- a/stdio-common/stdio_lim.h.in
> +++ b/sysdeps/mach/hurd/bits/stdio_lim.h
> @@ -1,4 +1,5 @@
> -/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
> +/* System specific stdio.h definitions. Hurd version.
> + Copyright (C) 2023 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
> @@ -22,18 +23,6 @@
> # error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
> #endif
>
> -#define L_tmpnam @L_tmpnam@
> -#define TMP_MAX @TMP_MAX@
> -#define FILENAME_MAX @FILENAME_MAX@
> -
> -#ifdef __USE_POSIX
> -# define L_ctermid @L_ctermid@
> -# if !defined __USE_XOPEN2K || defined __USE_GNU
> -# define L_cuserid @L_cuserid@
> -# endif
> -#endif
> -
> -#undef FOPEN_MAX
> -#define FOPEN_MAX @FOPEN_MAX@
> +#define FILENAME_MAX 1024
>
> #endif /* bits/stdio_lim.h */
> diff --git a/sysdeps/posix/Makefile b/sysdeps/posix/Makefile
> deleted file mode 100644
> index b58aa6aadb..0000000000
> --- a/sysdeps/posix/Makefile
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -# These affect the generated bits/stdio_lim.h file.
> -L_tmpnam = 20
> -TMP_MAX = 238328
> -L_ctermid = 9
> -L_cuserid = 9
> diff --git a/sysdeps/unix/sysv/linux/bits/stdio_lim.h b/sysdeps/unix/sysv/linux/bits/stdio_lim.h
> new file mode 100644
> index 0000000000..4c3f36d7ce
> --- /dev/null
> +++ b/sysdeps/unix/sysv/linux/bits/stdio_lim.h
> @@ -0,0 +1,28 @@
> +/* System specific stdio.h definitions. Linux version.
> + Copyright (C) 2023 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
> + modify it under the terms of the GNU Lesser General Public
> + License as published by the Free Software Foundation; either
> + version 2.1 of the License, or (at your option) any later version.
> +
> + The GNU C Library is distributed in the hope that it will be useful,
> + but WITHOUT ANY WARRANTY; without even the implied warranty of
> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> + Lesser General Public License for more details.
> +
> + You should have received a copy of the GNU Lesser General Public
> + License along with the GNU C Library; if not, see
> + <https://www.gnu.org/licenses/>. */
> +
> +#ifndef _BITS_STDIO_LIM_H
> +#define _BITS_STDIO_LIM_H 1
> +
> +#ifndef _STDIO_H
> +# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
> +#endif
> +
> +#define FILENAME_MAX 4096
OK. Define 6/6.
> +
> +#endif /* bits/stdio_lim.h */
@@ -1351,46 +1351,6 @@ endif
endif
-# These will have been set by sysdeps/posix/Makefile.
-L_tmpnam ?= 1
-TMP_MAX ?= 0
-L_ctermid ?= 1
-L_cuserid ?= 1
-
-stdio_lim = $(common-objpfx)bits/stdio_lim.h
-
-$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @:
-$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
- $(common-objpfx)config.make
- $(make-target-directory)
- { echo '#include "$(..)posix/bits/posix1_lim.h"'; \
- } | \
- $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \
- $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT)
- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
- $(@:st=dT) > $(@:st=dt)
- mv -f $(@:st=dt) $(@:st=d)
- fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \
- filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \
- fopen_max=$${fopen_max:-16}; \
- filename_max=$${filename_max:-1024}; \
- sed -e "s/@FOPEN_MAX@/$$fopen_max/" \
- -e "s/@FILENAME_MAX@/$$filename_max/" \
- -e "s/@L_tmpnam@/$(L_tmpnam)/" \
- -e "s/@TMP_MAX@/$(TMP_MAX)/" \
- -e "s/@L_ctermid@/$(L_ctermid)/" \
- -e "s/@L_cuserid@/$(L_cuserid)/" \
- $< > $(@:st=h.new)
- $(move-if-change) $(@:st=h.new) $(@:st=h)
-# Remove these last so that they can be examined if something went wrong.
- rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt)
- touch $@
-# Get dependencies.
-ifndef no_deps
--include $(stdio_lim:h=d)
-endif
-common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
-
FORCE:
.PHONY: echo-headers
@@ -60,9 +60,6 @@ ifneq "$(findstring env,$(origin common-generated))" ""
common-generated :=
endif
-# See below. This must be set before Makerules processes it.
-before-compile += $(common-objpfx)bits/stdio_lim.h
-
include $(..)Makerules
.PHONY: subdir_lib
@@ -120,18 +120,23 @@ typedef __fpos64_t fpos64_t;
# define P_tmpdir "/tmp"
#endif
+#define L_tmpnam 20
+#define TMP_MAX 238328
/* Get the values:
- L_tmpnam How long an array of chars must be to be passed to `tmpnam'.
- TMP_MAX The minimum number of unique filenames generated by tmpnam
- (and tempnam when it uses tmpnam's name space),
- or tempnam (the two are separate).
- L_ctermid How long an array to pass to `ctermid'.
- L_cuserid How long an array to pass to `cuserid'.
- FOPEN_MAX Minimum number of files that can be open at once.
FILENAME_MAX Maximum length of a filename. */
#include <bits/stdio_lim.h>
+#ifdef __USE_POSIX
+# define L_ctermid 9
+# if !defined __USE_XOPEN2K || defined __USE_GNU
+# define L_cuserid 9
+# endif
+#endif
+
+#undef FOPEN_MAX
+#define FOPEN_MAX 16
+
#if __GLIBC_USE (ISOC2X)
/* Maximum length of printf output for a NaN. */
similarity index 72%
rename from stdio-common/stdio_lim.h.in
rename to sysdeps/mach/hurd/bits/stdio_lim.h
@@ -1,4 +1,5 @@
-/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
+/* System specific stdio.h definitions. Hurd version.
+ Copyright (C) 2023 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
@@ -22,18 +23,6 @@
# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
#endif
-#define L_tmpnam @L_tmpnam@
-#define TMP_MAX @TMP_MAX@
-#define FILENAME_MAX @FILENAME_MAX@
-
-#ifdef __USE_POSIX
-# define L_ctermid @L_ctermid@
-# if !defined __USE_XOPEN2K || defined __USE_GNU
-# define L_cuserid @L_cuserid@
-# endif
-#endif
-
-#undef FOPEN_MAX
-#define FOPEN_MAX @FOPEN_MAX@
+#define FILENAME_MAX 1024
#endif /* bits/stdio_lim.h */
deleted file mode 100644
@@ -1,5 +0,0 @@
-# These affect the generated bits/stdio_lim.h file.
-L_tmpnam = 20
-TMP_MAX = 238328
-L_ctermid = 9
-L_cuserid = 9
new file mode 100644
@@ -0,0 +1,28 @@
+/* System specific stdio.h definitions. Linux version.
+ Copyright (C) 2023 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
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _BITS_STDIO_LIM_H
+#define _BITS_STDIO_LIM_H 1
+
+#ifndef _STDIO_H
+# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
+#endif
+
+#define FILENAME_MAX 4096
+
+#endif /* bits/stdio_lim.h */