Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 9 Jan 2012 21:40:10 +0700
From: Alexey Dokuchaev <danfe@....ru>
To: Solar Designer <solar@...nwall.com>
Cc: john-users@...ts.openwall.com
Subject: Re: 1.7.9-jumbo5 fails to build with OMPFLAGS = -fopenmp -msse2

On Mon, Jan 09, 2012 at 12:10:25PM +0400, Solar Designer wrote:
> On Mon, Jan 09, 2012 at 02:26:46PM +0700, Alexey Dokuchaev wrote:
> > In file included from recovery.c:21:
> > /usr/include/sys/file.h:161: error: expected specifier-qualifier-list
> > before 'u_int'
> 
> Looks like a bug in FreeBSD to me.  Maybe you can report it to the right
> people.

Well, in this particular case, the problem happens due to the fact that
FreeBSD's header `sys/file.h' uses u_int, which is defined in `sys/types.h'
and protected by __BSD_VISIBLE macro.  Defining _POSIX_SOURCE or
_XOPEN_SOURCE (to any value) sets __BSD_VISIBLE to zero, and JtR build
woes.

> Meanwhile, can you try replacing "#define _XOPEN_SOURCE 500" with
> "#define _POSIX_SOURCE" - does this help?  That is, instead of removing
> the line (which helps for FreeBSD, but breaks build on some other
> systems), try replacing it with "#define _POSIX_SOURCE".  Another thing
> to try is _XOPEN_SOURCE 600 instead of 500.

None of these tricks helps.  Disabling inclusion of <sys/file.h> allows
recovery.c to compile cleanly with original _XOPEN_SOURCE 500 though.

./danfe

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.