Bug#802810: ncurses: FTBFS on powerpc: /usr/bin/ld:resulting.map:814: syntax error in VERSION script

2015-10-23 Thread Sven Joachim
Source: ncurses
Version: 6.0+20151017-1
Severity: serious
X-Debbugs-CC: debian-powe...@lists.debian.org
Tags: help

On the powerpc buildd, building the 64-bit libtinfo failed:

,
| gcc -m64 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security  
--param max-inline-insns-single=1200 -shared -Wl,--version-script,resulting.map 
-Wl,-soname,`basename ../lib/libtinfo.so.5.9 .5.9`.5,-stats,-lc -o 
../lib/libtinfo.so.5.9 ../obj_s/access.o ../obj_s/add_tries.o 
../obj_s/alloc_ttype.o ../obj_s/codes.o ../obj_s/comp_captab.o 
../obj_s/comp_error.o ../obj_s/comp_hash.o ../obj_s/db_iterator.o 
../obj_s/doalloc.o ../obj_s/entries.o ../obj_s/fallback.o ../obj_s/free_ttype.o 
../obj_s/getenv_num.o ../obj_s/home_terminfo.o ../obj_s/init_keytry.o 
../obj_s/lib_acs.o ../obj_s/lib_baudrate.o ../obj_s/lib_cur_term.o 
../obj_s/lib_data.o ../obj_s/lib_has_cap.o ../obj_s/lib_kernel.o 
../obj_s/lib_keyname.o ../obj_s/lib_longname.o ../obj_s/lib_napms.o 
../obj_s/lib_options.o ../obj_s/lib_raw.o ../obj_s/lib_setup.o 
../obj_s/lib_termcap.o ../obj_s/lib_termname.o ../obj_s/lib_tgoto.o 
../obj_s/lib_ti.o ../obj_s/lib_tparm.o ../obj_s/lib_tputs.o 
../obj_s/lib_trace.o ../obj_s/lib_ttyflags.o ../obj_s/lib_twait.o 
../obj_s/name_match.o ../obj_s/names.o ../obj_s/obsolete.o 
../obj_s/read_entry.o ../obj_s/read_termcap.o ../obj_s/strings.o 
../obj_s/tries.o ../obj_s/trim_sgr0.o ../obj_s/unctrl.o ../obj_s/visbuf.o 
../obj_s/define_key.o ../obj_s/hashed_db.o ../obj_s/key_defined.o 
../obj_s/keybound.o ../obj_s/keyok.o ../obj_s/version.o -L../lib  -Wl,-z,relro  
| /usr/bin/ld:resulting.map:814: syntax error in VERSION script
| collect2: error: ld returned 1 exit status
| Makefile:978: recipe for target '../lib/libtinfo.so.5.9' failed
| make[2]: *** [../lib/libtinfo.so.5.9] Error 1
| make[2]: Leaving directory '/«BUILDDIR»/ncurses-6.0+20151017/obj-64/ncurses'
| Makefile:113: recipe for target 'all' failed
| make[1]: *** [all] Error 2
| make[1]: Leaving directory '/«BUILDDIR»/ncurses-6.0+20151017/obj-64'
| debian/rules:309: recipe for target 'build-64' failed
| make: *** [build-64] Error 2
`

Help from the powerpc porters would be appreciated.  To investigate the
issue, run "debian/rules build-64".



Bug#802810: ncurses: FTBFS on powerpc: /usr/bin/ld:resulting.map:814: syntax error in VERSION script

2015-10-23 Thread Sven Joachim
While I still don't fully understand the issue, I have made some
progress.

On 2015-10-23 21:00 +0200, Sven Joachim wrote:

> On the powerpc buildd, building the 64-bit libtinfo failed:
>
> ,
> | gcc -m64 -g -O2 -fstack-protector-strong -Wformat
> | -Werror=format-security --param max-inline-insns-single=1200 -shared
> | -Wl,--version-script,resulting.map -Wl,-soname,`basename
> | ../lib/libtinfo.so.5.9 .5.9`.5,-stats,-lc -o ../lib/libtinfo.so.5.9
> | ../obj_s/access.o ../obj_s/add_tries.o ../obj_s/alloc_ttype.o
> | ../obj_s/codes.o ../obj_s/comp_captab.o ../obj_s/comp_error.o
> | ../obj_s/comp_hash.o ../obj_s/db_iterator.o ../obj_s/doalloc.o
> | ../obj_s/entries.o ../obj_s/fallback.o ../obj_s/free_ttype.o
> | ../obj_s/getenv_num.o ../obj_s/home_terminfo.o
> | ../obj_s/init_keytry.o ../obj_s/lib_acs.o ../obj_s/lib_baudrate.o
> | ../obj_s/lib_cur_term.o ../obj_s/lib_data.o ../obj_s/lib_has_cap.o
> | ../obj_s/lib_kernel.o ../obj_s/lib_keyname.o ../obj_s/lib_longname.o
> | ../obj_s/lib_napms.o ../obj_s/lib_options.o ../obj_s/lib_raw.o
> | ../obj_s/lib_setup.o ../obj_s/lib_termcap.o ../obj_s/lib_termname.o
> | ../obj_s/lib_tgoto.o ../obj_s/lib_ti.o ../obj_s/lib_tparm.o
> | ../obj_s/lib_tputs.o ../obj_s/lib_trace.o ../obj_s/lib_ttyflags.o
> | ../obj_s/lib_twait.o ../obj_s/name_match.o ../obj_s/names.o
> | ../obj_s/obsolete.o ../obj_s/read_entry.o ../obj_s/read_termcap.o
> | ../obj_s/strings.o ../obj_s/tries.o ../obj_s/trim_sgr0.o
> | ../obj_s/unctrl.o ../obj_s/visbuf.o ../obj_s/define_key.o
> | ../obj_s/hashed_db.o ../obj_s/key_defined.o ../obj_s/keybound.o
> | ../obj_s/keyok.o ../obj_s/version.o -L../lib -Wl,-z,relro
> | /usr/bin/ld:resulting.map:814: syntax error in VERSION script

The resulting.map file has been constructed previously from
package/ncurses.map:

,
| sed  -e "s/_\*;//g" < /«BUILDDIR»/ncurses-6.0+20151017/package/ncurses.map 
>resulting.map
`

If I replace package/ncurses.map with resulting.map, I get the same
complaint from ld.  The only change in ncurses.map compared to the
previous (working) version in ncurses 6.0+20150810-1 is this:

--8<---cut here---start->8---
diff --git a/package/ncurses.map b/package/ncurses.map
index a59484f..f18ed71 100644
--- a/package/ncurses.map
+++ b/package/ncurses.map
@@ -1,4 +1,4 @@
-# $Id: ncurses.map,v 1.34 2015/06/27 22:28:50 tom Exp $
+# $Id: ncurses.map,v 1.35 2015/09/05 19:27:16 tom Exp $
 # script for shared library symbol-versioning using ld
 #
 # This file was generated by ncu-mapsyms
@@ -806,6 +806,13 @@ NCURSES_TIC_5.9.20150530 {
_nc_strict_bsd;
 } NCURSES_TIC_5.7.20081102;
 
+NCURSES_TIC_6.0.current {
+   global:
+   _nc_write_object;
+   local:
+   _*;
+} NCURSES_TIC_5.9.20150530;
+
 NCURSES_TINFO_5.0.19991023 {
global:
BC;
--8<---cut here---end--->8---

After the sed substitution, this leads to the "local:" directive in
NCURSES_TIC_6.0.current having no arguments, and apparently ld does not
like this.