Le Mercredi 13 juillet 2005 à 12:31 -0700, Sam Leffler a écrit : > Giorgos Keramidas wrote: > > On 2005-07-12 17:59, Florent Thoumie <[EMAIL PROTECTED]> wrote: > > > >>I'm currently working on OpenBGPd port update and I'm facing a little > >>problem that is actually quite painful to deal with. > >> > >>I need some macros from OpenBSD sys/queue.h which aren't present in > >>FreeBSD. I can replace #include <sys/queue.h> with #include "queue.h" > >>and copy the file in the working directory but this leads to having > >>more than 10 patches. > >> > >>Yeah I'm using REINPLACE_CMD, but sometimes sys/queue.h is a hidden > >>"dependency" (by hidden, I mean it's included by an included header > >>file, and doesn't show up directly in the source file). > >> > >>So, could somebody consider merging these SIMPLEQ_* macros or even > >>synchronize FreeBSD and OpenBSD versions ? > > > > > > OpenBSD tries to keep this header in sync with NetBSD, AFAICT from the > > cvs logs in their tree. > > > > I have the queue.h headers from all three on my disk and I'm already > > looking at the differences, so if you don't mind waiting 1-2 days so > > that I can run any changes through a buildworld I'll give it a try. > > > > If you have changes that depend on SIMPLEQ_* that could serve as a test > > case that you can share, it would be nice too :-) > > trouble% grep STAILQ /sys/dev/ubsec/ubsec.c > #define SIMPLEQ_HEAD STAILQ_HEAD > #define SIMPLEQ_ENTRY STAILQ_ENTRY > #define SIMPLEQ_INIT STAILQ_INIT > #define SIMPLEQ_INSERT_TAIL STAILQ_INSERT_TAIL > #define SIMPLEQ_EMPTY STAILQ_EMPTY > #define SIMPLEQ_FIRST STAILQ_FIRST > #define SIMPLEQ_REMOVE_HEAD STAILQ_REMOVE_HEAD_UNTIL > #define SIMPLEQ_FOREACH STAILQ_FOREACH > > Not sure who's to blaim for this but it'd be nice to unify the names so > drivers don't need portability shims like this.
Not sure if we (or OpenBSD/NetBSD) will change STAILQ for SIMPLEQ (or the opposite), but having STAILQ_REMOVE_HEAD instead of STAILQ_REMOVE_HEAD_UNTIL would be nice so that there are no special case (actually, I just sed 's/SIMPLEQ/STAILQ' since it doesn't seem to use SIMPLEQ_REMOVE_HEAD). -- Florent Thoumie [EMAIL PROTECTED]
signature.asc
Description: This is a digitally signed message part