Commit bf446513 authored by Thomas De Schampheleire's avatar Thomas De Schampheleire Committed by Peter Korsgaard
Browse files

ncurses: fix hanging installation due to old version of tic

Closes #3685

During installation of ncurses, the 'tic' program from the host is used. In
some cases, this version of tic is too old for the data to be processed, and
the installation hangs indefinitely (already reported in July 2010, see [1])

With this patch, a static version of tic is built and used during the
installation step of target ncurses. This method is based on a similar fix
in Gentoo Linux (see [2] for the report and [3] for the solution).

[1] http://lists.busybox.net/pipermail/buildroot/2010-July/036100.html
[2] http://bugs.gentoo.org/show_bug.cgi?id=249363#c25
[3] http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-libs/ncurses/ncurses-5.7-r2.ebuild



[Peter: Install into host, don't tweak path]
Signed-off-by: default avatarThomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent cb6c2c42
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -7,11 +7,12 @@
	(broken).

	Updated/fixed packages: barebox, directfb, libsoup,
	libxml-parser-perl, mtd, python, ti-utils, udev, usbmount,
	util-linux, xfont_font-misc-misc
	libxml-parser-perl, mtd, ncurses, python, ti-utils, udev,
	usbmount, util-linux, xfont_font-misc-misc

	Issues resolved (http://bugs.uclibc.org):

	#3685: ncurses installation hangs due to old version of tic
	#4093: Grub fails to install bz2 patch after conversion to...

2011.08-rc1, Released August 4th, 2011:
+15 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@
NCURSES_VERSION = 5.7
NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses
NCURSES_INSTALL_STAGING = YES
NCURSES_DEPENDENCIES = host-ncurses

NCURSES_CONF_OPT = \
	--with-shared \
@@ -120,4 +121,18 @@ define NCURSES_INSTALL_TARGET_CMDS
	$(NCURSES_INSTALL_TARGET_DEVFILES)
endef # NCURSES_INSTALL_TARGET_CMDS

#
# On systems with an older version of tic, the installation of ncurses hangs
# forever. To resolve the problem, build a static version of tic on host
# ourselves, and use that during installation.
#
define HOST_NCURSES_BUILD_CMDS
	$(MAKE1) -C $(@D) sources
	$(MAKE) -C $(@D)/progs tic
endef

HOST_NCURSES_CONF_OPT = \
	--without-shared

$(eval $(call AUTOTARGETS,package,ncurses))
$(eval $(call AUTOTARGETS,package,ncurses,host))