From 8b15de20a07b31ca3c4954a1f1ce035e00161934 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Tue, 30 Aug 2022 14:44:23 +0200 Subject: [PATCH] package/ncurses: drop our custom host build commands Commit bf446513e7e7 (ncurses: fix hanging installation due to old version of tic) introduced the build of the host tic, to be used by the target ncurses. That commit purportedly built a static tic, but that is (at least now) wrong: there is nothing that makes the build of tic static. Initially, host-ncurses was configured with --without-shared, but that only drives whether to generate shared libs or not, it does not drive whether to do a shared or static link of executables. And in any case, in af23d762e51b (ncurses: enable shared library build on the host) we explicitly stopped requesting the build of a static library, to instead require the build of a shared library. So, we never had a statically linked tic ever. Furthermore, we override the _BUKLLD_CMDS, but we do not provide any _INSTALL_CMDS. As a consequence, the full ncurses is installed, not just tic. And since we override the _BUILD_CMDS, the libraries are not built, so they get built during the install step. And we do indeed need the libraries (host-gettext needs them), and not just tic. So, just drop our custom _BUILD_CMDS and just build the whole package with the default settings. We keep the explicit use of --with-shared, as this is not the standard flag (--enable-shared) and it is not obvious what the default is. The set of files installed before and after this change is exactly the same, and tic still is an "ELF 64-bit LSB shared object" with a RUNPATH that still correctly points to $(HOST_DIR)/lib To be noted: there is no regressin in build time either, since we were already building everything anyway. Signed-off-by: Yann E. MORIN Signed-off-by: Thomas Petazzoni --- package/ncurses/ncurses.mk | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk index 5d9c6bb0dd..2881ca1308 100644 --- a/package/ncurses/ncurses.mk +++ b/package/ncurses/ncurses.mk @@ -184,16 +184,6 @@ define NCURSES_TARGET_CLEANUP_TERMINFO endef NCURSES_POST_INSTALL_TARGET_HOOKS += NCURSES_TARGET_CLEANUP_TERMINFO -# -# 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 - $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) sources - $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/progs tic -endef - HOST_NCURSES_CONF_ENV = \ ac_cv_path_LDCONFIG=""