Subversion Repositories Kolibri OS

Rev

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

  1.  
  2. EGL = egl
  3.  
  4. CC = gcc
  5.  
  6. CFLAGS_OPT = -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 -U_MSC_VER -O2 -march=i686 -msse2
  7. CFLAGS_OPT+= -fomit-frame-pointer -fno-builtin-printf -mno-stack-arg-probe
  8. CFLAGS_OPT+= -mpreferred-stack-boundary=2 -mincoming-stack-boundary=2 -mno-ms-bitfields -flto
  9. CFLAGS   = -c $(CFLAGS_OPT)
  10.  
  11. LD = ld
  12. LDFLAGS = -nostdlib,-shared,-s,--image-base,0,-T,../newlib/dll.lds,--out-implib,lib$(EGL).dll.a,-e,_DllStartup
  13.  
  14. STRIP = $(PREFIX)strip
  15.  
  16. INCLUDES= -I./include -I../libdrm -I../libdrm/include/drm -I./src/egl/main -I./src/gbm/backends/dri -I./src/gbm/main -I../newlib/include
  17.  
  18. LIBPATH:= -L../../lib
  19.  
  20. LIBS:=  -ldll -ldrm.dll -lc.dll -lgcc
  21.  
  22. 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
  23. MESA_DEFS+= -DPACKAGE_NAME=\"Mesa\" -DPACKAGE_VERSION=\"9.2.2\" -DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi\?product=Mesa\"
  24. MESA_DEFS+= -DPACKAGE_URL=\"\" -DPACKAGE=\"mesa\" -DVERSION=\"9.2.2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
  25. MESA_DEFS+= -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
  26.  
  27. EGL_DEFS = -DHAVE_DRM_PLATFORM -D__unix__ -DMESA_EGL_NO_X11_HEADERS -D_EGL_BUILT_IN_DRIVER_DRI2
  28.  
  29. EGL_SRC =                                       \
  30.         src/egl/drivers/dri2/egl_dri2.c         \
  31.         src/egl/drivers/dri2/platform_drm.c     \
  32.         src/egl/main/eglapi.c                   \
  33.         src/egl/main/eglarray.c                 \
  34.         src/egl/main/eglconfig.c                \
  35.         src/egl/main/eglcontext.c               \
  36.         src/egl/main/eglcurrent.c               \
  37.         src/egl/main/egldisplay.c               \
  38.         src/egl/main/egldriver.c                \
  39.         src/egl/main/eglfallbacks.c             \
  40.         src/egl/main/eglglobals.c               \
  41.         src/egl/main/eglimage.c                 \
  42.         src/egl/main/egllog.c                   \
  43.         src/egl/main/eglmisc.c                  \
  44.         src/egl/main/eglmode.c                  \
  45.         src/egl/main/eglscreen.c                \
  46.         src/egl/main/eglstring.c                \
  47.         src/egl/main/eglsurface.c               \
  48.         src/egl/main/eglsync.c                  \
  49.         src/gbm/backends/dri/gbm_dri.c          \
  50.         src/gbm/main/backend.c                  \
  51.         src/gbm/main/gbm.c                      \
  52.         $(NULL)
  53.  
  54. EGL_OBJS     = $(patsubst %.c, %.o, $(EGL_SRC))
  55.  
  56. # targets
  57.  
  58. all:$(EGL).dll
  59.  
  60. $(EGL).dll: $(EGL_OBJS) Makefile
  61.         $(CC) $(CFLAGS_OPT) -fwhole-program -nostdlib -Wl,$(LIBPATH),$(LDFLAGS) -o $@ egl.def $(EGL_OBJS) $(LIBS)
  62.         $(STRIP) $@
  63. #       sed -e "s/ @[^ ]*//" egl1.def > egl.def
  64.         mv -f $@ ../../bin
  65.         mv -f lib$(EGL).dll.a ../../lib  
  66.        
  67. %.o : %.c Makefile
  68.         $(CC) $(CFLAGS) $(MESA_DEFS) $(EGL_DEFS) $(INCLUDES) -o $@ $<
  69.  
  70.