######################################################################
-# Make archive of core object files
+# Helper libraries used by many drivers:
+
+# Make archive of core mesa object files
libmesa.a: $(SOLO_OBJECTS)
@ $(TOP)/bin/mklib -o mesa -static $(SOLO_OBJECTS);
@if [ "${CONFIG_NAME}" = "beos" ] ; then \
mimeset -f "$@" ; \
fi
-# Make archive of gl* API dispatcher functions (when not building DRI/GLX)
+# Make archive of gl* API dispatcher functions only
libglapi.a: $(GLAPI_OBJECTS)
@ $(TOP)/bin/mklib -o glapi -static $(GLAPI_OBJECTS)
+
+######################################################################
+# BeOS driver target
+
+beos-driver: depend subdirs libmesa.a
+ cd drivers/beos && $(MAKE)
+
+
######################################################################
-# Stand-alone Mesa libGL
-STAND_ALONE_DRIVER_SOURCES = \
- $(COMMON_DRIVER_SOURCES) \
- $(X11_DRIVER_SOURCES)
+# DRI drivers
-STAND_ALONE_DRIVER_OBJECTS = $(STAND_ALONE_DRIVER_SOURCES:.c=.o)
+dri-drivers: depend subdirs libmesa.a
+ cd drivers/dri && $(MAKE)
-STAND_ALONE_OBJECTS = \
- $(CORE_OBJECTS) \
- $(STAND_ALONE_DRIVER_OBJECTS)
+######################################################################
+# Xlib driver (libGL.so)
+
+xlib-driver: depend subdirs libmesa.a libglapi.a
+ cd drivers/x11 && $(MAKE)
-stand-alone: depend subdirs $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
-osmesa-only: depend subdirs libmesa.a libglapi.a
+######################################################################
+# osmesa driver (libOSMesa.so)
+
+osmesa-driver: depend subdirs libmesa.a libglapi.a
cd drivers/osmesa && $(MAKE)
-# Make the GL library
-$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(STAND_ALONE_OBJECTS) $(PIPE_LIB) $(CELL_LIB) $(CELL_LIB_SPU)
- @ $(TOP)/bin/mklib -o $(GL_LIB) \
- -linker "$(CC)" \
- -major $(GL_MAJOR) -minor $(GL_MINOR) -patch $(GL_TINY) \
- -install $(TOP)/$(LIB_DIR) \
- $(MKLIB_OPTIONS) $(STAND_ALONE_OBJECTS) \
- $(PIPE_LIB) $(CELL_LIB) $(CELL_LIB_SPU) $(GL_LIB_DEPS)
+#####################################################################
+# fbdev driver (libGL.so)
+
+fbdev-driver: depend subdirs libmesa.a libglapi.a
+ cd drivers/fbdev && $(MAKE)
+
+
+#####################################################################
+# DirectFB driver (libGL.so)
+
+directfb-libgl: $(CORE_OBJECTS)
+ @ $(TOP)/bin/mklib -o $(GL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
+ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
+ -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) $(CORE_OBJECTS) \
+ $(GL_LIB_DEPS)
+
+directfb-driver: depend subdirs directfb-libgl
+ cd drivers/directfb && $(MAKE)
######################################################################
--- /dev/null
+# src/mesa/drivers/fbdev/Makefile for libGL.so
+
+TOP = ../../../..
+
+include $(TOP)/configs/current
+
+
+SOURCES = glfbdev.c
+
+OBJECTS = $(SOURCES:.c=.o)
+
+INCLUDE_DIRS = \
+ -I$(TOP)/include \
+ -I$(TOP)/src/mesa \
+ -I$(TOP)/src/mesa/main
+
+CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+
+
+.c.o:
+ $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+
+default: $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
+
+
+$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(CORE_OBJECTS) $(OBJECTS)
+ @ $(TOP)/bin/mklib -o $(GL_LIB) \
+ -linker '$(CC)' -ldflags '$(LDFLAGS)' \
+ -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
+ -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
+ $(CORE_MESA) $(OBJECTS) $(GL_LIB_DEPS)
+
+
+clean:
+ -rm -f $(OBJECTS)
-default:
- cd ../.. ; make
\ No newline at end of file
+# src/mesa/drivers/x11/Makefile for libGL.so
+
+# This builds "stand-alone" Mesa, a version of libGL that does not need the
+# GLX extension. All rendering is converted to Xlib calls. No hardware
+# acceleration.
+
+
+TOP = ../../../..
+
+include $(TOP)/configs/current
+
+
+GL_MAJOR = 1
+GL_MINOR = 5
+GL_TINY = 0$(MESA_MAJOR)0$(MESA_MINOR)0$(MESA_TINY)
+
+
+HEADERS = \
+ glxapi.h \
+ glxheader.h \
+ realglx.h \
+ xfonts.h \
+ xmesaP.h \
+ xm_glide.h \
+ xm_image.h
+
+SOURCES = \
+ fakeglx.c \
+ glxapi.c \
+ realglx.c \
+ xfonts.c \
+ xm_api.c \
+ xm_buffer.c \
+ xm_dd.c \
+ xm_glide.c \
+ xm_image.c \
+ xm_line.c \
+ xm_span.c \
+ xm_tri.c
+
+OBJECTS = $(SOURCES:.c=.o)
+
+INCLUDE_DIRS = \
+ -I$(TOP)/include \
+ -I$(TOP)/src/mesa \
+ -I$(TOP)/src/mesa/main
+
+CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+
+
+
+.c.o:
+ $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+
+default: $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
+
+
+$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) $(CORE_MESA)
+ @ $(TOP)/bin/mklib -o $(GL_LIB) \
+ -linker '$(CC)' -ldflags '$(LDFLAGS)' \
+ -major $(GL_MAJOR) -minor $(GL_MINOR) -patch $(GL_TINY) \
+ -install $(TOP)/$(LIB_DIR) \
+ $(MKLIB_OPTIONS) $(GL_LIB_DEPS) $(OBJECTS)
+
+
+
+clean:
+ -rm -f *.o *~
+ -rm -f depend depend.bak
+
+
+
+depend: $(SOURCES) $(HEADERS)
+ @ echo "running $(MKDEP)"
+ @ touch depend
+ @$(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDE_DIRS) $(SOURCES) $(HEADERS) \
+ > /dev/null 2>/dev/null
+
+
+-include depend
__COMMON_DRIVER_SOURCES = \
drivers/common/driverfuncs.c
-OSMESA_DRIVER_SOURCES = \
- drivers/osmesa/osmesa.c
-
-GLIDE_DRIVER_SOURCES = \
- drivers/glide/fxapi.c \
- drivers/glide/fxdd.c \
- drivers/glide/fxddspan.c \
- drivers/glide/fxddtex.c \
- drivers/glide/fxsetup.c \
- drivers/glide/fxtexman.c \
- drivers/glide/fxtris.c \
- drivers/glide/fxvb.c \
- drivers/glide/fxglidew.c \
- drivers/glide/fxg.c
-
SVGA_DRIVER_SOURCES = \
drivers/svga/svgamesa.c \
drivers/svga/svgamesa8.c \
ALL_SOURCES = \
$(GLAPI_SOURCES) \
$(SOLO_SOURCES) \
- $(MESA_ASM_SOURCES) \
+ $(MESA_ASM_SOURCES) \
$(COMMON_DRIVER_SOURCES)\
- $(X11_DRIVER_SOURCES) \
- $(FBDEV_DRIVER_SOURCES) \
- $(OSMESA_DRIVER_SOURCES)
+ $(FBDEV_DRIVER_SOURCES)
SOLO_SOURCES = \
$(MAIN_SOURCES) \
CORE_OBJECTS = $(SOLO_OBJECTS) $(GLAPI_OBJECTS)
-OSMESA_DRIVER_OBJECTS = $(OSMESA_DRIVER_SOURCES:.c=.o)
-
COMMON_DRIVER_OBJECTS = $(COMMON_DRIVER_SOURCES:.c=.o)
FBDEV_DRIVER_OBJECTS = $(FBDEV_DRIVER_SOURCES:.c=.o)
-I$(TOP)/src/gallium/include \
-I$(TOP)/src/gallium/drivers \
-I$(TOP)/src/gallium/auxiliary
-
-OLD_INCLUDE_DIRS = \
- -I$(TOP)/src/mesa/tnl \
- -I$(TOP)/src/mesa/math \
- -I$(TOP)/src/mesa/swrast \
- -I$(TOP)/src/mesa/swrast_setup \
- -I$(TOP)/src/mesa/shader \
- -I$(TOP)/src/mesa/shader/grammar \
- -I$(TOP)/src/mesa/shader/slang \
- -I$(TOP)/s$(TOP)/src/gallium/auxiliary/tgsi