mirror of
https://git.yoctoproject.org/poky
synced 2026-02-11 11:13:04 +01:00
On hosts with FORTIFY_SOURCES, stringize support is required, as it's used by the macros to wrap functions (e.g. read and open in unistd.h). Those wrappers use the STRING() macro from unistd.h. A header in the bash sources overrides the unistd.h macro to 'x' when HAVE_STRINGIZE is not defined, causing the wrappers to generate calls to 'xread' and 'xopen', which do not exist, resulting in a failure to link. Assume we have stringize support when cross-compiling, which works around the issue. It may be best for upstream to either give up on supporting compilers without stringize support, or to not define STRING() at all when FORTIFY_SOURCES is defined, letting the unistd.h one be used, instead. (From OE-Core rev: f7a25dd72d1d463eb72d48c6f9dd968d376496c0) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
27 lines
958 B
Diff
27 lines
958 B
Diff
On hosts with FORTIFY_SOURCES, stringize support is required, as it's used by
|
|
the macros to wrap functions (e.g. read and open in unistd.h). Those wrappers
|
|
use the STRING() macro from unistd.h. A header in the bash sources overrides
|
|
the unistd.h macro to 'x' when HAVE_STRINGIZE is not defined, causing the
|
|
wrappers to generate calls to 'xread' and 'xopen', which do not exist,
|
|
resulting in a failure to link.
|
|
|
|
Assume we have stringize support when cross-compiling, which works around the
|
|
issue.
|
|
|
|
It may be best for upstream to either give up on supporting compilers without
|
|
stringize support, or to not define STRING() at all when FORTIFY_SOURCES is
|
|
defined, letting the unistd.h one be used, instead.
|
|
|
|
Upstream-Status: Pending
|
|
|
|
--- bash-4.2.orig/builtins/mkbuiltins.c
|
|
+++ bash-4.2/builtins/mkbuiltins.c
|
|
@@ -28,6 +28,7 @@
|
|
# define HAVE_STDLIB_H
|
|
|
|
# define HAVE_RENAME
|
|
+# define HAVE_STRINGIZE
|
|
#endif /* CROSS_COMPILING */
|
|
|
|
#if defined (HAVE_UNISTD_H)
|