Openembedded Core Discussions
 help / color / mirror / Atom feed
* [RC3 FIXES 0/4] Some fixes for RC3
@ 2011-09-18 23:03 Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 1/4] base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list Saul Wold
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Saul Wold @ 2011-09-18 23:03 UTC (permalink / raw)
  To: openembedded-core

This has a host contamination fix for texinfo and a non-gplv3 build
fix, some konsole fixes from Paul.

These should go in before RC3.

Thanks
	Sau!


The following changes since commit 31cb3974eeaf2a808e8da3864e70986578c58cb9:

  sanity: disable mirrors for connectivity check (2011-09-16 18:07:19 +0100)

are available in the git repository at:
  git://git.yoctoproject.org/poky-contrib sgw/oe-fix
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=sgw/oe-fix

Joshua Lock (1):
  texinfo: several changes to build without zlib and ncurses headers on
    host

Paul Eggleton (2):
  lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported
  sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD

Saul Wold (1):
  base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list

 meta/classes/base.bbclass                          |    2 +-
 meta/classes/sanity.bbclass                        |    6 +++
 meta/lib/oe/terminal.py                            |   27 ++++++++++++
 .../texinfo-4.13a/disable-native-tools.patch       |   43 ++++++++++++++++++++
 .../texinfo/texinfo-4.13a/gettext-macros.patch     |   34 +++++++++++++++
 .../texinfo/texinfo-4.13a/link-zip.patch           |   16 +++++++
 meta/recipes-extended/texinfo/texinfo_4.13a.bb     |   24 +++++-----
 7 files changed, 139 insertions(+), 13 deletions(-)
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/disable-native-tools.patch
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/gettext-macros.patch
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/link-zip.patch

-- 
1.7.6




^ permalink raw reply	[flat|nested] 6+ messages in thread

* [RC3 FIXES 1/4] base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list
  2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
@ 2011-09-18 23:03 ` Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 2/4] texinfo: several changes to build without zlib and ncurses headers on host Saul Wold
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Saul Wold @ 2011-09-18 23:03 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/classes/base.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 4ca04e2..918d859 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -385,7 +385,7 @@ python () {
 
 
         dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, 1)
-        if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate"):
+        if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate") and not pn.endswith("-crosssdk-intermediate") and not pn.endswith("-crosssdk") and not pn.endswith("-crosssdk-initial"):
             hosttools_whitelist = (bb.data.getVar('HOSTTOOLS_WHITELIST_%s' % dont_want_license, d, 1) or "").split()
             lgplv2_whitelist = (bb.data.getVar('LGPLv2_WHITELIST_%s' % dont_want_license, d, 1) or "").split()
             dont_want_whitelist = (bb.data.getVar('WHITELIST_%s' % dont_want_license, d, 1) or "").split()
-- 
1.7.6




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [RC3 FIXES 2/4] texinfo: several changes to build without zlib and ncurses headers on host
  2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 1/4] base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list Saul Wold
@ 2011-09-18 23:03 ` Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 3/4] lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported Saul Wold
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Saul Wold @ 2011-09-18 23:03 UTC (permalink / raw)
  To: openembedded-core

From: Joshua Lock <josh@linux.intel.com>

Texinfo very cleverly detects cross-compilation and builds host versions
of the texinfo binaries it requires to bootstrap the build, however this
was causing the host to require ncurses and zlib libraries and headers.

Instead, since we require texinfo to be installed on the host, remove this
feature from the texinfo configure.ac (disable-native-tools.patch).

Further, fix texinfo to link with newer binutils (link-zip.patch) and to
generate translations with newer gettext (gettext-macros.patch).

With this patch I am able to build texinfo on Fedora without ncurses-devel
and zlib-devel installed.

This fixes [YOCTO #1483]

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 .../texinfo-4.13a/disable-native-tools.patch       |   43 ++++++++++++++++++++
 .../texinfo/texinfo-4.13a/gettext-macros.patch     |   34 +++++++++++++++
 .../texinfo/texinfo-4.13a/link-zip.patch           |   16 +++++++
 meta/recipes-extended/texinfo/texinfo_4.13a.bb     |   24 +++++-----
 4 files changed, 105 insertions(+), 12 deletions(-)
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/disable-native-tools.patch
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/gettext-macros.patch
 create mode 100644 meta/recipes-extended/texinfo/texinfo-4.13a/link-zip.patch

diff --git a/meta/recipes-extended/texinfo/texinfo-4.13a/disable-native-tools.patch b/meta/recipes-extended/texinfo/texinfo-4.13a/disable-native-tools.patch
new file mode 100644
index 0000000..ab6f165
--- /dev/null
+++ b/meta/recipes-extended/texinfo/texinfo-4.13a/disable-native-tools.patch
@@ -0,0 +1,43 @@
+We already DEPEND on the native texinfo being present before building so
+there isn't any need to try and build the required native texinfo binaries
+before cross-compiling. This simplifies the recipe somewhat!
+
+Upstream-Status: Inappropriate oe specific
+
+Signed-off-by: Joshua Lock <josh@linux.intel.com>
+
+Index: texinfo-4.13/configure.ac
+===================================================================
+--- texinfo-4.13.orig/configure.ac
++++ texinfo-4.13/configure.ac
+@@ -100,29 +100,7 @@ AC_CANONICAL_BUILD
+ # $native_tools is also added to SUBDIRS in the main Makefile.am,
+ # so that make compiles the native tools first.
+ #
+-if test "$cross_compiling" = no; then
+-  native_tools=
+-else
+-  native_tools=tools
+-  test -d "$native_tools" || mkdir "$native_tools"
+-  confdir=`(cd "$srcdir";pwd)`
+-  # Make sure the secondary configure won't fail with
+-  # "error: source directory already configured".
+-  rm -f config.status
+-  AC_MSG_NOTICE([[Doing configure of native tools (${build}).]])
+-  cd "$native_tools" || exit 1
+-  # Run secondary configure in alternate environment or
+-  # it gets the wrong CC etc.
+-  # env -i gives this build host configure a clean environment;
+-  # consequently, we have to re-initialize $PATH.
+-  env -i CC="$BUILD_CC" AR="$BUILD_AR" RANLIB="$BUILD_RANLIB" \
+-      PATH="$PATH" \
+-      tools_only=1 \
+-    ${confdir}/configure --build=${build} --host=${build} \
+-                         --disable-rpath --disable-nls
+-  cd .. || exit 1
+-  AC_MSG_NOTICE([[Continuing with main configure (${host}).]])
+-fi
++native_tools=
+ AC_SUBST(native_tools)
+ AM_CONDITIONAL(TOOLS_ONLY, [[test "x$tools_only" = x1]])
+ 
diff --git a/meta/recipes-extended/texinfo/texinfo-4.13a/gettext-macros.patch b/meta/recipes-extended/texinfo/texinfo-4.13a/gettext-macros.patch
new file mode 100644
index 0000000..0a2e491
--- /dev/null
+++ b/meta/recipes-extended/texinfo/texinfo-4.13a/gettext-macros.patch
@@ -0,0 +1,34 @@
+Bump gettext macro numbers as required by newer gettext built by OE.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joshua Lock <josh@linux.intel.com>
+
+Index: texinfo-4.13/configure.ac
+===================================================================
+--- texinfo-4.13.orig/configure.ac
++++ texinfo-4.13/configure.ac
+@@ -193,7 +193,7 @@ AM_CONDITIONAL(INSTALL_WARNINGS,
+ 
+ # i18n support.  To update to a new version of gettext, run:
+ # gettextize -f -c
+-AM_GNU_GETTEXT_VERSION([0.17])
++AM_GNU_GETTEXT_VERSION([0.18])
+ AM_GNU_GETTEXT([external])
+ 
+ # The test suite.
+Index: texinfo-4.13/po/Makefile.in.in
+===================================================================
+--- texinfo-4.13.orig/po/Makefile.in.in
++++ texinfo-4.13/po/Makefile.in.in
+@@ -8,8 +8,8 @@
+ # Please note that the actual code of GNU gettext is covered by the GNU
+ # General Public License and is *not* in the public domain.
+ #
+-# Origin: gettext-0.17
+-GETTEXT_MACRO_VERSION = 0.17
++# Origin: gettext-0.18
++GETTEXT_MACRO_VERSION = 0.18
+ 
+ PACKAGE = @PACKAGE@
+ VERSION = @VERSION@
diff --git a/meta/recipes-extended/texinfo/texinfo-4.13a/link-zip.patch b/meta/recipes-extended/texinfo/texinfo-4.13a/link-zip.patch
new file mode 100644
index 0000000..629d329
--- /dev/null
+++ b/meta/recipes-extended/texinfo/texinfo-4.13a/link-zip.patch
@@ -0,0 +1,16 @@
+install-info uses symbols from zlib so must link against it.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joshua Lock <josh@linux.intel.com>
+
+Index: texinfo-4.13/install-info/Makefile.am
+===================================================================
+--- texinfo-4.13.orig/install-info/Makefile.am
++++ texinfo-4.13/install-info/Makefile.am
+@@ -28,4 +28,4 @@ AM_CPPFLAGS = 					\
+   -I$(top_srcdir)/gnulib/lib			\
+   -I$(top_builddir)/gnulib/lib			\
+   -DLOCALEDIR=\"$(localedir)\"
+-LDADD = ../lib/libtxi.a $(top_builddir)/gnulib/lib/libgnu.a $(LIBINTL)
++LDADD = ../lib/libtxi.a $(top_builddir)/gnulib/lib/libgnu.a $(LIBINTL) -lz
diff --git a/meta/recipes-extended/texinfo/texinfo_4.13a.bb b/meta/recipes-extended/texinfo/texinfo_4.13a.bb
index 450a623..9f1c04a 100644
--- a/meta/recipes-extended/texinfo/texinfo_4.13a.bb
+++ b/meta/recipes-extended/texinfo/texinfo_4.13a.bb
@@ -8,14 +8,18 @@ LICENSE = "GPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=adefda309052235aa5d1e99ce7557010"
 PR = "r1"
 
-DEPENDS = "zlib"
+DEPENDS = "zlib ncurses texinfo-native"
+DEPENDS_virtclass-native = "zlib-native ncurses-native"
 
 SRC_URI = "${GNU_MIRROR}/texinfo/texinfo-${PV}.tar.gz \
-           file://texinfo-4.12-zlib.patch; \
-           file://texinfo-4.13a-data_types.patch; \
-           file://texinfo-4.13a-mosdo-crash.patch; \
-           file://texinfo-4.13a-powerpc.patch; \
-           file://texinfo-4.13a-help-index-segfault.patch;"
+           file://texinfo-4.12-zlib.patch \
+           file://texinfo-4.13a-data_types.patch \
+           file://texinfo-4.13a-mosdo-crash.patch \
+           file://texinfo-4.13a-powerpc.patch \
+           file://texinfo-4.13a-help-index-segfault.patch \
+           file://disable-native-tools.patch \
+           file://link-zip.patch \
+           file://gettext-macros.patch"
 
 SRC_URI[md5sum] = "71ba711519209b5fb583fed2b3d86fcb"
 SRC_URI[sha256sum] = "1303e91a1c752b69a32666a407e9fbdd6e936def4b09bc7de30f416301530d68"
@@ -25,13 +29,9 @@ tex_texinfo = "texmf/tex/texinfo"
 
 inherit gettext autotools
 
-do_configure() {
-	oe_runconf
-}
-
-do_compile_prepend(){
+do_compile_prepend() {
 	if [ -d tools ];then
-		make -C tools/gnulib/lib
+		oe_runmake -C tools/gnulib/lib
 	fi
 }
 
-- 
1.7.6




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [RC3 FIXES 3/4] lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported
  2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 1/4] base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 2/4] texinfo: several changes to build without zlib and ncurses headers on host Saul Wold
@ 2011-09-18 23:03 ` Saul Wold
  2011-09-18 23:03 ` [RC3 FIXES 4/4] sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD Saul Wold
  2011-09-19  4:38 ` [RC3 FIXES 0/4] Some fixes for RC3 Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Saul Wold @ 2011-09-18 23:03 UTC (permalink / raw)
  To: openembedded-core

From: Paul Eggleton <paul.eggleton@linux.intel.com>

Konsole 2.x (from KDE 4.x) does not work as devshell - it does not pass
the environment or current working directory through among other issues,
so do a version check and disable it if it is found (skipping to the
next available terminal application.)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 meta/lib/oe/terminal.py |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 3965462..1455e8e 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -61,6 +61,15 @@ class Konsole(XTerminal):
     command = 'konsole -T "{title}" -e {command}'
     priority = 2
 
+    def __init__(self, command, title=None, env=None):
+        # Check version
+        vernum = check_konsole_version("konsole")
+        if vernum:
+            if vernum.split('.')[0] == "2":
+                logger.debug(1, 'Konsole from KDE 4.x will not work as devshell, skipping')
+                raise UnsupportedTerminal(self.name)
+        XTerminal.__init__(self, command, title, env)
+
 class XTerm(XTerminal):
     command = 'xterm -T "{title}" -e {command}'
     priority = 1
@@ -104,3 +113,21 @@ def spawn(name, command, title=None, env=None):
     output = pipe.communicate()[0]
     if pipe.returncode != 0:
         raise ExecutionError(pipe.command, pipe.returncode, output)
+
+def check_konsole_version(konsole):
+    import subprocess as sub
+    try:
+        p = sub.Popen(['sh', '-c', '%s --version' % konsole],stdout=sub.PIPE,stderr=sub.PIPE)
+        out, err = p.communicate()
+        ver_info = out.rstrip().split('\n')
+    except OSError as exc:
+        import errno
+        if exc.errno == errno.ENOENT:
+            return None
+        else:
+            raise
+    vernum = None
+    for ver in ver_info:
+        if ver.startswith('Konsole'):
+            vernum = ver.split(' ')[-1]
+    return vernum
-- 
1.7.6




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [RC3 FIXES 4/4] sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD
  2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
                   ` (2 preceding siblings ...)
  2011-09-18 23:03 ` [RC3 FIXES 3/4] lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported Saul Wold
@ 2011-09-18 23:03 ` Saul Wold
  2011-09-19  4:38 ` [RC3 FIXES 0/4] Some fixes for RC3 Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Saul Wold @ 2011-09-18 23:03 UTC (permalink / raw)
  To: openembedded-core

From: Paul Eggleton <paul.eggleton@linux.intel.com>

If the user has specified konsole in TERMCMD and it is version 2.x from
KDE 4.x, raise an error as this version will not work for patch
resolution purposes (it forks into the background and returns
immediately).

Addresses [YOCTO #1294]

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 meta/classes/sanity.bbclass |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 6ed43b2..4067408 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -337,6 +337,12 @@ def check_sanity(e):
         term = termcmd.split()[0]
         if not check_app_exists(term, e.data):
             messages = messages + "The console for use in patch error resolution is not available, please install %s or set TERMCMD and TERMCMDRUN (as documented in local.conf).\n" % term
+        elif "konsole" in term:
+            import oe.terminal
+            vernum = oe.terminal.check_konsole_version(term)
+            if vernum:
+                if vernum.split('.')[0] == '2':
+                    messages = messages +  'Konsole from KDE 4.x will not work as TERMCMD/TERMCMDRUN, please specify a different terminal or set PATCHRESOLVE = "noop" to disable interactive patch resolution.\n'
 
     if os.path.basename(os.readlink('/bin/sh')) == 'dash':
         messages = messages + "Using dash as /bin/sh causes various subtle build problems, please use bash instead (e.g. 'dpkg-reconfigure dash' on an Ubuntu system.\n"
-- 
1.7.6




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [RC3 FIXES 0/4] Some fixes for RC3
  2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
                   ` (3 preceding siblings ...)
  2011-09-18 23:03 ` [RC3 FIXES 4/4] sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD Saul Wold
@ 2011-09-19  4:38 ` Richard Purdie
  4 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2011-09-19  4:38 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Sun, 2011-09-18 at 16:03 -0700, Saul Wold wrote:
> This has a host contamination fix for texinfo and a non-gplv3 build
> fix, some konsole fixes from Paul.
> 
> These should go in before RC3.
> 
> Thanks
> 	Sau!
> 
> 
> The following changes since commit 31cb3974eeaf2a808e8da3864e70986578c58cb9:
> 
>   sanity: disable mirrors for connectivity check (2011-09-16 18:07:19 +0100)
> 
> are available in the git repository at:
>   git://git.yoctoproject.org/poky-contrib sgw/oe-fix
>   http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=sgw/oe-fix
> 
> Joshua Lock (1):
>   texinfo: several changes to build without zlib and ncurses headers on
>     host
> 
> Paul Eggleton (2):
>   lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported
>   sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD
> 
> Saul Wold (1):
>   base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list

Merged to master, thanks.

Richard




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-09-19  4:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-18 23:03 [RC3 FIXES 0/4] Some fixes for RC3 Saul Wold
2011-09-18 23:03 ` [RC3 FIXES 1/4] base.bbclass: add crosssdk items to INCOMPATIBLE_LICENSE exclude list Saul Wold
2011-09-18 23:03 ` [RC3 FIXES 2/4] texinfo: several changes to build without zlib and ncurses headers on host Saul Wold
2011-09-18 23:03 ` [RC3 FIXES 3/4] lib/oe/terminal.py: declare konsole from KDE 4.x as unsupported Saul Wold
2011-09-18 23:03 ` [RC3 FIXES 4/4] sanity.bbclass: add a sanity check for KDE 4.x konsole in TERMCMD Saul Wold
2011-09-19  4:38 ` [RC3 FIXES 0/4] Some fixes for RC3 Richard Purdie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox