Control: found -1 1:0.99.19-5 On 2015-11-04 18:46 +0100, Sven Joachim wrote:
> Source: jed > Version: 1:0.99.19-4 > > Your package currently FTBFS in unstable. From my pbuilder log: > > ,---- > | i586-linux-gnu-gcc -g -Wall -Wformat=2 -Wunused -Wundef -Wextra > | -Wswitch-enum -Wpointer-arith -Wnested-externs -Wbad-function-cast > | -Wcast-qual -Wcast-align -Wshadow -O2 -I/usr/include/freetype2 > | -Dunix -DJED -DUSE_GPM_MOUSE -Wl,-export-dynamic > | /build/jed-0.99.19/src/chkslang.c -o > | /build/jed-0.99.19/src/objs/chkslang -Wl,-export-dynamic > | -Wl,-R/usr/lib/i386-linux-gnu -L/usr/lib/i386-linux-gnu -lslang > | -lgpm -ltermcap -lutil > | /usr/bin/ld.bfd.real: cannot find -ltermcap > `---- > > This is an unexpected fallout from the fix for bug #745479[1], I did not > really consider it possible that packages use the ncurses5-config script > without a build dependency on libncurses5-dev. Anyway, here's the > analysis: > > The configure script tries to run "ncurses5-config --terminfo", and if > this does not succeed, uses a hardcoded list of terminfo directories > which unfortunately does not include the directories /etc/terminfo and > /lib/terminfo which we ship in ncurses-base. Failing to find a terminfo > directory, it then concludes that the system must be using termcap and > adds "-ltermcap" to the linker line which fails. > > I will work around that by shipping an /usr/share/terminfo directory in > ncurses-base, but jed might still FTBFS on the buildds until they > upgrade their base system. I have re-opened the bug, since removing the /usr/share/terminfo directory from the build system still triggers the FTBFS bug, and maybe we want to drop the empty directory from ncurses-base at some point in the future. > Properly fixing this bug requires patching the buggy test in > autoconf/aclocal.m4 and regenerating configure, but since jed does not > currently build-depend on autoconf and uses dpatch which I haven't used > for years I can't really come up with a patch. I have tried the attached patch, but unfortunately the build broke: ,---- | dh_testdir | # | # --- MAKE --- | # | /usr/bin/make DL_LIB="" OTHERLIBS=-lutil XRENDERFONTLIBS=-lXft jed # getmail | make[1]: Entering directory '/build/jed-0.99.19' | cd autoconf && autoconf && mv ./configure .. | Makefile is older than the configure script. | Please re-run the configure script. | Makefile:18: recipe for target 'Makefile' failed | make[1]: *** [Makefile] Error 1 | make[1]: Leaving directory '/build/jed-0.99.19' | debian/rules:72: recipe for target 'build-stamp' failed `---- Apparently there's something fishy with the build system, I don't know whether it's related to debian/rules or if it is an upstream bug. Anyway, thanks for switching away from dpatch! Cheers, Sven
Description: check for /lib/terminfo in addition to other directories The configure script tries to run "ncurses5-config --terminfo", and if this does not succeed, uses a hardcoded list of terminfo directories which unfortunately does not include the directories /etc/terminfo and /lib/terminfo which we ship in ncurses-base. Failing to find a terminfo directory, it then concludes that the system must be using termcap and adds "-ltermcap" to the linker line which fails. . To avoid this problem, add /lib/terminfo to the list of directories to search. Author: Sven Joachim <svenj...@gmx.de> Bug-Debian: https://bugs.debian.org/804083 --- --- jed-0.99.19.orig/autoconf/aclocal.m4 +++ jed-0.99.19/autoconf/aclocal.m4 @@ -481,7 +481,8 @@ JD_Terminfo_Dirs="$MISC_TERMINFO_DIRS \ /usr/lib/terminfo \ /usr/share/terminfo \ /usr/share/lib/terminfo \ - /usr/local/lib/terminfo" + /usr/local/lib/terminfo \ + /lib/terminfo" TERMCAP=-ltermcap for terminfo_dir in $JD_Terminfo_Dirs