From: <abe...@us...> - 2015-08-25 16:47:05
|
Revision: 7226 http://sourceforge.net/p/astlinux/code/7226 Author: abelbeck Date: 2015-08-25 16:47:03 +0000 (Tue, 25 Aug 2015) Log Message: ----------- ncurses, version bump to 5.9, Note: this effects a lot of packages Modified Paths: -------------- branches/1.0/package/ncurses/ncurses.mk Added Paths: ----------- branches/1.0/package/ncurses/ncurses-0001-fixup-pkg-config-handling.patch branches/1.0/package/ncurses/ncurses-0002-gcc-5.x-MKlib_gen.patch Added: branches/1.0/package/ncurses/ncurses-0001-fixup-pkg-config-handling.patch =================================================================== --- branches/1.0/package/ncurses/ncurses-0001-fixup-pkg-config-handling.patch (rev 0) +++ branches/1.0/package/ncurses/ncurses-0001-fixup-pkg-config-handling.patch 2015-08-25 16:47:03 UTC (rev 7226) @@ -0,0 +1,89 @@ +Change handling of PKG_CONFIG_LIBDIR + +When PKG_CONFIG_LIBDIR was unset in the environment, the configure +script was deducing the PKG_CONFIG_LIBDIR from the location of the +pkg-config binary, which doesn't make a lot of sense, and isn't done +by other autotools based packages. + +Also, the configure script was checking that the directory really +exists. This forced to create the directory *and* provide an absolute +path in PKG_CONFIG_LIBDIR, which didn't play well with the fact that +at installation time, PKG_CONFIG_LIBDIR is suffixed to DESTDIR, which +means that we got two times the staging directory location. + +This patch fixes both of those issues. Also, since ncurses uses a fork +of autoconf 2.13, we can't simply use _AUTORECONF=YES, so we also fix +the configure script in this patch. + +Signed-off-by: Thomas Petazzoni <tho...@fr...> + +Index: b/configure +=================================================================== +--- a/configure ++++ b/configure +@@ -3623,27 +3623,20 @@ + + # Leave this as something that can be overridden in the environment. + if test -z "$PKG_CONFIG_LIBDIR" ; then +- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig ++ PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig" + fi ++ + PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` +- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then + +-# Check whether --enable-pc-files or --disable-pc-files was given. +-if test "${enable_pc_files+set}" = set; then +- enableval="$enable_pc_files" +- enable_pc_files=$enableval +-else +- enable_pc_files=no +-fi; +- echo "$as_me:3638: result: $enable_pc_files" >&5 +-echo "${ECHO_T}$enable_pc_files" >&6 ++ # Check whether --enable-pc-files or --disable-pc-files was given. ++ if test "${enable_pc_files+set}" = set; then ++ enableval="$enable_pc_files" ++ enable_pc_files=$enableval + else +- echo "$as_me:3641: result: no" >&5 +-echo "${ECHO_T}no" >&6 +- { echo "$as_me:3643: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5 +-echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;} +- enable_pc_files=no +- fi ++ enable_pc_files=no ++ fi; ++ echo "$as_me:3638: result: $enable_pc_files" >&5 ++ echo "${ECHO_T}$enable_pc_files" >&6 + fi + + echo "$as_me:3649: checking if we should assume mixed-case filenames" >&5 +Index: b/configure.in +=================================================================== +--- a/configure.in ++++ b/configure.in +@@ -174,20 +174,14 @@ + + # Leave this as something that can be overridden in the environment. + if test -z "$PKG_CONFIG_LIBDIR" ; then +- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig ++ PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig" + fi + PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'` +- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then +- AC_ARG_ENABLE(pc-files, ++ AC_ARG_ENABLE(pc-files, + [ --enable-pc-files generate and install .pc files for pkg-config], + [enable_pc_files=$enableval], + [enable_pc_files=no]) +- AC_MSG_RESULT($enable_pc_files) +- else +- AC_MSG_RESULT(no) +- AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR) +- enable_pc_files=no +- fi ++ AC_MSG_RESULT($enable_pc_files) + fi + AC_SUBST(PKG_CONFIG_LIBDIR) + Added: branches/1.0/package/ncurses/ncurses-0002-gcc-5.x-MKlib_gen.patch =================================================================== --- branches/1.0/package/ncurses/ncurses-0002-gcc-5.x-MKlib_gen.patch (rev 0) +++ branches/1.0/package/ncurses/ncurses-0002-gcc-5.x-MKlib_gen.patch 2015-08-25 16:47:03 UTC (rev 7226) @@ -0,0 +1,43 @@ +Fix gcc 5.x build failure + +Extracted from upstream commit +http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commit;h=97bb4678dc03e753290b39bbff30ba2825df9517. + ++ modify MKlib_gen.sh to work around change in development version of + gcc introduced here: + https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html + https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html + (reports by Marcus Shawcroft, Maohui Lei). + +Original author: Thomas E. Dickey <di...@in...> +Signed-off-by: Mikhail Peselnik <ba...@bm...> + +--- a/ncurses/base/MKlib_gen.sh.orig 2015-07-23 21:52:32.239481505 +0300 ++++ b/ncurses/base/MKlib_gen.sh 2015-07-23 21:53:20.772966587 +0300 +@@ -437,11 +437,22 @@ + -e 's/gen_$//' \ + -e 's/ / /g' >>$TMP + ++cat >$ED1 <<EOF ++s/ / /g ++s/^ // ++s/ $// ++s/P_NCURSES_BOOL/NCURSES_BOOL/g ++EOF ++ ++# A patch discussed here: ++# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html ++# introduces spurious #line markers. Work around that by ignoring the system's ++# attempt to define "bool" and using our own symbol here. ++sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2 ++cat $ED2 >$TMP ++ + $preprocessor $TMP 2>/dev/null \ +-| sed \ +- -e 's/ / /g' \ +- -e 's/^ //' \ +- -e 's/_Bool/NCURSES_BOOL/g' \ ++| sed -f $ED1 \ + | $AWK -f $AW2 \ + | sed -f $ED3 \ + | sed \ Modified: branches/1.0/package/ncurses/ncurses.mk =================================================================== --- branches/1.0/package/ncurses/ncurses.mk 2015-08-25 13:01:20 UTC (rev 7225) +++ branches/1.0/package/ncurses/ncurses.mk 2015-08-25 16:47:03 UTC (rev 7226) @@ -1,108 +1,71 @@ ############################################################# # # ncurses -# this installs only a few vital termcap entries # ############################################################# -# Copyright (C) 2002 by Ken Restivo <ke...@24...> -# $Id: ncurses.mk,v 1.7 2005/01/03 04:38:13 andersen Exp $ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU Library General Public License as -# published by the Free Software Foundation; either version 2 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. -# -# You should have received a copy of the GNU Library General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -# USA -# TARGETS -NCURSES_VERSION = 5.7 +NCURSES_VERSION = 5.9 NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses NCURSES_INSTALL_STAGING = YES NCURSES_DEPENDENCIES = host-ncurses +HOST_NCURSES_DEPENDENCIES = +NCURSES_LIB_SUFFIX = NCURSES_CONF_OPT = \ --with-shared \ + --without-normal \ --without-cxx \ --without-cxx-binding \ --without-ada \ - --without-progs \ --without-tests \ --disable-big-core \ --without-profile \ --disable-rpath \ + --disable-rpath-hack \ --enable-echo \ --enable-const \ --enable-overwrite \ - --enable-broken_linker \ + --enable-pc-files \ + --without-progs \ + --without-manpages \ + --without-gpm \ --disable-static +# Install after busybox for the full-blown versions +ifeq ($(BR2_PACKAGE_BUSYBOX),y) +NCURSES_DEPENDENCIES += busybox +endif + ifneq ($(BR2_ENABLE_DEBUG),y) NCURSES_CONF_OPT += --without-debug endif - -define NCURSES_BUILD_CMDS - $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) -endef - -define NCURSES_PATCH_NCURSES_CONFIG - $(SED) 's^prefix="^prefix="$(STAGING_DIR)^' \ +define NCURSES_STAGING_NCURSES_CONFIG_FIXUP + $(SED) "s,^prefix=.*,prefix=\'$(STAGING_DIR)/usr\',g" \ + -e "s,^exec_prefix=.*,exec_prefix=\'$(STAGING_DIR)/usr\',g" \ $(STAGING_DIR)/usr/bin/ncurses5-config endef +NCURSES_POST_INSTALL_STAGING_HOOKS += NCURSES_STAGING_NCURSES_CONFIG_FIXUP -NCURSES_POST_STAGING_INSTALL_HOOKS += NCURSES_PATCH_NCURSES_CONFIG +NCURSES_LIBS-y = ncurses +NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_MENU) += menu +NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_PANEL) += panel +NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_FORM) += form -ifeq ($(BR2_HAVE_DEVFILES),y) -define NCURSES_INSTALL_TARGET_DEVFILES - mkdir -p $(TARGET_DIR)/usr/include - cp -dpf $(NCURSES_DIR)/include/curses.h $(TARGET_DIR)/usr/include/curses.h - cp -dpf $(NCURSES_DIR)/include/ncurses_dll.h $(TARGET_DIR)/usr/include/ncurses_dll.h - cp -dpf $(NCURSES_DIR)/include/term.h $(TARGET_DIR)/usr/include/ - cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/ - cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/ - cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/ - (cd $(TARGET_DIR)/usr/lib; \ - ln -fs libncurses.a libcurses.a; \ - ln -fs libncurses.a libtermcap.a; \ - ) - (cd $(TARGET_DIR)/usr/include; ln -fs curses.h ncurses.h) - rm -f $(TARGET_DIR)/usr/lib/libncurses.so - (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.so.$(NCURSES_VERSION) libncurses.so) +define NCURSES_BUILD_CMDS + $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) endef -endif -ifeq ($(BR2_PACKAGE_NCURSES_TARGET_PANEL),y) -define NCURSES_INSTALL_TARGET_PANEL - cp -dpf $(NCURSES_DIR)/lib/libpanel.so* $(TARGET_DIR)/usr/lib/ +define NCURSES_INSTALL_TARGET_LIBS + for lib in $(NCURSES_LIBS-y:%=lib%); do \ + cp -dpf $(NCURSES_DIR)/lib/$${lib}$(NCURSES_LIB_SUFFIX).so* \ + $(TARGET_DIR)/usr/lib/; \ + done endef -endif -ifeq ($(BR2_PACKAGE_NCURSES_TARGET_FORM),y) -define NCURSES_INSTALL_TARGET_FORM - cp -dpf $(NCURSES_DIR)/lib/libform.so* $(TARGET_DIR)/usr/lib/ -endef -endif - -ifeq ($(BR2_PACKAGE_NCURSES_TARGET_MENU),y) -define NCURSES_INSTALL_TARGET_MENU - cp -dpf $(NCURSES_DIR)/lib/libmenu.so* $(TARGET_DIR)/usr/lib/ -endef -endif - define NCURSES_INSTALL_TARGET_CMDS mkdir -p $(TARGET_DIR)/usr/lib - cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/ - $(NCURSES_INSTALL_TARGET_PANEL) - $(NCURSES_INSTALL_TARGET_FORM) - $(NCURSES_INSTALL_TARGET_MENU) + $(NCURSES_INSTALL_TARGET_LIBS) ln -snf /usr/share/terminfo $(TARGET_DIR)/usr/lib/terminfo mkdir -p $(TARGET_DIR)/usr/share/terminfo/x cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm $(TARGET_DIR)/usr/share/terminfo/x @@ -118,7 +81,8 @@ cp -dpf $(STAGING_DIR)/usr/share/terminfo/a/ansi $(TARGET_DIR)/usr/share/terminfo/a mkdir -p $(TARGET_DIR)/usr/share/terminfo/l cp -dpf $(STAGING_DIR)/usr/share/terminfo/l/linux $(TARGET_DIR)/usr/share/terminfo/l - $(NCURSES_INSTALL_TARGET_DEVFILES) + mkdir -p $(TARGET_DIR)/usr/share/terminfo/s + cp -dpf $(STAGING_DIR)/usr/share/terminfo/s/screen $(TARGET_DIR)/usr/share/terminfo/s endef # NCURSES_INSTALL_TARGET_CMDS # @@ -132,7 +96,13 @@ endef HOST_NCURSES_CONF_OPT = \ - --without-shared + --with-shared \ + --without-gpm \ + --without-manpages \ + --without-cxx \ + --without-cxx-binding \ + --without-ada \ + --without-normal $(eval $(call AUTOTARGETS,package,ncurses)) $(eval $(call AUTOTARGETS,package,ncurses,host)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |