On Thu, 30 May 2024, 06:03 Alexandre Oliva, <ol...@adacore.com> wrote:
> > mkdir, chdir and chmod functions are defined in librtemscpu, that > doesn't get linked in during libstdc++-v3 configure, but applications > use -qrtems for linking, which brings those symbols in, so it makes > sense to mark them as available so that the C++ filesystem APIs are > enabled. > > Regstrapped on x86_64-linux-gnu, also tested on aarch64-rtems6 with > gcc-13. Ok to install? > > > for libstdc++-v3/ChangeLog > > * configure.ac [*-*-rtems*]: Set chdir, chmod and mkdir as > available. > * configure: Rebuilt. > --- > libstdc++-v3/configure | 7 +++++++ > libstdc++-v3/configure.ac | 7 +++++++ > 2 files changed, 14 insertions(+) > > diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure > index 5179cc507f129..a7d1c015906c2 100755 > --- a/libstdc++-v3/configure > +++ b/libstdc++-v3/configure > @@ -28610,6 +28610,13 @@ _ACEOF > > $as_echo "#define HAVE_USLEEP 1" >>confdefs.h > > + > + # These functions are defined in librtempscpu. We don't use > + # -qrtems during configure, so we don't link that in, and fail > + # to find them. > + glibcxx_cv_chdir=yes > + glibcxx_cv_chmod=yes > + glibcxx_cv_mkdir=yes > ;; > esac > elif test "x$with_headers" != "xno"; then > diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac > index 37396bd6ebbe6..0725c81bc9fa4 100644 > --- a/libstdc++-v3/configure.ac > +++ b/libstdc++-v3/configure.ac > @@ -400,6 +400,13 @@ dnl # rather than hardcoding that information. > AC_DEFINE(HAVE_SYMLINK) > AC_DEFINE(HAVE_TRUNCATE) > AC_DEFINE(HAVE_USLEEP) > + > + # These functions are defined in librtempscpu. We don't use > Typo here, "rtemps"? OK with that fixed (and configure regenerated). + # -qrtems during configure, so we don't link that in, and fail > + # to find them. + glibcxx_cv_chdir=yes > + glibcxx_cv_chmod=yes > + glibcxx_cv_mkdir=yes > ;; > esac > elif test "x$with_headers" != "xno"; then > > > -- > Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ > Free Software Activist GNU Toolchain Engineer > More tolerance and less prejudice are key for inclusion and diversity > Excluding neuro-others for not behaving ""normal"" is *not* inclusive >