[haiku-commits] Re: haiku: hrev44516 - headers/build/host/darwin src/build/libroot headers/build/host/darwin/sys

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 12 Aug 2012 13:08:09 +0200

On 2012-08-12 at 00:32:02 [+0200], jscipione@xxxxxxxxx wrote:
> hrev44516 adds 1 changeset to branch 'master'
> old head: 0de0cd6c473a290a68db994d6e83071bb192636e
> new head: a43b1ed6d894723ed5dbc26e2c399e8ad46022d6
> 
> ----------------------------------------------------------------------------
> 
> a43b1ed: Split fs_darwin.h defines into various platform dependent headers.
>   
>   This completes the final 1/3 of #8857. Changes again by nielx with
>   style fixes by me.
>   
>   The one part that I couldn't figure out, and maybe Ingo can chime
>   in here. If headers/build/host/darwin/sys/stat.h is surrounded in
>   
>   extern "C" {
>   
>   }
>   
>   guards then I get a link error complaining that the functions defined
>   here are duplicate symbols, once in fs.o and once in function_remapper.o.
>   For example:
>   
>   ld: duplicate symbol _futimens in 
>   generated/objects/darwin/x86_64/release/build/libroot/libroot_build_functi
>   on_remapper.a(function_remapper.o) and 
>   generated/objects/darwin/x86_64/release/build/libroot/libroot_build.a(fs.o
>   ) for architecture x86_64
>   
>   I'm not sure why that is.

Without more information (like the linker line) it's hard to guess. Omitting 
the 'extern "C"' block isn't a good idea in any event.

CU, Ingo

Other related posts: