automake: src/mesa/drivers/dri/nouveau
authorMatt Turner <mattst88@gmail.com>
Sun, 15 Jan 2012 15:20:30 +0000 (10:20 -0500)
committerMatt Turner <mattst88@gmail.com>
Fri, 20 Jan 2012 20:54:08 +0000 (15:54 -0500)
configs/linux-dri
configure.ac
src/mesa/drivers/dri/nouveau/.gitignore [new file with mode: 0644]
src/mesa/drivers/dri/nouveau/Makefile [deleted file]
src/mesa/drivers/dri/nouveau/Makefile.am [new file with mode: 0644]
src/mesa/drivers/dri/nouveau/Makefile.sources [new file with mode: 0644]

index 4877abdb59e6b116d6c396d50099224a82c6c9cb..a5efea25d060c6b754f5d0ff83c0d049f3c9ff38 100644 (file)
@@ -62,7 +62,7 @@ GALLIUM_WINSYS_DIRS = sw sw/xlib drm/vmware drm/intel svga/drm
 GALLIUM_TARGET_DIRS = dri-vmwgfx
 GALLIUM_STATE_TRACKERS_DIRS = egl dri
 
-DRI_DIRS = nouveau swrast
+DRI_DIRS = swrast
 
 INTEL_LIBS = $(shell $(PKG_CONFIG) --libs libdrm_intel)
 INTEL_CFLAGS = $(shell $(PKG_CONFIG) --cflags libdrm_intel)
index 95990016b46132fefbcabdc5ea4953f2e0752bee..2cd1ec4a4d12d92b2ee50606005a73d6373e7fdd 100644 (file)
@@ -1271,6 +1271,13 @@ case $DRI_DIRS in
     ;;
 esac
 
+case $DRI_DIRS in
+*nouveau*)
+    PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
+    HAVE_NOUVEAU_DRI=yes;
+    ;;
+esac
+
 case $DRI_DIRS in
 *radeon*|*r200*)
     PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
@@ -1291,15 +1298,10 @@ esac
 
 AM_CONDITIONAL(HAVE_I915_DRI, test x$HAVE_I915_DRI = xyes)
 AM_CONDITIONAL(HAVE_I965_DRI, test x$HAVE_I965_DRI = xyes)
+AM_CONDITIONAL(HAVE_NOUVEAU_DRI, test x$HAVE_NOUVEAU_DRI = xyes)
 AM_CONDITIONAL(HAVE_R200_DRI, test x$HAVE_R200_DRI = xyes)
 AM_CONDITIONAL(HAVE_RADEON_DRI, test x$HAVE_RADEON_DRI = xyes)
 
-case $DRI_DIRS in
-*nouveau*)
-    PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
-    ;;
-esac
-
 dnl
 dnl OSMesa configuration
 dnl
@@ -1925,6 +1927,7 @@ dnl Substitute the config
 AC_CONFIG_FILES([configs/autoconf
                src/mesa/drivers/dri/i915/Makefile
                src/mesa/drivers/dri/i965/Makefile
+               src/mesa/drivers/dri/nouveau/Makefile
                src/mesa/drivers/dri/r200/Makefile
                src/mesa/drivers/dri/radeon/Makefile
                tests/Makefile
diff --git a/src/mesa/drivers/dri/nouveau/.gitignore b/src/mesa/drivers/dri/nouveau/.gitignore
new file mode 100644 (file)
index 0000000..1091724
--- /dev/null
@@ -0,0 +1,5 @@
+.deps
+.libs
+Makefile
+Makefile.in
+nouveau_vieux_dri.la
diff --git a/src/mesa/drivers/dri/nouveau/Makefile b/src/mesa/drivers/dri/nouveau/Makefile
deleted file mode 100644 (file)
index e485a98..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-# src/mesa/drivers/dri/nouveau/Makefile
-
-TOP = ../../../../..
-include $(TOP)/configs/current
-
-LIBNAME = nouveau_vieux_dri.so
-
-include ../Makefile.defines
-
-DRIVER_SOURCES = \
-       nouveau_screen.c \
-       nouveau_context.c \
-       nouveau_fbo.c \
-       nouveau_driver.c \
-       nouveau_state.c \
-       nouveau_bufferobj.c \
-       nouveau_span.c \
-       nouveau_bo_state.c \
-       nouveau_texture.c \
-       nouveau_surface.c \
-       nouveau_scratch.c \
-       nouveau_array.c \
-       nv04_context.c \
-       nv04_render.c \
-       nv04_state_fb.c \
-       nv04_state_raster.c \
-       nv04_state_tex.c \
-       nv04_state_frag.c \
-       nv04_surface.c \
-       nv10_context.c \
-       nv10_render.c \
-       nv10_state_fb.c \
-       nv10_state_polygon.c \
-       nv10_state_raster.c \
-       nv10_state_tex.c \
-       nv10_state_frag.c \
-       nv10_state_tnl.c \
-       nv20_context.c \
-       nv20_render.c \
-       nv20_state_fb.c \
-       nv20_state_polygon.c \
-       nv20_state_raster.c \
-       nv20_state_tex.c \
-       nv20_state_frag.c \
-       nv20_state_tnl.c
-
-C_SOURCES = \
-       $(COMMON_SOURCES) \
-       $(DRIVER_SOURCES)
-
-ASM_SOURCES =
-
-INCLUDES += $(NOUVEAU_CFLAGS)
-DRI_LIB_DEPS += $(NOUVEAU_LIBS)
-
-include ../Makefile.targets
-
-symlinks:
diff --git a/src/mesa/drivers/dri/nouveau/Makefile.am b/src/mesa/drivers/dri/nouveau/Makefile.am
new file mode 100644 (file)
index 0000000..77880fd
--- /dev/null
@@ -0,0 +1,59 @@
+
+
+# Copyright © 2012 Matt Turner <mattst88@gmail.com>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+include Makefile.sources
+
+# Hack to make some of the non-automake variables work.
+TOP=$(top_builddir)
+
+AM_CFLAGS = \
+       -I$(top_srcdir)/include \
+       -I$(top_srcdir)/src/ \
+       -I$(top_srcdir)/src/mapi \
+       -I$(top_srcdir)/src/mesa/ \
+       -I$(top_srcdir)/src/mesa/drivers/dri/common \
+       $(DEFINES) \
+       $(ASM_FLAGS) \
+       $(API_DEFINES) \
+       $(NOUVEAU_CFLAGS)
+
+dridir = $(DRI_DRIVER_INSTALL_DIR)
+
+if HAVE_NOUVEAU_DRI
+dri_LTLIBRARIES = nouveau_vieux_dri.la
+endif
+
+nouveau_vieux_dri_la_SOURCES = \
+       $(NOUVEAU_C_FILES)
+
+nouveau_vieux_dri_la_LDFLAGS = -module -avoid-version -shared
+nouveau_vieux_dri_la_LIBADD = \
+       $(DRI_LIB_DEPS) \
+       $(DRICORE_LIB_DEPS) \
+       $(NOUVEAU_LIBS)
+
+# Provide compatibility with scripts for the old Mesa build system for
+# a while by putting a link to the driver into /lib of the build tree.
+all-local: nouveau_vieux_dri.la
+       $(MKDIR_P) $(top_builddir)/$(LIB_DIR);
+       ln -f .libs/nouveau_vieux_dri.so $(top_builddir)/$(LIB_DIR)/nouveau_vieux_dri.so;
diff --git a/src/mesa/drivers/dri/nouveau/Makefile.sources b/src/mesa/drivers/dri/nouveau/Makefile.sources
new file mode 100644 (file)
index 0000000..aa7f79f
--- /dev/null
@@ -0,0 +1,39 @@
+NOUVEAU_DRIVER_FILES = \
+       nouveau_screen.c \
+       nouveau_context.c \
+       nouveau_fbo.c \
+       nouveau_driver.c \
+       nouveau_state.c \
+       nouveau_bufferobj.c \
+       nouveau_span.c \
+       nouveau_bo_state.c \
+       nouveau_texture.c \
+       nouveau_surface.c \
+       nouveau_scratch.c \
+       nouveau_array.c \
+       nv04_context.c \
+       nv04_render.c \
+       nv04_state_fb.c \
+       nv04_state_raster.c \
+       nv04_state_tex.c \
+       nv04_state_frag.c \
+       nv04_surface.c \
+       nv10_context.c \
+       nv10_render.c \
+       nv10_state_fb.c \
+       nv10_state_polygon.c \
+       nv10_state_raster.c \
+       nv10_state_tex.c \
+       nv10_state_frag.c \
+       nv10_state_tnl.c \
+       nv20_context.c \
+       nv20_render.c \
+       nv20_state_fb.c \
+       nv20_state_polygon.c \
+       nv20_state_raster.c \
+       nv20_state_tex.c \
+       nv20_state_frag.c \
+       nv20_state_tnl.c
+
+NOUVEAU_C_FILES = \
+       $(NOUVEAU_DRIVER_FILES)