Hello community,

here is the log from the commit of package xf86-video-nouveau for 
openSUSE:Factory checked in at 2016-09-26 12:35:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-video-nouveau (Old)
 and      /work/SRC/openSUSE:Factory/.xf86-video-nouveau.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xf86-video-nouveau"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-video-nouveau/xf86-video-nouveau.changes    
2015-12-18 21:52:26.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.xf86-video-nouveau.new/xf86-video-nouveau.changes   
    2016-09-26 12:35:13.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Sep 23 13:04:35 UTC 2016 - [email protected]
+
+- Update to version 1.0.13:
+  New Nouveau ddx release. Included in this release are fixes for 
+  reverse prime and the upcoming XServer 1.19.
+
+-------------------------------------------------------------------

Old:
----
  xf86-video-nouveau-1.0.12.tar.bz2

New:
----
  xf86-video-nouveau-1.0.13.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xf86-video-nouveau.spec ++++++
--- /var/tmp/diff_new_pack.m04Q4c/_old  2016-09-26 12:35:14.000000000 +0200
+++ /var/tmp/diff_new_pack.m04Q4c/_new  2016-09-26 12:35:14.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package xf86-video-nouveau
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -26,7 +26,7 @@
 BuildRequires:  pkgconfig(libudev)
 BuildRequires:  pkgconfig(xorg-macros)
 Url:            http://nouveau.freedesktop.org/wiki/
-Version:        1.0.12
+Version:        1.0.13
 Release:        0
 Summary:        Accelerated Open Source driver for nVidia cards
 License:        MIT
@@ -37,7 +37,7 @@
 Obsoletes:      xorg-x11-driver-video-nouveau  < %{version}
 ExclusiveArch:  %ix86 x86_64 ppc ppc64 %arm aarch64
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-Source0:        
http://xorg.freedesktop.org/archive/individual/driver/%{name}-%{version}.tar.bz2
+Source0:        
http://xorg.freedesktop.org/releases/individual/driver/%{name}-%{version}.tar.bz2
 Patch0:         N_xf86-video-nouveau_nva3-noaccel-info.patch
 Supplements:    modalias(xorg-x11-server:pci:v000012D2d*sv*sd*bc03sc*i*)
 Supplements:    modalias(xorg-x11-server:pci:v000010DEd*sv*sd*bc03sc*i*)

++++++ xf86-video-nouveau-1.0.12.tar.bz2 -> xf86-video-nouveau-1.0.13.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/ChangeLog 
new/xf86-video-nouveau-1.0.13/ChangeLog
--- old/xf86-video-nouveau-1.0.12/ChangeLog     2015-12-10 03:23:07.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/ChangeLog     2016-09-22 20:39:38.000000000 
+0200
@@ -1,3 +1,87 @@
+commit e6479845ec0db20dc733c621b7967b751840a552
+Author: Ilia Mirkin <[email protected]>
+Date:   Tue Sep 20 00:31:06 2016 -0400
+
+    Bump version to 1.0.13
+    
+     - Fixes for reverse prime offload
+     - ABI 23 support for Xorg 1.19
+    
+    Signed-off-by: Ilia Mirkin <[email protected]
+
+commit 6473b68762b0dca2dfccfdfc74100398b7459296
+Author: Keith Packard <[email protected]>
+Date:   Tue Jul 19 08:29:40 2016 -0700
+
+    Use NotifyFd for drm and udev fds
+    
+    NotifyFd is available after API 22, and must be used after API 23.
+    
+    Signed-off-by: Keith Packard <[email protected]>
+
+commit a964931e8dc4e06c27749edb4993a656dc261d75
+Author: Adam Jackson <[email protected]>
+Date:   Tue Jul 19 10:03:56 2016 -0400
+
+    Adapt Block/WakeupHandler signature for ABI 23
+    
+    Signed-off-by: Adam Jackson <[email protected]>
+
+commit 12f77348e7a9579b167b41228dec9e6f97b74de8
+Author: Hans de Goede <[email protected]>
+Date:   Fri Jun 3 14:46:10 2016 +0200
+
+    Properly cleanup fb for reverse-prime-offload
+    
+    drmmode_set_scanout_pixmap(pix) adds drmmod->fb_id through a call
+    to drmmode_xf86crtc_resize(), but on a subsequent
+    drmmode_set_scanout_pixmap(NULL) it would not remove the fb.
+    
+    This keeps the crtc marked as busy, which causes the dgpu to not
+    being able to runtime suspend, after an output attached to the dgpu
+    has been used once. Which causes burning through an additional 10W
+    of power and the laptop to run quite hot.
+    
+    This commit adds the missing remove fb call, allowing the dgpu to runtime
+    suspend after an external monitor has been plugged into the laptop.
+    
+    Signed-off-by: Hans de Goede <[email protected]>
+    Signed-off-by: Ben Skeggs <[email protected]>
+
+commit 1da8a937be19e41c51a3d516bd98cee988bca44b
+Author: Ben Skeggs <[email protected]>
+Date:   Thu Jun 2 11:23:53 2016 +1000
+
+    exa/nv50-: fix some potential incomplete pushes
+    
+    I don't think these should actually be able to happen, given that we
+    already reject the unknown formats in the Check() functions.  But,
+    just in case...
+    
+    Signed-off-by: Ben Skeggs <[email protected]>
+
+commit bb57f9af9d179af0962456dca369953521ea8c2c
+Author: Ben Skeggs <[email protected]>
+Date:   Thu Jun 2 10:17:58 2016 +1000
+
+    fix use of out-of-scope data
+    
+    Reported by Coverity.
+    
+    Signed-off-by: Ben Skeggs <[email protected]>
+
+commit b824d36c28124955eda4aced5e637aa75eea4d6c
+Author: Ilia Mirkin <[email protected]>
+Date:   Wed Jan 13 11:55:06 2016 -0500
+
+    HAS_DIRTYTRACKING_ROTATION also supports multiple CRTCs
+    
+    A port of commit ff9a6b6f from xf86-video-ati.
+    
+    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93670
+    Reported-by: Thomas D. <[email protected]>
+    Signed-off-by: Ilia Mirkin <[email protected]>
+
 commit b18bc036bf9997ea65f5cbd824fd057931e604fe
 Author: Ben Skeggs <[email protected]>
 Date:   Tue Dec 8 15:52:25 2015 +1000
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/Makefile.in 
new/xf86-video-nouveau-1.0.13/Makefile.in
--- old/xf86-video-nouveau-1.0.12/Makefile.in   2015-12-10 03:06:24.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/Makefile.in   2016-09-22 20:06:54.000000000 
+0200
@@ -178,8 +178,8 @@
 CSCOPE = cscope
 DIST_SUBDIRS = $(SUBDIRS)
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in COPYING \
-       ChangeLog INSTALL compile config.guess config.sub depcomp \
-       install-sh ltmain.sh missing
+       ChangeLog INSTALL compile config.guess config.sub install-sh \
+       ltmain.sh missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -365,6 +365,7 @@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/aclocal.m4 
new/xf86-video-nouveau-1.0.13/aclocal.m4
--- old/xf86-video-nouveau-1.0.12/aclocal.m4    2015-12-10 03:06:24.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/aclocal.m4    2016-09-22 20:06:51.000000000 
+0200
@@ -2881,9 +2881,6 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
   # Ideally, we could use ldconfig to report *all* directores which are
   # searched for libraries, however this is still not possible.  Aside from not
   # being certain /sbin/ldconfig is available, command
@@ -2892,7 +2889,7 @@
   # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 
2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < 
/etc/ld.so.conf | $SED -e 's/#.*//;/^[  ]*hwcap[        ]/d;s/[:,      ]/ 
/g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -2904,6 +2901,18 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
+netbsdelf*-gnu)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='NetBSD ld.elf_so'
+  ;;
+
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -3563,7 +3572,7 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern 
/lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
   else
@@ -4441,7 +4450,7 @@
            ;;
        esac
        ;;
-      netbsd*)
+      netbsd* | netbsdelf*-gnu)
        ;;
       *qnx* | *nto*)
         # QNX uses GNU C++, but need to define -shared option too, otherwise
@@ -4953,6 +4962,9 @@
       ;;
     esac
     ;;
+  linux* | k*bsd*-gnu | gnu*)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+    ;;
   *)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | 
$global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
     ;;
@@ -5015,6 +5027,9 @@
   openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
+  linux* | k*bsd*-gnu | gnu*)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+    ;;
   esac
 
   _LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5269,7 +5284,7 @@
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs 
$linker_flags -o $lib'
        wlarc=
@@ -5790,6 +5805,7 @@
        if test yes = "$lt_cv_irix_exported_symbol"; then
           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs 
$deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && 
func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry 
$wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
+       _LT_TAGVAR(link_all_deplibs, $1)=no
       else
        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs 
$compiler_flags -soname $soname `test -n "$verstring" && func_echo_all 
"-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs 
$compiler_flags -soname $soname `test -n "$verstring" && func_echo_all 
"-set_version $verstring"` -update_registry $output_objdir/so_locations 
-exports_file $export_symbols -o $lib'
@@ -5811,7 +5827,7 @@
       esac
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs 
$linker_flags'  # a.out
       else
@@ -9052,32 +9068,63 @@
 m4_ifndef([_LT_PROG_FC],               [AC_DEFUN([_LT_PROG_FC])])
 m4_ifndef([_LT_PROG_CXX],              [AC_DEFUN([_LT_PROG_CXX])])
 
-# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-# 
-# Copyright © 2004 Scott James Remnant <[email protected]>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
+dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
+dnl serial 11 (pkg-config-0.29.1)
+dnl
+dnl Copyright © 2004 Scott James Remnant <[email protected]>.
+dnl Copyright © 2012-2015 Dan Nicholson <[email protected]>
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 2 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful, but
+dnl WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; if not, write to the Free Software
+dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+dnl 02111-1307, USA.
+dnl
+dnl As a special exception to the GNU General Public License, if you
+dnl distribute this file as part of a program that contains a
+dnl configuration script generated by Autoconf, you may include it under
+dnl the same distribution terms that you use for the rest of that
+dnl program.
+
+dnl PKG_PREREQ(MIN-VERSION)
+dnl -----------------------
+dnl Since: 0.29
+dnl
+dnl Verify that the version of the pkg-config macros are at least
+dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
+dnl installed version of pkg-config, this checks the developer's version
+dnl of pkg.m4 when generating configure.
+dnl
+dnl To ensure that this macro is defined, also add:
+dnl m4_ifndef([PKG_PREREQ],
+dnl     [m4_fatal([must install pkg-config 0.29 or later before running 
autoconf/autogen])])
+dnl
+dnl See the "Since" comment for each macro you use to see what version
+dnl of the macros you require.
+m4_defun([PKG_PREREQ],
+[m4_define([PKG_MACROS_VERSION], [0.29.1])
+m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
+    [m4_fatal([pkg.m4 version $1 or higher is required but 
]PKG_MACROS_VERSION[ found])])
+])dnl PKG_PREREQ
+
+dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
+dnl ----------------------------------
+dnl Since: 0.16
+dnl
+dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
+dnl first found in the path. Checks that the version of pkg-config found
+dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
+dnl used since that's the first version where most current features of
+dnl pkg-config existed.
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
 
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@@ -9099,18 +9146,19 @@
                PKG_CONFIG=""
        fi
 fi[]dnl
-])# PKG_PROG_PKG_CONFIG
+])dnl PKG_PROG_PKG_CONFIG
 
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists.  Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
+dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------------------------------
+dnl Since: 0.18
+dnl
+dnl Check to see whether a particular set of modules exists. Similar to
+dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
+dnl
+dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+dnl only at the first occurence in configure.ac, so if the first place
+dnl it's called might be skipped (such as if it is within an "if", you
+dnl have to call PKG_CHECK_EXISTS manually
 AC_DEFUN([PKG_CHECK_EXISTS],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 if test -n "$PKG_CONFIG" && \
@@ -9120,8 +9168,10 @@
   $3])dnl
 fi])
 
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
+dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+dnl ---------------------------------------------
+dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
+dnl pkg_failed based on the result.
 m4_define([_PKG_CONFIG],
 [if test -n "$$1"; then
     pkg_cv_[]$1="$$1"
@@ -9133,10 +9183,11 @@
  else
     pkg_failed=untried
 fi[]dnl
-])# _PKG_CONFIG
+])dnl _PKG_CONFIG
 
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
+dnl _PKG_SHORT_ERRORS_SUPPORTED
+dnl ---------------------------
+dnl Internal check to see if pkg-config supports short errors.
 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@ -9144,19 +9195,17 @@
 else
         _pkg_short_errors_supported=no
 fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
+])dnl _PKG_SHORT_ERRORS_SUPPORTED
 
 
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
+dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl --------------------------------------------------------------
+dnl Since: 0.4.0
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
+dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
 AC_DEFUN([PKG_CHECK_MODULES],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@@ -9210,16 +9259,40 @@
         AC_MSG_RESULT([yes])
        $3
 fi[]dnl
-])# PKG_CHECK_MODULES
+])dnl PKG_CHECK_MODULES
 
 
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
+dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl ---------------------------------------------------------------------
+dnl Since: 0.29
+dnl
+dnl Checks for existence of MODULES and gathers its build flags with
+dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
+dnl and VARIABLE-PREFIX_LIBS from --libs.
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
+dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
+dnl configure.ac.
+AC_DEFUN([PKG_CHECK_MODULES_STATIC],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+_save_PKG_CONFIG=$PKG_CONFIG
+PKG_CONFIG="$PKG_CONFIG --static"
+PKG_CHECK_MODULES($@)
+PKG_CONFIG=$_save_PKG_CONFIG[]dnl
+])dnl PKG_CHECK_MODULES_STATIC
+
+
+dnl PKG_INSTALLDIR([DIRECTORY])
+dnl -------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable pkgconfigdir as the location where a module
+dnl should install pkg-config .pc files. By default the directory is
+dnl $libdir/pkgconfig, but the default can be changed by passing
+dnl DIRECTORY. The user can override through the --with-pkgconfigdir
+dnl parameter.
 AC_DEFUN([PKG_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -9230,16 +9303,18 @@
 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
+])dnl PKG_INSTALLDIR
 
 
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
+dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
+dnl --------------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable noarch_pkgconfigdir as the location where a
+dnl module should install arch-independent pkg-config .pc files. By
+dnl default the directory is $datadir/pkgconfig, but the default can be
+dnl changed by passing DIRECTORY. The user can override through the
+dnl --with-noarch-pkgconfigdir parameter.
 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -9250,13 +9325,15 @@
 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
+])dnl PKG_NOARCH_INSTALLDIR
 
 
-# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# -------------------------------------------
-# Retrieves the value of the pkg-config variable for the given module.
+dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------
+dnl Since: 0.28
+dnl
+dnl Retrieves the value of the pkg-config variable for the given module.
 AC_DEFUN([PKG_CHECK_VAR],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
@@ -9265,7 +9342,7 @@
 AS_VAR_COPY([$1], [pkg_cv_][$1])
 
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])# PKG_CHECK_VAR
+])dnl PKG_CHECK_VAR
 
 dnl xorg-macros.m4.  Generated from xorg-macros.m4.in xorgversion.m4 by 
configure.
 dnl
@@ -9693,6 +9770,10 @@
 # Test for the ability of xmlto to generate a text target
 have_xmlto_text=no
 cat > conftest.xml << "EOF"
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+                   "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd";>
+<book id="saver">
+</book>
 EOF
 AS_IF([test "$have_xmlto" = yes],
       [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/config.guess 
new/xf86-video-nouveau-1.0.13/config.guess
--- old/xf86-video-nouveau-1.0.12/config.guess  2015-12-10 03:05:11.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/config.guess  2016-09-22 20:06:54.000000000 
+0200
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2015 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2015-08-20'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -168,20 +168,27 @@
        # Note: NetBSD doesn't particularly care about the vendor
        # portion of the name.  We always set it to "unknown".
        sysctl="sysctl -n hw.machine_arch"
-       UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-           /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+       UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+           /sbin/$sysctl 2>/dev/null || \
+           /usr/sbin/$sysctl 2>/dev/null || \
+           echo unknown)`
        case "${UNAME_MACHINE_ARCH}" in
            armeb) machine=armeb-unknown ;;
            arm*) machine=arm-unknown ;;
            sh3el) machine=shl-unknown ;;
            sh3eb) machine=sh-unknown ;;
            sh5el) machine=sh5le-unknown ;;
+           earmv*)
+               arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 
's,^e\(armv[0-9]\).*$,\1,'`
+               endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 
's,^.*\(eb\)$,\1,p'`
+               machine=${arch}${endian}-unknown
+               ;;
            *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
        esac
        # The Operating System including object format, if it has switched
        # to ELF recently, or will in the future.
        case "${UNAME_MACHINE_ARCH}" in
-           arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+           arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax)
                eval $set_cc_for_build
                if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
                        | grep -q __ELF__
@@ -197,6 +204,13 @@
                os=netbsd
                ;;
        esac
+       # Determine ABI tags.
+       case "${UNAME_MACHINE_ARCH}" in
+           earm*)
+               expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+               abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+               ;;
+       esac
        # The OS release
        # Debian GNU/NetBSD machines have a different userland, and
        # thus, need a distinct triplet. However, they do not need
@@ -207,13 +221,13 @@
                release='-gnu'
                ;;
            *)
-               release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+               release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. 
-f1,2`
                ;;
        esac
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
        # contains redundant information, the shorter form:
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-       echo "${machine}-${os}${release}"
+       echo "${machine}-${os}${release}${abi}"
        exit ;;
     *:Bitrig:*:*)
        UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
@@ -235,6 +249,9 @@
     *:MirBSD:*:*)
        echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
        exit ;;
+    *:Sortix:*:*)
+       echo ${UNAME_MACHINE}-unknown-sortix
+       exit ;;
     alpha:OSF1:*:*)
        case $UNAME_RELEASE in
        *4.0)
@@ -933,6 +950,9 @@
     crisv32:Linux:*:*)
        echo ${UNAME_MACHINE}-axis-linux-${LIBC}
        exit ;;
+    e2k:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
     frv:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
@@ -1021,7 +1041,7 @@
        echo ${UNAME_MACHINE}-dec-linux-${LIBC}
        exit ;;
     x86_64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       echo ${UNAME_MACHINE}-pc-linux-${LIBC}
        exit ;;
     xtensa*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/config.sub 
new/xf86-video-nouveau-1.0.13/config.sub
--- old/xf86-video-nouveau-1.0.12/config.sub    2015-12-10 03:05:11.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/config.sub    2016-09-22 20:06:54.000000000 
+0200
@@ -2,7 +2,7 @@
 # Configuration validation subroutine script.
 #   Copyright 1992-2015 Free Software Foundation, Inc.
 
-timestamp='2015-01-01'
+timestamp='2015-08-20'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -117,7 +117,7 @@
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
   linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | 
kfreebsd*-gnu* | \
-  knetbsd*-gnu* | netbsd*-gnu* | \
+  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
   kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
@@ -255,11 +255,12 @@
        | arc | arceb \
        | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
        | avr | avr32 \
+       | ba \
        | be32 | be64 \
        | bfin \
        | c4x | c8051 | clipper \
        | d10v | d30v | dlx | dsp16xx \
-       | epiphany \
+       | e2k | epiphany \
        | fido | fr30 | frv | ft32 \
        | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
        | hexagon \
@@ -305,7 +306,7 @@
        | riscv32 | riscv64 \
        | rl78 | rx \
        | score \
-       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | 
shbe | shle | sh[1234]le | sh3ele \
+       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | 
shbe | shle | sh[1234]le | sh3ele \
        | sh64 | sh64le \
        | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | 
sparclite \
        | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
@@ -376,12 +377,13 @@
        | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
        | avr-* | avr32-* \
+       | ba-* \
        | be32-* | be64-* \
        | bfin-* | bs2000-* \
        | c[123]* | c30-* | [cjt]90-* | c4x-* \
        | c8051-* | clipper-* | craynv-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
-       | elxsi-* \
+       | e2k-* | elxsi-* \
        | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
        | h8300-* | h8500-* \
        | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
@@ -428,12 +430,13 @@
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
        | pyramid-* \
+       | riscv32-* | riscv64-* \
        | rl78-* | romp-* | rs6000-* | rx-* \
        | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* 
| sheb-* | shbe-* \
        | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
        | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | 
sparclet-* \
        | sparclite-* \
-       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
        | tahoe-* \
        | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
        | tile*-* \
@@ -518,6 +521,9 @@
                basic_machine=i386-pc
                os=-aros
                ;;
+        asmjs)
+               basic_machine=asmjs-unknown
+               ;;
        aux)
                basic_machine=m68k-apple
                os=-aux
@@ -1025,7 +1031,7 @@
                ;;
        ppc64)  basic_machine=powerpc64-unknown
                ;;
-       ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 
's/^[^-]*-//'`
+       ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 
's/^[^-]*-//'`
                ;;
        ppc64le | powerpc64little | ppc64-le | powerpc64-little)
                basic_machine=powerpc64le-unknown
@@ -1373,7 +1379,7 @@
              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | 
-solaris* \
              | -sym* | -kopensolaris* | -plan9* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-             | -aos* | -aros* \
+             | -aos* | -aros* | -cloudabi* | -sortix* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
              | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
              | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/configure 
new/xf86-video-nouveau-1.0.13/configure
--- old/xf86-video-nouveau-1.0.12/configure     2015-12-10 03:06:25.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/configure     2016-09-22 20:06:53.000000000 
+0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for xf86-video-nouveau 1.0.12.
+# Generated by GNU Autoconf 2.69 for xf86-video-nouveau 1.0.13.
 #
 # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='xf86-video-nouveau'
 PACKAGE_TARNAME='xf86-video-nouveau'
-PACKAGE_VERSION='1.0.12'
-PACKAGE_STRING='xf86-video-nouveau 1.0.12'
+PACKAGE_VERSION='1.0.13'
+PACKAGE_STRING='xf86-video-nouveau 1.0.13'
 PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
 PACKAGE_URL=''
 
@@ -771,6 +771,7 @@
 docdir
 oldincludedir
 includedir
+runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -870,6 +871,7 @@
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1122,6 +1124,15 @@
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1259,7 +1270,7 @@
 for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
                datadir sysconfdir sharedstatedir localstatedir includedir \
                oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
+               libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1372,7 +1383,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures xf86-video-nouveau 1.0.12 to adapt to many kinds of 
systems.
+\`configure' configures xf86-video-nouveau 1.0.13 to adapt to many kinds of 
systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1412,6 +1423,7 @@
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1443,7 +1455,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xf86-video-nouveau 1.0.12:";;
+     short | recursive ) echo "Configuration of xf86-video-nouveau 1.0.13:";;
    esac
   cat <<\_ACEOF
 
@@ -1586,7 +1598,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xf86-video-nouveau configure 1.0.12
+xf86-video-nouveau configure 1.0.13
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1910,7 +1922,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by xf86-video-nouveau $as_me 1.0.12, which was
+It was created by xf86-video-nouveau $as_me 1.0.13, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2799,7 +2811,7 @@
 
 # Define the identity of the package.
  PACKAGE='xf86-video-nouveau'
- VERSION='1.0.12'
+ VERSION='1.0.13'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -11974,7 +11986,7 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern 
/lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
   else
@@ -15365,6 +15377,9 @@
   openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
+  linux* | k*bsd*-gnu | gnu*)
+    link_all_deplibs=no
+    ;;
   esac
 
   ld_shlibs=yes
@@ -15619,7 +15634,7 @@
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
        wlarc=
@@ -16289,6 +16304,7 @@
        if test yes = "$lt_cv_irix_exported_symbol"; then
           archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs 
$compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all 
"$wl-set_version $wl$verstring"` $wl-update_registry 
$wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
+       link_all_deplibs=no
       else
        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname 
$soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` 
-update_registry $output_objdir/so_locations -o $lib'
        archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags 
-soname $soname `test -n "$verstring" && func_echo_all "-set_version 
$verstring"` -update_registry $output_objdir/so_locations -exports_file 
$export_symbols -o $lib'
@@ -16310,7 +16326,7 @@
       esac
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  
# a.out
       else
@@ -17405,9 +17421,6 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
   # Ideally, we could use ldconfig to report *all* directores which are
   # searched for libraries, however this is still not possible.  Aside from not
   # being certain /sbin/ldconfig is available, command
@@ -17416,7 +17429,7 @@
   # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 
2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < 
/etc/ld.so.conf | $SED -e 's/#.*//;/^[      ]*hwcap[        ]/d;s/[:,      ]/ 
/g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -17428,6 +17441,18 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
+netbsdelf*-gnu)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='NetBSD ld.elf_so'
+  ;;
+
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -20727,7 +20752,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by xf86-video-nouveau $as_me 1.0.12, which was
+This file was extended by xf86-video-nouveau $as_me 1.0.13, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -20793,7 +20818,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-xf86-video-nouveau config.status 1.0.12
+xf86-video-nouveau config.status 1.0.13
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/configure.ac 
new/xf86-video-nouveau-1.0.13/configure.ac
--- old/xf86-video-nouveau-1.0.12/configure.ac  2015-12-10 03:06:18.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/configure.ac  2016-09-22 20:04:29.000000000 
+0200
@@ -22,7 +22,7 @@
 
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-nouveau],
-        [1.0.12],
+        [1.0.13],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-video-nouveau])
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/install-sh 
new/xf86-video-nouveau-1.0.13/install-sh
--- old/xf86-video-nouveau-1.0.12/install-sh    2015-12-10 03:05:11.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/install-sh    2016-09-22 20:06:54.000000000 
+0200
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2013-12-25.23; # UTC
+scriptversion=2014-09-12.12; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -324,34 +324,41 @@
             # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
             ;;
           *)
+            # $RANDOM is not portable (e.g. dash);  use it when possible to
+            # lower collision chance
             tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-            trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 
2>/dev/null; exit $ret' 0
 
+            # As "mkdir -p" follows symlinks and we work in /tmp possibly;  so
+            # create the $tmpdir first (and fail if unsuccessful) to make sure
+            # that nobody tries to guess the $tmpdir name.
             if (umask $mkdir_umask &&
-                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+                $mkdirprog $mkdir_mode "$tmpdir" &&
+                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 
2>&1
             then
               if test -z "$dir_arg" || {
                    # Check for POSIX incompatibilities with -m.
                    # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
                    # other-writable bit of parent directory when it shouldn't.
                    # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
+                   test_tmpdir="$tmpdir/a"
+                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
                    case $ls_ld_tmpdir in
                      d????-?r-*) different_mode=700;;
                      d????-?--*) different_mode=755;;
                      *) false;;
                    esac &&
-                   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-                     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
+                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
                      test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
                    }
                  }
               then posix_mkdir=:
               fi
-              rmdir "$tmpdir/d" "$tmpdir"
+              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
             else
               # Remove any dirs left behind by ancient mkdir implementations.
-              rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
             fi
             trap '' 0;;
         esac;;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/ltmain.sh 
new/xf86-video-nouveau-1.0.13/ltmain.sh
--- old/xf86-video-nouveau-1.0.12/ltmain.sh     2015-12-10 03:05:08.000000000 
+0100
+++ new/xf86-video-nouveau-1.0.13/ltmain.sh     2016-09-22 20:06:52.000000000 
+0200
@@ -31,7 +31,7 @@
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION=2.4.6
+VERSION="2.4.6 Debian-2.4.6-0.1"
 package_revision=2.4.6
 
 
@@ -2073,7 +2073,7 @@
        autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
 
 Report bugs to <[email protected]>.
-GNU libtool home page: <http://www.gnu.org/software/libtool/>.
+GNU libtool home page: <http://www.gnu.org/s/libtool/>.
 General help using GNU software: <http://www.gnu.org/gethelp/>."
     exit 0
 }
@@ -7272,10 +7272,13 @@
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time 
optimization
+      # -specs=*             GCC specs files
       # -stdlib=*            select c++ std lib with clang
+      # -fsanitize=*         Clang/GCC memory and address sanitizer
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
+      
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+      -specs=*|-fsanitize=*)
         func_quote_for_eval "$arg"
        arg=$func_quote_for_eval_result
         func_append compile_command " $arg"
@@ -7568,7 +7571,10 @@
        case $pass in
        dlopen) libs=$dlfiles ;;
        dlpreopen) libs=$dlprefiles ;;
-       link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+       link)
+         libs="$deplibs %DEPLIBS%"
+         test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
+         ;;
        esac
       fi
       if test lib,dlpreopen = "$linkmode,$pass"; then
@@ -7887,19 +7893,19 @@
            # It is a libtool convenience library, so add in its objects.
            func_append convenience " $ladir/$objdir/$old_library"
            func_append old_convenience " $ladir/$objdir/$old_library"
+           tmp_libs=
+           for deplib in $dependency_libs; do
+             deplibs="$deplib $deplibs"
+             if $opt_preserve_dup_deps; then
+               case "$tmp_libs " in
+               *" $deplib "*) func_append specialdeplibs " $deplib" ;;
+               esac
+             fi
+             func_append tmp_libs " $deplib"
+           done
          elif test prog != "$linkmode" && test lib != "$linkmode"; then
            func_fatal_error "'$lib' is not a convenience library"
          fi
-         tmp_libs=
-         for deplib in $dependency_libs; do
-           deplibs="$deplib $deplibs"
-           if $opt_preserve_dup_deps; then
-             case "$tmp_libs " in
-             *" $deplib "*) func_append specialdeplibs " $deplib" ;;
-             esac
-           fi
-           func_append tmp_libs " $deplib"
-         done
          continue
        fi # $pass = conv
 
@@ -8823,6 +8829,9 @@
            revision=$number_minor
            lt_irix_increment=no
            ;;
+         *)
+           func_fatal_configuration "$modename: unknown library version type 
'$version_type'"
+           ;;
          esac
          ;;
        no)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/man/Makefile.in 
new/xf86-video-nouveau-1.0.13/man/Makefile.in
--- old/xf86-video-nouveau-1.0.12/man/Makefile.in       2015-12-10 
03:06:24.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/man/Makefile.in       2016-09-22 
20:06:54.000000000 +0200
@@ -330,6 +330,7 @@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -361,9 +362,9 @@
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
        $(am__cd) $(top_srcdir) && \
-         $(AUTOMAKE) --foreign man/Makefile
+         $(AUTOMAKE) --gnu man/Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/Makefile.in 
new/xf86-video-nouveau-1.0.13/src/Makefile.in
--- old/xf86-video-nouveau-1.0.12/src/Makefile.in       2015-12-10 
03:06:24.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/src/Makefile.in       2016-09-22 
20:06:54.000000000 +0200
@@ -371,6 +371,7 @@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -512,9 +513,9 @@
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
        $(am__cd) $(top_srcdir) && \
-         $(AUTOMAKE) --foreign src/Makefile
+         $(AUTOMAKE) --gnu src/Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/compat-api.h 
new/xf86-video-nouveau-1.0.13/src/compat-api.h
--- old/xf86-video-nouveau-1.0.12/src/compat-api.h      2014-05-26 
09:29:55.000000000 +0200
+++ new/xf86-video-nouveau-1.0.13/src/compat-api.h      2016-09-22 
20:04:29.000000000 +0200
@@ -74,8 +74,17 @@
 
 #define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv
 
+#if ABI_VIDEODRV_VERSION >= SET_ABI_VERSION(22,0)
+#define HAVE_NOTIFY_FD 1
+#endif
+
+#if ABI_VIDEODRV_VERSION >= SET_ABI_VERSION(23, 0)
+#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout
+#define BLOCKHANDLER_ARGS arg, pTimeout
+#else
 #define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer 
pReadmask
 #define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask
+#endif
 
 #define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen
 #define CLOSE_SCREEN_ARGS pScreen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/drmmode_display.c 
new/xf86-video-nouveau-1.0.13/src/drmmode_display.c
--- old/xf86-video-nouveau-1.0.12/src/drmmode_display.c 2015-12-10 
03:06:18.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/src/drmmode_display.c 2016-09-22 
20:04:29.000000000 +0200
@@ -680,10 +680,16 @@
        PixmapPtr screenpix = screen->GetScreenPixmap(screen);
        xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
        drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
+       drmmode_ptr drmmode = drmmode_crtc->drmmode;
        int c, total_width = 0, max_height = 0, this_x = 0;
        if (!ppix) {
-               if (crtc->randr_crtc->scanout_pixmap)
+               if (crtc->randr_crtc->scanout_pixmap) {
                        
PixmapStopDirtyTracking(crtc->randr_crtc->scanout_pixmap, screenpix);
+                       if (drmmode && drmmode->fb_id) {
+                               drmModeRmFB(drmmode->fd, drmmode->fb_id);
+                               drmmode->fb_id = 0;
+                       }
+               }
                drmmode_crtc->scanout_pixmap_x = 0;
                return TRUE;
        }
@@ -704,7 +710,7 @@
                        if (max_height < iter->mode.VDisplay)
                                max_height = iter->mode.VDisplay;
                }
-#ifndef HAS_DIRTYTRACKING2
+#if !defined(HAS_DIRTYTRACKING_ROTATION) && !defined(HAS_DIRTYTRACKING2)
        if (iter != crtc) {
                ErrorF("Cannot do multiple crtcs without X server dirty 
tracking 2 interface\n");
                return FALSE;
@@ -1531,6 +1537,15 @@
 }
 #endif
 
+#if HAVE_NOTIFY_FD
+static void
+drmmode_udev_notify(int fd, int notify, void *data)
+{
+       ScrnInfoPtr scrn = data;
+       drmmode_handle_uevents(scrn);
+}
+#endif
+
 static void
 drmmode_uevent_init(ScrnInfoPtr scrn)
 {
@@ -1557,7 +1572,11 @@
                return;
        }
 
+#if HAVE_NOTIFY_FD
+       SetNotifyFd(udev_monitor_get_fd(mon), drmmode_udev_notify, 
X_NOTIFY_READ, scrn);
+#else
        AddGeneralSocket(udev_monitor_get_fd(mon));
+#endif
        drmmode->uevent_monitor = mon;
 #endif
 }
@@ -1571,13 +1590,27 @@
        if (drmmode->uevent_monitor) {
                struct udev *u = udev_monitor_get_udev(drmmode->uevent_monitor);
 
+#if HAVE_NOTIFY_FD
+               RemoveNotifyFd(udev_monitor_get_fd(drmmode->uevent_monitor));
+#else
                
RemoveGeneralSocket(udev_monitor_get_fd(drmmode->uevent_monitor));
+#endif
                udev_monitor_unref(drmmode->uevent_monitor);
                udev_unref(u);
        }
 #endif
 }
 
+#if HAVE_NOTIFY_FD
+static void
+drmmode_notify_fd(int fd, int notify, void *data)
+{
+       ScrnInfoPtr scrn = data;
+       drmmode_ptr drmmode = drmmode_from_scrn(scrn);
+       drmHandleEvent(drmmode->fd, &drmmode->event_context);
+}
+#else
+
 static void
 drmmode_wakeup_handler(pointer data, int err, pointer p)
 {
@@ -1596,6 +1629,7 @@
                drmmode_handle_uevents(scrn);
 #endif
 }
+#endif
 
 void
 drmmode_screen_init(ScreenPtr pScreen)
@@ -1613,9 +1647,13 @@
        /* Register wakeup handler only once per servergen, so ZaphodHeads work 
*/
        if (pNVEnt->fd_wakeup_registered != serverGeneration) {
                /* Register a wakeup handler to get informed on DRM events */
+#if HAVE_NOTIFY_FD
+               SetNotifyFd(drmmode->fd, drmmode_notify_fd, X_NOTIFY_READ, 
scrn);
+#else
                AddGeneralSocket(drmmode->fd);
                RegisterBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA,
                                               drmmode_wakeup_handler, scrn);
+#endif
                pNVEnt->fd_wakeup_registered = serverGeneration;
                pNVEnt->fd_wakeup_ref = 1;
        }
@@ -1634,10 +1672,14 @@
        if (pNVEnt->fd_wakeup_registered == serverGeneration &&
                !--pNVEnt->fd_wakeup_ref) {
 
+#if HAVE_NOTIFY_FD
+               RemoveNotifyFd(drmmode->fd);
+#else
                /* Unregister wakeup handler */
                RemoveBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA,
                                             drmmode_wakeup_handler, scrn);
                RemoveGeneralSocket(drmmode->fd);
+#endif
        }
 
        /* Tear down udev event handler */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/nouveau_copy.c 
new/xf86-video-nouveau-1.0.13/src/nouveau_copy.c
--- old/xf86-video-nouveau-1.0.12/src/nouveau_copy.c    2015-12-10 
03:06:18.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/src/nouveau_copy.c    2016-09-22 
20:04:29.000000000 +0200
@@ -50,8 +50,7 @@
        }, *method = methods;
        ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
        NVPtr pNv = NVPTR(pScrn);
-       void *data;
-       int ret, size;
+       int ret;
 
        if (pNv->AccelMethod == NONE) {
                xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
@@ -65,30 +64,35 @@
                    pNv->dev->chipset == 0xaa ||
                    pNv->dev->chipset == 0xac)
                        return FALSE;
-               data = &(struct nv04_fifo) {
-                       .vram = NvDmaFB,
-                       .gart = NvDmaTT,
-               };
-               size = sizeof(struct nv04_fifo);
+
+               ret = nouveau_object_new(&pNv->dev->object, 0,
+                                        NOUVEAU_FIFO_CHANNEL_CLASS,
+                                        &(struct nv04_fifo) {
+                                               .vram = NvDmaFB,
+                                               .gart = NvDmaTT,
+                                        }, sizeof(struct nv04_fifo),
+                                        &pNv->ce_channel);
                break;
        case NV_FERMI:
-               data = &(struct nvc0_fifo) {};
-               size = sizeof(struct nvc0_fifo);
+               ret = nouveau_object_new(&pNv->dev->object, 0,
+                                        NOUVEAU_FIFO_CHANNEL_CLASS,
+                                        &(struct nvc0_fifo) {
+                                        }, sizeof(struct nvc0_fifo),
+                                        &pNv->ce_channel);
                break;
        case NV_KEPLER:
-               data = &(struct nve0_fifo) {
-                       .engine = NVE0_FIFO_ENGINE_CE0 |
-                                 NVE0_FIFO_ENGINE_CE1,
-               };
-               size = sizeof(struct nvc0_fifo);
+               ret = nouveau_object_new(&pNv->dev->object, 0,
+                                        NOUVEAU_FIFO_CHANNEL_CLASS,
+                                        &(struct nve0_fifo) {
+                                               .engine = NVE0_FIFO_ENGINE_CE0 |
+                                                         NVE0_FIFO_ENGINE_CE1,
+                                        }, sizeof(struct nve0_fifo),
+                                        &pNv->ce_channel);
                break;
        default:
                return FALSE;
        }
 
-       ret = nouveau_object_new(&pNv->dev->object, 0,
-                                NOUVEAU_FIFO_CHANNEL_CLASS, data, size,
-                                &pNv->ce_channel);
        if (ret) {
                xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                           "[COPY] error allocating channel: %d\n", ret);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/nv50_exa.c 
new/xf86-video-nouveau-1.0.13/src/nv50_exa.c
--- old/xf86-video-nouveau-1.0.12/src/nv50_exa.c        2015-12-10 
03:06:18.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/src/nv50_exa.c        2016-09-22 
20:04:29.000000000 +0200
@@ -575,82 +575,84 @@
 {
        struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
        struct nouveau_pushbuf *push = pNv->pushbuf;
+       uint32_t format;
 
        /*XXX: Scanout buffer not tiled, someone needs to figure it out */
        if (!nv50_style_tiled_pixmap(ppix))
                NOUVEAU_FALLBACK("pixmap is scanout buffer\n");
 
-       PUSH_REFN (push, bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_RD);
-       PUSH_DATAu(push, pNv->scratch, TIC_OFFSET + (unit * 32), 8);
        switch (ppict->format) {
        case PICT_a8r8g8b8:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 8_8_8_8));
+               format = _(B_C0, G_C1, R_C2, A_C3, 8_8_8_8);
                break;
        case PICT_a8b8g8r8:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 8_8_8_8));
+               format = _(R_C0, G_C1, B_C2, A_C3, 8_8_8_8);
                break;
        case PICT_x8r8g8b8:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 8_8_8_8));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 8_8_8_8);
                break;
        case PICT_x8b8g8r8:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 8_8_8_8));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 8_8_8_8);
                break;
        case PICT_r5g6b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 5_6_5));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 5_6_5);
                break;
        case PICT_a8:
-               PUSH_DATA (push, _(A_C0, B_ZERO, G_ZERO, R_ZERO, 8));
+               format = _(A_C0, B_ZERO, G_ZERO, R_ZERO, 8);
                break;
        case PICT_x1r5g5b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 1_5_5_5));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 1_5_5_5);
                break;
        case PICT_x1b5g5r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 1_5_5_5));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 1_5_5_5);
                break;
        case PICT_a1r5g5b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 1_5_5_5));
+               format = _(B_C0, G_C1, R_C2, A_C3, 1_5_5_5);
                break;
        case PICT_a1b5g5r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 1_5_5_5));
+               format = _(R_C0, G_C1, B_C2, A_C3, 1_5_5_5);
                break;
        case PICT_b5g6r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 5_6_5));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 5_6_5);
                break;
        case PICT_b8g8r8x8:
-               PUSH_DATA (push, _(A_ONE, R_C1, G_C2, B_C3, 8_8_8_8));
+               format = _(A_ONE, R_C1, G_C2, B_C3, 8_8_8_8);
                break;
        case PICT_b8g8r8a8:
-               PUSH_DATA (push, _(A_C0, R_C1, G_C2, B_C3, 8_8_8_8));
+               format = _(A_C0, R_C1, G_C2, B_C3, 8_8_8_8);
                break;
        case PICT_a2b10g10r10:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 2_10_10_10));
+               format = _(R_C0, G_C1, B_C2, A_C3, 2_10_10_10);
                break;
        case PICT_x2b10g10r10:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 2_10_10_10));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 2_10_10_10);
                break;
        case PICT_x2r10g10b10:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 2_10_10_10));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 2_10_10_10);
                break;
        case PICT_a2r10g10b10:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 2_10_10_10));
+               format = _(B_C0, G_C1, R_C2, A_C3, 2_10_10_10);
                break;
        case PICT_x4r4g4b4:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 4_4_4_4));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 4_4_4_4);
                break;
        case PICT_x4b4g4r4:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 4_4_4_4));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 4_4_4_4);
                break;
        case PICT_a4r4g4b4:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 4_4_4_4));
+               format = _(B_C0, G_C1, R_C2, A_C3, 4_4_4_4);
                break;
        case PICT_a4b4g4r4:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 4_4_4_4));
+               format = _(R_C0, G_C1, B_C2, A_C3, 4_4_4_4);
                break;
        default:
                NOUVEAU_FALLBACK("invalid picture format, this SHOULD NOT 
HAPPEN. Expect trouble.\n");
        }
 #undef _
 
+       PUSH_REFN (push, bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_RD);
+       PUSH_DATAu(push, pNv->scratch, TIC_OFFSET + (unit * 32), 8);
+       PUSH_DATA (push, format);
        PUSH_DATA (push, bo->offset);
        PUSH_DATA (push, (bo->offset >> 32) |
                         (bo->config.nv50.tile_mode << 18) |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xf86-video-nouveau-1.0.12/src/nvc0_exa.c 
new/xf86-video-nouveau-1.0.13/src/nvc0_exa.c
--- old/xf86-video-nouveau-1.0.12/src/nvc0_exa.c        2015-12-10 
03:06:18.000000000 +0100
+++ new/xf86-video-nouveau-1.0.13/src/nvc0_exa.c        2016-09-22 
20:04:29.000000000 +0200
@@ -574,82 +574,84 @@
 {
        struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
        struct nouveau_pushbuf *push = pNv->pushbuf;
+       uint32_t format;
 
        /*XXX: Scanout buffer not tiled, someone needs to figure it out */
        if (!nv50_style_tiled_pixmap(ppix))
                NOUVEAU_FALLBACK("pixmap is scanout buffer\n");
 
-       PUSH_REFN (push, bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_RD);
-       PUSH_DATAu(push, pNv->scratch, TIC_OFFSET + (unit * 32), 8);
        switch (ppict->format) {
        case PICT_a8r8g8b8:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 8_8_8_8));
+               format = _(B_C0, G_C1, R_C2, A_C3, 8_8_8_8);
                break;
        case PICT_a8b8g8r8:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 8_8_8_8));
+               format = _(R_C0, G_C1, B_C2, A_C3, 8_8_8_8);
                break;
        case PICT_x8r8g8b8:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 8_8_8_8));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 8_8_8_8);
                break;
        case PICT_x8b8g8r8:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 8_8_8_8));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 8_8_8_8);
                break;
        case PICT_r5g6b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 5_6_5));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 5_6_5);
                break;
        case PICT_a8:
-               PUSH_DATA (push, _(A_C0, B_ZERO, G_ZERO, R_ZERO, 8));
+               format = _(A_C0, B_ZERO, G_ZERO, R_ZERO, 8);
                break;
        case PICT_x1r5g5b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 1_5_5_5));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 1_5_5_5);
                break;
        case PICT_x1b5g5r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 1_5_5_5));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 1_5_5_5);
                break;
        case PICT_a1r5g5b5:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 1_5_5_5));
+               format = _(B_C0, G_C1, R_C2, A_C3, 1_5_5_5);
                break;
        case PICT_a1b5g5r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 1_5_5_5));
+               format = _(R_C0, G_C1, B_C2, A_C3, 1_5_5_5);
                break;
        case PICT_b5g6r5:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 5_6_5));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 5_6_5);
                break;
        case PICT_b8g8r8x8:
-               PUSH_DATA (push, _(A_ONE, R_C1, G_C2, B_C3, 8_8_8_8));
+               format = _(A_ONE, R_C1, G_C2, B_C3, 8_8_8_8);
                break;
        case PICT_b8g8r8a8:
-               PUSH_DATA (push, _(A_C0, R_C1, G_C2, B_C3, 8_8_8_8));
+               format = _(A_C0, R_C1, G_C2, B_C3, 8_8_8_8);
                break;
        case PICT_a2b10g10r10:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 2_10_10_10));
+               format = _(R_C0, G_C1, B_C2, A_C3, 2_10_10_10);
                break;
        case PICT_x2b10g10r10:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 2_10_10_10));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 2_10_10_10);
                break;
        case PICT_x2r10g10b10:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 2_10_10_10));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 2_10_10_10);
                break;
        case PICT_a2r10g10b10:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 2_10_10_10));
+               format = _(B_C0, G_C1, R_C2, A_C3, 2_10_10_10);
                break;
        case PICT_x4r4g4b4:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_ONE, 4_4_4_4));
+               format = _(B_C0, G_C1, R_C2, A_ONE, 4_4_4_4);
                break;
        case PICT_x4b4g4r4:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_ONE, 4_4_4_4));
+               format = _(R_C0, G_C1, B_C2, A_ONE, 4_4_4_4);
                break;
        case PICT_a4r4g4b4:
-               PUSH_DATA (push, _(B_C0, G_C1, R_C2, A_C3, 4_4_4_4));
+               format = _(B_C0, G_C1, R_C2, A_C3, 4_4_4_4);
                break;
        case PICT_a4b4g4r4:
-               PUSH_DATA (push, _(R_C0, G_C1, B_C2, A_C3, 4_4_4_4));
+               format = _(R_C0, G_C1, B_C2, A_C3, 4_4_4_4);
                break;
        default:
                NOUVEAU_FALLBACK("invalid picture format, this SHOULD NOT 
HAPPEN. Expect trouble.\n");
        }
 #undef _
 
+       PUSH_REFN (push, bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_RD);
+       PUSH_DATAu(push, pNv->scratch, TIC_OFFSET + (unit * 32), 8);
+       PUSH_DATA (push, format);
        PUSH_DATA (push, bo->offset);
        PUSH_DATA (push, (bo->offset >> 32) |
                         (bo->config.nvc0.tile_mode << 18) |


Reply via email to