[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libfixposix

From: Stelian Ionescu
Subject: Re: libfixposix
Date: Sat, 18 Feb 2017 18:15:22 +0100

> Hi,
> libfixposix, like gnulib, attempts to bridge over portability problems
> and adds utility data structures.
> https://github.com/sionescu/libfixposix/tree/master/src/lib
> Things it has but gnulib doesn't have:
>   - <sys/signalfd.h> emulation
>   - sendfile
>   - <syslog.h>
>   - O_CLOEXEC support for sockets (?)
>   - A bitset data structure.

It also has a process spawning facility, loosely inspired by posix_spawn.
The goals of libfixposix and gnulib might seem superficially similar, but 
they're a bit different:

1) I've written it as support for a CommonLisp 
project(https://github.com/sionescu/iolib), and since in Lisp we load shared 
libraries through dlopen() and bind to the symbols through dlsym(), libfixposix 
must be a shared library and it exposes function wrappers for many C macros, 
e.g. CMSG_FIRSTHDR & co.

2) In some cases, like for lfp_spawn(), I want to supersede POSIX functionality 
not bridge over differences. At some point I started reimplementing 
getaddrinfo() & friends because the differences between GNU Glibc, FreeBSD, and 
OSX were driving me mad, but then I just wrote it in Lisp

3) In the Lisp community (L)GPLv[23] are generally considered unacceptable so I 
settled on the Boost Public Licence

Stelian Ionescu a.k.a. fe[nl]ix
Quidquid latine dictum sit, altum videtur.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]