On 2015-05-24 03:26 +0200, Thomas Dickey wrote:

> ----- Original Message -----
> | From: "Helmut Grohne" <hel...@subdivi.de>
> | To: 786...@bugs.debian.org
> | Sent: Thursday, May 21, 2015 1:48:24 PM
> | Subject: Bug#786436: ncurses FTBFS: configure loops
> | 
> | Control: tags -1 - moreinfo
> | Control: severity -1 serious
> | 
> | On Thu, May 21, 2015 at 07:24:18PM +0200, Helmut Grohne wrote:
> | > | Looking for ncursesw-config
> | > | checking for ncursesw-config... no
> | > | checking for ncursesw6-config... no
> | > | checking for ncursesw5-config... no
> | 
> | There is a notable difference to successful builds here. Those say:
> | 
> | | checking for ncursesw5-config... ncursesw5-config
> | 
> | Now where does that come from? ncurses-bin. Well, it came from there,
> | but it no longer does.
>
> On the other hand, I have the impression that Debian packagers would prefer 
> to use ".pc" files.
> The log shows that there is no suitable pkg-config for the cross-compiler, so 
> it falls through
> to the script looking for ncurses*-config

Cross-compiler or not, the pkg-config files only work correctly for a
library that's already installed in the right place.

> I did that recently, and verified that the script works with the pkg-config 
> which is part of
> the MinGW cross-compilers.  (If there is something I've overlooked, that 
> would be nice to know).
>
> Perhaps the proper fix for your build is to ensure that there is a pkg-config 
> for the cross-build,
> rather than restoring the ncurses*-config scripts to your build-environment.

Since the pkg-config files are only created at "make install.libs", we
currently need to install the library into a temporary location.  I've
come up with the following patch:

--8<---------------cut here---------------start------------->8---
diff --git a/debian/rules b/debian/rules
index a52135b..c3b7d6e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -275,8 +275,9 @@ $(wobjdir-32)/config.status: config.guess-stamp
 
 $(objdir-test)/config.status: build-wide config.guess-stamp
        test -d $(objdir-test) || mkdir $(objdir-test)
-       cd $(objdir-test) && CFLAGS="$(CFLAGS)" $(srcdir)/test/configure \
-               $(CONFARGS-TEST)
+       cd $(objdir-test) && CFLAGS="$(CFLAGS)" \
+               
PKG_CONFIG_LIBDIR=$(wobjdir)/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig \
+               $(srcdir)/test/configure $(CONFARGS-TEST)
 
 build-arch build-indep: build
 
@@ -308,8 +309,7 @@ build-debug: $(objdir-debug)/config.status
 build-wide: $(wobjdir)/config.status
        cd $(wobjdir) && $(MAKE)
        # needed for building the examples
-       mv $(wobjdir)/lib/libncursesw.so $(wobjdir)/lib/libncursesw.so.saved
-       echo "INPUT(libncursesw.so.5 -ltinfo)" > $(wobjdir)/lib/libncursesw.so
+       $(MAKE) -C $(wobjdir) DESTDIR=$(wobjdir) install.libs
        touch $@
 
 build-wide-static: $(wobjdir-static)/config.status
--8<---------------cut here---------------end--------------->8---

Only tested that "debian/rules build-test" works in a native build, will
need to check full native and cross builds later on.

Cheers,
       Sven


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to