Subversion Repositories Kolibri OS

Rev

Rev 6347 | Rev 6380 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6356 ashmew2 1
LIBRARY = SDL
2
 
6347 ashmew2 3
CC = kos32-gcc
4
AR = kos32-ar
5
LD = kos32-ld
6356 ashmew2 6
STRIP = kos32-strip
6347 ashmew2 7
 
8
SDK_DIR:= $(abspath ../../..)
9
 
10
endian_OBJS = endian/SDL_endian.o
11
file_OBJS = file/SDL_rwops.o
6356 ashmew2 12
hermes_OBJS = hermes/mmxp2_32.o hermes/mmx_main.o hermes/x86p_16.o \
13
	hermes/x86p_32.o hermes/x86_main.o
6347 ashmew2 14
thread_OBJS = thread/SDL_syscond.o thread/SDL_sysmutex.o thread/SDL_syssem.o \
15
	thread/SDL_systhread.o thread/SDL_thread.o
16
timer_OBJS = timer/SDL_timer.o timer/dummy/SDL_systimer.o
17
event_OBJS = events/SDL_active.o events/SDL_events.o events/SDL_expose.o \
18
	events/SDL_keyboard.o events/SDL_mouse.o events/SDL_quit.o \
19
	events/SDL_resize.o
20
video_OBJS = video/SDL_blit_0.o video/SDL_blit_1.o video/SDL_blit_A.o \
21
	video/SDL_blit.o video/SDL_blit_N.o video/SDL_bmp.o \
22
	video/SDL_cursor.o video/SDL_gamma.o video/SDL_pixels.o \
23
	video/SDL_RLEaccel.o video/SDL_stretch.o video/SDL_surface.o \
24
	video/SDL_video.o video/SDL_yuv.o video/SDL_yuv_mmx.o \
25
	video/SDL_yuv_sw.o video/menuetos/SDL_menuetevents.o \
26
	video/menuetos/SDL_menuetvideo.o
6356 ashmew2 27
audio_OBJS = ../../sound/src/init.obj ../../sound/src/setbuf.obj \
28
	../../sound/src/stopbuf.obj ../../sound/src/sndgetsize.obj  audio/SDL_kolibri_audio.o
6347 ashmew2 29
 
30
curr_OBJS = SDL.o SDL_error.o SDL_fatal.o SDL_getenv.o
31
 
6356 ashmew2 32
OBJECTS = $(endian_OBJS) $(file_OBJS) $(hermes_OBJS) $(thread_OBJS) \
6347 ashmew2 33
	$(timer_OBJS) $(event_OBJS) $(video_OBJS) $(curr_OBJS) $(audio_OBJS)
34
 
35
CFLAGS = -c -O2 -D_REENTRANT -I../include -I. -DPACKAGE=\"SDL\" -DVERSION=\"1.2.2\" \
36
	-fexpensive-optimizations -Wall -DENABLE_AUDIO -UDISABLE_AUDIO -DDISABLE_JOYSTICK \
37
	-DDISABLE_CDROM -DDISABLE_THREADS -DENABLE_TIMERS \
38
	-DUSE_ASMBLIT -Ihermes -Iaudio -Ivideo -Ievents \
39
	-Ijoystick -Icdrom -Ithread -Itimer -Iendian -Ifile -DENABLE_MENUETOS \
40
	-DNO_SIGNAL_H -DDISABLE_STDIO -DNEED_SDL_GETENV -DENABLE_FILE -UDISABLE_FILE \
6356 ashmew2 41
	-D__MENUETOS__ -DDEBUG_VIDEO -UWIN32 -U_Win32 -U_WIN32 -U__MINGW32__
6347 ashmew2 42
 
43
 
6356 ashmew2 44
LDFLAGS = -shared -s -nostdlib -T../../newlib/dll.lds --entry _DllStartup --image-base=0
45
# --image-base 0 -L/home/autobuild/tools/win32/mingw32/lib -lgcc /home/autobuild/tools/win32/lib/libz.a /home/autobuild/tools/win32/lib/libdll.a /home/autobuild/tools/win32/lib/libapp.a /home/autobuild/tools/win32/lib/libc.dll.a
6347 ashmew2 46
 
6356 ashmew2 47
LDFLAGS+= --out-implib lib$(LIBRARY).dll.a
48
 
6347 ashmew2 49
ARFLAGS = crs
50
 
6356 ashmew2 51
INCLUDES= -I../../newlib/libc/include -I./include -I./include/freetype/config
52
 
53
LIBPATH:= -L../../../lib -L/home/autobuild/tools/win32/mingw32/lib
54
 
55
LIBS:=  -ldll -lc.dll -lgcc
56
 
6347 ashmew2 57
#include $(MENUETDEV)/makefiles/Makefile_for_lib
58
 
6356 ashmew2 59
# all: libSDL.a
6347 ashmew2 60
 
6356 ashmew2 61
# install: libSDL.a
62
# 	mv -f libSDL.a $(SDK_DIR)/lib
6347 ashmew2 63
 
6356 ashmew2 64
# libSDL.a: $(OBJS)
65
# 	$(AR) $(ARFLAGS) libSDL.a
6347 ashmew2 66
 
6356 ashmew2 67
# ../../sound/src/init.o : ../../sound/src/init.asm Makefile
68
# 	fasm ../../sound/src/init.asm ../../sound/src/init.o
69
 
70
# ../../sound/src/setbuf.o : ../../sound/src/setbuf.asm Makefile
71
# 	fasm ../../sound/src/setbuf.asm ../../sound/src/setbuf.o
72
 
73
# ../../sound/src/stopbuf.o :  ../../sound/src/stopbuf.asm
74
# 	fasm ../../sound/src/stopbuf.asm ../../sound/src/stopbuf.o
75
 
76
# ../../sound/src/sndgetsize.o : ../../sound/src/sndgetsize.asm
77
# 	fasm ../../sound/src/sndgetsize.asm ../../sound/src/sndgetsize.o
78
 
79
%.o : %.asm Makefile
80
	nasm -f coff $< -o $@
81
 
6347 ashmew2 82
%.obj : %.asm Makefile
6356 ashmew2 83
	fasm $< $@
6347 ashmew2 84
 
6356 ashmew2 85
# %.o : %.c Makefile
86
# 	$(CC) $(CFLAGS) -o $@ $<
6347 ashmew2 87
 
6356 ashmew2 88
# clean:
89
# 	-rm -f */*.o
6347 ashmew2 90
 
91
 
6356 ashmew2 92
all:lib$(LIBRARY).a $(LIBRARY).dll
93
 
94
lib$(LIBRARY).a: $(OBJECTS) Makefile
95
	$(AR) cvrs lib$(LIBRARY).a $(OBJECTS)
96
	mv -f lib$(LIBRARY).a ../../../lib
97
 
98
$(LIBRARY).dll: $(OBJECTS) Makefile
99
	$(warning "$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)")
100
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)
101
	$(STRIP) $@
102
	#sed -f ../newlib/cmd1.sed lib$(LIBRARY).def > mem
103
	#sed -f ../newlib/cmd2.sed mem >$(LIBRARY).inc
104
	mv -f $@ ../../../bin
105
	mv -f lib$(LIBRARY).dll.a ../../../lib
106
 
107
 
108
%.o : %.c Makefile
109
	$(CC) $(INCLUDES) $(CFLAGS) $(DEFINES)  -o $@ $<
110
 
111
clean:
112
	-rm -f */*/*.o