On 09/06/09 22:05 +0300, Felipe Contreras wrote: > On Tue, Jun 9, 2009 at 9:53 PM, Lauri Leukkunen<[email protected]> wrote: > > On 09/06/09 21:12 +0300, Felipe Contreras wrote: > >> On Mon, Jun 8, 2009 at 11:27 PM, Lauri Leukkunen<[email protected]> wrote: > >> > On 08/06/09 19:58 +0300, Felipe Contreras wrote: > >> >> Probably related to gcc 4.4? > >> > > >> > The problem with these is that compilation breaks for all older systems, > >> > can't apply. Is there any way to detect the newer compiler and make this > >> > ifdef'ed? > >> > >> Does it really breaks? By Googling in most places I see the argument > >> is 'struct dirent **', and this is POSIX, so the change comes from > >> glib? I have 2.10.1. > >> > >> Maybe we can create a scandir_arg_t type that is 'void *' or 'struct > >> dirent **' depending on the system. > > > > It does break, I tried compiling on my Fedora 10. Your patch already defines > > SCANDIR_TYPE_ARG4, but doesn't actually use it. Makes me wonder if we > > could simply > > #ifndef SCANDIR_TYPE_ARG4 > > #define SCANDIR_TYPE_ARG4 int(*compar)(const void *, const void *) > > #endif > > > > and then make the WRAP line use SCANDIR_TYPE_ARG4... > > ? > > SCANDIR_TYPE_ARG1, SCANDIR_TYPE_ARG2, and SCANDIR_TYPE_ARG4 are not > used. If we have a scandir_arg_t, SCANDIR_TYPE_ARG3 is not really > needed, right?
Hmm, it seems this whole *_TYPE_ARG* business is sb2's own invention. Heh. I'll need to think this over a little bit. Basically this could be handled in the configure script, testing compilation of little test snippets with the variations and choosing the one that works. I guess it doesn't make much difference if all of the arguments are in a single macro vs. split into four macros. It won't really be readable either way without looking at the generated config.h. /lauri _______________________________________________ Scratchbox-devel mailing list [email protected] http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-devel
