0.93.2 and OS/2

Matthias Andree matthias.andree at gmx.de
Sat Dec 4 21:38:20 CET 2004


"Yuri Dario" <warp at os2power.com> writes:

> today I started building new bogofilter binaries with gcc 3.3.5 for
> OS/2, and I found some problems. The last "official" build for OS/2 is
> the 0.92.4 version.
>
> The new transactional engine seems to make porting a bit problematic.

You can compile without, ./configure --disable-transactions - you won't
get any consistency or durability guarantees in that case though.

> First, db_lock.c is using link() in create_lockfile(): is it the same
> to use a symlink? OS/2 doesn't provide hard links, but we got an
> experimental symlink engine with latest libc.

No, it's not the same. The idea of that code is to atomically generate a
pre-initialized lock table. A careful rewrite may remove the need for
link().

> I changed code to use symlink,

That won't work as the original name will be unlinked, hence the symlink
becomes dangling (broken).

> but then I discovered mmap(2) support
> is required for BDB: unfortunately, libc currently doesn't have a
> solution for it.

Does OS/2 have shmget() or equivalent? If it does, you can do without
mmap(). You may need to override HAVE_MMAP in config.h.

-- 
Matthias Andree




More information about the bogofilter-dev mailing list