This fixes the build on mips64.

On Mon, Jul 01, 2013 at 10:36:09AM -0700, Matthew Dempsky wrote:
> There's an unaligned word access in ninja's murmurhash implementation:
> https://github.com/martine/ninja/blob/master/src/hash_map.h
> 
> We need to change
> 
>     unsigned int k = *(unsigned int *)data;
> 
> to
> 
>     unsigned int k;
>     memcpy(&k, data, sizeof k);
> 
> and it should fix the unaligned accesses on strict arches like sparc64 and 
> mips.
> 
> Sorry, I'm not able to fix this myself right now, but I can help
> upstream the fix tomorrow.  (I'm of course ok with any ports fix for
> this.)
> 
> 
> On Mon, Jul 1, 2013 at 10:24 AM, James Turner <jtur...@openbsd.org> wrote:
> > Mathew,
> >
> > I just wanted to let you know we have discovered some build failures on
> > sgi and mips64el during the "Build ninja using itself" phase. It looks
> > like something is segfaulting. Below is the build output although it
> > isn't very helpful.
> >
> > I can test diffs on mips64el and plan on trying to compile with debug
> > symbols to see if I can get more info out of the core file that is left.
> >
> > Building ninja using itself...
> > *** Error 246 in devel/ninja (Makefile:32 'do-build': @cd
> > /usr/obj/ports/ninja-1.3.4/ninja-1.3.4 && /usr/bin/env -i CXX="c++"CC=cc 
> > PYTHONUS...)
> > *** Error 1 in devel/ninja
> > (/usr/ports/infrastructure/mk/bsd.port.mk:2634'/usr/obj/ports/ninja-1.3.4/.build_done')
> > *** Error 1 in devel/ninja
> > (/usr/ports/infrastructure/mk/bsd.port.mk:2367 'build')
> > ===> Exiting devel/ninja with an error
> > /bin/sh: exit 1: not found
> > *** Error 127 in /usr/ports 
> > (infrastructure/mk/bsd.port.subdir.mk:147'build')
> > Error: /usr/ports/packages/mips64el/all/ninja-1.3.4.tgz does not exist
> >
> > --
> > James Turner
> 

-- 
Regards,

Jasper Lievisse Adriaanse,
Engineering team M:tier

Reply via email to