On Thu, Dec 01, 2005 at 10:16:00PM +0100, Matthias Klose wrote:
> Steve Langasek writes:

> > Ok, folks, 3 RC bugs (4, counting the unfiled alpha build failure which
> > apparently the maintainers know about) is getting a bit ridiculous.  I'm
> > preparing an NMU to fix these bugs, get the package rebuild against
> > libssl0.9.8, etc.

> > The full patch is attached; I'm also including the changelog inline here,
> > and have cc:ed Matthias since he seems to be doing work on this over in
> > Ubuntuland and will surely want to be in the loop regarding any library
> > package name changes.

> > The main difference here, compared with Matthias's patch, is that the new
> > library name is libpt-1.8.7 instead of libpt-1.8.3c2a.  Since the package is
> > no longer ABI-compatible with the old libpt-1.8.3 due to the C++ ABI
> > changes, there's no reason to continue fighting against the upstream changes
> > to retain compatibility, so a clean break is best.

> thanks for CC. although it's not required for unstable, please could
> you add conflict/replaces to libpt-1.8.3c2a ? This way "Ubuntuland"
> can sync the library again.

Sure thing; I only didn't do this in the first patch because I didn't know
if your patch represented something that had already been uploaded to
Ubuntu, or if it was a prospective patch.

I've also had to make one further tweak to debian/rules, because
/usr/lib/libpt.so.1 and /usr/lib/libpt.so.1.8 were being installed into the
lib package again instead of the -dev package, where there's no reason to
install them at all.  So now they're really gone.

Updated patch is attached.

Cheers,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
[EMAIL PROTECTED]                                   http://www.debian.org/
diff -u pwlib-1.8.7/debian/control pwlib-1.8.7/debian/control
--- pwlib-1.8.7/debian/control
+++ pwlib-1.8.7/debian/control
@@ -5,15 +5,15 @@
 Uploaders: Kilian Krause <[EMAIL PROTECTED]>, Jose Carlos Garcia Sogo <[EMAIL 
PROTECTED]>, Mark Purcell <[EMAIL PROTECTED]>, Santiago Garcia Mantinan <[EMAIL 
PROTECTED]>
 Build-Depends: debhelper (>=4.9.0), bison, flex, libssl-dev, libldap2-dev, 
libsdl1.2-dev, libexpat1-dev, g++ (>=2.95), autotools-dev, dpatch (>=1.11), 
libasound2-dev, libavc1394-dev, libraw1394-dev, libdv-dev, libdc1394-13-dev, 
libsasl2-dev, libkrb5-dev, doxygen, linux-kernel-headers, binutils (>= 
2.14.90.0.7)
 Build-Depends-Indep: doxygen
-Build-Conflicts: libpt-1.8.3, libpt-1.8.3c2, libpt-dev
+Build-Conflicts: libpt-1.8.3, libpt-1.8.3c2, libpt-1.8.7, libpt-dev
 Standards-Version: 3.6.2
 
-Package: libpt-1.8.3c2
+Package: libpt-1.8.7
 Section: libs
 Architecture: any
 Depends: ${shlibs:Depends}
-Replaces: libpt-1.8.3
-Conflicts: libpt-1.8.3
+Replaces: libpt-1.8.3c2 (>= 1.8.7-1), libpt-1.8.3c2a
+Conflicts: libpt-1.8.3c2 (>= 1.8.7-1), libpt-1.8.3c2a
 Description: Portable Windows Library
  This package contains the shared version of the library PWLib, which is
  a moderately large class library that has its genesis many years ago as
@@ -26,7 +26,7 @@
 Package: libpt-dev
 Section: libdevel
 Architecture: any
-Depends: libpt-1.8.3c2 (= ${Source-Version}), libc6-dev, libssl-dev, 
libldap2-dev, libsdl1.2-dev, libexpat1-dev, libsasl2-dev
+Depends: libpt-1.8.7 (= ${Source-Version}), libc6-dev, libssl-dev, 
libldap2-dev, libsdl1.2-dev, libexpat1-dev, libsasl2-dev
 Description: Portable Windows Library development files
  This package contains the headers and a static version of the library
  PWLib, which is a moderately large class library that has its genesis
@@ -40,7 +40,7 @@
 Section: libdevel
 Priority: extra
 Architecture: any
-Depends: libpt-1.8.3c2 (= ${Source-Version})
+Depends: libpt-1.8.7 (= ${Source-Version})
 Description: Portable Windows Library development debug files
  This package contains the shared and static debug version of the library
  PWLib, which is a moderately large class library that has its genesis
@@ -66,7 +66,7 @@
 Package: libpt-plugins-v4l
 Section: libs
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Description: Portable Windows Library Video Plugin for Video4Linux
  This package contains the PWLib plugin for usage with Video4Linux
  devices.  Install this package, if you want to use a video device
@@ -75,7 +75,7 @@
 Package: libpt-plugins-v4l2
 Section: libs
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Description: Portable Windows Library Video Plugin for Video4Linux v2
  This package contains the PWLib plugin for usage with Video4Linux v2
  devices.  Install this package, if you want to use a video device
@@ -84,7 +84,7 @@
 
 Package: libpt-plugins-avc
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Description: PWLib Video Plugin for IEEE1394 (FireWire) AVC devices
  This package contains the PWLib plugin for usage with AVC devices
  on FireWire.  Install this package, if you want to use such a video
@@ -92,7 +92,7 @@
 
 Package: libpt-plugins-dc
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Description: PWLib Video Plugin for IEEE1394 (Firewire) DC Devices
  This package contains the PWLib plugin for usage with DC Devices
  on Firewire.  Install this package, if you want to use such a video 
@@ -100,7 +100,7 @@
 
 Package: libpt-plugins-oss
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Description: Portable Windows Library Audio Plugins for the OSS Interface
  This package contains the PWLib plugin for usage with the Open Sound
  System interface.  Install this package, if you are utilising this
@@ -108,7 +108,7 @@
 
 Package: libpt-plugins-alsa
 Architecture: any
-Depends: ${shlibs:Depends}, libpt-1.8.3c2 (= ${Source-Version})
+Depends: ${shlibs:Depends}, libpt-1.8.7 (= ${Source-Version})
 Recommends: alsa-base
 Description: Portable Windows Library Audio Plugin for the ALSA Interface
  This package contains the PWLib plugin for usage with the Advanced
diff -u pwlib-1.8.7/debian/changelog pwlib-1.8.7/debian/changelog
--- pwlib-1.8.7/debian/changelog
+++ pwlib-1.8.7/debian/changelog
@@ -1,3 +1,26 @@
+pwlib (1.8.7-1.1) unstable; urgency=high
+
+  * Non-maintainer upload.
+  * High-urgency upload for multiple RC bugfixes.
+  * Fix casts to match current OpenSSL prototypes (closes: #335490).
+  * Use -O2 instead of -Os when building, as recommended by policy; this
+    fixes a build-time failure on alpha when running the testsuite.
+  * Drop the libpt.so.1.8.3 and libpt.so.1.8.4 symlinks; the native soname
+    is now libpt.so.1.8.7, so since we're no longer compatible with older
+    reverse-dependencies anyway due to the ABI change, these serve no
+    purpose.  Here's hoping someone clues upstream in on handling of SONAMEs
+    before the next release.
+  * Rename libpt-1.8.3c2 to libpt-1.8.7 for the C++ mt allocator ABI
+    transition, and conflict/replace libpt-1.8.3c2 accordingly
+    (closes: #339253).  Thanks to the change above, this only requires
+    conflict/replacing libpt-1.8.3c2 (>= 1.8.7-1).
+  * Get rid of the useless /usr/lib/libpt.so.1 link: this serves no purpose
+    when the package soname is libpt.so.1.8.7, because *nothing* will ever
+    use it, so the easiest way to avoid conflicts is to not ship it
+    anywhere! (closes: #331634)
+
+ -- Steve Langasek <[EMAIL PROTECTED]>  Wed, 30 Nov 2005 23:58:58 -0800
+
 pwlib (1.8.7-1) unstable; urgency=low
 
   * Mimas_patch2 is 1.8.7. And shlibdeps imposes this as version.
diff -u pwlib-1.8.7/debian/rules pwlib-1.8.7/debian/rules
--- pwlib-1.8.7/debian/rules
+++ pwlib-1.8.7/debian/rules
@@ -2,11 +2,17 @@
 
 export DH_COMPAT=5
 
+# technically, the upstream ABI is compatible all the way back to
+# 1.8.3; but because of the C++ ABI change, there is no reason at all to
+# provide these kludgy symlinks -- and avoiding them makes us
+# coinstallable with the sarge version of the lib, which is a nice
+# bonus. -srl 2005-12-01
 # Change this on API breakage
-export LIBPTCOMPAT=1.8.3
-export LIBPTCOMPAT2=1.8.4
+#export LIBPTCOMPAT=1.8.3
+#export LIBPTCOMPAT2=1.8.4
+export LIBPTCOMPAT=1.8.7
 
-PACKAGE=libpt-$(LIBPTCOMPAT)c2
+PACKAGE=libpt-$(LIBPTCOMPAT)
 
 
 VER_MAJOR := $(shell awk '/MAJOR_VERSION/ { print $$3 }' version.h)
@@ -15,10 +21,12 @@
 
 SHLIBSVER := $(VER_MAJOR).$(VER_MINOR).$(VER_SUB)
 
-CFLAGS = -g
+CFLAGS = -g -Wall
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
+else
+       CFLAGS += -O2
 endif
 
 export CFLAGS
@@ -86,8 +94,8 @@
 clean-patched:
        $(checkdir)
        -rm -f build-arch-stamp build-indep-stamp patch-stamp
-       if [ -f Makefile ];then \
-       -$(MAKE) PWLIBDIR=$(PWD) clean;\
+       -if [ -f Makefile ];then \
+               $(MAKE) PWLIBDIR=$(PWD) clean;\
        fi
        -rm -f include/ptbuildopts.h
        -rm -f Makefile config.log config.status autotools
@@ -124,13 +132,11 @@
        ln -s libpt.so.$(SHLIBSVER) \
            debian/$(PACKAGE)/usr/lib/libpt.so.$(LIBPTCOMPAT)
 endif
-ifneq ($(SHLIBSVER),$(LIBPTCOMPAT2))
-       ln -s libpt.so.$(SHLIBSVER) \
-           debian/$(PACKAGE)/usr/lib/libpt.so.$(LIBPTCOMPAT2)
-endif
 
 #      libpt-dev
-       dh_movefiles -plibpt-dev --sourcedir=debian/$(PACKAGE) `cd 
debian/$(PACKAGE); ls -1 usr/lib/*.so*|grep -v -E 
lib.*\.[0-9]\+\.[0-9]\+\.[0-9]\+`
+       dh_movefiles -plibpt-dev --sourcedir=debian/$(PACKAGE) usr/lib/libpt.so
+       rm debian/$(PACKAGE)/usr/lib/libpt.so.? \
+          debian/$(PACKAGE)/usr/lib/libpt.so.?.?
 
        cp -vr include/pt* debian/libpt-dev/usr/include
        cp -vr make `pwd`/debian/libpt-dev/usr/share/pwlib
only in patch2:
unchanged:
--- pwlib-1.8.7.orig/src/ptclib/pssl.cxx
+++ pwlib-1.8.7/src/ptclib/pssl.cxx
@@ -297,14 +297,14 @@
 
 PSSLPrivateKey::PSSLPrivateKey(const BYTE * keyData, PINDEX keySize)
 {
-  key = d2i_AutoPrivateKey(NULL, (BYTE **)&keyData, keySize);
+  key = d2i_AutoPrivateKey(NULL, &keyData, keySize);
 }
 
 
 PSSLPrivateKey::PSSLPrivateKey(const PBYTEArray & keyData)
 {
   const BYTE * keyPtr = keyData;
-  key = d2i_AutoPrivateKey(NULL, (BYTE **)&keyPtr, keyData.GetSize());
+  key = d2i_AutoPrivateKey(NULL, &keyPtr, keyData.GetSize());
 }
 
 
@@ -472,14 +472,14 @@
 
 PSSLCertificate::PSSLCertificate(const BYTE * certData, PINDEX certSize)
 {
-  certificate = d2i_X509(NULL, (unsigned char **)&certData, certSize);
+  certificate = d2i_X509(NULL, &certData, certSize);
 }
 
 
 PSSLCertificate::PSSLCertificate(const PBYTEArray & certData)
 {
   const BYTE * certPtr = certData;
-  certificate = d2i_X509(NULL, (unsigned char **)&certPtr, certData.GetSize());
+  certificate = d2i_X509(NULL, &certPtr, certData.GetSize());
 }
 
 
@@ -489,7 +489,7 @@
   PBase64::Decode(certStr, certData);
   if (certData.GetSize() > 0) {
     const BYTE * certPtr = certData;
-    certificate = d2i_X509(NULL, (unsigned char **)&certPtr, 
certData.GetSize());
+    certificate = d2i_X509(NULL, &certPtr, certData.GetSize());
   }
   else
     certificate = NULL;
only in patch2:
unchanged:
--- pwlib-1.8.7.orig/plugins/vidinput_dc/Makefile
+++ pwlib-1.8.7/plugins/vidinput_dc/Makefile
@@ -0,0 +1,12 @@
+ifndef PWLIBDIR
+PWLIBDIR = $(HOME)/pwlib
+endif
+
+PLUGIN_NAME    = dc
+PLUGIN_FAMILY  = device/videoinput
+PLUGIN_LIBS    = -lraw1394 -ldv -ldc1394_control
+PLUGIN_SOURCES = video4dc1394.cxx
+
+CFLAGS         = 
+
+include ../../make/plugins.mak

Attachment: signature.asc
Description: Digital signature

Reply via email to