Skip to contentSkip to conversation

Misc package fixes

PATCH Applied Mark Hatle 4 participants 11 messages Jun 6, 2012 – Jun 11, 2012

lore
Share & tools
lore

Mark Hatle

author
#0 lore raw

cover Misc package fixes

A small collection of misc package fixes...

The following changes since commit f8a054aca9962ebfd4c74fc1d34cd684de6b3568:

perl: Allow perl to cross build and native build in a directory named "t" (2012-06-05 23:02:20 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib mhatle/misc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=mhatle/misc

Jesse Zhang (1):
beecrypt: disable java

Joe Slater (2):
shared-mime-info: fix build race condition
gettext: install libgettextlib.a before removing it

Mark Hatle (2):
shadow-native: Disable nscd support
insane.bbclass: Make ldd exec_prefix error reporting easier to read

Song.Li (1):
groff: Fix build on Fedora 17

 meta/classes/insane.bbclass                        |    9 +++++-
 .../gettext/gettext-0.18.1.1/parallel.patch        |   34 ++++++++++++++++++++
 meta/recipes-core/gettext/gettext_0.18.1.1.bb      |    3 +-
 meta/recipes-extended/groff/groff_1.20.1.bb        |   24 +++++++++++++-
 .../shadow/shadow-native_4.1.4.3.bb                |    5 ++-
 meta/recipes-support/beecrypt/beecrypt_4.2.1.bb    |    4 +-
 .../shared-mime-info/install-data-hook.patch       |   21 ++++++++++++
 .../shared-mime-info/shared-mime-info_0.91.bb      |    5 ++-
 8 files changed, 96 insertions(+), 9 deletions(-)
 create mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/parallel.patch
 create mode 100644 meta/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch
Signature · 1 line
1.7.3.4
author
#1 lore raw

PATCH 1/6 beecrypt: disable java

From: Jesse Zhang <[email protected]>

If java is installed on host, beecrypt will attempt to use it.

---
 meta/recipes-support/beecrypt/beecrypt_4.2.1.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-support/beecrypt/beecrypt_4.2.1.bb +2 -2
index 2913b46..2b2b348 100644
@@ -17,7 +17,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9894370afd5dfe7d02b8d14319e729a1 \
 
 DEPENDS = "icu"
 
-PR = "r1"
+PR = "r2"
 
 inherit autotools multilib_header
 acpaths=""
@@ -26,7 +26,7 @@ do_install_append() {
 	oe_multilib_header beecrypt/gnu.h
 }
 
-EXTRA_OECONF="--without-python --enable-shared --enable-static --disable-openmp"
+EXTRA_OECONF="--without-python --enable-shared --enable-static --disable-openmp --with-java=no"
 
 FILES_${PN} = "${sysconfdir} ${libdir}/*.so.* ${libdir}/${BPN}/*.so.*"
 FILES_${PN}-dev += "${libdir}/${BPN}/*.so ${libdir}/${BPN}/*.la"
Signature · 1 line
1.7.3.4
author
#2 lore raw

PATCH 2/6 groff: Fix build on Fedora 17

In reply to Mark Hatle

From: Song.Li <[email protected]>

Generally distros keep perl at /usr/bin/perl But Fedora 17 also has /bin/perl,
this causes groff_1.20.1 build to put perl interpreter path as /bin/perl
But we set perl location for target as /usr/bin/perl

This mismatch of perl path causes failure of rootfs image creation like this:

| error: Failed dependencies:
| bin/perl is needed by groff-1.20.1-r1.ppc603e

Sync up with the do_install_append_virtclass-native chunk.

---
 meta/recipes-extended/groff/groff_1.20.1.bb |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)
meta/recipes-extended/groff/groff_1.20.1.bb +23 -1
index 6cb72bf..ef22548 100644
@@ -4,7 +4,7 @@ formatting commands and produces formatted output."
 SECTION = "base"
 HOMEPAGE = "ftp://ftp.gnu.org/gnu/groff/"
 LICENSE = "GPLv2"
-PR = "r1"
+PR = "r2"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
@@ -18,6 +18,10 @@ DEPENDS_virtclass-native = ""
 
 inherit autotools
 
+PERLPATH = "${bindir}/perl"
+PERLPATH_virtclass-native = "/usr/bin/env perl"
+PERLPATH_virtclass-nativesdk = "/usr/bin/env perl"
+
 EXTRA_OECONF = "--without-x"
 PARALLEL_MAKE = ""
 
@@ -34,7 +38,25 @@ do_configure_prepend() {
 	fi
 }
 
+do_install_append() {
+	# Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
+	# for target as /usr/bin/perl, so fix it to /usr/bin/perl.
+	for i in afmtodit mmroff; do
+		if [ -f ${D}${bindir}/$i ]; then
+			sed -i -e '1s,#!.*perl,#! ${PERLPATH},' ${D}${bindir}/$i
+		fi
+	done
+}
+
 do_install_append_virtclass-native() {
+	# Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
+	# for target as /usr/bin/perl, so fix it to /usr/bin/perl.
+	for i in afmtodit mmroff; do
+		if [ -f ${D}${bindir}/$i ]; then
+			sed -i -e '1s,#!.*perl,#! ${PERLPATH},' ${D}${bindir}/$i
+		fi
+	done
+
 	create_cmdline_wrapper ${D}/${bindir}/groff \
 		-F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \
 		-M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac
Signature · 1 line
1.7.3.4
author
#3 lore raw

PATCH 3/6 shadow-native: Disable nscd support

In reply to Mark Hatle

Disabling nscd support prevents error messages when shadow utilities attempt to trigger nscd to reload. This does nothing unless the user is root, and even if they are root, it's the wrong action to perform when creating a target fs.

---
 .../shadow/shadow-native_4.1.4.3.bb                |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
meta/recipes-extended/shadow/shadow-native_4.1.4.3.bb +3 -2
index fece9c6..1e071f1 100644
@@ -7,7 +7,7 @@ LICENSE = "BSD | Artistic-1.0"
 LIC_FILES_CHKSUM = "file://COPYING;md5=08c553a87d4e51bbed50b20e0adcaede \
                     file://src/passwd.c;firstline=8;endline=30;md5=2899a045e90511d0e043b85a7db7e2fe"
 
-PR = "r5"
+PR = "r6"
 
 SRC_URI = "http://pkg-shadow.alioth.debian.org/releases/${BPN}-${PV}.tar.bz2 \
            file://shadow.automake-1.11.patch \
@@ -27,7 +27,8 @@ inherit autotools gettext native
 EXTRA_OECONF += "--without-audit \
                  --without-libcrack \
                  --without-libpam \
-                 --without-selinux"
+                 --without-selinux \
+                 --without-nscd"
 
 do_install_append() {
 	# Enable CREATE_HOME by default.
Signature · 1 line
1.7.3.4
author
#4 lore raw

PATCH 4/6 shared-mime-info: fix build race condition

In reply to Mark Hatle

From: Joe Slater <[email protected]>

The definition of install-data-hook in Makefile.am leads to multiple, overlapping, executions of the install-binPROGRAMS target. We modify the definition to avoid that.

---
 .../shared-mime-info/install-data-hook.patch       |   21 ++++++++++++++++++++
 .../shared-mime-info/shared-mime-info_0.91.bb      |    5 ++-
 2 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch
meta/recipes-support/shared-mime-info/shared-mime-info/install-data-hook.patch new file +21 -0
new file mode 100644
index 0000000..4c075f2
@@ -0,0 +1,21 @@
+fix shared-mime-info build race condition
+
+The definition of install-data-hook in Makefile.am leads
+to multiple, overlapping, executions of install-binPROGRAMS
+target.  We modify the definition to avoid that.
+
+Signed-off-by: Joe Slater <[email protected]>
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -44,7 +44,9 @@ $(pkgconfig_DATA): config.status
+ @INTLTOOL_XML_RULE@
+ @INTLTOOL_DESKTOP_RULE@
+ 
+-install-data-hook: install-binPROGRAMS
++# do NOT make this dependent on anything!
++#
++install-data-hook:
+ if ENABLE_UPDATE_MIMEDB
+ 	$(DESTDIR)"$(bindir)/update-mime-database" -V "$(DESTDIR)$(datadir)/mime"
+ endif
meta/recipes-support/shared-mime-info/shared-mime-info_0.91.bb +3 -2
index 7ae6e10..910cb7f 100644
@@ -1,7 +1,8 @@
 require shared-mime-info.inc
-PR = "r3"
+PR = "r4"
 
 SRC_URI[md5sum] = "982a211560ba4c47dc791ccff34e8fbc"
 SRC_URI[sha256sum] = "98cfebe1d809afb24934e634373821e2a1dfa86fc6462cab230589a1c80988bd"
 
-SRC_URI =+ "file://parallelmake.patch"
+SRC_URI =+ "file://parallelmake.patch \
+	    file://install-data-hook.patch"
Signature · 1 line
1.7.3.4
author
#6 lore raw

PATCH 5/6 gettext: install libgettextlib.a before removing it

In reply to Mark Hatle

From: Joe Slater <[email protected]>

In a multiple job build, Makefile can simultaneously be installing and removing libgettextlib.a. We serialize the operations.

---
 .../gettext/gettext-0.18.1.1/parallel.patch        |   34 ++++++++++++++++++++
 meta/recipes-core/gettext/gettext_0.18.1.1.bb      |    3 +-
 2 files changed, 36 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-core/gettext/gettext-0.18.1.1/parallel.patch
meta/recipes-core/gettext/gettext-0.18.1.1/parallel.patch new file +34 -0
new file mode 100644
index 0000000..4ca44cc
@@ -0,0 +1,34 @@
+instal libgettextlib.a before removing it
+
+In a multiple job build, Makefile can simultaneously
+be installing and removing libgettextlib.a.  We serialize
+the operations.
+
+Signed-off-by: Joe Slater <[email protected]>
+
+--- a/gettext-tools/gnulib-lib/Makefile.am
++++ b/gettext-tools/gnulib-lib/Makefile.am
+@@ -57,6 +57,10 @@ endif
+ # Rules generated and collected by gnulib-tool.
+ include Makefile.gnulib
+ 
++# defined in Makefile.gnulib but missing this dependency
++#
++install-exec-clean: install-libLTLIBRARIES
++
+ # Which classes to export from the shared library.
+ MOOPPFLAGS += --dllexport=styled_ostream
+ 
+--- a/gettext-tools/src/Makefile.am
++++ b/gettext-tools/src/Makefile.am
+@@ -229,8 +229,8 @@ libgettextsrc_la_LDFLAGS += -Wl,--export
+ endif
+ 
+ # No need to install libgettextsrc.a, except on AIX.
+-install-exec-local: install-libLTLIBRARIES install-exec-clean
+-install-exec-clean:
++install-exec-local: install-exec-clean
++install-exec-clean: install-libLTLIBRARIES
+ 	case "@host_os@" in \
+ 	  aix*) ;; \
+ 	  *) $(RM) $(DESTDIR)$(libdir)/libgettextsrc.a ;; \
meta/recipes-core/gettext/gettext_0.18.1.1.bb +2 -1
index 5685bbe..253ea43 100644
@@ -5,13 +5,14 @@ SECTION = "libs"
 LICENSE = "GPLv3+ & LGPL-2.1+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-PR = "r12"
+PR = "r13"
 DEPENDS = "libxml2-native gettext-native virtual/libiconv ncurses expat"
 DEPENDS_virtclass-native = "libxml2-native gettext-minimal-native"
 PROVIDES = "virtual/libintl virtual/gettext"
 PROVIDES_virtclass-native = "virtual/gettext-native"
 CONFLICTS_${PN} = "proxy-libintl"
 SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
+	   file://parallel.patch \
           "
 
 SRC_URI_append_libc-uclibc = " file://wchar-uclibc.patch \
Signature · 1 line
1.7.3.4
author
#7 lore raw

PATCH 6/6 insane.bbclass: Make ldd exec_prefix error reporting easier to read

In reply to Mark Hatle

Remove the long obtuse sysroot path from the ldd output, making the error message significantly easier to read and understand.

---
 meta/classes/insane.bbclass |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
meta/classes/insane.bbclass +8 -1
index 4d139e8..e845250 100644
@@ -251,7 +251,14 @@ def package_qa_check_unsafe_references_in_binaries(path, name, d, elf, messages)
 			return False
 
 		if sysroot_path_usr in ldd_output:
-			error_msg = pn + ": %s links to something under exec_prefix" % path
+			ldd_output = ldd_output.replace(sysroot_path, "")
+
+			pkgdest = d.getVar('PKGDEST', True)
+			packages = d.getVar('PACKAGES', True)
+
+			short_path = path.replace('%s/%s' % (pkgdest, packages), "", 1)
+
+			error_msg = pn + ": %s links to something under exec_prefix (%s)" % (short_path, exec_prefix)
 			package_qa_handle_error("unsafe-references-in-binaries", error_msg, d)
 			error_msg = "ldd reports: %s" % ldd_output
 			package_qa_handle_error("unsafe-references-in-binaries", error_msg, d)
Signature · 1 line
1.7.3.4
author
#8 lore raw

Re: [PATCH 6/6] insane.bbclass: Make ldd exec_prefix error reporting easier to read

Sorry please ignore this one, I sent it by accident.. The patch wasn't finished.

--Mark

Quoted 28 lines · Mark Hatle

Remove the long obtuse sysroot path from the ldd output, making the error message significantly easier to read and understand.

---
  meta/classes/insane.bbclass |    9 ++++++++-
  1 files changed, 8 insertions(+), 1 deletions(-)
meta/classes/insane.bbclass +8 -1
index 4d139e8..e845250 100644
@@ -251,7 +251,14 @@ def package_qa_check_unsafe_references_in_binaries(path, name, d, elf, messages)
  			return False
 
  		if sysroot_path_usr in ldd_output:
-			error_msg = pn + ": %s links to something under exec_prefix" % path
+			ldd_output = ldd_output.replace(sysroot_path, "")
+
+			pkgdest = d.getVar('PKGDEST', True)
+			packages = d.getVar('PACKAGES', True)
+
+			short_path = path.replace('%s/%s' % (pkgdest, packages), "", 1)
+
+			error_msg = pn + ": %s links to something under exec_prefix (%s)" % (short_path, exec_prefix)
  			package_qa_handle_error("unsafe-references-in-binaries", error_msg, d)
  			error_msg = "ldd reports: %s" % ldd_output
  			package_qa_handle_error("unsafe-references-in-binaries", error_msg, d)
#9 lore raw
In reply to Mark Hatle
Quoted 10 lines · Mark Hatle

A small collection of misc package fixes...

The following changes since commit f8a054aca9962ebfd4c74fc1d34cd684de6b3568:

perl: Allow perl to cross build and native build in a directory named "t" (2012-06-05 23:02:20 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib mhatle/misc
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=mhatle/misc

Quoted 6 lines

Jesse Zhang (1):
beecrypt: disable java

Joe Slater (2):
shared-mime-info: fix build race condition
gettext: install libgettextlib.a before removing it

These had patches missing Upstream-Status fields. I've fixed it up this time but please pass the message back to include them in future.

Cheers,

Richard

#10 lore raw
Quoted 18 lines · Richard Purdie
Quoted 10 lines · Mark Hatle

A small collection of misc package fixes...

The following changes since commit f8a054aca9962ebfd4c74fc1d34cd684de6b3568:

  perl: Allow perl to cross build and native build in a directory named "t" (2012-06-05 23:02:20 +0100)

are available in the git repository at:
  git://git.pokylinux.org/poky-contrib mhatle/misc
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=mhatle/misc

Quoted 6 lines

Jesse Zhang (1):
  beecrypt: disable java

Joe Slater (2):
  shared-mime-info: fix build race condition
  gettext: install libgettextlib.a before removing it

Quoted 7 lines

These had patches missing Upstream-Status fields. I've fixed it up this time but please pass the message back to include them in future.

Cheers,

Richard

Merged into OE-Core

Thanks

-b

Quoted 5 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Signature · 3 lines
Elizabeth Flanagan
Yocto Project
Build and Release