Subversion Repositories Kolibri OS

Rev

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

  1. LIBRARY = SDL
  2.  
  3. CC = kos32-gcc
  4. AR = kos32-ar
  5. LD = kos32-ld
  6. STRIP = kos32-strip
  7.  
  8. SDK_DIR:= $(abspath ../../..)
  9.  
  10. endian_OBJS = endian/SDL_endian.o
  11. file_OBJS = file/SDL_rwops.o
  12. hermes_OBJS = hermes/mmxp2_32.o hermes/mmx_main.o hermes/x86p_16.o \
  13.         hermes/x86p_32.o hermes/x86_main.o
  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
  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
  29.  
  30. curr_OBJS = SDL.o SDL_error.o SDL_fatal.o SDL_getenv.o
  31.  
  32. OBJECTS = $(endian_OBJS) $(file_OBJS) $(hermes_OBJS) $(thread_OBJS) \
  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 \
  41.         -D__MENUETOS__ -DDEBUG_VIDEO -UWIN32 -U_Win32 -U_WIN32 -U__MINGW32__
  42.  
  43.  
  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
  46.  
  47. LDFLAGS+= --out-implib lib$(LIBRARY).dll.a
  48.  
  49. ARFLAGS = crs
  50.  
  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.  
  57. #include $(MENUETDEV)/makefiles/Makefile_for_lib
  58.  
  59. # all: libSDL.a
  60.  
  61. # install: libSDL.a
  62. #       mv -f libSDL.a $(SDK_DIR)/lib  
  63.  
  64. # libSDL.a: $(OBJS)
  65. #       $(AR) $(ARFLAGS) libSDL.a
  66.  
  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.  
  82. %.obj : %.asm Makefile
  83.         fasm $< $@
  84.  
  85. # %.o : %.c Makefile
  86. #       $(CC) $(CFLAGS) -o $@ $<
  87.  
  88. # clean:
  89. #       -rm -f */*.o
  90.  
  91.  
  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
  113.