Hi,
I would like to discuss about mingw32ce and the way it's implemented. >From what I understand you comment missing include files on the windows CE platform like this : /* Define to 1 if you have the <errno.h> header file. */ #undef HAVE_ERRNO_H or like that #if _GLIBCXX_HAVE_ERRNO_H #include <cerrno> #endif 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 : + Native lib are already embedded on devices so why should I add other lib to do the same things + 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. + 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. 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 : true "AR_FLAGS=rc" "CC_FOR_BUILD=gcc" "CC_FOR_TARGET=/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" "CFLAGS=-O2 -g -O2 " "CXXFLAGS=-g -O2 " "CFLAGS_FOR_BUILD=-g -O2" "CFLAGS_FOR_TARGET=-O2 -g -O2 " "INSTALL=/usr/bin/install -c" "INSTALL_DATA=/usr/bin/install -c -m 644" "INSTALL_PROGRAM=/usr/bin/install -c" "INSTALL_SCRIPT=/usr/bin/install -c" "LDFLAGS=" "LIBCFLAGS=-O2 -g -O2 " "LIBCFLAGS_FOR_TARGET=-O2 -g -O2 " "MAKE=make" "MAKEINFO=makeinfo --split-size=5000000 --split-size=5000000 " "PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/sh" "RUNTESTFLAGS=" "exec_prefix=/opt/mingw32ce" "infodir=/opt/mingw32ce/info" "libdir=/opt/mingw32ce/lib" "includedir=/opt/mingw32ce/include" "prefix=/opt/mingw32ce" "tooldir=/opt/mingw32ce/arm-mingw32ce" "gdc_include_dir=/opt/mingw32ce/include/d2/4.1.0" "AR=arm-mingw32ce-ar" "AS=/home/Vincent/cegcc/src/build-mingw32ce/gcc/./gcc/as" "LD=/home/Vincent/cegcc/src/build-mingw32ce/gcc/./gcc/collect-ld" "RANLIB=arm-mingw32ce-ranlib" "NM=/home/Vincent/cegcc/src/build-mingw32ce/gcc/./gcc/nm" "NM_FOR_BUILD=" "NM_FOR_TARGET=arm-mingw32ce-nm" "DESTDIR=" "WERROR=" DO=all multi-do # make CC_FOR_BUILD="gcc -I /home/Vincent/cegcc/src/gcc/libphobos/config" BUILD_LIBIBERTY=../../build-i686-pc-cygwin/libiberty/libiberty.a /home/Vincent/cegcc/src/gcc/libphobos/config/x3 /home/Vincent/cegcc/src/gcc/libphobos/config/errno.x3 -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: 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 make[3]: Leaving directory `/home/Vincent/cegcc/src/build-mingw32ce/gcc/arm-mingw32ce/libphobos' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/Vincent/cegcc/src/build-mingw32ce/gcc/arm-mingw32ce/libphobos' make[1]: *** [all-target-libphobos] Error 2 make[1]: Leaving directory `/home/Vincent/cegcc/src/build-mingw32ce/gcc' make: *** [all] Error 2 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. 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. Thanks ------------------------------------------------------------------------- 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