Subversion Repositories Kolibri OS

Rev

Rev 4632 | Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. CC = gcc
  2.  
  3. SRC_DIR:=$(SDK_DIR)/sources
  4. MESA_SRC:= $(SRC_DIR)/Mesa/src
  5.  
  6. CFLAGS_OPT = -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 -U_MSC_VER -Os
  7. CFLAGS_OPT+= -fomit-frame-pointer -mno-ms-bitfields
  8. CFLAGS   = -c $(CFLAGS_OPT)
  9.  
  10. LD = ld
  11. LDFLAGS = -nostdlib -shared -s --image-base 0 -T $(SRC_DIR)/newlib/dll.lds --out-implib libGL.dll.a -e _DllStartup
  12.  
  13. STRIP = $(PREFIX)strip
  14.  
  15. INC_MESA:= -I$(SRC_DIR)/newlib/include -I$(SRC_DIR)/Mesa/include
  16. INC_MESA+= -I./src -I$(MESA_SRC)/glsl -I$(MESA_SRC)/mesa -I$(MESA_SRC)/mapi
  17.  
  18.  
  19. LIBPATH:= -L$(SDK_DIR)/lib
  20.  
  21. LIBS:=  -ldll -ldrm.dll -lc.dll -lgcc
  22.  
  23. MESA_DEFS= -DMESA_DLL -DBUILD_GL32 -DMAPI_MODE_UTIL -DMAPI_TABLE_NUM_STATIC=87 -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_SSE_ASM -DMAPI_TABLE_NUM_DYNAMIC=256
  24. MESA_DEFS+= -DPACKAGE_NAME=\"Mesa\" -DPACKAGE_VERSION=\"9.2.5\" -DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi\?product=Mesa\"
  25. MESA_DEFS+= -DPACKAGE_URL=\"\" -DPACKAGE=\"mesa\" -DVERSION=\"9.2.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
  26. MESA_DEFS+= -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -D_GLAPI_DLL_EXPORTS
  27.  
  28.  
  29. LIBGL_SRC = \
  30.         glapi/glapi.c                   \
  31.         glapi/glapi_dispatch.c          \
  32.         glapi/glapi_entrypoint.c        \
  33.         glapi/glapi_getproc.c           \
  34.         glapi/glapi_nop.c               \
  35.         glapi/glapi_x86.S               \
  36.         u_current.c                     \
  37.         u_execmem.c                     \
  38.         $(NULL)
  39.  
  40. LIBGL_OBJS =  $(patsubst %.c, %.o, $(patsubst %.S, %.o, $(LIBGL_SRC)))
  41.  
  42. # targets
  43.  
  44. all: libGL.dll
  45.  
  46. libGL.dll: $(LIBGL_OBJS) Makefile
  47.         $(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(LIBGL_OBJS) $(LIBS)
  48.         $(STRIP) $@
  49.         mv -f $@ $(SDK_DIR)/bin
  50.         mv -f libGL.dll.a $(SDK_DIR)/lib
  51.  
  52. %.o : %.c Makefile
  53.         $(CC) $(CFLAGS) -std=c99 $(MESA_DEFS) $(INC_MESA) -o $@ $<
  54.  
  55. %.o : %.S Makefile
  56.         $(CC) -c -U_WIN32 -I $(MESA_SRC)/mesa -o $@ $<
  57.  
  58.