Subversion Repositories Kolibri OS

Rev

Rev 8648 | Rev 9202 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. CC = kos32-gcc
  2. AR = kos32-ar
  3. LD = kos32-ld
  4. STRIP = kos32-strip
  5.  
  6. LIBNAME=libSDL
  7.  
  8. SDK_DIR:= $(abspath ../../..)
  9.  
  10. LDFLAGS+= -shared -s -T dll.lds --entry _DllStartup --image-base=0 --out-implib $(LIBNAME).dll.a
  11. LDFLAGS+= -L/home/max/autobuild/tools/win32/mingw32/lib
  12.  
  13. endian_OBJS = endian/SDL_endian.o
  14. file_OBJS = file/SDL_rwops.o
  15.  
  16. hermes_OBJS = hermes/mmxp2_32.o hermes/mmx_main.o hermes/x86p_16.o \
  17.         hermes/x86p_32.o hermes/x86_main.o
  18.  
  19. thread_OBJS = thread/SDL_syscond.o thread/SDL_sysmutex.o thread/SDL_syssem.o \
  20.         thread/SDL_systhread.o thread/SDL_thread.o
  21. timer_OBJS = timer/SDL_timer.o timer/dummy/SDL_systimer.o
  22. event_OBJS = events/SDL_active.o events/SDL_events.o events/SDL_expose.o \
  23.         events/SDL_keyboard.o events/SDL_mouse.o events/SDL_quit.o \
  24.         events/SDL_resize.o
  25. video_OBJS = video/SDL_blit_0.o video/SDL_blit_1.o video/SDL_blit_A.o \
  26.         video/SDL_blit.o video/SDL_blit_N.o video/SDL_bmp.o \
  27.         video/SDL_cursor.o video/SDL_gamma.o video/SDL_pixels.o \
  28.         video/SDL_RLEaccel.o video/SDL_stretch.o video/SDL_surface.o \
  29.         video/SDL_video.o video/SDL_yuv.o video/SDL_yuv_mmx.o \
  30.         video/SDL_yuv_sw.o video/menuetos/SDL_menuetevents.o \
  31.         video/menuetos/SDL_menuetvideo.o
  32. audio_OBJS = audio/SDL_kolibri_audio.o
  33.  
  34. curr_OBJS = SDL.o SDL_error.o SDL_fatal.o SDL_getenv.o
  35.  
  36. OBJS = $(endian_OBJS) $(file_OBJS) $(hermes_OBJS) $(thread_OBJS) \
  37.         $(timer_OBJS) $(event_OBJS) $(video_OBJS) $(curr_OBJS) $(audio_OBJS)
  38.  
  39. CFLAGS = -c -O2 -D_REENTRANT -I../include -I SYSCALL/include -I. -DPACKAGE=\"SDL\" -DVERSION=\"1.2.2\" \
  40.         -fexpensive-optimizations -Wall -DENABLE_AUDIO -UDISABLE_AUDIO -DDISABLE_JOYSTICK \
  41.         -DDISABLE_CDROM -DDISABLE_THREADS -DENABLE_TIMERS \
  42.         -DUSE_ASMBLIT -Ihermes -Iaudio -Ivideo -Ievents \
  43.         -Ijoystick -Icdrom -Ithread -Itimer -Iendian -Ifile -DENABLE_KOLIBRIOS \
  44.         -DNO_SIGNAL_H -DDISABLE_STDIO -DNEED_SDL_GETENV -DENABLE_FILE -UDISABLE_FILE \
  45.         -D__KOLIBRIOS__ -DDEBUG_VIDEO -UWIN32 -U_Win32 -U_WIN32 -U__MINGW32__ \
  46.         -I../../newlib/libc/include/
  47.  
  48. all: $(LIBNAME).dll $(LIBNAME).a
  49.  
  50. install: $(LIBNAME)
  51.         mv -f $(LIBNAME) $(SDK_DIR)/lib  
  52.  
  53. $(LIBNAME).a: $(OBJS)
  54.         $(MAKE) -C SYSCALL/src
  55.         $(AR) -crs $(LIBNAME).a $(OBJS) SYSCALL/src/os.o
  56.  
  57. $(LIBNAME).dll: libSDL.def $(OBJS)
  58.         $(LD) $(LDFLAGS) -o $@  libSDL.def $(OBJS) SYSCALL/src/os.o $(LIBS) -ldll -lsound -lc.dll
  59.         $(STRIP) $@
  60.  
  61.        
  62. %.o : %.asm Makefile
  63.         nasm -f coff $<
  64.  
  65. %.o : %.c Makefile
  66.         $(CC) $(CFLAGS) -o $@ $<
  67.  
  68. clean:
  69.         rm -f */*.o \ rm *.o \ rm */*/*.o
  70.