comparison src/video/windib/SDL_dibvideo.c @ 4134:31c7c57af8a4 SDL-1.2

Updates for building on Windows CE using mingw32ce cross compiler: 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
author Sam Lantinga <slouken@libsdl.org>
date Thu, 03 Jan 2008 06:19:07 +0000
parents 822f9624f984
children 8797fa6e2fb2
comparison
equal deleted inserted replaced
4133:2130d625816f 4134:31c7c57af8a4
39 #include "../wincommon/SDL_sysmouse_c.h" 39 #include "../wincommon/SDL_sysmouse_c.h"
40 #include "SDL_dibevents_c.h" 40 #include "SDL_dibevents_c.h"
41 #include "../wincommon/SDL_wingl_c.h" 41 #include "../wincommon/SDL_wingl_c.h"
42 42
43 #ifdef _WIN32_WCE 43 #ifdef _WIN32_WCE
44
45 #ifndef DM_DISPLAYORIENTATION
46 #define DM_DISPLAYORIENTATION 0x00800000L
47 #endif
48 #ifndef DM_DISPLAYQUERYORIENTATION
49 #define DM_DISPLAYQUERYORIENTATION 0x01000000L
50 #endif
51 #ifndef DMDO_0
52 #define DMDO_0 0
53 #endif
54 #ifndef DMDO_90
55 #define DMDO_90 1
56 #endif
57 #ifndef DMDO_180
58 #define DMDO_180 2
59 #endif
60 #ifndef DMDO_270
61 #define DMDO_270 4
62 #endif
63
44 #define NO_GETDIBITS 64 #define NO_GETDIBITS
45 #define NO_GAMMA_SUPPORT 65 #define NO_GAMMA_SUPPORT
46 #if _WIN32_WCE < 420 66 #if _WIN32_WCE < 420
47 #define NO_CHANGEDISPLAYSETTINGS 67 #define NO_CHANGEDISPLAYSETTINGS
48 #else 68 #else