Skip to contentSkip to conversation

Khem Raj : ncurses: Upgrade 4.9 stable to latest patchlevel 20150329

oe-commits Martin Jansa 1 participant 2 messages Jul 2, 2015 – Jul 14, 2015 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 11 lines · On Fri, Apr 10, 2015 at 05:10:48PM +0000, [email protected] wrote:
Module: openembedded-core.git
Branch: master
Commit: 47f67fae98faec17087a827eff141e05b0400560
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=47f67fae98faec17087a827eff141e05b0400560
Author: Khem Raj <[email protected]>
Date:   Mon Apr  6 17:36:29 2015 +0000

ncurses: Upgrade 4.9 stable to latest patchlevel 20150329

gcc5 barfs on older release

In some builds I'm seeing failures like this:

ncurses/5.9-r15.1/ncurses-5.9-20150329/ncurses/tinfo/init_keytry.c:54:25: fatal error: init_keytry.h: No such file or directory

 #include <init_keytry.h>
                         ^

compilation terminated.
make[1]: *** [../objects/init_keytry.o] Error 1
make[1]: *** Waiting for unfinished jobs....

Reverting this commit fixes the issue. The ${includedir} removal in do_configure seems suspicious.

I'm trying to narrow why it fails in some builds and builds fine in other builds even when they are relatively similar.

Any hints appreciated.

Quoted 82 lines
Change-Id Ib1ad9b1cf7f16eb454da21fd61dc56fe1d9f6783

---

 meta/recipes-core/ncurses/ncurses.inc    | 14 ++++++++++++--
 meta/recipes-core/ncurses/ncurses_5.9.bb |  8 +++++---
 2 files changed, 17 insertions(+), 5 deletions(-)
meta/recipes-core/ncurses/ncurses.inc +12 -2
index 10f7dd1..225e369 100644
@@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses-config"
 inherit autotools binconfig-disabled multilib_header
 
 # Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
-SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz"
+SRC_URI = "ftp://invisible-island.net/${BPN}/current/${BP}-${REVISION}.tgz"
 
 EXTRA_AUTORECONF = "-I m4"
 CONFIG_SITE =+ "${WORKDIR}/config.cache"
@@ -97,6 +97,8 @@ do_configure() {
         # broken because it requires stdin to be pollable (which is
         # not the case for /dev/null redirections)
         export cf_cv_working_poll=yes
+	#Remove ${includedir} from CPPFLAGS, need for cross compile
+	sed -i 's#-I${cf_includedir}##g' ${S}/configure || die "sed CPPFLAGS"
 
 	# The --enable-pc-files requires PKG_CONFIG_LIBDIR existed
 	mkdir -p ${PKG_CONFIG_LIBDIR}
@@ -105,6 +107,7 @@ do_configure() {
 		return 1
 	! ${ENABLE_WIDEC} || \
 		ncurses_configure "widec" "--enable-widec" "--without-progs"
+
 }
 
 do_compile() {
@@ -231,7 +234,14 @@ do_install() {
             # At some point we can rely on coreutils 8.16 which has ln -r.
             lnr ${D}${base_libdir}/libtinfo.so.5 ${D}${libdir}/libtinfo.so
         fi
-
+        if [ -d "${D}${includedir}/ncurses" ]; then
+            for f in `find ${D}${includedir}/ncurses -name "*.h"`
+            do
+	        f=`basename $f`
+	        test -e ${D}${includedir}/$f && continue
+                ln -sf ncurses/$f ${D}${includedir}/$f
+            done
+        fi
         oe_multilib_header curses.h
 }
 
meta/recipes-core/ncurses/ncurses_5.9.bb +5 -3
index 6d23c0c..54d27a9 100644
@@ -1,10 +1,12 @@
 require ncurses.inc
 
+REVISION = "20150329"
+
 PR = "${INC_PR}.1"
 
 SRC_URI += "file://tic-hang.patch \
             file://config.cache \
 "
-
-SRC_URI[md5sum] = "8cb9c412e5f2d96bc6f459aa8c6282a1"
-SRC_URI[sha256sum] = "9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b"
+S = "${WORKDIR}/${BP}-${REVISION}"
+SRC_URI[md5sum] = "cee991d09e69e60ebedef424804c52d4"
+SRC_URI[sha256sum] = "5b64f40e4dce73e3aa83d15bd9257c6eff8790ec41150f0938bd87c0eb75828f"
Signature · 5 lines
-- 
_______________________________________________
Openembedded-commits mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-commits
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#2 lore raw
Quoted 22 lines · Martin Jansa
Quoted 11 lines · On Fri, Apr 10, 2015 at 05:10:48PM +0000, [email protected] wrote:
Module: openembedded-core.git
Branch: master
Commit: 47f67fae98faec17087a827eff141e05b0400560
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=47f67fae98faec17087a827eff141e05b0400560
Author: Khem Raj <[email protected]>
Date:   Mon Apr  6 17:36:29 2015 +0000

ncurses: Upgrade 4.9 stable to latest patchlevel 20150329

gcc5 barfs on older release

In some builds I'm seeing failures like this:

ncurses/5.9-r15.1/ncurses-5.9-20150329/ncurses/tinfo/init_keytry.c:54:25: fatal error: init_keytry.h: No such file or directory

 #include <init_keytry.h>
                         ^

compilation terminated.
make[1]: *** [../objects/init_keytry.o] Error 1
make[1]: *** Waiting for unfinished jobs....

Quoted 7 lines

Reverting this commit fixes the issue. The ${includedir} removal in do_configure seems suspicious.

I'm trying to narrow why it fails in some builds and builds fine in other builds even when they are relatively similar.

Any hints appreciated.

I've narrowed it down to -D in CC variable, ncurses-20150329 is using:

echo "$as_me:2129: checking \$CC variable" >&5 echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 case "$CC" in #(vi
*[\ \ ]-[IUD]*)

          echo "$as_me:2133: result: broken" >&5
  echo "${ECHO_T}broken" >&6
          { echo "$as_me:2135: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
  echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
          # humor him...
          cf_flags=`echo "$CC" | sed -e 's/^[^    ]*[     ]//'`
          CC=`echo "$CC" | sed -e 's/[    ].*//'`
  ....

to check and possibly fix CC variable, most my MACHINEs were working fine, except one which still had:
TUNE_CCARGS += "-D__ARM__ -D__LINUX_ARM_ARCH__=7"
for whatever historical reason, that trips ncurses configure:

$ export CC="arm-webos-linux-gnueabi-gcc  -march=armv7-a -mthumb  -mthumb-interwork -mfloat-abi=hard -mfpu=neon -rdynamic -funwind-tables -mvectorize-with-neon-quad -Os --sysroot=<SYSROOT>"
jenkins@rabbit:~/ncurses$ . cc.check                                                                                                                          :2129: checking $CC variable
checking $CC variable...
:2221: result: ok
ok
$ export CC="arm-webos-linux-gnueabi-gcc  -march=armv7-a -mthumb  -mthumb-interwork -mfloat-abi=hard -mfpu=neon -rdynamic -funwind-tables -D__ARM__ -D__LINUX_ARM_ARCH__=7 -mvectorize-with-neon-quad -Os --sysroot=<SYSROOT>"
jenkins@rabbit:~/ncurses$ . cc.check 
:2129: checking $CC variable
checking $CC variable... 
:2133: result: broken
broken
:2135: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options
: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options

And "fixed" CC variable causes issues described above.

Quoted 85 lines
Quoted 82 lines
Change-Id Ib1ad9b1cf7f16eb454da21fd61dc56fe1d9f6783

---

 meta/recipes-core/ncurses/ncurses.inc    | 14 ++++++++++++--
 meta/recipes-core/ncurses/ncurses_5.9.bb |  8 +++++---
 2 files changed, 17 insertions(+), 5 deletions(-)
meta/recipes-core/ncurses/ncurses.inc +12 -2
index 10f7dd1..225e369 100644
@@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses-config"
 inherit autotools binconfig-disabled multilib_header
 
 # Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
-SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz"
+SRC_URI = "ftp://invisible-island.net/${BPN}/current/${BP}-${REVISION}.tgz"
 
 EXTRA_AUTORECONF = "-I m4"
 CONFIG_SITE =+ "${WORKDIR}/config.cache"
@@ -97,6 +97,8 @@ do_configure() {
         # broken because it requires stdin to be pollable (which is
         # not the case for /dev/null redirections)
         export cf_cv_working_poll=yes
+	#Remove ${includedir} from CPPFLAGS, need for cross compile
+	sed -i 's#-I${cf_includedir}##g' ${S}/configure || die "sed CPPFLAGS"
 
 	# The --enable-pc-files requires PKG_CONFIG_LIBDIR existed
 	mkdir -p ${PKG_CONFIG_LIBDIR}
@@ -105,6 +107,7 @@ do_configure() {
 		return 1
 	! ${ENABLE_WIDEC} || \
 		ncurses_configure "widec" "--enable-widec" "--without-progs"
+
 }
 
 do_compile() {
@@ -231,7 +234,14 @@ do_install() {
             # At some point we can rely on coreutils 8.16 which has ln -r.
             lnr ${D}${base_libdir}/libtinfo.so.5 ${D}${libdir}/libtinfo.so
         fi
-
+        if [ -d "${D}${includedir}/ncurses" ]; then
+            for f in `find ${D}${includedir}/ncurses -name "*.h"`
+            do
+	        f=`basename $f`
+	        test -e ${D}${includedir}/$f && continue
+                ln -sf ncurses/$f ${D}${includedir}/$f
+            done
+        fi
         oe_multilib_header curses.h
 }
 
meta/recipes-core/ncurses/ncurses_5.9.bb +5 -3
index 6d23c0c..54d27a9 100644
@@ -1,10 +1,12 @@
 require ncurses.inc
 
+REVISION = "20150329"
+
 PR = "${INC_PR}.1"
 
 SRC_URI += "file://tic-hang.patch \
             file://config.cache \
 "
-
-SRC_URI[md5sum] = "8cb9c412e5f2d96bc6f459aa8c6282a1"
-SRC_URI[sha256sum] = "9046298fb440324c9d4135ecea7879ffed8546dd1b58e59430ea07a4633f563b"
+S = "${WORKDIR}/${BP}-${REVISION}"
+SRC_URI[md5sum] = "cee991d09e69e60ebedef424804c52d4"
+SRC_URI[sha256sum] = "5b64f40e4dce73e3aa83d15bd9257c6eff8790ec41150f0938bd87c0eb75828f"
Signature · 5 lines
-- 
_______________________________________________
Openembedded-commits mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-commits
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]