[OpenWrt-Devel] [PATCH] ncurses: Fix build of libncursew

Ted Hess thess at kitschensync.net
Thu Dec 10 11:00:52 EST 2015



> Date: Thu, 10 Dec 2015 09:30:44 +0100
> From: John Crispin <blogic at openwrt.org>
> To: openwrt-devel at lists.openwrt.org
> Subject: Re: [OpenWrt-Devel] [PATCH] ncurses: Fix build of libncursew
>
>On 09/12/2015 19:45, Ted Hess wrote:
> Packages using libncursesw can fail to build if both libncurses and libncursesw
> are not installed. Currently the ncurses.h file is installed in "usr/include/ncursesw"
> directory and includes other .h files in the "usr/include" directory incorrectly.
> For example: Including <ncursesw/ncurses.h> fails due to these references. These build
> changes will set the correct include paths within the developer includes. 
> 
> Packages that expect ncurses.h (or curses.h) in the default "usr/include" path fail
> even when expecting to build with libncursesw and will need to be fixed as well. However,
> they cannot be fixed until this patch is applied.
> 
>
> will this require that we fix packages linked against the w version to
> lib as the headers are now at a different location int he staging area ?
>
>John

No, it should not. The actual include path in the staging_directory does not change. The
patch just fixes the headers built for that location to work as intended. Packages that can
build with the 'w' version without needing the non-w version installed can now remove
that requirement and maybe fix them if they are just wrong (as was with zile). There
should be no immediate changes required since the headers were broken in the first
place and the installation of the non-w version of the headers made it work.

/ted

> Signed-off-by: Ted Hess <thess at kitschensync.net>
> ---
>  package/libs/ncurses/Makefile | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/package/libs/ncurses/Makefile b/package/libs/ncurses/Makefile
> index 1f7ea9b..924033f 100644
> --- a/package/libs/ncurses/Makefile
> +++ b/package/libs/ncurses/Makefile
> @@ -1,5 +1,5 @@
>  #
> -# Copyright (C) 2006-2013 OpenWrt.org
> +# Copyright (C) 2006-2015 OpenWrt.org
>  #
>  # This is free software, licensed under the GNU General Public License v2.
>  # See /LICENSE for more information.
> @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=ncurses
>  PKG_VERSION:=5.9
> -PKG_RELEASE:=2
> +PKG_RELEASE:=3
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
>  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
> @@ -91,6 +91,7 @@ endif
>  ifeq ($(BUILD_VARIANT),libncursesw)
>  CONFIGURE_ARGS += \
>  --enable-widec \
> + --includedir="/usr/include/ncursesw" \
>  --with-build-cppflags=-D_GNU_SOURCE
>  endif
>  
> @@ -138,7 +139,7 @@ endef
>  ifeq ($(BUILD_VARIANT),libncursesw)
>  define Build/InstallDev
>  $(INSTALL_DIR) $(1)/usr/include/ncursesw/
> - $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ncursesw/
> + $(CP) $(PKG_INSTALL_DIR)/usr/include/ncursesw/*.h $(1)/usr/include/ncursesw/
>  
>  $(INSTALL_DIR) $(1)/usr/lib
>  $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ncurses,panel,menu,form}w.{a,so*} $(1)/usr/lib/
> 
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list