* [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