Subversion Repositories Kolibri OS

Rev

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

  1. LIBRARY= pixlib
  2.  
  3. CC = kos32-gcc
  4. AR = kos32-ar
  5. LD = kos32-ld
  6. STRIP = kos32-strip
  7.  
  8. CFLAGS = -U_Win32 -U_WIN32 -U__MINGW32__ -c -O2 -fomit-frame-pointer
  9.  
  10. LDFLAGS:=  -shared -s -nostdlib -T ../newlib/dll.lds --entry _DllStartup --image-base=0
  11. PXFLAGS:= --version-script pixlib.ver --out-implib $(LIBRARY).dll.a
  12. SNAFLAGS:= --version-script sna.ver --output-def sna.def
  13. UXAFLAGS:= --version-script uxa.ver --output-def uxa.def
  14.  
  15. INCLUDES= -I. -I../libdrm/intel -I../libdrm/include/drm -I./render_program -I../pixman -I../newlib/include
  16.  
  17. LIBPATH:= -L../../lib
  18.  
  19. LIBS:=  -ldll -lc.dll
  20.  
  21. DEFINES:= -DHAS_DEBUG_FULL=0 -DSHOW_BATCH=0 -DDEBUG_DUMP=0
  22.  
  23. SRC_PIXLIB =    pixlib.c
  24.  
  25. SRC_SNA =                               \
  26.                 sna/gen4_common.c       \
  27.                 sna/gen6_common.c       \
  28.                 sna/gen3_render.c       \
  29.                 sna/gen4_render.c       \
  30.                 sna/gen4_vertex.c       \
  31.                 sna/gen5_render.c       \
  32.                 sna/gen6_render.c       \
  33.                 sna/gen7_render.c       \
  34.                 sna/kgem.c              \
  35.                 sna/sna.c               \
  36.                 sna/sna_cpu.c           \
  37.                 sna/sna_stream.c        \
  38.                 sna/sna_transform.c     \
  39.                 sna/utils.c             \
  40.                 sna/brw/brw_eu.c        \
  41.                 sna/brw/brw_eu_emit.c   \
  42.                 sna/brw/brw_sf.c        \
  43.                 sna/brw/brw_wm.c
  44.  
  45. SRC_UXA =       pixlib_uxa.c            \
  46.                 uxa/uxa.c               \
  47.                 uxa/i965_3d.c           \
  48.                 uxa/i965_render.c       \
  49.                 uxa/intel_batchbuffer.c
  50.  
  51. OBJ_PIXLIB =  $(patsubst %.c, %.o, $(SRC_PIXLIB))
  52. OBJ_UXA =   $(patsubst %.c, %.o, $(SRC_UXA))
  53. OBJ_SNA =   $(patsubst %.c, %.o, $(SRC_SNA))
  54.  
  55. ifeq ($(findstring ebox,$(MAKECMDGOALS)),ebox)
  56. CFLAGS+=-march=pentium-mmx
  57. DEFINES+= -DBUILD_EBOX
  58. else
  59. LIBS+= -ldrm.dll
  60. ifeq ($(findstring uxa,$(MAKECMDGOALS)),uxa)
  61. OBJECTS= $(OBJ_UXA)
  62. DEFINES+= -DBUILD_UXA
  63. else
  64. OBJECTS= $(OBJ_SNA)
  65. DEFINES+= -DBUILD_SNA
  66. LIBS+= -lgcc
  67. LIBPATH+= -L/home/autobuild/tools/win32/mingw32/lib
  68. endif
  69. endif
  70.  
  71. # targets
  72.  
  73. all:$(LIBRARY).dll intel-sna.drv
  74. uxa:$(LIBRARY).dll intel-uxa.drv
  75. ebox:$(LIBRARY).dll
  76.  
  77.  
  78. $(LIBRARY).dll: $(OBJ_PIXLIB) Makefile
  79.         $(LD) $(LDFLAGS) $(PXFLAGS) $(LIBPATH) -o $@ $(OBJ_PIXLIB) $(LIBS)
  80.         mv -f $@ ../../bin
  81.         mv -f $(LIBRARY).dll.a ../../lib  
  82.  
  83. intel-sna.drv: $(OBJ_SNA) Makefile
  84.         $(LD) $(LDFLAGS) $(SNAFLAGS) $(LIBPATH) -o $@ $(OBJ_SNA) $(LIBS)
  85.         mv -f $@ ../../bin
  86.  
  87. intel-uxa.drv: $(OBJ_UXA) Makefile
  88.         $(LD) $(LDFLAGS) $(UXAFLAGS) $(LIBPATH) -o $@ $(OBJ_UXA) $(LIBS)
  89.         $(STRIP) $@
  90.         mv -f $@ ../../bin
  91.  
  92. %.o : %.c Makefile
  93.         $(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
  94.  
  95. clean:
  96.         -rm -f *.o
  97.  
  98.  
  99.  
  100.  
  101.