• Sam Lantinga's avatar
    Updates for building on Windows CE using mingw32ce cross compiler: · 76b4e077
    Sam Lantinga authored
    http://sourceforge.net/mailarchive/forum.php?thread_name 0703291652.38437.jwalt%40garni.ch&forum_name=cegcc-devel
    
    Hi!
    
    I just managed to compile SDL for Windows CE using the "mingw32ce"
    configuration of http://cegcc.sourceforge.net. Test programs work as expected
    (except for those using signals -- no POSIX on mingw32ce), and I didn't yet
    encounter any problem.
    
    While it was a pain to get everything compiled and running, the changes to
    SDL are actually quite small (see attached SDL-ce.diff).
    
    Unfortunately, the win32 headers shipped with cegcc are not 100% correct, and
    it feels quite messy to work around them in SDL code, so those headers will
    also need to be patched. (Attachment: win32api-ce.diff)
    
    Since I had to apply the libtool patch from the cegcc patch, I have also ad ded
    my copy of aclocal.m4 for SDL. I had to modify the cegcc libtool patch to
    use "lt_cv_deplibs_check_method=pass_all" for mingw32ce, otherwise libtool
    would not recognize the import libraries as valid for dynamic linking.
    
    All these changes should not affect non-WinCE builds, so they could be
    included in mainline SDL.
    
    If you need some docs, you can use this description for a cross-compilation
    README:
    
    1) get cegcc from http://cegcc.sourceforge.net
    2) build and install the "mingw32ce" variant (see cegcc installation docs)
    3) patch w32api-headers (if not yet included in cegcc)
    4) setup environment (customize the first three lines as you like):
    PREFIX=/opt/mingw32ce
    TARGET=arm-wince-mingw32ce
    BUILD=`uname -m`-pc-linux-gnu
    export PATH="$PREFIX/bin:$PREFIX/$TARGET/bin:$PREFIX/local/bin:$PATH"
    export CFLAGS="${CFLAGS:- -O2 -g} -I$PREFIX/local/include"
    export CPPFLAGS="${CPPFLAGS:- -O2 -g} -I$PREFIX/local/include"
    export CXXFLAGS="${CXXFLAGS:- -O2 -g} -I$PREFIX/local/include"
    export LDFLAGS="${LDFLAGS:- -O2 -g} -L$PREFIX/local/lib"
    export HOST_CC="gcc"
    export CC="$PREFIX/bin/$TARGET-gcc"
    export CXX="$PREFIX/bin/$TARGET-g++"
    export LD="$PREFIX/bin/$TARGET-ld"
    export AS="$PREFIX/bin/$TARGET-as"
    export AR="$PREFIX/bin/$TARGET-ar"
    export RANLIB="$PREFIX/bin/$TARGET-ranlib"
    export CONFIG_SHELL="/bin/sh"
    5) build and install
    ./configure --target=$TARGET --host=$TARGET --build=$BUILD
    make
    make install
    6) use (4) and (5) for any SDL-using software you want to cross-compile
    7) copy $PREFIX/local/bin/SDL-1-2-0.dll into your executable directory on the WinCE machine
    
    --HG--
    branch : SDL-1.2
    extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%402703
    76b4e077
Name
Last commit
Last update
..
Xext Loading commit data...
aalib Loading commit data...
ataricommon Loading commit data...
bwindow Loading commit data...
dc Loading commit data...
dga Loading commit data...
directfb Loading commit data...
dummy Loading commit data...
fbcon Loading commit data...
gapi Loading commit data...
gem Loading commit data...
ggi Loading commit data...
ipod Loading commit data...
maccommon Loading commit data...
macdsp Loading commit data...
macrom Loading commit data...
nanox Loading commit data...
nds Loading commit data...
os2fslib Loading commit data...
photon Loading commit data...
picogui Loading commit data...
ps2gs Loading commit data...
qtopia Loading commit data...
quartz Loading commit data...
riscos Loading commit data...
svga Loading commit data...
symbian Loading commit data...
vgl Loading commit data...
wincommon Loading commit data...
windib Loading commit data...
windx5 Loading commit data...
wscons Loading commit data...
x11 Loading commit data...
xbios Loading commit data...
SDL_RLEaccel.c Loading commit data...
SDL_RLEaccel_c.h Loading commit data...
SDL_blit.c Loading commit data...
SDL_blit.h Loading commit data...
SDL_blit_0.c Loading commit data...
SDL_blit_1.c Loading commit data...
SDL_blit_A.c Loading commit data...
SDL_blit_N.c Loading commit data...
SDL_bmp.c Loading commit data...
SDL_cursor.c Loading commit data...
SDL_cursor_c.h Loading commit data...
SDL_gamma.c Loading commit data...
SDL_glfuncs.h Loading commit data...
SDL_leaks.h Loading commit data...
SDL_pixels.c Loading commit data...
SDL_pixels_c.h Loading commit data...
SDL_stretch.c Loading commit data...
SDL_stretch_c.h Loading commit data...
SDL_surface.c Loading commit data...
SDL_sysvideo.h Loading commit data...
SDL_video.c Loading commit data...
SDL_yuv.c Loading commit data...
SDL_yuv_mmx.c Loading commit data...
SDL_yuv_sw.c Loading commit data...
SDL_yuv_sw_c.h Loading commit data...
SDL_yuvfuncs.h Loading commit data...
blank_cursor.h Loading commit data...
default_cursor.h Loading commit data...
e_log.h Loading commit data...
e_pow.h Loading commit data...
e_sqrt.h Loading commit data...
math_private.h Loading commit data...
mmx.h Loading commit data...