MinGW32 makefile

Hello,

Here is my humble contribution. Basically, I converted the VC++ project
files into some kind of makefile for MinGW32. Put it in the src/
directory. It builds a staticlly linked library.

The other makefile goes in the test/ directory and builds a few test
programs.

Ben
-------------- next part --------------

CC = gcc

OPT_FLAGS = -Wall -O3

INCLUDE = -I. -I…/include -Iaudio -Icdrom -Iendian -Ievents -Ifile -Ihermes -Ijoystick -Imain -Ithread -Ithread/win32 -Itimer -Ivideo -Ivideo/wincommon

DEFINES = -DNOCONTROLS -DENABLE_WINDIB

LIB_OBJECTS =
SDL.o
SDL_error.o
SDL_fatal.o

audio/SDL_audio.o
audio/SDL_audiocvt.o
audio/SDL_audiomem.o
audio/SDL_mixer.o
audio/SDL_wave.o
audio/Win32/SDL_dibaudio.o
audio/Win32/SDL_dx5audio.o

video/SDL_blit.o
video/SDL_blit_0.o
video/SDL_blit_1.o
video/SDL_blit_A.o
video/SDL_blit_AK.o
video/SDL_blit_K.o
video/SDL_blit_N.o
video/SDL_bmp.o
video/SDL_cursor.o
video/SDL_pixels.o
video/SDL_RLEaccel.o
video/SDL_surface.o
video/SDL_video.o
video/SDL_yuv.o
video/SDL_yuv_sw.o
video/wincommon/SDL_sysevents.o
video/wincommon/SDL_sysmouse.o
video/wincommon/SDL_syswm.o
video/wincommon/SDL_wingl.o
video/Windib/SDL_dibevents.o
video/Windib/SDL_dibvideo.o
video/Windx5/SDL_dx5events.o
video/Windx5/SDL_dx5video.o
video/Windx5/SDL_dx5yuv.o

cdrom/SDL_cdrom.o
cdrom/win32/SDL_syscdrom.o

endian/SDL_endian.o

joystick/SDL_joystick.o
joystick/win32/SDL_mmjoystick.o

events/SDL_events.o
events/SDL_active.o
events/SDL_keyboard.o
events/SDL_mouse.o
events/SDL_quit.o

file/SDL_rwops.o

thread/generic/SDL_syscond.o
thread/win32/SDL_sysmutex.o
thread/win32/SDL_syssem.o
thread/win32/SDL_systhread.o
thread/SDL_thread.o

timer/win32/SDL_systimer.o
timer/SDL_timer.o \

all: $(LIB_OBJECTS)
ar rv libsdl.a $(LIB_OBJECTS)

.c.o:
$(CC) -c $(OPT_FLAGS) $(INCLUDE) $(DEFINES) -o $@ $*.c

clean:
rm .o
rm .a
rm audio/
.o
rm cdrom/
.o
rm endian/.o
rm events/
.o
rm file/.o
rm hermes/
.o
rm joystick/.o
rm main/
.o
rm thread/.o
rm timer/
.o
rm video/*.o

-------------- next part --------------

CC = gcc

COMPILE_FLAGS = -Wall -O3 -ggdb
LINK_FLAGS = -mwindows -Xlinker -s

INCLUDE = -I…/include

DEFINES = -DNOCONTROLS

LIBS=-L…/src -lddraw -ldinput -ldplayx -ldsound -ldxguid -lstdc++ -lgcc -lwinspool -lwinmm -lshell32 -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 -lole32 -loleaut32 -luuid -lodbc32 -lwsock32 -lopengl32 -lglu32 -lsdl -lwinmm

all: testwin.o hello.o checkkeys.o graywin.o testalpha.o testhread.o torturethread.o threadwin.o
$(CC) hello.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o hello.exe
$(CC) testwin.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o testwin.exe
$(CC) checkkeys.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o checkkeys.exe
$(CC) graywin.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o graywin.exe
$(CC) testalpha.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o testalpha.exe
$(CC) testhread.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o testhread.exe
$(CC) torturethread.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o torturethread.exe
$(CC) threadwin.o …/src/main/win32/SDL_main.o $(LIBS) $(LINK_FLAGS) -o threadwin.exe

.c.o:
$(CC) -c $(COMPILE_FLAGS) $(INCLUDE) $(DEFINES) -o $@ $*.c

clean:
rm *.o
rm *.exe