Implement filesystem::canonical() without realpath
authorJonathan Wakely <jwakely@redhat.com>
Wed, 16 Sep 2015 22:50:28 +0000 (23:50 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 16 Sep 2015 22:50:28 +0000 (23:50 +0100)
commit30362998612b17c3e016d0fc8f0b3b2ead666927
tree3efd38e818c1d151333d9c0bfb7b3869ca9cec23
parent4ec39494ac756ee9525371d2225f55f18200d8e0
Implement filesystem::canonical() without realpath

PR libstdc++/67173
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check _XOPEN_VERSION
and PATH_MAX for _GLIBCXX_USE_REALPATH.
* config.h.in: Regenerate.
* configure: Regenerate.
* src/filesystem/ops.cc: (canonical) [!_GLIBCXX_USE_REALPATH]: Add
alternative implementation.
* testsuite/experimental/filesystem/operations/canonical.cc: New.
* testsuite/experimental/filesystem/operations/exists.cc: Add more
tests.
* testsuite/experimental/filesystem/operations/absolute.cc: Add test
variables.
* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
* testsuite/experimental/filesystem/operations/current_path.cc:
Likewise.
* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
* testsuite/experimental/filesystem/operations/status.cc: Likewise.
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
Likewise.

From-SVN: r227836
13 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/acinclude.m4
libstdc++-v3/config.h.in
libstdc++-v3/configure
libstdc++-v3/src/filesystem/ops.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/absolute.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/canonical.cc [new file with mode: 0644]
libstdc++-v3/testsuite/experimental/filesystem/operations/copy.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/current_path.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/exists.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/file_size.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/status.cc
libstdc++-v3/testsuite/experimental/filesystem/operations/temp_directory_path.cc