[OE-core] [PATCH 07/16] site: set getcwd() behaviour for long paths for glibc / musl
André Draszik
git at andred.net
Fri Jan 10 16:52:53 UTC 2020
In glibc, getcwd() handles long file names properly, on
musl, getcwd() only works up to PATH_MAX directory depths.
Configuring the autotools (gnulib) test result here allows
coreutils to compile more optimised code for both platforms,
rather than being pessimistic and re-implementing everything
itself.
The difference in behaviour is because both do the kernel
getcwd syscall (which only supports up to PATH_MAX), but
glibc implements fallbacks for longer paths, while musl
doesn't.
Signed-off-by: André Draszik <git at andred.net>
---
meta/site/common-glibc | 1 +
meta/site/common-musl | 1 +
2 files changed, 2 insertions(+)
diff --git a/meta/site/common-glibc b/meta/site/common-glibc
index e5085f518f..1f6175ba93 100644
--- a/meta/site/common-glibc
+++ b/meta/site/common-glibc
@@ -30,6 +30,7 @@ ac_cv_func_mmap_fixed_mapped=${ac_cv_func_mmap_fixed_mapped=yes}
# coreutils
fu_cv_sys_stat_statfs2_bsize=${fu_cv_sys_stat_statfs2_bsize=yes}
gl_cv_func_getcwd_null=${gl_cv_func_getcwd_null=yes}
+gl_cv_func_getcwd_path_max=${gl_cv_func_getcwd_path_max=yes}
gl_cv_func_working_mkstemp=${gl_cv_func_working_mkstemp=yes}
# glib
diff --git a/meta/site/common-musl b/meta/site/common-musl
index 0c9d21e0b7..c8113755aa 100644
--- a/meta/site/common-musl
+++ b/meta/site/common-musl
@@ -35,6 +35,7 @@ bash_cv_sys_siglist=${bash_cv_sys_siglist=no}
# coreutils
fu_cv_sys_stat_statfs2_bsize=${fu_cv_sys_stat_statfs2_bsize=yes}
gl_cv_func_getcwd_null=${gl_cv_func_getcwd_null=yes}
+gl_cv_func_getcwd_path_max=${gl_cv_func_getcwd_path_max='no, but it is partly working'}
gl_cv_func_gettimeofday_clobber=${gl_cv_func_gettimeofday_clobber=no}
gl_cv_func_tzset_clobber=${gl_cv_func_tzset_clobber=no}
gl_cv_func_gettimeofday_posix_signature=${gl_cv_func_gettimeofday_posix_signature=yes}
--
2.23.0.rc1
More information about the Openembedded-core
mailing list