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

[PATCH RFC 2/7] Drop multi-arch support



Based on Cyril Brulebois's mesa 7.10 backport for squeeze.
---
 debian/changelog     |    6 ++++++
 debian/control       |   42 +-----------------------------------------
 debian/not-installed |   24 ++++++++++++------------
 debian/rules         |   18 +++++++++---------
 4 files changed, 28 insertions(+), 62 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 9b59181..8046b19 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,12 @@
 mesa (8.0.4~bpo-1+1) UNRELEASED; urgency=low
 
   * Rebuild for squeeze-backports
+  * Drop multiarch support:
+    - Remove DEB_HOST_MULTIARCH from debian/rules.
+    - Keep the .install.in → .install generation (to ease further
+      updates), making it just delete “/$(DEB_HOST_MULTIARCH)”.
+    - Remove Multi-Arch and Pre-Depends fields.
+    - Revert debhelper version bump accordingly.
 
  -- Anisse Astier <anisse@astier.eu>  Thu, 03 May 2012 15:50:15 +0200
 
diff --git a/debian/control b/debian/control
index ec59840..89b9c1a 100644
--- a/debian/control
+++ b/debian/control
@@ -5,7 +5,7 @@ Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
 Uploaders: Cyril Brulebois <kibi@debian.org>
 Standards-Version: 3.8.4
 Build-Depends:
- debhelper (>= 8.1.3),
+ debhelper (>= 7.2.7),
  quilt (>= 0.40),
  pkg-config,
  libdrm-dev (>= 2.4.30) [!hurd-any],
@@ -47,8 +47,6 @@ Depends:
 Conflicts: mesag3-glide, mesag3-glide2, mesag3+ggi, libgl1, nvidia-glx, mesag3, libgl1-mesa-swrast
 Provides: libgl1, mesag3, libgl1-mesa-swrast
 Replaces: libgl1, mesag3, libgl1-mesa-swrast
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the OpenGL API -- runtime
  Mesa is a 3-D graphics library with an API which is very similar to
  that of OpenGL.  To the extent that Mesa utilizes the OpenGL command
@@ -73,7 +71,6 @@ Depends:
 Conflicts: libgl1-mesa-swrast-dbg
 Provides: libgl1-mesa-swrast-dbg
 Replaces: libgl1-mesa-swrast-dbg
-Multi-Arch: same
 Description: free implementation of the OpenGL API -- debugging symbols
  Mesa is a 3-D graphics library with an API which is very similar to
  that of OpenGL.  To the extent that Mesa utilizes the OpenGL command
@@ -99,8 +96,6 @@ Depends:
  libgl1-mesa-swx11 (= ${binary:Version}),
  ${shlibs:Depends},
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: Mesa OpenGL runtime [i686 optimized]
  Mesa is a 3-D graphics library with an API which is very similar to
  that of OpenGL.  To the extent that Mesa utilizes the OpenGL command
@@ -148,8 +143,6 @@ Architecture: linux-any
 Depends:
  ${shlibs:Depends},
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: X acceleration library -- runtime
  This package contains the XA (X acceleration) library.  It is used exclusively
  by the X server to do render, copy and video acceleration.
@@ -163,8 +156,6 @@ Architecture: linux-any
 Depends:
  libxatracker1 (= ${binary:Version}),
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: X acceleration library -- debugging symbols
  This package contains the XA (X acceleration) library.  It is used exclusively
  by the X server to do render, copy and video acceleration.
@@ -194,8 +185,6 @@ Architecture: linux-any
 Depends:
  ${shlibs:Depends},
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: generic buffer management API -- runtime
  This package contains the GBM buffer management library.  It provides a
  mechanism for allocating buffers for graphics rendering tied to Mesa.
@@ -209,8 +198,6 @@ Architecture: linux-any
 Depends:
  libgbm1 (= ${binary:Version}),
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: generic buffer management API -- debugging symbols
  This package contains the GBM buffer management library.  It provides a
  mechanism for allocating buffers for graphics rendering tied to Mesa.
@@ -245,8 +232,6 @@ Recommends: libegl1-mesa-drivers
 Provides: libegl1-x11
 Conflicts: libegl1-x11
 Replaces: libegl1-x11
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the EGL API -- runtime
  This package contains the EGL native platform graphics interface library.
  EGL provides a platform-agnostic mechanism for creating rendering surfaces
@@ -263,7 +248,6 @@ Architecture: linux-any kfreebsd-any
 Depends:
  libegl1-mesa (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the EGL API -- debugging symbols
  This package contains the EGL native platform graphics interface library.
  EGL provides a platform-agnostic mechanism for creating rendering surfaces
@@ -305,8 +289,6 @@ Depends:
  ${misc:Depends},
  libegl1-mesa (= ${binary:Version}),
  libglapi-mesa (= ${binary:Version}),
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the EGL API -- hardware drivers
  This package contains the EGL native platform graphics interface library.
  EGL provides a platform-agnostic mechanism for creating rendering surfaces
@@ -322,7 +304,6 @@ Architecture: linux-any kfreebsd-any
 Depends:
  libegl1-mesa-drivers (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the EGL API -- driver debugging symbols
  This package contains the EGL native platform graphics interface library.
  EGL provides a platform-agnostic mechanism for creating rendering surfaces
@@ -340,8 +321,6 @@ Depends:
 Provides: libopenvg1
 Conflicts: libopenvg1
 Replaces: libopenvg1
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the OpenVG API -- runtime
  This package contains the mesa implementation of the OpenVG 2D acceleration
  library.  OpenVG provides a device independent and vendor-neutral interface
@@ -356,7 +335,6 @@ Architecture: linux-any kfreebsd-any
 Depends:
  libopenvg1-mesa (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the OpenVG API -- debugging symbols
  This package contains the mesa implementation of the OpenVG 2D acceleration
  library.  OpenVG provides a device independent and vendor-neutral interface
@@ -393,8 +371,6 @@ Depends:
 Provides: libgles1
 Conflicts: libgles1
 Replaces: libgles1
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the OpenGL|ES 1.x API -- runtime
  OpenGL|ES is a cross-platform API for full-function 2D and 3D graphics on
  embedded systems - including consoles, phones, appliances and vehicles.
@@ -410,7 +386,6 @@ Architecture: linux-any kfreebsd-any
 Depends:
  libgles1-mesa (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the OpenGL|ES 1.x API -- debugging symbols
  OpenGL|ES is a cross-platform API for full-function 2D and 3D graphics on
  embedded systems - including consoles, phones, appliances and vehicles.
@@ -449,8 +424,6 @@ Depends:
 Provides: libgles2
 Conflicts: libgles2
 Replaces: libgles2
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the OpenGL|ES 2.x API -- runtime
  OpenGL|ES is a cross-platform API for full-function 2D and 3D graphics on
  embedded systems - including consoles, phones, appliances and vehicles.
@@ -467,7 +440,6 @@ Architecture: linux-any kfreebsd-any
 Depends:
  libgles2-mesa (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the OpenGL|ES 2.x API -- debugging symbols
  OpenGL|ES is a cross-platform API for full-function 2D and 3D graphics on
  embedded systems - including consoles, phones, appliances and vehicles.
@@ -504,8 +476,6 @@ Architecture: any
 Depends:
  ${shlibs:Depends},
  ${misc:Depends},
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the GL API -- shared library
  The Mesa GL API module is responsible for dispatching all the gl*
  functions. It is intended to be mainly used by both the libgles1-mesa
@@ -518,7 +488,6 @@ Architecture: any
 Depends:
  libglapi-mesa (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: free implementation of the GL API -- debugging symbols
  The Mesa GL API module is responsible for dispatching all the gl*
  functions. It is intended to be mainly used by both the libgles1-mesa
@@ -540,8 +509,6 @@ Provides: libgl1
 Breaks:
  libgl1-nvidia-alternatives (<= 275.09.07-1),
  fglrx-glx (<< 1:11-6-1),
-Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: free implementation of the OpenGL API -- GLX runtime
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -560,7 +527,6 @@ Architecture: any
 Depends:
  libgl1-mesa-glx (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: Debugging symbols for the Mesa GLX runtime
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -612,7 +578,6 @@ Breaks:
  libgl1-mesa-glx (<< 7.10.2-4),
  libgl1-mesa-glx-no-multiarch,
  libgl1-mesa-dri-experimental (<< 7.11.1),
-Multi-Arch: same
 Description: free implementation of the OpenGL API -- DRI modules
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -634,7 +599,6 @@ Depends:
  libgl1-mesa-dri (= ${binary:Version}),
  ${misc:Depends},
 Replaces: libgl1-mesa-dri-experimental-dbg (<< 7.11.1)
-Multi-Arch: same
 Description: Debugging symbols for the Mesa DRI modules
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -660,7 +624,6 @@ Breaks:
  xserver-xorg-core-no-multiarch,
  libgl1-mesa-glx (<< 7.11.1),
  libgl1-mesa-glx-no-multiarch,
-Multi-Arch: same
 Description: free implementation of the OpenGL API -- Extra DRI modules
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -681,7 +644,6 @@ Architecture: linux-any
 Depends:
  libgl1-mesa-dri-experimental (= ${binary:Version}),
  ${misc:Depends},
-Multi-Arch: same
 Description: Debugging symbols for the experimental Mesa DRI modules
  This version of Mesa provides GLX and DRI capabilities: it is capable of
  both direct and indirect rendering.  For direct rendering, it can use DRI
@@ -737,7 +699,6 @@ Depends:
  ${misc:Depends},
 Replaces: libgl1-mesa-swx11 (<< 6.5.2)
 Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: Mesa Off-screen rendering extension
  OSmesa is a Mesa extension that allows programs to render to an
  off-screen buffer using the OpenGL API without having to create a
@@ -772,7 +733,6 @@ Provides: libglu1
 Conflicts: mesag3 (<< 5.0.0-1), xlibmesa3, libglu1
 Replaces: libglu1
 Pre-Depends: ${misc:Pre-Depends}
-Multi-Arch: same
 Description: Mesa OpenGL utility library (GLU)
  GLU offers simple interfaces for building mipmaps; checking for the
  presence of extensions in the OpenGL (or other libraries which follow
diff --git a/debian/not-installed b/debian/not-installed
index afbf7dc..56aa70d 100644
--- a/debian/not-installed
+++ b/debian/not-installed
@@ -8,8 +8,8 @@ NOT_INSTALLED := \
 	dri/usr/include/GL/vms_x_fix.h \
 	dri/usr/include/GL/wglext.h \
 	dri/usr/include/GL/wmesa.h \
-	dri/usr/lib/*/libGL.so \
-	dri/usr/lib/*/pkgconfig/gl.pc \
+	dri/usr/lib/libGL.so \
+	dri/usr/lib/pkgconfig/gl.pc \
 	usr/include/GL/glext.h \
 	usr/include/GL/gl.h \
 	usr/include/GL/gl_mangle.h \
@@ -22,16 +22,16 @@ NOT_INSTALLED := \
 
 # Architecture-specific additional files:
 NOT_INSTALLED_i386 = \
-	usr/lib/*/i686/cmov/libGL.so \
-	usr/lib/*/i686/cmov/libGLU.so \
-	usr/lib/*/i686/cmov/libGLU.so.1 \
-	usr/lib/*/i686/cmov/libGLU.so.1.* \
-	usr/lib/*/i686/cmov/libOSMesa.so \
-	usr/lib/*/i686/cmov/libOSMesa.so.6 \
-	usr/lib/*/i686/cmov/libOSMesa.so.6.* \
-	usr/lib/*/i686/cmov/pkgconfig/glu.pc \
-	usr/lib/*/i686/cmov/pkgconfig/gl.pc \
-	usr/lib/*/i686/cmov/pkgconfig/osmesa.pc
+	usr/lib/i686/cmov/libGL.so \
+	usr/lib/i686/cmov/libGLU.so \
+	usr/lib/i686/cmov/libGLU.so.1 \
+	usr/lib/i686/cmov/libGLU.so.1.* \
+	usr/lib/i686/cmov/libOSMesa.so \
+	usr/lib/i686/cmov/libOSMesa.so.6 \
+	usr/lib/i686/cmov/libOSMesa.so.6.* \
+	usr/lib/i686/cmov/pkgconfig/glu.pc \
+	usr/lib/i686/cmov/pkgconfig/gl.pc \
+	usr/lib/i686/cmov/pkgconfig/osmesa.pc
 
 # Same for linux, kfreebsd, and hurd on i386:
 NOT_INSTALLED_kfreebsd-i386 = $(NOT_INSTALLED_i386)
diff --git a/debian/rules b/debian/rules
index 3bf3702..69ec940 100755
--- a/debian/rules
+++ b/debian/rules
@@ -114,8 +114,8 @@ endif
 confflags-dri = \
 	--with-driver=dri \
 	--with-dri-drivers="$(DRI_DRIVERS)" \
-	--with-dri-driverdir=/usr/lib/$(DEB_HOST_MULTIARCH)/dri \
-	--with-dri-searchpath='/usr/lib/$(DEB_HOST_MULTIARCH)/dri:\$$$${ORIGIN}/dri:/usr/lib/dri' \
+	--with-dri-driverdir=/usr/lib/dri \
+	--with-dri-searchpath='/usr/lib/dri:\$$$${ORIGIN}/dri:/usr/lib/dri' \
 	--enable-glx-tls \
 	--enable-shared-glapi \
 	--enable-texture-float \
@@ -192,7 +192,7 @@ confflags-swx11+glu-i386-i686 = \
 	--with-gallium-drivers= \
 	--with-driver=xlib \
 	--disable-egl \
-	--libdir=/usr/lib/$(DEB_HOST_MULTIARCH)/i686/cmov \
+	--libdir=/usr/lib/i686/cmov \
 	CFLAGS="$(CFLAGS) -march=i686" \
 	CXXFLAGS="$(CXXFLAGS) -march=i686"
 
@@ -228,7 +228,7 @@ $(STAMP)-build-%: configure
 	cd $(DEB_BUILD_DIR)/$* && \
 	../../configure --prefix=/usr --mandir=\$${prefix}/share/man \
 	             --infodir=\$${prefix}/share/info --sysconfdir=/etc \
-	             --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
+	             --libdir=\$${prefix}/lib/ \
 	             --localstatedir=/var $(confflags) $(confflags-$*)
 	cd $(DEB_BUILD_DIR)/$* && $(MAKE)
 	>$@
@@ -245,7 +245,7 @@ install: build
 	$(MAKE) -C $(DEB_BUILD_DIR)/dri DESTDIR=$(CURDIR)/debian/tmp/dri install
 	for file in debian/*.in; \
 	do \
-		sed -e"s,\$${DEB_HOST_MULTIARCH},$(DEB_HOST_MULTIARCH),g" \
+		sed -e"s,\$${DEB_HOST_MULTIARCH},,g" \
 			$${file} > $${file%%.in}; \
 	done
 
@@ -290,7 +290,7 @@ binary-arch: install
 	# Classic DRI and Gallium DRI are mixed up together here
 	# Remove the whole tree to avoid false-positives in --list-missing, and
 	# install the right files manually.
-	rm -r debian/tmp/dri/usr/lib/$(DEB_HOST_MULTIARCH)/dri
+	rm -r debian/tmp/dri/usr/lib/dri
 
 	# Also get rid of other files which aren't installed. Do not
 	# use -f to ensure we notice disappearing files:
@@ -298,14 +298,14 @@ binary-arch: install
 	# Files only in git, not in tarballs, OK to use rm -f here:
 	set -e; for file in $(NOT_INSTALLED_EITHER); do rm -f debian/tmp/$$file; done
 	# No need for this .so, libglapi is just a convenience library:
-	rm debian/tmp/dri/usr/lib/${DEB_HOST_MULTIARCH}/libglapi.so
+	rm debian/tmp/dri/usr/lib/libglapi.so
 
 	dh_install -s --fail-missing
 
 # If the llvmpipe driver was built, copy it to the package dir
 ifneq (,$(filter swrast,$(GALLIUM_DRIVERS)))
-	dh_install -plibgl1-mesa-dri build/dri/$(DEB_HOST_MULTIARCH)/gallium/swrast_dri.so \
-		usr/lib/${DEB_HOST_MULTIARCH}/dri
+	dh_install -plibgl1-mesa-dri build/dri/gallium/swrast_dri.so \
+		usr/lib/dri
 endif
 
 	dh_installman -s
-- 
1.7.10.3


Reply to: