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

Bug#739269: Please move libwayland-egl out of libegl1-mesa-drivers



On Mon, 2014-02-17 at 12:17 +0100, Emilio Pozuelo Monfort wrote:
> On 17/02/14 11:48, Sjoerd Simons wrote:
> > Package: libegl1-mesa-drivers
> > Severity: normal
> > 
> > libwayland-egl has been included in the libegl1-mesa-drivers, which seems a bit
> > odd as it's an application library not a driver.
> > 
> > Practically this causes an issue on systems where wayland is used but the
> > EGL/GL stack isn't provided by mesa as applications using libwayland-egl depend
> > on libegl1-mesa-drivers which almost forcibly pulls in mesa.
> 
> How would alternative implementations satisfy the dependency? Should we name the
> package libwayland-egl1-mesa, and have the shlibs force a dependency on
> "libwayland-egl1-mesa | libwayland-egl1-provider" (or similar) ?

Yeah same as libegl1-mesa has | libegl1-x11 by its symbols file.
Attached is a patch that splits out the library in that way, but keeps
the library & pkg-config files as part of libegl1-mesa-dev 

-- 
Sjoerd Simons <sjoerd@debian.org>
From 1eee70da2ea48d844fb09695b33a9391b043ff3b Mon Sep 17 00:00:00 2001
From: Sjoerd Simons <sjoerd@luon.net>
Date: Mon, 17 Feb 2014 12:47:53 +0100
Subject: [PATCH] Install libwayland-egl in a seperate library package

---
 debian/changelog                             |  7 ++++++
 debian/control                               | 36 ++++++++++++++++++++++++++++
 debian/libegl1-mesa-drivers.install.linux.in |  4 ----
 debian/libwayland-egl1-mesa.install.in       |  4 ++++
 debian/libwayland-egl1-mesa.symbols          |  5 ++++
 5 files changed, 52 insertions(+), 4 deletions(-)
 create mode 100644 debian/libwayland-egl1-mesa.install.in
 create mode 100644 debian/libwayland-egl1-mesa.symbols

diff --git a/debian/changelog b/debian/changelog
index 94224fd..eb18369 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+mesa (10.0.2-2) UNRELEASED; urgency=medium
+
+  * Install libwayland-egl in a seperate library package (libwayland-egl1-mesa)
+    and provide a virtual libwayland-egl1 package (Closes: #739269).
+
+ -- Sjoerd Simons <sjoerd@debian.org>  Mon, 17 Feb 2014 12:43:29 +0100
+
 mesa (10.0.2-1) experimental; urgency=low
 
   [ Maarten Lankhorst ]
diff --git a/debian/control b/debian/control
index 4577639..de02e96 100644
--- a/debian/control
+++ b/debian/control
@@ -308,6 +308,7 @@ Depends:
  ${misc:Depends},
  libegl1-mesa (= ${binary:Version}),
  libglapi-mesa (= ${binary:Version}),
+ libwayland-egl1-mesa (= ${binary:Version}),
 # for libllvmradeon
  libgl1-mesa-dri (= ${binary:Version}) [any-i386 any-amd64],
 Pre-Depends: ${misc:Pre-Depends}
@@ -320,6 +321,41 @@ Description: free implementation of the EGL API -- hardware drivers
  This package contains the drivers required for hardware accelerated rendering
  of EGL-based graphics libraries, such as OpenGL|ES and OpenVG.
 
+Package: libwayland-egl1-mesa
+Section: libs
+Architecture: linux-any
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+ libegl1-mesa (= ${binary:Version})
+Recommends: libegl1-mesa-drivers
+Provides: libwayland-egl
+Conflicts: libwayland-egl1
+Replaces: libwayland-egl1
+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
+ for use with other graphics libraries, such as OpenGL|ES and OpenVG.
+ .
+ This package contains wayland specific interface for use with EGL.
+
+Package: libwayland-egl1-mesa-dbg
+Section: debug
+Priority: extra
+Architecture: linux-any
+Depends:
+ libwayland-egl1-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
+ for use with other graphics libraries, such as OpenGL|ES and OpenVG.
+ .
+ This package contains the debugging symbols for the wayland EGL library.
+
 Package: libegl1-mesa-drivers-dbg
 Section: debug
 Priority: extra
diff --git a/debian/libegl1-mesa-drivers.install.linux.in b/debian/libegl1-mesa-drivers.install.linux.in
index 2c4c266..741f962 100644
--- a/debian/libegl1-mesa-drivers.install.linux.in
+++ b/debian/libegl1-mesa-drivers.install.linux.in
@@ -1,6 +1,2 @@
 # OS-independent part (from libegl1-mesa-drivers.install.in):
 dri/usr/lib/${DEB_HOST_MULTIARCH}/egl/egl_gallium.so usr/lib/${DEB_HOST_MULTIARCH}/egl
-
-# Wayland support, only on Linux:
-dri/usr/lib/${DEB_HOST_MULTIARCH}/libwayland-egl.so.1 usr/lib/${DEB_HOST_MULTIARCH}
-dri/usr/lib/${DEB_HOST_MULTIARCH}/libwayland-egl.so.1.0.0 usr/lib/${DEB_HOST_MULTIARCH}
diff --git a/debian/libwayland-egl1-mesa.install.in b/debian/libwayland-egl1-mesa.install.in
new file mode 100644
index 0000000..1937dc6
--- /dev/null
+++ b/debian/libwayland-egl1-mesa.install.in
@@ -0,0 +1,4 @@
+# Wayland support, only on Linux:
+dri/usr/lib/${DEB_HOST_MULTIARCH}/libwayland-egl.so.1 usr/lib/${DEB_HOST_MULTIARCH}
+dri/usr/lib/${DEB_HOST_MULTIARCH}/libwayland-egl.so.1.0.0 usr/lib/${DEB_HOST_MULTIARCH}
+
diff --git a/debian/libwayland-egl1-mesa.symbols b/debian/libwayland-egl1-mesa.symbols
new file mode 100644
index 0000000..e330d50
--- /dev/null
+++ b/debian/libwayland-egl1-mesa.symbols
@@ -0,0 +1,5 @@
+libwayland-egl.so.1 libwayland-egl1-mesa #MINVER# | libwayland-egl1 
+ wl_egl_window_create@Base 10.0.2-2
+ wl_egl_window_destroy@Base 10.0.2-2
+ wl_egl_window_get_attached_size@Base 10.0.2-2
+ wl_egl_window_resize@Base 10.0.2-2
-- 
1.9.0.rc3


Reply to: