Skip to contentSkip to conversation

cleanup buildpaths for gnutls, curl, glib-2.0

PATCH In review [email protected] 2 participants 6 messages Sep 30, 2015 – Oct 5, 2015

lore
Share & tools
lore
#0 lore raw

v2 cover cleanup buildpaths for gnutls, curl, glib-2.0

From: Wenzong Fan <[email protected]>

V2 changes:

* limit sed logics to do_install_append_class-target()
* update commit logs for all three patches

The following changes since commit 4bc3f0994e68b3302a0523a3156dd0dca0cac7a0:

bitbake: toaster: move clones into subdirectory (2015-09-29 14:11:39 +0100)

are available in the git repository at:

git://git.pokylinux.org/poky-contrib wenzong/buildpaths
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=wenzong/buildpaths

Wenzong Fan (3):
glib-2.0: cleanup buildpaths from pkgconfig files
curl: cleanup buildpaths from curl-config
gnutls: cleanup buildpaths from gnutls.pc

 meta/recipes-core/glib-2.0/glib.inc      | 6 ++++++
 meta/recipes-support/curl/curl_7.44.0.bb | 5 +++++
 meta/recipes-support/gnutls/gnutls.inc   | 5 +++++
 3 files changed, 16 insertions(+)
Signature · 1 line
1.9.1
#1 lore raw

PATCH v2 1/3 glib-2.0: cleanup buildpaths from pkgconfig files

From: Wenzong Fan <[email protected]>

For multilib build, PKG_CONFIG_SYSROOT_DIR will be injected in values that are returned by 'pkg-config --libs xxx', such as for zlib:

  dev-shell# pkg-config --libs zlib
  -L/path/to/tmp/sysroots/qemux86-64/usr/lib64 -lz

The values used by configure to generate various files from templates.

For glib-2.0, the buildpaths should be cleaned up from:

* gio-2.0.pc:
generated from gio-2.0.pc.in that includes @ZLIB_LIBS@

* gobject-2.0.pc:
generated from gobject-2.0.pc.in that includes @LIBFFI_LIBS@

---
 meta/recipes-core/glib-2.0/glib.inc | 6 ++++++
 1 file changed, 6 insertions(+)
meta/recipes-core/glib-2.0/glib.inc +6 -0
index 072f790..fb42eac 100644
@@ -75,6 +75,12 @@ do_install_append () {
 	fi
 }
 
+do_install_append_class-target() {
+	# cleanup buildpaths from gio-2.0.pc, gobject-2.0.pc
+	sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${libdir}/pkgconfig/gio-2.0.pc
+	sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${libdir}/pkgconfig/gobject-2.0.pc
+}
+
 RDEPENDS_${PN}-ptest += "\
             gnome-desktop-testing \
             tzdata \
Signature · 1 line
1.9.1
#2 lore raw

Re: [PATCH 1/3 v2] glib-2.0: cleanup buildpaths from pkgconfig files

Quoted 3 lines · On 30 September 2015 at 09:08, <[email protected]> wrote:

For multilib build, PKG_CONFIG_SYSROOT_DIR will be injected in values that are returned by 'pkg-config --libs xxx', such as for zlib:

So why isn't this fixed in pkg-config?

Ross

#3 lore raw

Re: [PATCH 1/3 v2] glib-2.0: cleanup buildpaths from pkgconfig files

Quoted 6 lines · Ross

For multilib build, PKG_CONFIG_SYSROOT_DIR will be injected in values

Quoted 2 lines

that are returned by 'pkg-config --libs xxx', such as for zlib:

So why isn't this fixed in pkg-config?

I've just replicated this with a minimal test (build zlib, run pkg-config --libs zlib in a devshell) for "normal" and multilib configurations and this is clearly a bug in pkgconfig. Please fix pkgconfig instead of playing whack-a-mole with where the bug causes problems.

Ross

#4 lore raw

PATCH v2 2/3 curl: cleanup buildpaths from curl-config

In reply to [email protected]

From: Wenzong Fan <[email protected]>

curl-config will be installed to target, cleanup buildpaths in it:

* remove ${STAGING_DIR_HOST} from CC, CFLAGS ...

---
 meta/recipes-support/curl/curl_7.44.0.bb | 5 +++++
 1 file changed, 5 insertions(+)
meta/recipes-support/curl/curl_7.44.0.bb +5 -0
index b293303..f6d350e 100644
@@ -45,6 +45,11 @@ do_install_append() {
 	oe_multilib_header curl/curlbuild.h
 }
 
+do_install_append_class-target() {
+	# cleanup buildpaths from curl-config
+	sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/curl-config
+}
+
 PACKAGES =+ "lib${BPN}"
 
 FILES_lib${BPN} = "${libdir}/lib*.so.*"
Signature · 1 line
1.9.1
#5 lore raw

PATCH v2 3/3 gnutls: cleanup buildpaths from gnutls.pc

In reply to [email protected]

From: Wenzong Fan <[email protected]>

For multilib build, PKG_CONFIG_SYSROOT_DIR will be injected in values that are returned by 'pkg-config --libs xxx', such as for zlib:

  dev-shell# pkg-config --libs zlib
  -L/path/to/tmp/sysroots/qemux86-64/usr/lib64 -lz

The values used by configure to generate various files from templates.

For gnutls, the buildpaths should be cleaned up from:

* gnutls.pc:
generated from lib/gnutls.pc.in that includes @LTLIBZ@

---
 meta/recipes-support/gnutls/gnutls.inc | 5 +++++
 1 file changed, 5 insertions(+)
meta/recipes-support/gnutls/gnutls.inc +5 -0
index e9b138a..3c8d4c9 100644
@@ -38,6 +38,11 @@ PACKAGECONFIG ??= "zlib"
 PACKAGECONFIG[tpm] = "--with-tpm, --without-tpm, trousers"
 PACKAGECONFIG[zlib] = "--with-zlib, --without-zlib, zlib"
 
+do_install_append_class-target() {
+	# cleanup buildpaths from gnutls.pc
+	sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${libdir}/pkgconfig/gnutls.pc
+}
+
 PACKAGES =+ "${PN}-openssl ${PN}-xx"
 
 FILES_${PN}-dev += "${bindir}/gnutls-cli-debug"
Signature · 1 line
1.9.1