Package: praat
Version: 6.0.15-1
Severity: normal
Tags: patch
User: [email protected]
Usertags: origin-ubuntu yakkety ubuntu-patch

Dear Maintainer,

In Ubuntu, we use ld --as-needed by default in the toolchain, and your
package fails to build from source with that option enabled because of the
way libraries are linked.

Even though Debian doesn't use ld --as-needed by default, it is a good idea
to make this change so that (1) we don't have to maintain a delta and (2)
you don't need to change anything in case Debian makes this default in the
future.

You can read more about this option here:
https://wiki.debian.org/ToolChain/DSOLinking#Only_link_with_needed_libraries

In Ubuntu, the attached patch was applied to achieve the following:

  * debian/rules: Change linking order for sendpraat to fix FTBFS with ld
    --as-needed.

Thanks for considering the patch.

Logan Rosen

-- System Information:
Debian Release: stretch/sid
  APT prefers xenial-updates
  APT policy: (500, 'xenial-updates'), (500, 'xenial-security'), (500, 
'xenial'), (100, 'xenial-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.4.0-21-generic (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_US.utf8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru praat-6.0.15/debian/rules praat-6.0.15/debian/rules
--- praat-6.0.15/debian/rules	2016-03-24 16:06:18.000000000 -0400
+++ praat-6.0.15/debian/rules	2016-03-25 01:14:04.000000000 -0400
@@ -59,9 +59,9 @@
 	$(CC) $(shell dpkg-buildflags --get CPPFLAGS)		\
 		$(shell dpkg-buildflags --get CFLAGS)		\
 		$(shell dpkg-buildflags --get LDFLAGS)		\
-		$(shell pkg-config --cflags --libs gtk+-2.0)	\
 		-Wl,--as-needed -std=gnu99 -DSTAND_ALONE -DUNIX	\
-		-o sendpraat sys/sendpraat.c
+		-o sendpraat sys/sendpraat.c			\
+		$(shell pkg-config --cflags --libs gtk+-2.0)
 
 override_dh_auto_build: sendpraat praat.1 sendpraat.1 praat-open-files.1
 	dh_auto_build

Reply via email to