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

Bug#794402: marked as done (libproxy: library transition is needed when GCC 5 is the default)



Your message dated Mon, 7 Sep 2015 23:54:22 +0200
with message-id <20150907215422.GA2890@betterave.cristau.org>
and subject line Re: Bug#794402: libproxy: library transition is needed when GCC 5 is the default
has caused the Debian Bug report #794402,
regarding libproxy: library transition is needed when GCC 5 is the default
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
794402: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=794402
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: src:libproxy
Version: 0.4.11-4
Severity: serious
Tags: sid stretch patch confirmed
User: debian-gcc@lists.debian.org
Usertags: libstdc++-cxx11

confirmed, see
https://people.debian.org/~doko/logs/gcc5-20150701/libproxy_0.4.11-4_unstable_gcc5.log

cmake should binNMUed immediately after this upload.

the qt5 stack depends on this, so it is important to get this done soon.

Background [1]: libstdc++6 introduces a new ABI to conform to the
C++11 standard, but keeps the old ABI to not break existing binaries.
Packages which are built with g++-5 from experimental (not the one
from testing/unstable) are using the new ABI.  Libraries built from
this source package export some of the new __cxx11 or B5cxx11 symbols,
and dropping other symbols.  If these symbols are part of the API of
the library, then this rebuild with g++-5 will trigger a transition
for the library.

What is needed:

 - Rebuild the library using g++/g++-5 from experimental. Note that
   most likely all C++ libraries within the build dependencies need
   a rebuild too. You can find the log for a rebuild in
     https://people.debian.org/~doko/logs/gcc5-20150701/
   Search for "BEGIN GCC CXX11" in the log.

 - Decide if the symbols matching __cxx11 or B5cxx11 are part of the
   library API, and are used by the reverse dependencies of the
   library.

 - If there are no symbols matching __cxx11 or B5cxx11 in the symbols
   forming the library API, you should close this issue with a short
   explanation.

 - If there are no reverse dependencies, it should be the package
   maintainers decision if a transition is needed.  However this might
   break software which is not in the Debian archive, and built
   against these packages.

 - If a library transition is needed, please prepare for the change.
   Rename the library package, append "v5" to the name of the package
   (e.g. libfoo2 -> libfoo2v5). Such a change can be avoided, if you
   have a soversion bump and you upload this version instead of the
   renamed package.  Prepare a patch and attach it to this issue (mark
   this issue with patch), so that it is possible to NMU such a
   package. We'll probably have more than hundred transitions
   triggered. Then reassign the issue to release.debian.org and
   properly tag it as a transition issue, by sending an email to
   control@bugs.debian.org:

     user release.debian.org@packages.debian.org
     usertag <this issue> + transition
     block <this issue> by 790756
     reassign <this issue> release.debian.org

 - If unsure if a transition is needed, please tag the issue with help
   to ask for feedback from other Debian developers.

The libstdc++6 transition will be a large one, and it will come with a
lot of pain.  Please help it by preparing the follow-up transitions.

[1] https://wiki.debian.org/GCC5#libstdc.2B-.2B-_ABI_transition
diff -Nru libproxy-0.4.11/debian/changelog libproxy-0.4.11/debian/changelog
--- libproxy-0.4.11/debian/changelog	2013-11-03 13:34:44.000000000 +0100
+++ libproxy-0.4.11/debian/changelog	2015-08-02 18:17:26.000000000 +0200
@@ -1,3 +1,12 @@
+libproxy (0.4.11-4.1) unstable; urgency=medium
+
+  * Non maintainer upload.
+  * Rename library libproxy1 -> libproxy1v5, needed as a follow-up transition
+    for the libstdc++6 ABI changes (patch by Sebastien Bacher).
+    Addresses: #.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 02 Aug 2015 18:11:31 +0200
+
 libproxy (0.4.11-4) unstable; urgency=low
 
   * Upload to unstable
diff -Nru libproxy-0.4.11/debian/control libproxy-0.4.11/debian/control
--- libproxy-0.4.11/debian/control	2013-11-03 13:43:09.000000000 +0100
+++ libproxy-0.4.11/debian/control	2015-08-02 18:20:15.000000000 +0200
@@ -10,6 +9,7 @@
 Uploaders: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>, Laurent Bigonville <bigon@debian.org>
 Build-Depends-Indep: cli-common-dev (>= 0.5.7~), mono-devel (>= 2.4.3)
 Build-Depends: debhelper (>= 9),
+               g++ (>= 4:5.2),
                gnome-pkg-tools,
                netbase,
                cmake,
@@ -29,12 +29,14 @@
 Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-gnome/packages/unstable/libproxy/
 Homepage: http://code.google.com/p/libproxy/
 
-Package: libproxy1
+Package: libproxy1v5
 Architecture: any
 Multi-Arch: same
 Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends},
          ${misc:Depends}
+Conflicts: libproxy1
+Replaces: libproxy1
 Description: automatic proxy configuration management library (shared)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -46,7 +48,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (GSettings plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -59,7 +61,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (KConfig plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -72,7 +74,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (Network Manager plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -98,7 +100,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (Webkit plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -113,7 +115,7 @@
 XS-Testsuite: autopkgtest
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (devel)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -137,7 +139,7 @@
 Section: python
 Depends: ${python:Depends},
          ${misc:Depends},
-         libproxy1 (>= ${source:Version})
+         libproxy1v5 (>= ${source:Version})
 Description: automatic proxy configuration management library (python)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
diff -Nru libproxy-0.4.11/debian/control.in libproxy-0.4.11/debian/control.in
--- libproxy-0.4.11/debian/control.in	2013-11-03 13:33:47.000000000 +0100
+++ libproxy-0.4.11/debian/control.in	2015-08-02 18:20:03.000000000 +0200
@@ -5,6 +5,7 @@
 Uploaders: @GNOME_TEAM@
 Build-Depends-Indep: cli-common-dev (>= 0.5.7~), mono-devel (>= 2.4.3)
 Build-Depends: debhelper (>= 9),
+               g++ (>= 4:5.2),
                gnome-pkg-tools,
                netbase,
                cmake,
@@ -24,12 +25,14 @@
 Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-gnome/packages/unstable/libproxy/
 Homepage: http://code.google.com/p/libproxy/
 
-Package: libproxy1
+Package: libproxy1v5
 Architecture: any
 Multi-Arch: same
 Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends},
          ${misc:Depends}
+Conflicts: libproxy1
+Replaces: libproxy1
 Description: automatic proxy configuration management library (shared)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -41,7 +44,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (GSettings plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -54,7 +57,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (KConfig plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -67,7 +70,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (Network Manager plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -93,7 +96,7 @@
 Multi-Arch: same
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (Webkit plugin)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -108,7 +111,7 @@
 XS-Testsuite: autopkgtest
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libproxy1 (= ${binary:Version})
+         libproxy1v5 (= ${binary:Version})
 Description: automatic proxy configuration management library (devel)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
@@ -132,7 +135,7 @@
 Section: python
 Depends: ${python:Depends},
          ${misc:Depends},
-         libproxy1 (>= ${source:Version})
+         libproxy1v5 (>= ${source:Version})
 Description: automatic proxy configuration management library (python)
  libproxy is a lightweight library which makes it easy to develop
  applications proxy-aware with a simple and stable API.
diff -Nru libproxy-0.4.11/debian/control.in.orig libproxy-0.4.11/debian/control.in.orig
--- libproxy-0.4.11/debian/control.in.orig	1970-01-01 01:00:00.000000000 +0100
+++ libproxy-0.4.11/debian/control.in.orig	2013-11-03 13:33:47.000000000 +0100
@@ -0,0 +1,164 @@
+Source: libproxy
+Section: libs
+Priority: optional
+Maintainer: Emilio Pozuelo Monfort <pochu@debian.org>
+Uploaders: @GNOME_TEAM@
+Build-Depends-Indep: cli-common-dev (>= 0.5.7~), mono-devel (>= 2.4.3)
+Build-Depends: debhelper (>= 9),
+               gnome-pkg-tools,
+               netbase,
+               cmake,
+               python-all-dev (>= 2.6.6-3~),
+               network-manager-dev [linux-any],
+               libdbus-1-dev,
+               libmozjs185-dev (>= 1.8.5),
+               kdelibs5-dev,
+               libqt4-dev,
+               libwebkitgtk-3.0-dev,
+               libjavascriptcoregtk-3.0-dev,
+               libglib2.0-dev (>= 2.26),
+               libxmu-dev
+Standards-Version: 3.9.4
+X-Python-Version: >= 2.5
+Vcs-Svn: svn://anonscm.debian.org/pkg-gnome/packages/unstable/libproxy
+Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-gnome/packages/unstable/libproxy/
+Homepage: http://code.google.com/p/libproxy/
+
+Package: libproxy1
+Architecture: any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Description: automatic proxy configuration management library (shared)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the shared library.
+
+Package: libproxy1-plugin-gsettings
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (GSettings plugin)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the plugin to allow libproxy to read proxy settings from
+ GSettings (GNOME 3)
+
+Package: libproxy1-plugin-kconfig
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (KConfig plugin)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the plugin to allow libproxy to read proxy settings from
+ KConfig (KDE 4)
+
+Package: libproxy1-plugin-networkmanager
+Architecture: linux-any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (Network Manager plugin)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the plugin to allow libproxy to read information from
+ Network Manager.
+
+Package: libproxy1-plugin-mozjs
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (mozjs plugin)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the plugin to allow libproxy to interpret PAC files
+ using mozjs
+
+Package: libproxy1-plugin-webkit
+Architecture: any
+Multi-Arch: same
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (Webkit plugin)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the plugin to allow libproxy to interpret PAC files
+ using Webkit
+
+Package: libproxy-dev
+Architecture: any
+Multi-Arch: same
+Section: libdevel
+XS-Testsuite: autopkgtest
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libproxy1 (= ${binary:Version})
+Description: automatic proxy configuration management library (devel)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the development files including vala bindings.
+
+Package: libproxy-tools
+Section: utils
+Architecture: any
+Depends: ${shlibs:Depends},
+         ${misc:Depends}
+Description: automatic proxy configuration management library (tools)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains a program to interact with libproxy from the
+ command line.
+
+Package: python-libproxy
+Architecture: all
+Section: python
+Depends: ${python:Depends},
+         ${misc:Depends},
+         libproxy1 (>= ${source:Version})
+Description: automatic proxy configuration management library (python)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the Python bindings.
+
+Package: libproxy0.4-cil
+Architecture: all
+Section: cli-mono
+Depends: ${cli:Depends},
+         ${misc:Depends}
+Description: automatic proxy configuration management library (CLI)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains the CLI bindings.
+
+Package: libproxy-cil-dev
+Architecture: all
+Section: cli-mono
+Depends: ${cli:Depends},
+         ${misc:Depends},
+         libproxy0.4-cil (= ${binary:Version})
+Description: automatic proxy configuration management library (CLI devel)
+ libproxy is a lightweight library which makes it easy to develop
+ applications proxy-aware with a simple and stable API.
+ .
+ This package contains development files for the CLI bindings, and should be
+ used for compilation.
diff -Nru libproxy-0.4.11/debian/libproxy1.install libproxy-0.4.11/debian/libproxy1.install
--- libproxy-0.4.11/debian/libproxy1.install	2012-02-15 15:08:52.000000000 +0100
+++ libproxy-0.4.11/debian/libproxy1.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/*/libproxy.so.*
diff -Nru libproxy-0.4.11/debian/libproxy1v5.install libproxy-0.4.11/debian/libproxy1v5.install
--- libproxy-0.4.11/debian/libproxy1v5.install	1970-01-01 01:00:00.000000000 +0100
+++ libproxy-0.4.11/debian/libproxy1v5.install	2015-08-02 18:17:06.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/*/libproxy.so.*
diff -Nru libproxy-0.4.11/debian/rules libproxy-0.4.11/debian/rules
--- libproxy-0.4.11/debian/rules	2013-09-14 12:40:53.000000000 +0200
+++ libproxy-0.4.11/debian/rules	2015-08-02 18:17:06.000000000 +0200
@@ -3,7 +3,7 @@
 include /usr/share/gnome-pkg-tools/1/rules/uploaders.mk
 
 SHLIBVER := 0.4.11
-libproxy := $(shell sed -nr 's/^Package:[[:space:]]*(libproxy[0-9]+)[[:space:]]*$$/\1/p' debian/control.in)
+libproxy := $(shell sed -nr 's/^Package:[[:space:]]*(libproxy[0-9]+v5)[[:space:]]*$$/\1/p' debian/control.in)
 
 #export DH_VERBOSE=1
 

--- End Message ---
--- Begin Message ---
On Sun, Aug  2, 2015 at 18:23:16 +0200, Matthias Klose wrote:

> Package: src:libproxy
> Version: 0.4.11-4
> Severity: serious
> Tags: sid stretch patch confirmed
> User: debian-gcc@lists.debian.org
> Usertags: libstdc++-cxx11
> 
libproxy1 is no longer in testing, closing.

Cheers,
Julien

Attachment: signature.asc
Description: Digital signature


--- End Message ---

Reply to: