denzil pull request 3
cover denzil pull request 3
Hello,
This is the third pull request for the oe-core denzil branch, based on a set of commits I've been testing from my sgarman/denzil-next branch.
These commits have undergone the following testing on the autobuilder:
nightly:
nightly-multilib:
http://autobuilder.yoctoproject.org:8010/builders/nightly-multilib/builds/114
nightly-non-gpl3:
http://autobuilder.yoctoproject.org:8010/builders/nightly-non-gpl3/builds/115
nightly-tiny:
http://autobuilder.yoctoproject.org:8010/builders/nightly-tiny/builds/97
nightly-meta-intel:
http://autobuilder.yoctoproject.org:8010/builders/nightly-meta-intel/builds/106
I'll note these tests were done with the poky-based tree.
Scott
The following changes since commit 7c767d3723e0b55d3bcd3864a9cdbce6d11d5b35:
freetype: upgrade to 2.4.9 (2012-06-12 13:29:31 -0700)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib sgarman/denzil-next-testing
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=sgarman/denzil-next-pull3
Gary Thomas (1):
webkit-gtk: Apply work around for all PowerPC targets
Laurentiu Palcu (1):
sanity.bbclass: warn the user if BBPATH contains wrong entries
Nitin A Kamble (1):
eglibc: package mtrace separately
Richard Purdie (1):
openjade-native: Ensure we reautoconf the package
Saul Wold (2):
quilt: added ac_cv_path_BASH to CACHED_CONFIGUREVARS
eglibc: added ac_cv_path_ to CACHED_CONFIGUREVARS
meta/classes/sanity.bbclass | 13 ++- meta/recipes-core/eglibc/eglibc-package.inc | 7 +- meta/recipes-core/eglibc/eglibc.inc | 2 + meta/recipes-core/eglibc/eglibc_2.13.bb | 2 +- meta/recipes-core/eglibc/eglibc_2.15.bb | 2 +- meta/recipes-core/tasks/task-core-tools-debug.bb | 4 + .../openjade/openjade-1.3.2/reautoconf.patch | 83 ++++++++++++++++++++ .../openjade/openjade-native_1.3.2.bb | 5 ++ meta/recipes-devtools/quilt/quilt_0.51.bb | 5 +- meta/recipes-sato/webkit/webkit-gtk_svn.bb | 15 ++-- 10 files changed, 127 insertions(+), 11 deletions(-) create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/reautoconf.patch
Signature · 1 line
1.7.9.5
PATCH 1/6 openjade-native: Ensure we reautoconf the package
From: Richard Purdie <[email protected]>
Currently since configure.in in is in a subdirectory, we don't reautoconf the recipe. We really need to do this, to update things like the libtool script used and fix various issues such as those that could creep in if a reautoconf is triggered for some reason. Since this source only calls AM_INIT_AUTOMAKE to gain the PACKAGE and VERSION definitions and that macro now errors if Makefile.am doesn't exist, we need to add these definitions manually.
These changes avoid failures like:
----
| ... | DssslApp.cxx:117:36: error: 'PACKAGE' was not declared in this scope | DssslApp.cxx:118:36: error: 'VERSION' was not declared in this scope | make[2]: *** [DssslApp.lo] Error 1
----
--- .../openjade/openjade-1.3.2/reautoconf.patch | 83 ++++++++++++++++++++ .../openjade/openjade-native_1.3.2.bb | 5 ++ 2 files changed, 88 insertions(+) create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/reautoconf.patch
meta/recipes-devtools/openjade/openjade-1.3.2/reautoconf.patch new file +83 -0
@@ -0,0 +1,83 @@ +Ensure we reautoconf the packag + +Currently since configure.in in is in a subdirectory, we don't reautoconf the +recipe. We really need to do this, to update things like the libtool script used +and fix various issues such as those that could creep in if a reautoconf is +triggered for some reason. Since this source only calls AM_INIT_AUTOMAKE to +gain the PACKAGE and VERSION definitions and that macro now errors if Makefile.am +doesn't exist, we need to add these definitions manually. + +These changes avoid failures like: +---- +| ... +| DssslApp.cxx:117:36: error: 'PACKAGE' was not declared in this scope +| DssslApp.cxx:118:36: error: 'VERSION' was not declared in this scope +| make[2]: *** [DssslApp.lo] Error 1 ---- + +Upstream-Status: Pending + +RP 2012/6/12 + +Index: openjade-1.3.2/acinclude.m4 +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ openjade-1.3.2/acinclude.m4 2012-06-12 12:48:54.871365344 +0000 +@@ -0,0 +1,39 @@ ++dnl Configure-time switch with default ++dnl ++dnl Each switch defines an --enable-FOO and --disable-FOO option in ++dnl the resulting configure script. ++dnl ++dnl Usage: ++dnl smr_SWITCH(name, description, default, pos-def, neg-def) ++dnl ++dnl where: ++dnl ++dnl name name of switch; generates --enable-name & --disable-name ++dnl options ++dnl description help string is set to this prefixed by "enable" or ++dnl "disable", whichever is the non-default value ++dnl default either "on" or "off"; specifies default if neither ++dnl --enable-name nor --disable-name is specified ++dnl pos-def a symbol to AC_DEFINE if switch is on (optional) ++dnl neg-def a symbol to AC_DEFINE if switch is off (optional) ++dnl ++AC_DEFUN(smr_SWITCH, [ ++ AC_MSG_CHECKING(whether to enable $2) ++ AC_ARG_ENABLE( ++ $1, ++ ifelse($3, on, ++ [ --disable-[$1] disable [$2]], ++ [ --enable-[$1] enable [$2]]), ++ [ if test "$enableval" = yes; then ++ AC_MSG_RESULT(yes) ++ ifelse($4, , , AC_DEFINE($4)) ++ else ++ AC_MSG_RESULT(no) ++ ifelse($5, , , AC_DEFINE($5)) ++ fi ], ++ ifelse($3, on, ++ [ AC_MSG_RESULT(yes) ++ ifelse($4, , , AC_DEFINE($4)) ], ++ [ AC_MSG_RESULT(no) ++ ifelse($5, , , AC_DEFINE($5))]))]) ++ +Index: openjade-1.3.2/config/configure.in +=================================================================== +--- openjade-1.3.2.orig/config/configure.in 2012-06-12 12:47:20.735365445 +0000 ++++ openjade-1.3.2/config/configure.in 2012-06-12 12:48:17.507364080 +0000 +@@ -12,9 +12,12 @@ + dnl Credits: this autoconf script was largely "inspired" <g> by the + dnl autoconf script around SP made by Henry Thompson. + dnl +-AC_INIT(dsssl) ++AC_INIT([openjade], [1.3.2]) + AC_CONFIG_AUX_DIR(config) +-AM_INIT_AUTOMAKE( openjade, 1.3.2) ++AC_SUBST([PACKAGE], [openjade]) ++AC_SUBST([VERSION], [1.3.2]) ++AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") ++AC_DEFINE_UNQUOTED(VERSION, "$VERSION") + TOP=`pwd` + AC_SUBST(TOP) + dnl
meta/recipes-devtools/openjade/openjade-native_1.3.2.bb +5 -0
@@ -14,6 +14,7 @@ RDEPENDS_${PN} = "sgml-common-native" SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \ file://makefile.patch \ + file://reautoconf.patch \ file://user-declared-default-constructor.patch" SRC_URI[md5sum] = "7df692e3186109cc00db6825b777201e"
@@ -38,6 +39,10 @@ CFLAGS =+ "-I${S}/include" SSTATEPOSTINSTFUNCS += "openjade_sstate_postinst" SYSROOT_PREPROCESS_FUNCS += "openjade_sysroot_preprocess" +# configure.in needs to be reloacted to trigger reautoconf +do_configure_prepend () { + cp ${S}/config/configure.in ${S}/ +} # We need to do this else the source interdependencies aren't generated and # build failures can result (e.g. zero size style/Makefile.dep file)
Signature · 1 line
1.7.9.5
PATCH 2/6 webkit-gtk: Apply work around for all PowerPC targets
In reply to Scott GarmanFrom: Gary Thomas <[email protected]>
The current patch for bug #1570 only applies to qemuppc but should be applicable for all PowerPC targets. Also update the patch so that only one language backend, either ICU or PANGO, is built.
Also remove some old customizations (dependencies on darwin) as these should now be handled in a layer specific .bbappend file.
--- meta/recipes-sato/webkit/webkit-gtk_svn.bb | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)
meta/recipes-sato/webkit/webkit-gtk_svn.bb +9 -6
@@ -7,10 +7,13 @@ LIC_FILES_CHKSUM = "file://Source/WebCore/rendering/RenderApplet.h;endline=22;md file://Source/WebKit/gtk/webkit/webkit.h;endline=21;md5=b4fbe9f4a944f1d071dba1d2c76b3351 \ file://Source/JavaScriptCore/parser/Parser.h;endline=23;md5=2f3cff0ad0a9c486da5a376928973a90" -DEPENDS = "zlib enchant gnome-keyring libsoup-2.4 curl icu libxml2 cairo libxslt libxt libidn gnutls gtk+ gstreamer gst-plugins-base flex-native gperf-native perl-native-runtime sqlite3" +# Choice of language backends - icu has issues on Big Endian machines so use pango +ICU_LIB = "icu" +ICU_LIB_powerpc = "pango" + +DEPENDS = "zlib enchant gnome-keyring libsoup-2.4 curl libxml2 cairo libxslt libxt libidn gnutls \ + gtk+ gstreamer gst-plugins-base flex-native gperf-native perl-native-runtime sqlite3 ${ICU_LIB}" DEPENDS += " ${@base_contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl', '', d)}" -DEPENDS_darwin8 = "curl icu libxml2 cairo libxslt libidn gnutls gtk+ gstreamer flex-native gperf-native perl-native-runtime sqlite3" -DEPENDS_append_qemuppc += "pango" SRCREV_FORMAT = "source"
@@ -48,10 +51,10 @@ EXTRA_OECONF = "\ UNICODE_CFLAGS=-D_REENTRANT \ " -#default unicode backend icu breaks in cross-compile when target and host owns different endian type -EXTRA_OECONF_append_qemuppc += "--with-unicode-backend=glib" +#default unicode backend icu breaks in cross-compile when target and host are different endian type +EXTRA_OECONF_append_powerpc += "--with-unicode-backend=glib" -CPPFLAGS_append_qemuppc += "-I${STAGING_INCDIR}/pango-1.0 \ +CPPFLAGS_append_powerpc += "-I${STAGING_INCDIR}/pango-1.0 \ -I${STAGING_LIBDIR}/glib-2.0/include \ -I${STAGING_INCDIR}/glib-2.0"
Signature · 1 line
1.7.9.5
PATCH 3/6 sanity.bbclass: warn the user if BBPATH contains wrong entries
In reply to Scott GarmanFrom: Laurentiu Palcu <[email protected]>
If BBPATH references the working directory, the user is warned and asked to fix the problem.
[Yocto #1465]
Reworked commit to fix merge conflicts with denzil branch.
--- meta/classes/sanity.bbclass | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)
meta/classes/sanity.bbclass +12 -1
@@ -310,7 +310,18 @@ def check_sanity(sanity_data): if "." in data.getVar('PATH', sanity_data, True).split(":"): messages = messages + "PATH contains '.' which will break the build, please remove this" - if data.getVar('TARGET_ARCH', sanity_data, True) == "arm": + bbpaths = sanity_data.getVar('BBPATH', True).split(":") + if "." in bbpaths or "" in bbpaths: + # TODO: change the following message to fatal when all BBPATH issues + # are fixed + bb.warn("BBPATH references the current directory, either through " \ + "an empty entry, or a '.'.\n\t This is unsafe and means your "\ + "layer configuration is adding empty elements to BBPATH.\n\t "\ + "Please check your layer.conf files and other BBPATH " \ + "settings to remove the current working directory " \ + "references."); + + if sanity_data.getVar('TARGET_ARCH', True) == "arm": # This path is no longer user-readable in modern (very recent) Linux try: if os.path.exists("/proc/sys/vm/mmap_min_addr"):
Signature · 1 line
1.7.9.5
Re: [PATCH 3/6] sanity.bbclass: warn the user if BBPATH contains wrong entries
Quoted 31 lines · Scott Garman
From: Laurentiu Palcu <[email protected]>
If BBPATH references the working directory, the user is warned and asked to fix the problem.
[Yocto #1465]
Signed-off-by Laurentiu Palcu <[email protected]>Signed-off-by Richard Purdie <[email protected]>Reworked commit to fix merge conflicts with denzil branch.
Signed-off-by Scott Garman <[email protected]>--- meta/classes/sanity.bbclass | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)meta/classes/sanity.bbclass +5
-1@@ -310,7 +310,18 @@ def check_sanity(sanity_data): if "." in data.getVar('PATH', sanity_data, True).split(":"): messages = messages + "PATH contains '.' which will break the build, please remove this" - if data.getVar('TARGET_ARCH', sanity_data, True) == "arm": + bbpaths = sanity_data.getVar('BBPATH', True).split(":") + if "." in bbpaths or "" in bbpaths: + # TODO: change the following message to fatal when all BBPATH issues + # are fixed + bb.warn("BBPATH references the current directory, either through " \
meta/classes/sanity.bbclass def check_sanity(sanity_data): · line 327
Quoted 10 lines
meta/classes/sanity.bbclass +7
-0+ "an empty entry, or a '.'.\n\t This is unsafe and means your "\ + "layer configuration is adding empty elements to BBPATH.\n\t "\ + "Please check your layer.conf files and other BBPATH " \ + "settings to remove the current working directory " \ + "references."); + + if sanity_data.getVar('TARGET_ARCH', True) == "arm": # This path is no longer user-readable in modern (very recent) Linux try: if os.path.exists("/proc/sys/vm/mmap_min_addr"):
I think for this one, I'd like to merge the bitbake fixes back to denzil but leave this one out. Its going to warn pretty much everywhere and we don't have good ways of fixing it yet.
The actual manifestation of the bug is fixed by the bitbake changes.
Cheers,
Richard
PATCH 4/6 eglibc: package mtrace separately
In reply to Scott GarmanFrom: Nitin A Kamble <[email protected]>
add libc-mtrace as dependency for task-core-tools-debug
now eglibc-mtrace gets included in an sdk image and not in a non-sdk image.
This does not affect builds with uclibc.
This fixes bug: [YOCTO# 2374]
--- meta/recipes-core/eglibc/eglibc-package.inc | 7 ++++++- meta/recipes-core/eglibc/eglibc_2.13.bb | 2 +- meta/recipes-core/tasks/task-core-tools-debug.bb | 4 ++++ 3 files changed, 11 insertions(+), 2 deletions(-)
meta/recipes-core/eglibc/eglibc-package.inc +6 -1
@@ -20,11 +20,12 @@ USE_LDCONFIG ?= "1" PKGSUFFIX = "" PKGSUFFIX_virtclass-nativesdk = "-nativesdk" -PACKAGES = "${PN}-dbg ${PN} catchsegv${PKGSUFFIX} sln${PKGSUFFIX} nscd${PKGSUFFIX} ldd${PKGSUFFIX} ${PN}-utils eglibc-extra-nss${PKGSUFFIX} eglibc-thread-db${PKGSUFFIX} ${PN}-pic ${PN}-dev ${PN}-staticdev ${PN}-doc libcidn${PKGSUFFIX} libmemusage${PKGSUFFIX} libsegfault${PKGSUFFIX} ${PN}-pcprofile libsotruss${PKGSUFFIX}" +PACKAGES = "${PN}-dbg ${PN} catchsegv${PKGSUFFIX} sln${PKGSUFFIX} nscd${PKGSUFFIX} ldd${PKGSUFFIX} ${PN}-mtrace ${PN}-utils eglibc-extra-nss${PKGSUFFIX} eglibc-thread-db${PKGSUFFIX} ${PN}-pic ${PN}-dev ${PN}-staticdev ${PN}-doc libcidn${PKGSUFFIX} libmemusage${PKGSUFFIX} libsegfault${PKGSUFFIX} ${PN}-pcprofile libsotruss${PKGSUFFIX}" # The ld.so in this eglibc supports the GNU_HASH RPROVIDES_${PN} = "glibc${PKGSUFFIX} rtld(GNU_HASH)" RPROVIDES_${PN}-utils = "glibc${PKGSUFFIX}-utils" +RPROVIDES_${PN}-mtrace = "glibc${PKGSUFFIX}-mtrace libc-mtrace" RPROVIDES_${PN}-pic = "glibc${PKGSUFFIX}-pic" RPROVIDES_${PN}-dev = "glibc${PKGSUFFIX}-dev" RPROVIDES_${PN}-staticdev = "glibc${PKGSUFFIX}-staticdev"
@@ -48,11 +49,13 @@ FILES_${PN}-dev_append += "${bindir}/rpcgen ${libdir}/*_nonshared.a \ ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal" FILES_${PN}-staticdev_append += "${libdir}/*.a ${base_libdir}/*.a" FILES_nscd${PKGSUFFIX} = "${sbindir}/nscd*" +FILES_${PN}-mtrace = "${bindir}/mtrace" FILES_${PN}-utils = "${bindir}/* ${sbindir}/*" FILES_${PN}-dbg += "${libexecdir}/*/.debug ${libdir}/audit/.debug" FILES_catchsegv${PKGSUFFIX} = "${bindir}/catchsegv" RDEPENDS_catchsegv${PKGSUFFIX} = "libsegfault" RDEPENDS_${PN}-utils += "bash" +RDEPENDS_${PN}-mtrace += "perl" FILES_${PN}-pcprofile = "${base_libdir}/libpcprofile.so" FILES_eglibc-thread-db${PKGSUFFIX} = "${base_libdir}/libthread_db.so.* ${base_libdir}/libthread_db-*.so" RPROVIDES_${PN}-dev += "libc-dev"
@@ -68,6 +71,8 @@ SUMMARY_ldd = "print shared library dependencies" DESCRIPTION_ldd = "/usr/bin/ldd prints shared library dependencies for each program or shared library specified on the command line." SUMMARY_${PN}-utils = "Miscellaneous utilities provided by eglibc" DESCRIPTION_${PN}-utils = "Miscellaneous utilities including getconf, iconf, locale, gencat, tzselect, zic, rpcinfo, ..." +SUMMARY_${PN}-mtrace = "mtrace utility provided by eglibc" +DESCRIPTION_${PN}-mtrace = "mtrace utility provided by eglibc" DESCRIPTION_libsotruss = "Library to support sotruss which traces calls through PLTs" inherit libc-common multilib_header
meta/recipes-core/eglibc/eglibc_2.13.bb +1 -1
@@ -3,7 +3,7 @@ require eglibc.inc SRCREV = "15508" DEPENDS += "gperf-native" -PR = "r26" +PR = "r27" PR_append = "+svnr${SRCPV}" EGLIBC_BRANCH="eglibc-2_13"
meta/recipes-core/tasks/task-core-tools-debug.bb +4 -0
@@ -17,10 +17,14 @@ PACKAGE_ARCH = "${MACHINE_ARCH}" ALLOW_EMPTY = "1" +MTRACE = "" +MTRACE_libc-glibc = "libc-mtrace" + RDEPENDS_${PN} = "\ gdb \ gdbserver \ tcf-agent \ rsync \ strace \ + ${MTRACE} \ "
Signature · 1 line
1.7.9.5
PATCH 5/6 quilt: added ac_cv_path_BASH to CACHED_CONFIGUREVARS
In reply to Scott GarmanFrom: Saul Wold <[email protected]>
On Fedora 17, bash has moved to /usr/bin/bash and the configure process finds it on the host machine there, this ensures that it is set correctly for the target.
[YOCTO #2363]
Reworked commit to fix merge conflicts with denzil branch.
--- meta/recipes-devtools/quilt/quilt_0.51.bb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
meta/recipes-devtools/quilt/quilt_0.51.bb +4 -1
@@ -4,7 +4,10 @@ RDEPENDS_${PN} += "patch diffstat bzip2 util-linux" SRC_URI += "file://aclocal.patch \ file://gnu_patch_test_fix_target.patch \ " -PR = "r4" +PR = "r5" + + +CACHED_CONFIGUREVARS += "ac_cv_path_BASH=${base_bindir}/bash" PERLPATH = "${bindir}/env perl" PERLPATH_virtclass-nativesdk = "/usr/bin/env perl"
Signature · 1 line
1.7.9.5
PATCH 6/6 eglibc: added ac_cv_path_ to CACHED_CONFIGUREVARS
In reply to Scott GarmanFrom: Saul Wold <[email protected]>
On Fedora 17, bash has moved to /usr/bin/bash and the configure process finds it on the host machine there, this ensures that it is set correctly for the target.
[YOCTO #2363]
Reworked commit to fix merge conflicts with denzil branch.
--- meta/recipes-core/eglibc/eglibc.inc | 2 ++ meta/recipes-core/eglibc/eglibc_2.13.bb | 2 +- meta/recipes-core/eglibc/eglibc_2.15.bb | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-)
meta/recipes-core/eglibc/eglibc.inc +2 -0
@@ -32,6 +32,8 @@ require eglibc-options.inc LEAD_SONAME = "libc.so" +CACHED_CONFIGUREVARS += "ac_cv_path_KSH=${base_bindir}/bash \ + ac_cv_path_BASH_SHELL=${base_bindir}/bash" GLIBC_EXTRA_OECONF ?= "" GLIBC_EXTRA_OECONF_virtclass-nativesdk = "" INHIBIT_DEFAULT_DEPS = "1"
meta/recipes-core/eglibc/eglibc_2.13.bb +1 -1
@@ -3,7 +3,7 @@ require eglibc.inc SRCREV = "15508" DEPENDS += "gperf-native" -PR = "r27" +PR = "r28" PR_append = "+svnr${SRCPV}" EGLIBC_BRANCH="eglibc-2_13"
meta/recipes-core/eglibc/eglibc_2.15.bb +1 -1
@@ -3,7 +3,7 @@ require eglibc.inc SRCREV = "17386" DEPENDS += "gperf-native" -PR = "r6" +PR = "r7" PR_append = "+svnr${SRCPV}" EGLIBC_BRANCH="eglibc-2_15"
Signature · 1 line
1.7.9.5
Quoted 9 lines · Scott Garman
Hello,
This is the third pull request for the oe-core denzil branch, based on a set of commits I've been testing from my sgarman/denzil-next branch.
These commits have undergone the following testing on the autobuilder:
nightly:
Forgot the url here:
http://autobuilder.yoctoproject.org:8010/builders/nightly/builds/518
Scott
Signature · 3 lines
Scott Garman Embedded Linux Engineer - Yocto Project Intel Open Source Technology Center
Richard Purdie
AppliedQuoted 9 lines · Scott Garman
Gary Thomas (1):
webkit-gtk: Apply work around for all PowerPC targetsLaurentiu Palcu (1):
sanity.bbclass: warn the user if BBPATH contains wrong entriesNitin A Kamble (1):
eglibc: package mtrace separately
Quoted 6 lines
Richard Purdie (1):
openjade-native: Ensure we reautoconf the packageSaul Wold (2):
quilt: addedac_cv_path_BASHtoCACHED_CONFIGUREVARS
eglibc: addedac_cv_path_toCACHED_CONFIGUREVARS
Merged to master apart from the sanity.bbclass change for the reasons in a separate email.
Cheers,
Richard