mirror of
git://git.musl-libc.org/musl
synced 2024-12-16 19:55:38 +00:00
3b94daba71
this is ugly and stupid, but now that the *64 symbol names exist, a lot of broken GNU software detects them in configure, then either breaks during build due to missing off64_t definition, or attempts to compile without function declarations/prototypes. "fixing" it here is easier than telling everyone to add yet another feature test macro to their builds.
45 lines
844 B
C
45 lines
844 B
C
#ifndef _FTW_H
|
|
#define _FTW_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Normally we do not nest header includes. However useless bloat
|
|
* like ftw may be treated as a special case. Otherwise we would
|
|
* have to deal with duplicating all the stat.h mess. */
|
|
#include <sys/stat.h>
|
|
|
|
#define FTW_F 1
|
|
#define FTW_D 2
|
|
#define FTW_DNR 3
|
|
#define FTW_NS 4
|
|
#define FTW_SL 5
|
|
#define FTW_DP 6
|
|
#define FTW_SLN 7
|
|
|
|
#define FTW_PHYS 1
|
|
#define FTW_MOUNT 2
|
|
#define FTW_CHDIR 4
|
|
#define FTW_DEPTH 8
|
|
|
|
struct FTW
|
|
{
|
|
int base;
|
|
int level;
|
|
};
|
|
|
|
int ftw(const char *, int (*)(const char *, const struct stat *, int), int);
|
|
int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *), int, int);
|
|
|
|
#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
|
|
#define ftw64 ftw
|
|
#define nftw64 nftw
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|