Your message dated Tue, 25 Oct 2016 16:54:00 +0000
with message-id <7bf8abc5-4762-2ff6-40a2-0c30d239c...@thykier.net>
and subject line Re: jack-audio-connection-kit: Please build libjack.a with 
-fPIC
has caused the Debian Bug report #837423,
regarding jack-audio-connection-kit needs PIE binNMU
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 ow...@bugs.debian.org
immediately.)


-- 
837423: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=837423
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: jack-audio-connection-kit
Version: 1:0.124.1+20140122git5013bed0-3
Severity: important
User: bal...@balintreczey.hu
Usertags: pie-bindnow-20160906
Justification: makes espeakup FTBFS on amd64 with extra hardening
Affects: espeakup

Dear Maintainers,

During a rebuild of all packages in sid, espeakup failed to build on
amd64 with patched GCC and dpkg. The root cause seems to be that
libjack.a is shipped as a non-PIC library.

The rebuild tested if packages are ready for a transition
enabling PIE and bindnow for amd64.

For more information about the changes to sid's dpkg and GCC please
visit:
 https://wiki.debian.org/Hardening/PIEByDefaultTransitio

Relevant part of espeakup's build log:
...
cc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
-Wformat -Werror=format-secur
ity -Os -MMD -Wall   -c -o stringhandling.o stringhandling.c
cc -u _Unwind_Resume -u __gcc_personality_v0 -u _Unwind_ForcedUnwind -u
_Unwind_GetCFA -u _Unwind_GetB
SP -lgcc_s  espeakup.o cli.o espeak.o queue.o signal.o softsynth.o
stringhandling.o  /usr/lib/x86_64-l
inux-gnu/libespeak.a /usr/lib/x86_64-linux-gnu/libsonic.a
/usr/lib/x86_64-linux-gnu/libportaudio.a /us
r/lib/x86_64-linux-gnu/libjack.a -lm -lpthread -lasound -lrt -o espeakup
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_front.o):
relocation R_X86_64_32 against `.ro
data.str1.8' can not be used when making a shared object; recompile with
-fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_unix_util.o):
relocation R_X86_64_32 against
`.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_linux_alsa.o):
relocation R_X86_64_32 against
 `.rodata.str1.8' can not be used when making a shared object; recompile
with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_jack.o):
relocation R_X86_64_32 against `.rod
ata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_unix_oss.o):
relocation R_X86_64_32 against `.rodata.str1.8' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_converters.o):
relocation R_X86_64_32S against `.rodata' can not be used when making a
shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_cpuload.o):
relocation R_X86_64_32 against `.rodata' can not be used when making a
shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libportaudio.a(pa_process.o):
relocation R_X86_64_32 against `.rodata' can not be used when making a
shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libjack.a(libjack_la-client.o):
relocation R_X86_64_32 against `.rodata.str1.1' can not be used when
making a shared object; recompile with -fPIC
/usr/bin/ld:
/usr/lib/x86_64-linux-gnu/libjack.a(libjack_la-messagebuffer.o):
relocation R_X86_64_32S against `.bss' can not be used when making a
shared object; recompile with -fPIC
/u
...

The full build log is available from:
https://people.debian.org/~rbalint/build-logs/pie-bindnow-20160906/espeakup_0.80-1_amd64.build.gz

Thanks,
Balint


diff -u binutils-2.27/debian/changelog binutils-2.27/debian/changelog
--- binutils-2.27/debian/changelog
+++ binutils-2.27/debian/changelog
@@ -1,3 +1,10 @@
+binutils (2.27-8+rbalint0) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Build libbfd with -fPIC
+
+ -- Balint Reczey <bal...@balintreczey.hu>  Sat, 10 Sep 2016 15:53:07 +0200
+
 binutils (2.27-8) unstable; urgency=medium
 
   * Fix diversion updates for 32bit x86 targets.
diff -u binutils-2.27/debian/patches/series binutils-2.27/debian/patches/series
--- binutils-2.27/debian/patches/series
+++ binutils-2.27/debian/patches/series
@@ -12,6 +12,7 @@
 130_gold_disable_testsuite_build.patch
 131_ld_bootstrap_testsuite.patch
 135_bfd_version.patch
+136_bfd_pic.patch
 157_ar_scripts_with_tilde.patch
 #158_ld_system_root.patch
 161_gold_dummy_zoption.diff
only in patch2:
unchanged:
--- binutils-2.27.orig/debian/patches/136_bfd_pic.patch
+++ binutils-2.27/debian/patches/136_bfd_pic.patch
@@ -0,0 +1,25 @@
+Author: Balint Reczey <bal...@balintreczey.hu>
+Description: Build libbfd with -fPIC to allow linking with PIE binaries
+
+--- ./bfd/Makefile.am.bak	2016-09-10 16:26:46.062371030 +0200
++++ ./bfd/Makefile.am	2016-09-10 16:27:48.913724681 +0200
+@@ -51,7 +51,7 @@
+ 
+ WARN_CFLAGS = @WARN_CFLAGS@
+ NO_WERROR = @NO_WERROR@
+-AM_CFLAGS = $(WARN_CFLAGS) $(ZLIBINC)
++AM_CFLAGS = $(WARN_CFLAGS) $(ZLIBINC) -fPIC
+ AM_CPPFLAGS = -DBINDIR='"$(bindir)"'
+ if PLUGINS
+ bfdinclude_HEADERS += $(INCDIR)/plugin-api.h
+--- ./bfd/Makefile.in.bak	2016-09-10 16:26:53.009857349 +0200
++++ ./bfd/Makefile.in	2016-09-10 16:27:31.886983240 +0200
+@@ -387,7 +387,7 @@
+ # case both are empty.
+ ZLIB = @zlibdir@ -lz
+ ZLIBINC = @zlibinc@
+-AM_CFLAGS = $(WARN_CFLAGS) $(ZLIBINC)
++AM_CFLAGS = $(WARN_CFLAGS) $(ZLIBINC) -fPIC
+ AM_CPPFLAGS = -DBINDIR='"$(bindir)"'
+ @PLUGINS_TRUE@LIBDL = @lt_cv_dlopen_libs@
+ 


--- End Message ---
--- Begin Message ---
On Sun, 11 Sep 2016 15:44:57 +0200 Balint Reczey
<bal...@balintreczey.hu> wrote:
> Source: jack-audio-connection-kit
> Version: 1:0.124.1+20140122git5013bed0-3
> Severity: important
> User: bal...@balintreczey.hu
> Usertags: pie-bindnow-20160906
> Justification: makes espeakup FTBFS on amd64 with extra hardening
> Affects: espeakup
> 
> Dear Maintainers,
> 
> During a rebuild of all packages in sid, espeakup failed to build on
> amd64 with patched GCC and dpkg. The root cause seems to be that
> libjack.a is shipped as a non-PIC library.
> 
> The rebuild tested if packages are ready for a transition
> enabling PIE and bindnow for amd64.
> 
> For more information about the changes to sid's dpkg and GCC please
> visit:
>  https://wiki.debian.org/Hardening/PIEByDefaultTransitio
> 
> Relevant part of espeakup's build log:
> [...]

Rebuilt successfully.

--- End Message ---
_______________________________________________
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers

Reply via email to