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

  • From: Niels Sascha Reedijk <niels.reedijk@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 12 Aug 2012 11:05:36 +0200

Hi,

On Sun, Aug 12, 2012 at 12:32 AM,  <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_function_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.

Perhaps it is better to revert this. With a clean generated directory
I now run into the following errors on Mac OS X 10.8:


C++ 
/Volumes/Haiku_Build/build-gcc2/objects/darwin/x86_64/release/build/libroot/function_remapper.o
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:
In function ‘int fchmodat(int, const char*, mode_t, int)’:
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:28:
error: previous declaration of ‘int fchmodat(int, const char*, mode_t,
int)’ with ‘C++’ linkage
/Volumes/Haiku_Build/haiku-trunk/src/build/libroot/function_remapper.cpp:31:
error: conflicts with new declaration with ‘C’ linkage
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:
In function ‘int fstatat(int, const char*, stat*, int)’:
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:29:
error: previous declaration of ‘int fstatat(int, const char*, stat*,
int)’ with ‘C++’ linkage
/Volumes/Haiku_Build/haiku-trunk/src/build/libroot/function_remapper.cpp:49:
error: conflicts with new declaration with ‘C’ linkage
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:
In function ‘int mkdirat(int, const char*, mode_t)’:
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:30:
error: previous declaration of ‘int mkdirat(int, const char*, mode_t)’
with ‘C++’ linkage
/Volumes/Haiku_Build/haiku-trunk/src/build/libroot/function_remapper.cpp:58:
error: conflicts with new declaration with ‘C’ linkage
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:
In function ‘int mkfifoat(int, const char*, mode_t)’:
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:31:
error: previous declaration of ‘int mkfifoat(int, const char*,
mode_t)’ with ‘C++’ linkage
/Volumes/Haiku_Build/haiku-trunk/src/build/libroot/function_remapper.cpp:67:
error: conflicts with new declaration with ‘C’ linkage
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:
In function ‘int mknodat(int, const char*, mode_t, dev_t)’:
/Volumes/Haiku_Build/haiku-trunk/headers/build/host/darwin/sys/stat.h:32:
error: previous declaration of ‘int mknodat(int, const char*, mode_t,
dev_t)’ with ‘C++’ linkage
/Volumes/Haiku_Build/haiku-trunk/src/build/libroot/function_remapper.cpp:202:
error: conflicts with new declaration with ‘C’ linkage

Back to the drawing board with this one.

N>

Other related posts: