EXTRA_LIB_PATH = @EXTRA_LIB_PATH@
RADEON_CFLAGS = @RADEON_CFLAGS@
RADEON_LDFLAGS = @RADEON_LDFLAGS@
+NOUVEAU_CFLAGS = @NOUVEAU_CFLAGS@
+NOUVEAU_LIBS = @NOUVEAU_LIBS@
INTEL_LIBS = @INTEL_LIBS@
INTEL_CFLAGS = @INTEL_CFLAGS@
X11_LIBS = @X11_LIBS@
GALLIUM_TARGET_DIRS =
GALLIUM_STATE_TRACKERS_DIRS = egl
-DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \
+DRI_DIRS = i810 i915 i965 mach64 mga nouveau r128 r200 r300 r600 radeon \
savage sis tdfx unichrome swrast
-INTEL_LIBS = `pkg-config --libs libdrm_intel`
-INTEL_CFLAGS = `pkg-config --cflags libdrm_intel`
+INTEL_LIBS = $(shell pkg-config --libs libdrm_intel)
+INTEL_CFLAGS = $(shell pkg-config --cflags libdrm_intel)
-RADEON_LIBS = `pkg-config --libs libdrm_radeon`
-RADEON_CFLAGS = `pkg-config --cflags libdrm_radeon`
+NOUVEAU_LIBS = $(shell pkg-config --libs libdrm_nouveau)
+NOUVEAU_CFLAGS = $(shell pkg-config --cflags libdrm_nouveau)
+
+LIBDRM_RADEON_LIBS = $(shell pkg-config --libs libdrm_radeon)
+LIBDRM_RADEON_CFLAGS = $(shell pkg-config --cflags libdrm_radeon)
+RADEON_CFLAGS = "-DHAVE_LIBDRM_RADEON=1 $(LIBDRM_RADEON_CFLAGS)"
+RADEON_LDFLAGS = $(LIBDRM_RADEON_LIBS)
LIBDRM_REQUIRED=2.4.24
LIBDRM_RADEON_REQUIRED=2.4.24
LIBDRM_INTEL_REQUIRED=2.4.24
+LIBDRM_NOUVEAU_REQUIRED=0.6
DRI2PROTO_REQUIRED=2.1
GLPROTO_REQUIRED=1.4.11
LIBDRM_XORG_REQUIRED=2.4.24
# the new interface. i810 are missing because there is no
# x86-64 system where they could *ever* be used.
if test "x$DRI_DIRS" = "xyes"; then
- DRI_DIRS="i915 i965 mach64 mga r128 r200 r300 r600 radeon \
- savage tdfx unichrome swrast"
+ DRI_DIRS="i915 i965 mach64 mga nouveau r128 r200 r300 r600 \
+ radeon savage tdfx unichrome swrast"
fi
;;
powerpc*)
fi
if test "x$DRI_DIRS" = "xyes"; then
- DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \
- unichrome savage sis swrast"
+ DRI_DIRS="i810 i915 i965 mach64 mga nouveau r128 r200 r300 r600 \
+ radeon tdfx unichrome savage sis swrast"
fi
;;
gnu*)
# default drivers
if test "x$DRI_DIRS" = "xyes"; then
- DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \
+ DRI_DIRS="i810 i915 i965 mach64 mga nouveau r128 r200 r300 r600 radeon \
savage sis tdfx unichrome swrast"
fi
esac
case $DRI_DIRS in
+*nouveau*)
+ PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
+ ;;
+esac
+
+case $DRI_DIRS in
*radeon*|*r200*|*r300*|*r600*)
if test "x$HAVE_LIBDRM_RADEON" = xyes; then
RADEON_CFLAGS="-DHAVE_LIBDRM_RADEON=1 $LIBDRM_RADEON_CFLAGS"
default: depend symlinks $(TOP)/$(LIB_DIR)/gallium $(LIBNAME) $(LIBNAME_STAGING)
$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(PIPE_DRIVERS) Makefile \
- $(TOP)/src/mesa/drivers/dri/Makefile.template $(TOP)/src/mesa/drivers/dri/common/dri_test.o
+ $(TOP)/src/mesa/drivers/dri/Makefile.targets $(TOP)/src/mesa/drivers/dri/common/dri_test.o
$(MKLIB) -o $@.tmp -noprefix -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
$(OBJECTS) $(PIPE_DRIVERS) \
-Wl,--start-group $(MESA_MODULES) -Wl,--end-group \
+++ /dev/null
-# -*-makefile-*-
-
-COMMON_GALLIUM_SOURCES = \
- ../common/utils.c \
- ../common/vblank.c \
- ../common/dri_util.c \
- ../common/xmlconfig.c
-
-COMMON_SOURCES = $(COMMON_GALLIUM_SOURCES) \
- ../../common/driverfuncs.c \
- ../common/texmem.c \
- ../common/drirenderbuffer.c
-
-INCLUDES = $(SHARED_INCLUDES) $(EXPAT_INCLUDES)
-
-OBJECTS = $(C_SOURCES:.c=.o) \
- $(CXX_SOURCES:.cpp=.o) \
- $(ASM_SOURCES:.S=.o)
-
-
-### Include directories
-SHARED_INCLUDES = \
- -I. \
- -I$(TOP)/src/mesa/drivers/dri/common \
- -Iserver \
- -I$(TOP)/include \
- -I$(TOP)/src/mapi \
- -I$(TOP)/src/mesa \
- -I$(TOP)/src/egl/main \
- -I$(TOP)/src/egl/drivers/dri \
- $(LIBDRM_CFLAGS)
-
-CFLAGS += $(API_DEFINES)
-CXXFLAGS += $(API_DEFINES)
-
-##### RULES #####
-
-.c.o:
- $(CC) -c $(INCLUDES) $(DRI_CFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-.cpp.o:
- $(CC) -c $(INCLUDES) $(DRI_CXXFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-.S.o:
- $(CC) -c $(INCLUDES) $(DRI_CFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-
-##### TARGETS #####
-
-default: subdirs lib
-
-
-.PHONY: lib
-lib: symlinks subdirs depend
- @$(MAKE) $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
-
-$(LIBNAME): $(OBJECTS) $(EXTRA_MODULES) $(MESA_MODULES) Makefile \
- $(TOP)/src/mesa/drivers/dri/Makefile.template $(TOP)/src/mesa/drivers/dri/common/dri_test.o
- $(MKLIB) -o $@.tmp -noprefix -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
- $(OBJECTS) $(EXTRA_MODULES) $(DRI_LIB_DEPS)
- $(CXX) $(CFLAGS) -o $@.test $(TOP)/src/mesa/drivers/dri/common/dri_test.o $@.tmp $(DRI_LIB_DEPS)
- @rm -f $@.test
- mv -f $@.tmp $@
-
-
-$(TOP)/$(LIB_DIR)/$(LIBNAME): $(LIBNAME)
- $(INSTALL) $(LIBNAME) $(TOP)/$(LIB_DIR)
-
-
-# If the Makefile defined SUBDIRS, run make in each
-.PHONY: subdirs
-subdirs:
- @if test -n "$(SUBDIRS)" ; then \
- for dir in $(SUBDIRS) ; do \
- if [ -d $$dir ] ; then \
- (cd $$dir && $(MAKE)) || exit 1; \
- fi \
- done \
- fi
-
-
-.PHONY: symlinks
-symlinks:
-
-
-depend: $(C_SOURCES) $(CXX_SOURCES) $(ASM_SOURCES) $(SYMLINKS)
- @ echo "running $(MKDEP)"
- @ rm -f depend
- @ touch depend
- @ $(MKDEP) $(MKDEP_OPTIONS) $(DRIVER_DEFINES) $(INCLUDES) \
- $(C_SOURCES) $(CXX_SOURCES) \
- $(ASM_SOURCES) > /dev/null 2>/dev/null
-
-
-# Emacs tags
-tags:
- etags `find . -name \*.[ch]` `find ../include`
-
-
-# Remove .o and backup files
-clean:
- -rm -f *.o */*.o *~ *.so *~ server/*.o $(SYMLINKS)
- -rm -f depend depend.bak
-
-
-install: $(LIBNAME)
- $(INSTALL) -d $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
- $(MINSTALL) -m 755 $(LIBNAME) $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
-
-
--include depend
LIBNAME = i810_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
i810context.c \
i810ioctl.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = i915_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
i830_context.c \
i830_state.c \
INCLUDES += $(INTEL_CFLAGS)
DRI_LIB_DEPS += $(INTEL_LIBS)
-include ../Makefile.template
+include ../Makefile.targets
intel_decode.o: ../intel/intel_decode.c
LIBNAME = i965_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
intel_batchbuffer.c \
intel_blit.c \
INCLUDES += $(INTEL_CFLAGS)
DRI_LIB_DEPS += $(INTEL_LIBS)
-include ../Makefile.template
+include ../Makefile.targets
intel_decode.o: ../intel/intel_decode.c
intel_tex_layout.o: ../intel/intel_tex_layout.c
LIBNAME = mach64_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
mach64_context.c \
mach64_ioctl.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = mga_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
mgadd.c \
mgaioctl.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
TOP = ../../../../..
include $(TOP)/configs/current
-CFLAGS += $(shell pkg-config libdrm libdrm_nouveau --cflags)
-DRI_LIB_DEPS += $(shell pkg-config libdrm_nouveau --libs)
-
LIBNAME = nouveau_vieux_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
nouveau_screen.c \
nouveau_context.c \
ASM_SOURCES =
+INCLUDES += $(NOUVEAU_CFLAGS)
+DRI_LIB_DEPS += $(NOUVEAU_LIBS)
-include ../Makefile.template
+include ../Makefile.targets
symlinks:
LIBNAME = r128_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
r128_context.c \
r128_lock.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
TOP = ../../../../..
include $(TOP)/configs/current
-CFLAGS += $(RADEON_CFLAGS)
-
LIBNAME = r200_dri.so
+include ../Makefile.defines
+
ifeq ($(RADEON_LDFLAGS),)
CS_SOURCES = radeon_cs_space_drm.c radeon_bo.c radeon_cs.c
endif
DRIVER_DEFINES = -DRADEON_R200
+INCLUDES += $(RADEON_CFLAGS)
DRI_LIB_DEPS += $(RADEON_LDFLAGS)
##### TARGETS #####
-include ../Makefile.template
+include ../Makefile.targets
#INCLUDES += -I../radeon/server
TOP = ../../../../..
include $(TOP)/configs/current
-CFLAGS += $(RADEON_CFLAGS)
-
LIBNAME = r300_dri.so
+include ../Makefile.defines
+
ifeq ($(RADEON_LDFLAGS),)
CS_SOURCES = radeon_cs_space_drm.c radeon_bo.c radeon_cs.c
endif
COMMON_SOURCES = \
../../common/driverfuncs.c \
- ../common/mm.c \
+ ../common/drirenderbuffer.c \
../common/utils.c \
../common/texmem.c \
../common/vblank.c \
DRIVER_DEFINES = -DRADEON_R300
# -DRADEON_BO_TRACK \
+INCLUDES += $(RADEON_CFLAGS)
DRI_LIB_DEPS += $(RADEON_LDFLAGS)
SUBDIRS = compiler
##### TARGETS #####
-include ../Makefile.template
+include ../Makefile.targets
TOP = ../../../../..
include $(TOP)/configs/current
-CFLAGS += $(RADEON_CFLAGS)
-
LIBNAME = r600_dri.so
+include ../Makefile.defines
+
ifeq ($(RADEON_LDFLAGS),)
CS_SOURCES = radeon_cs_space_drm.c radeon_bo.c radeon_cs.c
endif
COMMON_SOURCES = \
../../common/driverfuncs.c \
- ../common/mm.c \
+ ../common/drirenderbuffer.c \
../common/utils.c \
../common/texmem.c \
../common/vblank.c \
DRIVER_DEFINES = -DRADEON_R600
# -DRADEON_BO_TRACK \
+INCLUDES += $(RADEON_CFLAGS)
DRI_LIB_DEPS += $(RADEON_LDFLAGS)
##### TARGETS #####
-include ../Makefile.template
+include ../Makefile.targets
TOP = ../../../../..
include $(TOP)/configs/current
-CFLAGS += $(RADEON_CFLAGS)
-
LIBNAME = radeon_dri.so
+include ../Makefile.defines
+
ifeq ($(RADEON_LDFLAGS),)
CS_SOURCES = radeon_cs_space_drm.c radeon_bo.c radeon_cs.c
endif
DRIVER_DEFINES = -DRADEON_R100
+INCLUDES += $(RADEON_CFLAGS)
DRI_LIB_DEPS += $(RADEON_LDFLAGS)
X86_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = savage_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
savage_xmesa.c \
savagedd.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = sis_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
sis6326_state.c \
sis6326_clear.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = swrast_dri.so
+include ../Makefile.defines
+
DRIVER_DEFINES = -D__NOT_HAVE_DRM_H
DRIVER_SOURCES = \
../common/utils.c \
../common/drisw_util.c
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = tdfx_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
tdfx_context.c \
tdfx_dd.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets
LIBNAME = unichrome_dri.so
+include ../Makefile.defines
+
DRIVER_SOURCES = \
via_context.c \
via_fb.c \
ASM_SOURCES =
-include ../Makefile.template
+include ../Makefile.targets