glibc/dirent
Adhemerval Zanella c0123b3b11 Consolidate scandir{at}{64} implementation
This patch consolidates scandir{at}{64} implementation on just
the default dirent/scandir{at}{64}{_r}.c ones.  It changes the logic
to follow the conventions used on other code consolidation:

  * scandir{at} is only built for _DIRENT_MATCHES_DIRENT64 being 0.

  * scandir{at}{64} is always built and aliased to getdents for ABIs
    that define _DIRENT_MATCHES_DIRENT64 to 1.

Also on Linux the compat symbol for old non-LFS dirent64 definition
requires a platform-specific scandir64.c.

Checked on aarch64-linux-gnu, x86_64-linux-gnu, i686-linux-gnu,
sparcv9-linux-gnu, sparc64-linux-gnu, powerpc-linux-gnu, and
powerpc64le-linux-gnu.

	* dirent/scandir-tail-common.c: New file.
	* dirent/scandir-tail.c: Use scandir-tail-common.c.
	(__scandir_tail): Build iff _DIRENT_MATCHES_DIRENT64 is not defined.
	* dirent/scandir.c: Use scandir-tail-common.c.
	* dirent/scandirat.c: Likewise.
	* dirent/scandir64-tail.c: Use scandir-tail-common.c.
	* dirent/scandir64.c (scandir64): Always build and alias to scandir
	if _DIRENT_MATCHES_DIRENT64 is defined.
	* dirent/scandirat64.c (scandirat64): Likewise.
	* include/dirent.h (__scandir_tail): Only define iff
	_DIRENT_MATCHES_DIRENT64 is not defined.
	(__scandir64_tail): Define regardless.
	(__scandirat, scandirat64): Remove libc_hidden_proto.
	* sysdeps/unix/sysv/linux/arm/scandir64.c: Remove file.
	* sysdeps/unix/sysv/linux/m68k/scandir64.c: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/scandir64.c: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/scandir64.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/scandir64.c: Likewise.
	* sysdeps/unix/sysv/linux/scandir64.c: New file.
2018-04-20 13:57:12 -03:00
..
Makefile Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
Versions Implement scandirat function 2011-08-09 09:57:55 -04:00
alphasort.c Define _DIRENT_MATCHES_DIRENT64 regardless 2018-03-05 18:10:04 -03:00
alphasort64.c Define _DIRENT_MATCHES_DIRENT64 regardless 2018-03-05 18:10:04 -03:00
bug-readdir1.c Update. 2002-12-14 19:49:13 +00:00
closedir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
dirent.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
dirfd.c hurd: Avoid PLT for dirfd 2018-04-05 01:52:29 +02:00
fdopendir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getdents.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
getdents64.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
list.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
opendir-tst1.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
opendir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
readdir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
readdir64.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
readdir64_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
readdir_r.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
rewinddir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
scandir-cancel.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
scandir-tail-common.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandir-tail.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandir.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandir64-tail.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandir64.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandirat.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
scandirat64.c Consolidate scandir{at}{64} implementation 2018-04-20 13:57:12 -03:00
seekdir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
telldir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-fdopendir.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-fdopendir2.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-scandir.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
tst-scandir64.c Add a test case for scandir. 2015-05-13 12:33:41 -07:00
tst-seekdir.c Modify several tests to use test-skeleton.c 2015-08-06 02:59:04 -04:00
versionsort.c Define _DIRENT_MATCHES_DIRENT64 regardless 2018-03-05 18:10:04 -03:00
versionsort64.c Define _DIRENT_MATCHES_DIRENT64 regardless 2018-03-05 18:10:04 -03:00