On Wed, 21 Jan 2009 16:17:12 +0000, "Hywel B. Richards" <hywel.richa...@gmail.com> wrote: > Hi, > > Is anyone out there compiling for WinCE/SH4? > > Is it possible to coax cegcc to build for this platform, or does there > exist another gcc-based cross-compiling toolchain somewhere? > > Failing that, does anyone know how I might go about building for this > platform using gcc? > > Many thanks in advance. > > Hywel. > > Official maintainer Pedro or Danny could give you a better answer but if I were you I would download a vanilla binutils/gcc and make a diff with cegcc. You would see that actually cegcc for instance add some support for configure triplet and some files. By analyzing this changes you should be able to add support for SH. I think in 3-4 days you should be able to do it, for instance with arm you have wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) so you should look for sh*-*-pe) and replace it by sh*-*-pe | sh*-*-cegcc* | sh*-*-mingw32ce*)
Once you have modified everywhere you will use sh-mingw32ce or sh-cegcc in build-script. diff -urN binutils-2008-12-11/src/binutils/configure binutils-cegcc-4.1.2/src/binutils/configure --- binutils-2008-12-11/src/binutils/configure 2008-10-31 03:52:14.000000000 +0100 +++ binutils-cegcc-4.1.2/src/binutils/configure 2008-12-16 21:14:14.268157000 +0100 @@ -16099,7 +16099,7 @@ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ;; - arm-wince-pe* | arm-*-wince) + arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' if test -z "$DLLTOOL_DEFAULT"; then DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" diff -urN binutils-2008-12-11/src/binutils/configure.in binutils-cegcc-4.1.2/src/binutils/configure.in --- binutils-2008-12-11/src/binutils/configure.in 2008-10-31 03:52:14.000000000 +0100 +++ binutils-cegcc-4.1.2/src/binutils/configure.in 2008-12-16 21:14:14.268157000 +0100 @@ -275,7 +275,7 @@ BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)' BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)' ;; - arm-wince-pe* | arm-*-wince) + arm-wince-* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*) BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)' if test -z "$DLLTOOL_DEFAULT"; then DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_WINCE" diff -urN binutils-2008-12-11/src/configure.ac binutils-cegcc-4.1.2/src/configure.ac --- binutils-2008-12-11/src/configure.ac 2008-11-27 18:14:58.000000000 +0100 +++ binutils-cegcc-4.1.2/src/configure.ac 2008-12-16 21:14:14.268157000 +0100 @@ -537,7 +537,7 @@ sh-*-linux*) noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" ;; - sh*-*-pe|mips*-*-pe|*arm-wince-pe) + sh*-*-pe|mips*-*-pe|*arm-wince-pe|arm*-*-mingw32ce*|arm*-*-cegcc*) noconfigdirs="$noconfigdirs ${libgcj}" noconfigdirs="$noconfigdirs target-examples" noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" diff -urN binutils-2008-12-11/src/gas/configure.tgt binutils-cegcc-4.1.2/src/gas/configure.tgt --- binutils-2008-12-11/src/gas/configure.tgt 2008-11-06 16:36:38.000000000 +0100 +++ binutils-cegcc-4.1.2/src/gas/configure.tgt 2008-12-16 21:14:14.268157000 +0100 @@ -120,7 +120,8 @@ arm-*-*n*bsd*) fmt=aout em=nbsd ;; arm-*-nto*) fmt=elf ;; arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; - arm-wince-pe | arm-*-wince) fmt=coff em=wince-pe ;; + arm-wince-* | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) + fmt=coff em=wince-pe ;; arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; arm-*-riscix*) fmt=aout em=riscix ;; diff -urN binutils-2008-12-11/src/ld/configure.tgt binutils-cegcc-4.1.2/src/ld/configure.tgt --- binutils-2008-12-11/src/ld/configure.tgt 2008-11-17 21:11:48.000000000 +0100 +++ binutils-cegcc-4.1.2/src/ld/configure.tgt 2008-12-16 21:14:14.268157000 +0100 @@ -44,7 +44,8 @@ arc-*-elf*) targ_emul=arcelf ;; arm-epoc-pe) targ_emul=arm_epoc_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; -arm-wince-pe | arm-*-wince) targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; +arm-wince-* | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) + targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; arm-*-pe) targ_emul=armpe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;; arm-*-aout | armel-*-aout) targ_emul=armaoutl ;; armeb-*-aout) targ_emul=armaoutb ;; ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel