summaryrefslogtreecommitdiff
path: root/gnu/lib/libg++/g++-include/sys/dir.h
diff options
context:
space:
mode:
authorcgd <cgd@NetBSD.org>1993-07-14 09:13:01 +0000
committercgd <cgd@NetBSD.org>1993-07-14 09:13:01 +0000
commit2eaee1cf37fff587d6abe9899233613d4c190f14 (patch)
treeeeca7bd645ada05027d24a2ec9401c38fc205cf6 /gnu/lib/libg++/g++-include/sys/dir.h
parent16e57b6b9e8123204a51943d6f3b680b83364955 (diff)
upgrade to libg++ 2.3.90. g++ includes don't install right yet, but will fix
Diffstat (limited to 'gnu/lib/libg++/g++-include/sys/dir.h')
-rw-r--r--gnu/lib/libg++/g++-include/sys/dir.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/gnu/lib/libg++/g++-include/sys/dir.h b/gnu/lib/libg++/g++-include/sys/dir.h
new file mode 100644
index 00000000000..586867252a6
--- /dev/null
+++ b/gnu/lib/libg++/g++-include/sys/dir.h
@@ -0,0 +1,42 @@
+#ifndef __libgxx_sys_dir_h
+
+extern "C" {
+
+#ifdef __sys_dir_h_recursive
+#include_next <sys/dir.h>
+#else
+#define __sys_dir_h_recursive
+#define opendir __hide_opendir
+#define closedir __hide_closedir
+#define readdir __hide_readdir
+#define telldir __hide_telldir
+#define seekdir __hide_seekdir
+
+#include_next <sys/dir.h>
+
+#define __libgxx_sys_dir_h
+#undef opendir
+#undef closedir
+#undef readdir
+#undef telldir
+#undef seekdir
+
+DIR *opendir(const char *);
+int closedir(DIR *);
+#ifdef __dirent_h_recursive
+// Some operating systems we won't mention (such as the imitation
+// of Unix marketed by IBM) implement dirent.h by including sys/dir.h,
+// in which case sys/dir.h defines struct dirent, rather than
+// the struct direct originally used by BSD.
+struct dirent *readdir(DIR *);
+#else
+struct direct *readdir(DIR *);
+#endif
+long telldir(DIR *);
+void seekdir(DIR *, long);
+// We don't bother with rewinddir (many systems define it as a macro).
+// void rewinddir(DIR *);
+#endif
+}
+
+#endif