Am 16.04.2009 um 19:52 schrieb Danny Backx: > I have questions about your submissions. With some answers, I can > commit > stuff to the SVN. > > Would it work on your target if we said something like > #ifdef __DARWIN_UNIX03 > %token NAME LIBRARY DESCRIPTION LEOPARD_STACKSIZE > %token HEAPSIZE CODE DATAU DATAL > #else > %token NAME LIBRARY DESCRIPTION STACKSIZE HEAPSIZE CODE DATAU DATAL > #endif > > and obviously a similar change to the other line ?
Hmm I haven't tried this before, because I supposed that yacc does not support #ifdefs... I tried it now it and does not work: /bin/sh /Users/cerial/Workspace/cegcc/src/binutils/ld/../ylwrap /Users/ cerial/Workspace/cegcc/src/binutils/ld/deffilep.y y.tab.c deffilep.c y.tab.h deffilep.h y.output deffilep.output -- bison -y -d /Users/cerial/Workspace/cegcc/src/binutils/ld/deffilep.y:107.1: invalid character: `#' /Users/cerial/Workspace/cegcc/src/binutils/ld/deffilep.y:107.2-6: syntax error, unexpected identifier make[4]: *** [deffilep.c] Error 1 make[3]: *** [all-recursive] Error 1 make[2]: *** [all] Error 2 make[1]: *** [all-ld] Error 2 make: *** [all] Error 2 I don't have enough knowledge about yacc to fix this correctly so that this patch does not affect other platforms; if someone here knows more please help! >> +#ifndef __DARWIN_UNIX03 >> extern int sigaltstack(const struct sigaltstack *, struct sigaltstack >> *); >> +#endif > > Can you explain what the __DARWIN_UNIX03 symbol means ? Is it one > specific release of the operating system ? Is it better to use > something > like __DARWIN_UNIX or __DARWIN or are there no such things ? The __DARWIN_UNIX03 symbol is defined from Mac OSX 10.5 Leopard onwards according to several sources in the internet and after a brief look in /usr/include/sys/cdefs.h. The patch is not required on pre-Leopard platforms (according to: http://mail-index.netbsd.org/netbsd-bugs/2008/02/13/msg001324.html) , but I don't have any older installations of Mac OSX here to check :( So I thought it would be correct to use this symbol here. What do you think? >> -WINUSERAPI HMENU WINAPI GetMenu(HWND); >> +/* WINUSERAPI HMENU WINAPI GetMenu(HWND); */ >> +#define GetMenu(x) (NULL) > > Shouldn't this be > > + #ifndef UNDER_CE > WINUSERAPI HMENU WINAPI GetMenu(HWND); > + #endif > > Any CE application that tries to use GetMenu is invalid so it would be > better not to allow it to compile. Right ? You are completely right, I have fixed this now (I will supply a new patch as soon the above problems are solved). Cerial -- Ismail "Cerial" Khatib, http://pocketinsanity.org ------------------------------------------------------------------------------ Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p _______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel