[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#688953: freeze-exception: nvidia-graphics-drivers/304.48-3 - libgl1-nvidia-glx package split



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please approve the following changes for package
nvidia-graphics-drivers:

As discussed in #688861 (freeze exception for libxvmc) yesterday, there
is another possibility to address the missing multiarchification of
libxvmc1: if we split the libgl1-nvidia-glx package and move one library
to a new libxvmcnvidia1 library we can move the dependency on
libxvmc1 to that new package and libgl1-nvidia-glx will have its
dependencies satisfied for installing libgl1-nvidia-glx:i386 along with
libgl1-nvidia-glx:amd64.

A preliminary debdiff is attached, I probably need to tighten the
dependencies on the new package a bit ...

Since we are currently planning a trip through NEW, there are a few more
thing I'd like to ask about:

* Adding a new "nvidia-cuda-proxy" binary package. There are some binaries
added by NVIDIA added in the 304 series that don't fit into any existing
package (and therefore are not packaged, yet). I'd like to add a new
leaf package that ships these new binaries, so that we don't ship less
than provided in the upstream blob - even though there are no users for
this new feature today, it might adopt users over time. And it's
intended to work with the 304 driver we currently have in wheezy.

* turning the virtual packages
    nvidia-vdpau-driver-i386
    libcuda1-i386 (*)
    libnvidia-compiler-i386
    nvidia-opencl-icd-i386 (*)
    nvidia-libopencl1-i386
    libgl1-nvidia-glx-i386 (*) (***)
into real packages with 
    Architecture: i386
    Multi-Arch: foreign
(or at least the ones marked with (*) or even onty the (***) one) to
provide a better migration path for the old -ia32 packages.
This would be similar to ia32-libs, except that the
*-ia32:amd64 packages will only recommend the new*-i386:i386 packages.


Andreas
diff -Nru nvidia-graphics-drivers-304.48/debian/changelog nvidia-graphics-drivers-304.48/debian/changelog
--- nvidia-graphics-drivers-304.48/debian/changelog	2012-09-27 07:54:31.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/changelog	2012-09-27 09:40:43.000000000 +0200
@@ -1,3 +1,11 @@
+nvidia-graphics-drivers (304.48-3) UNRELEASED; urgency=low
+
+  * Split libxvmcnvidia1 from libgl1-nvidia-glx.
+    - Drops libxvmc1 dependency from libgl1-nvidia-glx, making the package
+      multi-arch co-installable.  (Closes: #676723, #685054, #686033, #688714)
+
+ -- Andreas Beckmann <debian@abeckmann.de>  Thu, 27 Sep 2012 09:38:46 +0200
+
 nvidia-graphics-drivers (304.48-2) unstable; urgency=low
 
   * libgl1-nvidia-glx-ia32: readd Depends: libgl1-nvidia-alternatives-ia32 to
diff -Nru nvidia-graphics-drivers-304.48/debian/control nvidia-graphics-drivers-304.48/debian/control
--- nvidia-graphics-drivers-304.48/debian/control	2012-09-27 07:54:31.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/control	2012-09-27 10:30:03.000000000 +0200
@@ -130,7 +130,6 @@
 Recommends:
  nvidia-kernel${nvidia:Legacy}-dkms (= ${binary:Version})
  | nvidia-kernel-${nvidia:Version}${nvidia:Perfkit},
- libxvmc1 [i386],
 Suggests:
  nvidia-kernel${nvidia:Legacy}-dkms (>= ${nvidia:Version})
  | nvidia-kernel${nvidia:Legacy}-source (>= ${nvidia:Version})
@@ -170,6 +169,26 @@
  or /usr/share/doc/libgl1-nvidia${nvidia:Legacy}-glx/README.txt.gz
  for a complete list of supported GPUs and PCI IDs.
 
+Package: libxvmcnvidia1
+Architecture: i386 amd64
+Multi-Arch: same
+Pre-Depends:
+ nvidia-installer-cleanup,
+ ${misc:Pre-Depends}
+Depends:
+ nvidia-alternative${nvidia:Legacy},
+ ${shlibs:Depends}, ${misc:Depends}
+Breaks:
+ libgl1-nvidia-glx (<< 304.48-3),
+Replaces:
+ libgl1-nvidia-glx (<< 304.48-3),
+Description: NVIDIA binary XvMC library${nvidia:LegacyDesc}
+ These binary library provides the NVIDIA XvMC implementation which supports
+ GeForce 6 series and GeForce 7 series graphics cards.
+ .
+ See /usr/share/doc/libgl1-nvidia${nvidia:Legacy}-glx/README.txt.gz
+ for instructions how to enable XvMC acceleration.
+
 Package: libgl1-nvidia-glx-ia32
 Section: non-free/oldlibs
 Priority: extra
diff -Nru nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.install.in nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.install.in
--- nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.install.in	2011-07-07 17:14:10.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.install.in	2012-09-27 09:36:50.000000000 +0200
@@ -3,4 +3,4 @@
 libnvidia-cfg.so.#VERSION#	#LIBDIR#/#PRIVATE#/
 libnvidia-tls.so.#VERSION#	#LIBDIR#/
 tls/libnvidia-tls.so.#VERSION#	#LIBDIR#/tls/
-libXvMCNVIDIA.so.#VERSION#	#LIBDIR#/#PRIVATE#/
+#libXvMCNVIDIA.so.#VERSION#	#LIBDIR#/#PRIVATE#/
diff -Nru nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.links.in nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.links.in
--- nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.links.in	2011-07-07 17:14:10.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.links.in	2012-09-27 09:37:14.000000000 +0200
@@ -1,4 +1,4 @@
 #LIBDIR#/#PRIVATE#/libGL.so.#VERSION#			#LIBDIR#/#PRIVATE#/libGL.so.1
 #LIBDIR#/#PRIVATE#/libnvidia-cfg.so.#VERSION#		#LIBDIR#/#PRIVATE#/libnvidia-cfg.so.1
-#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.1
-#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA_dynamic.so.1
+##LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.1
+##LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA_dynamic.so.1
diff -Nru nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.symbols nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.symbols
--- nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.symbols	2012-08-14 09:41:14.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/libgl1-nvidia-glx.symbols	2012-09-27 09:29:07.000000000 +0200
@@ -1,33 +1,4 @@
 #include "libgl1-nvidia-glx.symbols.common"
-libXvMCNVIDIA_dynamic.so.1 #PACKAGE# #MINVER#
- XvMCBlendSubpicture2@Base 1.0.4349
- XvMCBlendSubpicture@Base 1.0.4349
- XvMCClearSubpicture@Base 1.0.4349
- XvMCCompositeSubpicture@Base 1.0.4349
- XvMCCopySurfaceToGLXPbuffer@Base 1.0.4496
- XvMCCreateBlocks@Base 1.0.4349
- XvMCCreateContext@Base 1.0.4349
- XvMCCreateMacroBlocks@Base 1.0.4349
- XvMCCreateSubpicture@Base 1.0.4349
- XvMCCreateSurface@Base 1.0.4349
- XvMCDestroyBlocks@Base 1.0.4349
- XvMCDestroyContext@Base 1.0.4349
- XvMCDestroyMacroBlocks@Base 1.0.4349
- XvMCDestroySubpicture@Base 1.0.4349
- XvMCDestroySurface@Base 1.0.4349
- XvMCFlushSubpicture@Base 1.0.4349
- XvMCFlushSurface@Base 1.0.4349
- XvMCGetAttribute@Base 1.0.4349
- XvMCGetSubpictureStatus@Base 1.0.4349
- XvMCGetSurfaceStatus@Base 1.0.4349
- XvMCHideSurface@Base 1.0.4349
- XvMCPutSurface@Base 1.0.4349
- XvMCQueryAttributes@Base 1.0.4349
- XvMCRenderSurface@Base 1.0.4349
- XvMCSetAttribute@Base 1.0.4349
- XvMCSetSubpicturePalette@Base 1.0.4349
- XvMCSyncSubpicture@Base 1.0.4349
- XvMCSyncSurface@Base 1.0.4349
 libnvidia-cfg.so.1 #PACKAGE# #MINVER#
  nvCfgCloseAllGSyncDevices@Base 304.30
  nvCfgCloseAllPciDevices@Base 180.35
diff -Nru nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.docs nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.docs
--- nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.docs	1970-01-01 01:00:00.000000000 +0100
+++ nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.docs	2012-09-27 09:32:56.000000000 +0200
@@ -0,0 +1,2 @@
+debian/README.alternatives
+NVIDIA-Linux-i386/README.txt
diff -Nru nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.install.in nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.install.in
--- nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.install.in	1970-01-01 01:00:00.000000000 +0100
+++ nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.install.in	2012-09-27 09:36:25.000000000 +0200
@@ -0,0 +1 @@
+libXvMCNVIDIA.so.#VERSION#	#LIBDIR#/#PRIVATE#/
diff -Nru nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.links.in nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.links.in
--- nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.links.in	1970-01-01 01:00:00.000000000 +0100
+++ nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.links.in	2012-09-27 09:36:08.000000000 +0200
@@ -0,0 +1,2 @@
+#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.1
+#LIBDIR#/#PRIVATE#/libXvMCNVIDIA.so.#VERSION#		#LIBDIR#/#PRIVATE#/libXvMCNVIDIA_dynamic.so.1
diff -Nru nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.lintian-overrides.in nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.lintian-overrides.in
--- nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.lintian-overrides.in	1970-01-01 01:00:00.000000000 +0100
+++ nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.lintian-overrides.in	2012-09-27 10:24:22.000000000 +0200
@@ -0,0 +1,9 @@
+# The NVIDIA license does not allow any form of modification.
+[i386]: shlib-with-non-pic-code
+hardening-no-fortify-functions
+hardening-no-relro
+hardening-no-stackprotector
+
+# Generated by debhelper.
+postinst-has-useless-call-to-ldconfig
+postrm-has-useless-call-to-ldconfig
diff -Nru nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.symbols nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.symbols
--- nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.symbols	1970-01-01 01:00:00.000000000 +0100
+++ nvidia-graphics-drivers-304.48/debian/libxvmcnvidia1.symbols	2012-09-27 09:26:57.000000000 +0200
@@ -0,0 +1,29 @@
+libXvMCNVIDIA_dynamic.so.1 #PACKAGE# #MINVER#
+ XvMCBlendSubpicture2@Base 1.0.4349
+ XvMCBlendSubpicture@Base 1.0.4349
+ XvMCClearSubpicture@Base 1.0.4349
+ XvMCCompositeSubpicture@Base 1.0.4349
+ XvMCCopySurfaceToGLXPbuffer@Base 1.0.4496
+ XvMCCreateBlocks@Base 1.0.4349
+ XvMCCreateContext@Base 1.0.4349
+ XvMCCreateMacroBlocks@Base 1.0.4349
+ XvMCCreateSubpicture@Base 1.0.4349
+ XvMCCreateSurface@Base 1.0.4349
+ XvMCDestroyBlocks@Base 1.0.4349
+ XvMCDestroyContext@Base 1.0.4349
+ XvMCDestroyMacroBlocks@Base 1.0.4349
+ XvMCDestroySubpicture@Base 1.0.4349
+ XvMCDestroySurface@Base 1.0.4349
+ XvMCFlushSubpicture@Base 1.0.4349
+ XvMCFlushSurface@Base 1.0.4349
+ XvMCGetAttribute@Base 1.0.4349
+ XvMCGetSubpictureStatus@Base 1.0.4349
+ XvMCGetSurfaceStatus@Base 1.0.4349
+ XvMCHideSurface@Base 1.0.4349
+ XvMCPutSurface@Base 1.0.4349
+ XvMCQueryAttributes@Base 1.0.4349
+ XvMCRenderSurface@Base 1.0.4349
+ XvMCSetAttribute@Base 1.0.4349
+ XvMCSetSubpicturePalette@Base 1.0.4349
+ XvMCSyncSubpicture@Base 1.0.4349
+ XvMCSyncSurface@Base 1.0.4349
diff -Nru nvidia-graphics-drivers-304.48/debian/rules nvidia-graphics-drivers-304.48/debian/rules
--- nvidia-graphics-drivers-304.48/debian/rules	2012-09-27 07:54:31.000000000 +0200
+++ nvidia-graphics-drivers-304.48/debian/rules	2012-09-27 09:15:26.000000000 +0200
@@ -248,7 +248,6 @@
 
 override_dh_shlibdeps:
 	LD_LIBRARY_PATH=/$(libdir)/$(nvidia_private):$(LD_LIBRARY_PATH) dh_shlibdeps
-	$(if $(filter i386,$(DEB_HOST_ARCH)),sed -i s/libxvmc1// debian/libgl1-nvidia-glx.substvars)
 
 override_dh_gencontrol:
 	dh_gencontrol -- -V'nvidia:Version=$(version)' \

Reply to: