Hello community, here is the log from the commit of package xorg-x11-driver-video-nouveau checked in at Thu Apr 3 02:41:16 CEST 2008. -------- --- arch/i386/xorg-x11-driver-video-nouveau/xorg-x11-driver-video-nouveau.changes 2008-03-12 00:00:19.000000000 +0100 +++ xorg-x11-driver-video-nouveau/xorg-x11-driver-video-nouveau.changes 2008-04-02 19:48:52.302765000 +0200 @@ -1,0 +2,8 @@ +Mon Mar 31 18:22:32 CEST 2008 - bk@suse.de + +- git pull: Fixes gl-117 TORCS neverball (Options: Reflections off) + vdrift gearbox bzflag xmoto khunpan aragetron briqolo and celestia +- cut the size of sources by 60% (removed code not used by nouveau) +- use git from 2008-03-12 for drm: some newer change causes an oops + +------------------------------------------------------------------- Old: ---- gallium.diff nouveau-0.20080311.tar.bz2 New: ---- clone-current-gits.sh gallium-warnings.diff nouveau-0.20080402.tar.bz2 update-spec.sh xf86-video-nouveau-ppcwerror.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-driver-video-nouveau.spec ++++++ --- /var/tmp/diff_new_pack.R32216/_old 2008-04-03 02:39:56.000000000 +0200 +++ /var/tmp/diff_new_pack.R32216/_new 2008-04-03 02:39:56.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package xorg-x11-driver-video-nouveau (Version 0.20080311) +# spec file for package xorg-x11-driver-video-nouveau (Version 0.20080402) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -14,18 +14,22 @@ Name: xorg-x11-driver-video-nouveau Url: http://nouveau.freedesktop.org/ -License: GPL v2 only; X11/MIT +License: LGPL v2.0 only; X11/MIT; SGI FreeB Group: System/X11/Servers/XF86_4 Summary: Nouveau Open Source X11 driver for nVidia cards -Version: 0.20080311 -Release: 2 +Version: 0.20080402 +Release: 1 %define tarball nouveau Source: %tarball-%version.tar.bz2 +Source1: update-spec.sh +Source2: clone-current-gits.sh +Patch1: xf86-video-nouveau-ppcwerror.diff Patch2: xf86-video-nouveau-initcrash.diff Patch3: xf86-video-nouveau-randrnv40.diff -Patch4: gallium.diff +Patch4: gallium-warnings.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: gcc-c++ kernel-syms module-init-tools xorg-x11-server-sdk +BuildRequires: autoconf automake libtool Obsoletes: x11-video-nouveau Requires: nouveau-kmp xorg-x11-server ExclusiveArch: %ix86 x86_64 ppc ppc64 @@ -62,13 +66,15 @@ EXA and all hardware-accelerated Xvideo support (textures and overlay). 3D support is only present for GeForce 6/7 and extremely -experimentental but certain applications and games like neverball, -neverputt, briquolo and chromium work already without any flaws as long -as not too many windows are open. +experimentental but certain applications and games like gl-117, torcs, +bzflag, xmoto, khunphan, briquolo, chromium, neverputt, gearbox and +vdrift work flawlessy and for fluent neverball, turn off reflections in +neverball's options. %package KMP +License: GPL v2 only; SGI FreeB Summary: Nouveau Open Source X11 driver for nVidia cards Group: System/X11/Servers/XF86_4 @@ -103,9 +109,10 @@ EXA and all hardware-accelerated Xvideo support (textures and overlay). 3D support is only present for GeForce 6/7 and extremely -experimentental but certain applications and games like neverball, -neverputt, briquolo and chromium work already without any flaws as long -as not too many windows are open. +experimentental but certain applications and games like gl-117, torcs, +bzflag, xmoto, khunphan, briquolo, chromium, neverputt, gearbox and +vdrift work flawlessy and for fluent neverball, turn off reflections in +neverball's options. @@ -125,10 +132,11 @@ mv nouveau-$version git ' %setup -q -n %tarball-%{version} +%patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 -%define cflags %(optflags="%optflags";optflags="${optflags//-fstack-protector/}";echo "${optflags//-D_FORTIFY_SOURCE=?/}") +%define cflags %(optflags="%optflags";optflags="${optflags//-fstack-protector/}";echo "${optflags//-D_FORTIFY_SOURCE=?/} -fomit-frame-pointer") %build # kernel modules: @@ -143,7 +151,7 @@ # We need explicit -fpic beccause we link the static libdrm.a into the shared nouveau_drv.so: CFLAGS="%cflags -fpic" ./autogen.sh --prefix=$PWD/install --enable-static --disable-shared export PKG_CONFIG_PATH=$PWD/install/lib/pkgconfig -make install %{?jobs:-j%jobs} +make SUBDIRS=libdrm install;cp shared-core/[dn]*.h install/include/ # DDX: cd ../xf86-video-nouveau export CFLAGS="%cflags" @@ -151,7 +159,16 @@ make %{?jobs:-j%jobs} # Mesa: cd ../mesa -make linux-dri DRI_DIRS=nouveau OPT_FLAGS="${CFLAGS}" PIC_FLAGS=-fpic %{?jobs:-j%jobs} +%ifarch %{ix86} +dri_arch=-x86 +%endif +%ifarch x86_64 +dri_arch=-x86-64 +%endif +%ifarch ppc ppc64 +export CFLAGS="$CFLAGS -fno-strict-aliasing" +%endif +make linux-dri$dri_arch DRI_DIRS=nouveau OPT_FLAGS="${CFLAGS}" PIC_FLAGS=-fpic %{?jobs:-j%jobs} %install # kernel modules @@ -166,7 +183,7 @@ %define ddxdir %_libdir/xorg/modules/drivers %define dridir %_libdir/dri %ifnarch ppc64 -install -D -m755 ../mesa/lib/nouveau_dri.so %{buildroot}/%dridir/nouveau_dri.so +install -D -m755 ../mesa/lib*/nouveau_dri.so %{buildroot}/%dridir/nouveau_dri.so %endif %files -n xorg-x11-driver-video-%tarball @@ -181,6 +198,11 @@ %exclude %{ddxdir}/%{tarball}_drv.la %changelog +* Mon Mar 31 2008 bk@suse.de +- git pull: Fixes gl-117 TORCS neverball (Options: Reflections off) + vdrift gearbox bzflag xmoto khunpan aragetron briqolo and celestia +- cut the size of sources by 60%% (removed code not used by nouveau) +- use git from 2008-03-12 for drm: some newer change causes an oops * Tue Mar 11 2008 bk@suse.de - update to current git: fixes drm module build with 2.6.25 kernels * Fri Feb 15 2008 bk@suse.de ++++++ gallium-warnings.diff ++++++ --- nouveau-0.20080311/mesa/src/gallium/drivers/nv40/nv40_screen.c 2008-03-10 21:35:27.000000000 +0000 +++ nouveau-0.20080311.bk/mesa/src/gallium/drivers/nv40/nv40_screen.c 2008-03-11 21:54:26.000000000 +0000 @@ -144,7 +144,7 @@ nv40_screen_create(struct pipe_winsys *w { struct nv40_screen *screen = CALLOC_STRUCT(nv40_screen); struct nouveau_stateobj *so; - unsigned curie_class; + unsigned curie_class = 0; int ret; if (!screen) ++++++ nouveau-0.20080311.tar.bz2 -> nouveau-0.20080402.tar.bz2 ++++++ arch/i386/xorg-x11-driver-video-nouveau/nouveau-0.20080311.tar.bz2 xorg-x11-driver-video-nouveau/nouveau-0.20080402.tar.bz2 differ: byte 11, line 1 ++++++ xf86-video-nouveau-ppcwerror.diff ++++++ rpmlint on ppc: I: Program causes undefined operation (likely same variable used twiceand post/pre incremented in the same expression). e.g. x = x++; Split it in two operations. E: xorg-x11-driver-video-nouveau sequence-point nv_cursor.c: 473 nv_cursor.c: In function 'nv_crtc_load_cursor_argb': nv_cursor.c:473: warning: operation on 'src' may be undefined nv_cursor.c:473: warning: operation on 'src' may be undefined nv_cursor.c:473: warning: operation on 'src' may be undefined The actual execution of the 2nd, 3rd and 4th use of c in this macro is undefined with *src++. #define BYTE_SWAP_32(c) ((c & 0xff000000) >> 24) | \ ((c & 0xff0000) >> 8) | \ ((c & 0xff00) << 8) | \ ((c & 0xff) << 24) So what is wanted is do the ++ afterwards: --- git-20080330/xf86-video-nouveau/src/nv_cursor.c +++ git-20080330/xf86-video-nouveau/src/nv_cursor.c @@ -470,7 +470,7 @@ for (y = 0; y < MAX_CURSOR_SIZE_ALPHA; y++) { /* I suspect NV11 is the only card needing cursor byteswapping. */ #if X_BYTE_ORDER == X_BIG_ENDIAN - *dst++ = BYTE_SWAP_32(*src++); + *dst++ = BYTE_SWAP_32(*src); src++; #else *dst++ = *src++; #endif ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org