summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--configs/default12
-rw-r--r--configs/linux-gallium22
-rw-r--r--configs/linux-gallium-debug8
-rw-r--r--src/mesa/Makefile4
-rw-r--r--src/mesa/sources.mak28
6 files changed, 58 insertions, 18 deletions
diff --git a/Makefile b/Makefile
index c79fb1cb28b..24cfbe59227 100644
--- a/Makefile
+++ b/Makefile
@@ -115,6 +115,8 @@ linux-dri-x86-64 \
linux-dri-ppc \
linux-dri-xcb \
linux-egl \
+linux-gallium \
+linux-gallium-debug \
linux-indirect \
linux-fbdev \
linux-glide \
diff --git a/configs/default b/configs/default
index 13bda58f188..ec8d51ccfed 100644
--- a/configs/default
+++ b/configs/default
@@ -79,24 +79,16 @@ MOTIF_CFLAGS = -I/usr/include/Motif1.2
# Directories to build
LIB_DIR = lib
-SRC_DIRS = mesa gallium egl gallium/winsys glu glut/glx glew glw
+SRC_DIRS = mesa egl glu glut/glx glew glw
GLU_DIRS = sgi
-DRIVER_DIRS =
+DRIVER_DIRS = x11 osmesa
# Which subdirs under $(TOP)/progs/ to enter:
PROGRAM_DIRS = demos redbook samples glsl xdemos
# EGL directories
EGL_DRIVERS_DIRS = demo
-# Gallium directories and
-GALLIUM_AUXILIARY_DIRS = draw translate cso_cache pipebuffer tgsi sct rtasm util indices
-GALLIUM_AUXILIARIES = $(foreach DIR,$(GALLIUM_AUXILIARY_DIRS),$(TOP)/src/gallium/auxiliary/$(DIR)/lib$(DIR).a)
-GALLIUM_DRIVER_DIRS = softpipe i915simple i965simple nv04 nv10 nv20 nv30 nv40 nv50 failover trace
-GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVER_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
-GALLIUM_WINSYS_DIRS = xlib egl_xlib
-
-# Library dependencies
#EXTRA_LIB_PATH ?=
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
diff --git a/configs/linux-gallium b/configs/linux-gallium
new file mode 100644
index 00000000000..b046f248ecb
--- /dev/null
+++ b/configs/linux-gallium
@@ -0,0 +1,22 @@
+# Configuration for Linux / Gallium
+
+include $(TOP)/configs/linux
+
+CONFIG_NAME = linux-gallium
+
+
+# Directories to build (adds gallium to SRC_DIRS)
+SRC_DIRS = mesa gallium egl gallium/winsys glu glut/glx glew glw
+
+
+# don't build old/conventional Mesa drivers
+DRIVER_DIRS =
+
+
+# Gallium directories and
+GALLIUM_AUXILIARY_DIRS = draw translate cso_cache pipebuffer tgsi sct rtasm util indices
+GALLIUM_AUXILIARIES = $(foreach DIR,$(GALLIUM_AUXILIARY_DIRS),$(TOP)/src/gallium/auxiliary/$(DIR)/lib$(DIR).a)
+GALLIUM_DRIVER_DIRS = softpipe i915simple i965simple nv04 nv10 nv20 nv30 nv40 nv50 failover trace
+GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVER_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
+GALLIUM_WINSYS_DIRS = xlib egl_xlib
+
diff --git a/configs/linux-gallium-debug b/configs/linux-gallium-debug
new file mode 100644
index 00000000000..111c43b8848
--- /dev/null
+++ b/configs/linux-gallium-debug
@@ -0,0 +1,8 @@
+# Configuration for Linux / Gallium for debug
+
+include $(TOP)/configs/linux-gallium
+
+CONFIG_NAME = linux-gallium-debug
+
+OPT_FLAGS = -g -ansi -pedantic
+DEFINES += -DDEBUG -DDEBUG_MATH
diff --git a/src/mesa/Makefile b/src/mesa/Makefile
index 552c20e0b9b..22ef05c335a 100644
--- a/src/mesa/Makefile
+++ b/src/mesa/Makefile
@@ -32,6 +32,10 @@ default: depend asm_subdirs libmesa.a libglapi.a driver_subdirs
libmesa.a: $(MESA_OBJECTS)
@ $(MKLIB) -o mesa -static $(MESA_OBJECTS)
+# Make archive of subset of core mesa object files for gallium
+libmesagallium.a: $(MESA_GALLIUM_OBJECTS)
+ @ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS)
+
# Make archive of gl* API dispatcher functions only
libglapi.a: $(GLAPI_OBJECTS)
@if [ "${WINDOW_SYSTEM}" = "dri" ] ; then \
diff --git a/src/mesa/sources.mak b/src/mesa/sources.mak
index 8940670d5ba..13ec1fa454b 100644
--- a/src/mesa/sources.mak
+++ b/src/mesa/sources.mak
@@ -91,7 +91,7 @@ MATH_SOURCES = \
math/m_vector.c \
math/m_xform.c
-__SWRAST_SOURCES = \
+SWRAST_SOURCES = \
swrast/s_aaline.c \
swrast/s_aatriangle.c \
swrast/s_accum.c \
@@ -122,11 +122,11 @@ __SWRAST_SOURCES = \
swrast/s_triangle.c \
swrast/s_zoom.c
-__SWRAST_SETUP_SOURCES = \
+SWRAST_SETUP_SOURCES = \
swrast_setup/ss_context.c \
swrast_setup/ss_triangle.c
-__TNL_SOURCES = \
+TNL_SOURCES = \
tnl/t_context.c \
tnl/t_pipeline.c \
tnl/t_draw.c \
@@ -162,7 +162,7 @@ VBO_SOURCES = \
vbo/vbo_save_draw.c \
vbo/vbo_save_loopback.c
-__VF_SOURCES = \
+VF_SOURCES = \
vf/vf.c \
vf/vf_generic.c \
vf/vf_sse.c
@@ -299,7 +299,7 @@ SPARC_SOURCES = \
SPARC_API = \
sparc/glapi_sparc.S
-__COMMON_DRIVER_SOURCES = \
+COMMON_DRIVER_SOURCES = \
drivers/common/driverfuncs.c
@@ -310,19 +310,27 @@ MESA_SOURCES = \
$(MAIN_SOURCES) \
$(MATH_SOURCES) \
$(VBO_SOURCES) \
- $(STATETRACKER_SOURCES) \
$(TNL_SOURCES) \
$(SHADER_SOURCES) \
$(SWRAST_SOURCES) \
$(SWRAST_SETUP_SOURCES) \
+ $(COMMON_DRIVER_SOURCES)\
$(ASM_C_SOURCES) \
$(SLANG_SOURCES)
ALL_SOURCES = \
$(MESA_SOURCES) \
$(GLAPI_SOURCES) \
- $(MESA_ASM_SOURCES) \
- $(COMMON_DRIVER_SOURCES)
+ $(MESA_ASM_SOURCES)
+
+MESA_GALLIUM_SOURCES = \
+ $(MAIN_SOURCES) \
+ $(MATH_SOURCES) \
+ $(VBO_SOURCES) \
+ $(STATETRACKER_SOURCES) \
+ $(SHADER_SOURCES) \
+ $(ASM_C_SOURCES) \
+ $(SLANG_SOURCES)
### Object files
@@ -331,6 +339,10 @@ MESA_OBJECTS = \
$(MESA_SOURCES:.c=.o) \
$(MESA_ASM_SOURCES:.S=.o)
+MESA_GALLIUM_OBJECTS = \
+ $(MESA_GALLIUM_SOURCES:.c=.o) \
+ $(MESA_ASM_SOURCES:.S=.o)
+
GLAPI_OBJECTS = \
$(GLAPI_SOURCES:.c=.o) \
$(GLAPI_ASM_SOURCES:.S=.o)