summaryrefslogtreecommitdiff
path: root/demo/bsdopendirtype_build.py
blob: 3c5bb0b32b97da584fb56c287b05c9b56c321b7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from cffi import FFI

ffibuilder = FFI()
ffibuilder.cdef("""
    typedef ... DIR;
    struct dirent {
        unsigned char d_type;   /* type of file */
        char d_name[];          /* filename */
        ...;
    };
    DIR *opendir(const char *name);
    int closedir(DIR *dirp);
    struct dirent *readdir(DIR *dirp);
    static const int DT_BLK, DT_CHR, DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK;
""")

ffibuilder.set_source("_bsdopendirtype", """
    #include <sys/types.h>
    #include <dirent.h>
""")

if __name__ == '__main__':
    ffibuilder.compile(verbose=True)