On Thu, 2008-06-19 at 13:56 +0200, Mosfet wrote: > I would like to discuss about mingw32ce and the way it's implemented. [..] > I know that errno.h, signal.h and ... are not part of the original windows > CE platform but I think it would be better to provide these headers and to > implement missing posix functions in a dll(let's call it coredllex.dll or > posix4ce.dll). > > You could anwser me that in the case I want to use these functions I should > use cegcc and this is where I disagree because there are lots of reasons > where I DO NEED to use native libraries :
We provide two solutions, you say you require a third. That may be true but it's not something we currently provide, and I'm not sure whether I want to spend the time to implement this third option. Also I'm not sure whether you really need it. > + Native lib are already embedded on devices so why should I add other lib > to do the same things I don't understand this argument. > + Some professionnal and supported tools are only working if we are using > native libs(coredll.dll) for instance when you use AppVerifier, the tools > tells the kernel to load a HOOK DLL to be able to trace functions and it > works only with coredll. If you compile stuff with cegcc then it'll link both cegcc.dll and coredll.dll . If you can't get some tools to work then something else must be going on. > + Everytime you want to generate a new wince compiler from a recent GCC you > need to analyze the modifications and to report yours and this not always > easy because sometimes software architecture is modified and you have one > chunk here and another one there. It's a big waste of time. It's not a waste of time if you try to feed back changes to the original source trees. Also it's definitely not a waste of time if you see that we save a lot of time for a number of developers : they don't have to do the tool integration themselves. > For now I am trying to generate a D cross-compiler for wince and when I try > I get the following error that has something to do with errno : [..] > ** x3: running ./errno.x3.exe -o arm-mingw32ce/gcc/config/errno.d > /home/Vincent/cegcc/src/build-mingw32ce/gcc/./gcc/xgcc > -B/home/Vincent/cegcc/src/build-mingw32ce/gcc/./gcc/ > -B/opt/mingw32ce/arm-mingw32ce/bin/ -B/opt/mingw32ce/arm-mingw32ce/lib/ > -isystem /opt/mingw32ce/arm-mingw32ce/include -isystem > /opt/mingw32ce/arm-mingw32ce/sys-include -DHAVE_CONFIG_H -I . -I > /home/Vincent/cegcc/src/gcc/libphobos/gcc > x3: failed to get macros. > make[3]: *** [arm-mingw32ce/gcc/config/errno.d] Error 1 With respect, you can't expect me to debug your problem based on this information. Also, quite frankly, nothing in this error message convinces me that the problem is in cegcc. > This is why in my case I would prefer to provide missing posix functions > when using mingw32ce. > > Because otherwise I will have to report modifications everytime D is > releasing a new version and since it 's a very recent language, things are > moving fast. You might want to do what I said above, and feed the changes for D on WinCE back to the D people so their next release will work out of the box on WinCE. > The problem is I am not familiar at all with GCC build system so if you can > tell me quickly how it could be done, it would help me. There's never a quick reply to a hard question. You might want to take a look at the cegcc/tools/errno directory. It provides simple errno simulation. You might want to build something similar for signals, you might be able to pull it from the newlib sources (see src/newlib/newlib/libc/signal). But don't expect such solutions to just work : WinCE just doesn't support signals and errno. Danny -- Danny Backx ; danny.backx - at - scarlet.be ; http://danny.backx.info ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel