glob64.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #include <features.h>
  2. #ifdef __UCLIBC_HAS_LFS__
  3. #if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS != 64
  4. #undef _FILE_OFFSET_BITS
  5. #define _FILE_OFFSET_BITS 64
  6. #endif
  7. #ifndef __USE_LARGEFILE64
  8. # define __USE_LARGEFILE64 1
  9. #endif
  10. /* We absolutely do _NOT_ want interfaces silently
  11. * renamed under us or very bad things will happen... */
  12. #ifdef __USE_FILE_OFFSET64
  13. # undef __USE_FILE_OFFSET64
  14. #endif
  15. #include <dirent.h>
  16. #include <glob.h>
  17. #include <sys/stat.h>
  18. extern int __glob64 (__const char *__restrict __pattern, int __flags,
  19. int (*__errfunc) (__const char *, int),
  20. glob64_t *__restrict __pglob) __THROW attribute_hidden;
  21. extern void __globfree (glob_t *__pglob) __THROW attribute_hidden;
  22. extern void __globfree64 (glob64_t *__pglob) __THROW attribute_hidden;
  23. #define dirent dirent64
  24. #define glob_t glob64_t
  25. #define __glob(pattern, flags, errfunc, pglob) \
  26. __glob64 (pattern, flags, errfunc, pglob)
  27. #define glob(pattern, flags, errfunc, pglob) \
  28. glob64 (pattern, flags, errfunc, pglob)
  29. #define __globfree(pglob) __globfree64 (pglob)
  30. #define globfree(pglob) globfree64 (pglob)
  31. #undef stat
  32. #define stat stat64
  33. #define lstat lstat64
  34. #define __GLOB64 1
  35. #include "glob.c"
  36. #endif