Hi Christian, the failure is occurring at the code seen below in 
GetDiskSpaceFreeEx:

#ifdef HAVE_STATVFS
                ret = statvfs (utf8_path_name, &fsstat);
                isreadonly = ((fsstat.f_flag & ST_RDONLY) == ST_RDONLY);
#elif defined(HAVE_STATFS)
                ret = statfs (utf8_path_name, &fsstat);
                isreadonly = ((fsstat.f_flags & MNT_RDONLY) == MNT_RDONLY);
#endif 

Bionic does not have the statvfs function, and its statfs struct does not have 
the f_flags member. It also does not have the the MNT_RDONLY macro/define. 
Although I can add the macro, nothing can be done about the missing/different 
structures. So that hole in Bionic is not really patchable unfortunately. 
However, the fallback implementation of GetDiskSpaceFreeEx works fine... so 
it's not too huge a deal. My change is forcing it to use the fallback.

Koushik Dutta
www.koushikdutta.com

-----Original Message-----
From: Christian Prochnow [mailto:[email protected]] 
Sent: Sunday, January 18, 2009 2:11 AM
To: Koushik K. Dutta
Cc: [email protected]
Subject: Re: [Mono-dev] Tweaks needed to get Mono compiling in the Android 
build environment

Hi,

Koushik K. Dutta schrieb:
> 2.       io.c: Although Android has statfs, there are some missing
> functions and defines that prevent GetDiskSpaceFreeEx from compiling. I
> used the PLATFORM_ANDROID define again to make it fall back to the
> simpler implementation.

could you give me the exact compilation error, maybe i can tweak the
GetDiskFreeSpaceEx implementation to also compile on the Android platform.


Best regards,


Christian



-- 
Christian Prochnow
Geschäftsführer

SecuLogiX Systems GmbH
Mohriner Allee 28
12347 Berlin

http://www.seculogix.de

mobile:  +49 (0)177 313 02 57
   fon:  +49 (0)700 SECULOGIX

Geschäftsführer: Christian Prochnow
Handelsregister: B 96491, Amtsgericht Charlottenburg
_______________________________________________
Mono-devel-list mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/mono-devel-list

Reply via email to