Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ysbaddaden/posix
POSIX/C bindings generator for the Crystal programming language
https://github.com/ysbaddaden/posix
crystal posix
Last synced: about 1 month ago
JSON representation
POSIX/C bindings generator for the Crystal programming language
- Host: GitHub
- URL: https://github.com/ysbaddaden/posix
- Owner: ysbaddaden
- Created: 2016-04-11T16:48:54.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2020-12-09T14:04:37.000Z (about 4 years ago)
- Last Synced: 2024-08-03T17:12:31.870Z (4 months ago)
- Topics: crystal, posix
- Language: Crystal
- Size: 60.5 KB
- Stars: 33
- Watchers: 8
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-crystal - posix - POSIX/C bindings (C bindings)
README
# C bindings for Crystal
Follows the IEEE Std 1003.1, 2013 Edition (The Open Group Base Specifications
Issue 7) as much as libc implementations do, along with some common additions
that are required by Crystal.Bindings are automatically generated with CrystalLib from C headers.
## Targets
Crystal only supports the `x86` and `x86_64` targets for now, but we should be
capable to generate bindings for whatever POSIX C implementation. Each target
will be checked when headers have been verified to be compliant.- Android
- [ ] `arm`
- [ ] `arm64`
- [ ] `mips`
- [ ] `mips64`
- [ ] `mips`
- [ ] `mips64`
- [ ] `x86`
- [ ] `x86_64`- FreeBSD
- [ ] `x86`
- [x] `x86_64`- iOS
- [ ] `arm`
- [ ] `arm64`- Linux
- [x] gnu (`x86`, `x86_64`)
- [x] musl (`x86`, `x86_64`)- Mac OSX
- [x] darwin (`x86_64`)- Windows
- [ ] cygwin## Headers
- [ ] `aio.h`
- [x] `arpa/inet.h`
- [ ] `assert.h`
- [ ] `complex.h`
- [x] `cpio.h`
- [ ] `ctype.h`
- [x] `dirent.h`
- [x] `dlfcn.h`
- [x] `errno.h`
- [x] `fcntl.h`
- [x] `fenv.h`
- [x] `float.h`
- [ ] `fmtmsg.h`
- [x] `fnmatch.h`
- [x] `ftw.h`
- [x] `glob.h`
- [x] `grp.h`
- [x] `iconv.h`
- [ ] `inttypes.h`
- [ ] `iso646.h`
- [x] `langinfo.h`
- [x] `libgen.h`
- [x] `limits.h`
- [x] `locale.h`
- [x] `math.h`
- [x] `monetary.h`
- [ ] `mqueue.h`
- [ ] `ndbm.h`
- [x] `net/if.h`
- [x] `netdb.h`
- [x] `netinet/in.h`
- [x] `netinet/tcp.h`
- [x] `nl_types.h`
- [x] `poll.h`
- [x] `pthread.h`
- [x] `pwd.h`
- [x] `regex.h`
- [x] `sched.h`
- [x] `search.h`
- [x] `semaphore.h`
- [x] `setjmp.h`
- [x] `signal.h`
- [x] `spawn.h`
- [ ] `stdarg.h`
- [ ] `stdbool.h`
- [x] `stddef.h`
- [x] `stdint.h`
- [x] `stdio.h`
- [x] `stdlib.h`
- [x] `string.h`
- [x] `strings.h`
- [ ] `stropts.h`
- [x] `sys/ipc.h`
- [x] `sys/mman.h`
- [ ] `sys/msg.h`
- [x] `sys/resource.h`
- [x] `sys/select.h`
- [x] `sys/sem.h`
- [x] `sys/shm.h`
- [x] `sys/socket.h`
- [x] `sys/stat.h`
- [ ] `sys/statvfs.h`
- [x] `sys/time.h`
- [x] `sys/times.h`
- [x] `sys/types.h`
- [x] `sys/uio.h`
- [x] `sys/un.h`
- [x] `sys/utsname.h`
- [x] `sys/wait.h`
- [x] `syslog.h`
- [ ] `tar.h`
- [x] `termios.h`
- [ ] `tgmath.h`
- [x] `time.h`
- [ ] `trace.h`
- [x] `ulimit.h`
- [x] `unistd.h`
- [x] `utmpx.h`
- [ ] `wchar.h`
- [ ] `wctype.h`
- [ ] `wordexp.h`