Bug#940266: z3: FTBFS on hppa - objects in shared libraries need to be compiled with -fPIC

2019-09-14 Thread John David Anglin
On 2019-09-14 4:27 p.m., Sylvestre Ledru wrote:
> For curiosity, do you know why?
Shared libraries need to be position independent.  Same for PIE executables.  
The default
on 32-bit hppa is to generate non-position independent code.  It is somewhat 
more efficient.
It uses some different relocations and global data is loaded using global 
pointer.  One doesn't
need to load address from got.

This runtime model was defined by HP years ago (1980s).  Strangely, HP decided 
to generate
PIC code by default for hppa64.

Regards,
Dave

-- 
John David Anglin  dave.ang...@bell.net



Bug#940266: z3: FTBFS on hppa - objects in shared libraries need to be compiled with -fPIC

2019-09-14 Thread Sylvestre Ledru



Le 14/09/2019 à 22:14, John David Anglin a écrit :

Source: z3
Version: 4.8.4-1
Severity: normal

Dear Maintainer,

On hppa and some other architectures, objects linked in shared libraries
need to be compiled with -fPIC.


For curiosity, do you know why?

Thanks

Sylvestre



Bug#940266: z3: FTBFS on hppa - objects in shared libraries need to be compiled with -fPIC

2019-09-14 Thread John David Anglin
Source: z3
Version: 4.8.4-1
Severity: normal

Dear Maintainer,

On hppa and some other architectures, objects linked in shared libraries
need to be compiled with -fPIC.  See for example the following build log:
https://buildd.debian.org/status/fetch.php?pkg=z3=hppa=4.8.4-1=1567753798=0

This may not be the best way to fix the problem but adding "export 
CXXFLAGS=-fPIC"
to debian rules results in a successful build of z3 on hppa.  See:
https://buildd.debian.org/status/fetch.php?pkg=z3=hppa=4.8.4-1=1568491166=0

Regards,
Dave Anglin

-- System Information:
Debian Release: bullseye/sid
  APT prefers buildd-unstable
  APT policy: (500, 'buildd-unstable'), (500, 'unstable')
Architecture: hppa (parisc64)

Kernel: Linux 4.14.142+ (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)