summaryrefslogtreecommitdiff
path: root/tools/toolchain-patches/glibc-225-make44.patch
diff options
context:
space:
mode:
Diffstat (limited to 'tools/toolchain-patches/glibc-225-make44.patch')
-rw-r--r--tools/toolchain-patches/glibc-225-make44.patch228
1 files changed, 228 insertions, 0 deletions
diff --git a/tools/toolchain-patches/glibc-225-make44.patch b/tools/toolchain-patches/glibc-225-make44.patch
new file mode 100644
index 0000000000..45d4e9c621
--- /dev/null
+++ b/tools/toolchain-patches/glibc-225-make44.patch
@@ -0,0 +1,228 @@
1diff -Naur glibc-2.25/libio/stdio.h glibc-2.25-patched/libio/stdio.h
2--- glibc-2.25/libio/stdio.h 2017-02-05 10:28:43.000000000 -0500
3+++ glibc-2.25-patched/libio/stdio.h 2023-05-23 15:22:27.482980335 -0400
4@@ -154,18 +154,23 @@
5 # define P_tmpdir "/tmp"
6 #endif
7
8+#define L_tmpnam 20
9+#define TMP_MAX 238328
10
11 /* Get the values:
12- L_tmpnam How long an array of chars must be to be passed to `tmpnam'.
13- TMP_MAX The minimum number of unique filenames generated by tmpnam
14- (and tempnam when it uses tmpnam's name space),
15- or tempnam (the two are separate).
16- L_ctermid How long an array to pass to `ctermid'.
17- L_cuserid How long an array to pass to `cuserid'.
18- FOPEN_MAX Minimum number of files that can be open at once.
19 FILENAME_MAX Maximum length of a filename. */
20 #include <bits/stdio_lim.h>
21
22+#ifdef __USE_POSIX
23+# define L_ctermid 9
24+# if !defined __USE_XOPEN2K || defined __USE_GNU
25+# define L_cuserid 9
26+# endif
27+#endif
28+
29+#undef FOPEN_MAX
30+#define FOPEN_MAX 16
31+
32
33 /* Standard streams. */
34 extern struct _IO_FILE *stdin; /* Standard input stream. */
35diff -Naur glibc-2.25/Makerules glibc-2.25-patched/Makerules
36--- glibc-2.25/Makerules 2017-02-05 10:28:43.000000000 -0500
37+++ glibc-2.25-patched/Makerules 2023-05-23 15:22:05.594967548 -0400
38@@ -1474,55 +1474,7 @@
39 endif
40
41 endif
42-
43-# These will have been set by sysdeps/posix/Makefile.
44-L_tmpnam ?= 1
45-TMP_MAX ?= 0
46-L_ctermid ?= 1
47-L_cuserid ?= 1
48
49-stdio_lim = $(common-objpfx)bits/stdio_lim.h
50-
51-$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @:
52-$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \
53- $(common-objpfx)config.make
54- $(make-target-directory)
55- { echo '#include "$(..)posix/bits/posix1_lim.h"'; \
56- echo '#define _LIBC 1'; \
57- echo '#include "$(..)misc/sys/uio.h"'; } | \
58- $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \
59- $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT)
60- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \
61- $(@:st=dT) > $(@:st=dt)
62- mv -f $(@:st=dt) $(@:st=d)
63- fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \
64- filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \
65- iov_max=`sed -n 's/^#define UIO_MAXIOV //p' $(@:st=hT)`; \
66- fopen_max=$${fopen_max:-16}; \
67- filename_max=$${filename_max:-1024}; \
68- if [ -z "$$iov_max" ]; then \
69- define_iov_max="# undef IOV_MAX"; \
70- else \
71- define_iov_max="# define IOV_MAX $$iov_max"; \
72- fi; \
73- sed -e "s/@FOPEN_MAX@/$$fopen_max/" \
74- -e "s/@FILENAME_MAX@/$$filename_max/" \
75- -e "s/@L_tmpnam@/$(L_tmpnam)/" \
76- -e "s/@TMP_MAX@/$(TMP_MAX)/" \
77- -e "s/@L_ctermid@/$(L_ctermid)/" \
78- -e "s/@L_cuserid@/$(L_cuserid)/" \
79- -e "s/@define_IOV_MAX@/$$define_iov_max/" \
80- $< > $(@:st=h.new)
81- $(move-if-change) $(@:st=h.new) $(@:st=h)
82-# Remove these last so that they can be examined if something went wrong.
83- rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt)
84- touch $@
85-# Get dependencies.
86-ifndef no_deps
87--include $(stdio_lim:h=d)
88-endif
89-common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st
90-
91 FORCE:
92
93 .PHONY: echo-headers
94diff -Naur glibc-2.25/Rules glibc-2.25-patched/Rules
95--- glibc-2.25/Rules 2017-02-05 10:28:43.000000000 -0500
96+++ glibc-2.25-patched/Rules 2023-05-23 15:22:27.482980335 -0400
97@@ -60,9 +60,6 @@
98 common-generated :=
99 endif
100
101-# See below. This must be set before Makerules processes it.
102-before-compile += $(common-objpfx)bits/stdio_lim.h
103-
104 include $(..)Makerules
105
106 .PHONY: subdir_lib
107diff -Naur glibc-2.25/stdio-common/stdio_lim.h.in glibc-2.25-patched/stdio-common/stdio_lim.h.in
108--- glibc-2.25/stdio-common/stdio_lim.h.in 2017-02-05 10:28:43.000000000 -0500
109+++ glibc-2.25-patched/stdio-common/stdio_lim.h.in 1969-12-31 19:00:00.000000000 -0500
110@@ -1,42 +0,0 @@
111-/* Copyright (C) 1994-2017 Free Software Foundation, Inc.
112- This file is part of the GNU C Library.
113-
114- The GNU C Library is free software; you can redistribute it and/or
115- modify it under the terms of the GNU Lesser General Public
116- License as published by the Free Software Foundation; either
117- version 2.1 of the License, or (at your option) any later version.
118-
119- The GNU C Library is distributed in the hope that it will be useful,
120- but WITHOUT ANY WARRANTY; without even the implied warranty of
121- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
122- Lesser General Public License for more details.
123-
124- You should have received a copy of the GNU Lesser General Public
125- License along with the GNU C Library; if not, see
126- <http://www.gnu.org/licenses/>. */
127-
128-#if !defined _STDIO_H && !defined __need_FOPEN_MAX && !defined __need_IOV_MAX
129-# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
130-#endif
131-
132-#ifdef _STDIO_H
133-# define L_tmpnam @L_tmpnam@
134-# define TMP_MAX @TMP_MAX@
135-# define FILENAME_MAX @FILENAME_MAX@
136-
137-# ifdef __USE_POSIX
138-# define L_ctermid @L_ctermid@
139-# if !defined __USE_XOPEN2K || defined __USE_GNU
140-# define L_cuserid @L_cuserid@
141-# endif
142-# endif
143-#endif
144-
145-#if defined __need_FOPEN_MAX || defined _STDIO_H
146-# undef FOPEN_MAX
147-# define FOPEN_MAX @FOPEN_MAX@
148-#endif
149-
150-#if defined __need_IOV_MAX && !defined IOV_MAX
151-@define_IOV_MAX@
152-#endif
153diff -Naur glibc-2.25/sysdeps/mach/hurd/bits/stdio_lim.h glibc-2.25-patched/sysdeps/mach/hurd/bits/stdio_lim.h
154--- glibc-2.25/sysdeps/mach/hurd/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500
155+++ glibc-2.25-patched/sysdeps/mach/hurd/bits/stdio_lim.h 2023-05-23 15:22:27.483980336 -0400
156@@ -0,0 +1,28 @@
157+/* System specific stdio.h definitions. Hurd version.
158+ Copyright (C) 2023 Free Software Foundation, Inc.
159+ This file is part of the GNU C Library.
160+
161+ The GNU C Library is free software; you can redistribute it and/or
162+ modify it under the terms of the GNU Lesser General Public
163+ License as published by the Free Software Foundation; either
164+ version 2.1 of the License, or (at your option) any later version.
165+
166+ The GNU C Library is distributed in the hope that it will be useful,
167+ but WITHOUT ANY WARRANTY; without even the implied warranty of
168+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
169+ Lesser General Public License for more details.
170+
171+ You should have received a copy of the GNU Lesser General Public
172+ License along with the GNU C Library; if not, see
173+ <http://www.gnu.org/licenses/>. */
174+
175+#ifndef _BITS_STDIO_LIM_H
176+#define _BITS_STDIO_LIM_H 1
177+
178+#ifndef _STDIO_H
179+# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
180+#endif
181+
182+#define FILENAME_MAX 1024
183+
184+#endif /* bits/stdio_lim.h */
185diff -Naur glibc-2.25/sysdeps/posix/Makefile glibc-2.25-patched/sysdeps/posix/Makefile
186--- glibc-2.25/sysdeps/posix/Makefile 2017-02-05 10:28:43.000000000 -0500
187+++ glibc-2.25-patched/sysdeps/posix/Makefile 2023-05-23 15:22:27.483980336 -0400
188@@ -1,8 +1,3 @@
189-# These affect the generated bits/stdio_lim.h file.
190-L_tmpnam = 20
191-TMP_MAX = 238328
192-L_ctermid = 9
193-L_cuserid = 9
194
195 ifeq ($(subdir)|$(have-thread-library),rt|no)
196 # With NPTL, this lives in libpthread so it can be used for sem_open too.
197diff -Naur glibc-2.25/sysdeps/unix/sysv/linux/bits/stdio_lim.h glibc-2.25-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h
198--- glibc-2.25/sysdeps/unix/sysv/linux/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500
199+++ glibc-2.25-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h 2023-05-23 15:22:27.483980336 -0400
200@@ -0,0 +1,28 @@
201+/* System specific stdio.h definitions. Linux version.
202+ Copyright (C) 2023 Free Software Foundation, Inc.
203+ This file is part of the GNU C Library.
204+
205+ The GNU C Library is free software; you can redistribute it and/or
206+ modify it under the terms of the GNU Lesser General Public
207+ License as published by the Free Software Foundation; either
208+ version 2.1 of the License, or (at your option) any later version.
209+
210+ The GNU C Library is distributed in the hope that it will be useful,
211+ but WITHOUT ANY WARRANTY; without even the implied warranty of
212+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
213+ Lesser General Public License for more details.
214+
215+ You should have received a copy of the GNU Lesser General Public
216+ License along with the GNU C Library; if not, see
217+ <https://www.gnu.org/licenses/>. */
218+
219+#ifndef _BITS_STDIO_LIM_H
220+#define _BITS_STDIO_LIM_H 1
221+
222+//#ifndef _STDIO_H
223+//# error "Never include <bits/stdio_lim.h> directly; use <stdio.h> instead."
224+//#endif
225+
226+#define FILENAME_MAX 4096
227+
228+#endif /* bits/stdio_lim.h */