Skip to contentSkip to conversation

NSPR with tests and patch for RPATH

PATCH Applied Andrei Gherzan 2 participants 4 messages Feb 13, 2012 – Feb 24, 2012

lore
Share & tools
lore
#0 lore raw

v2 cover NSPR with tests and patch for RPATH

1. Create a separate commit for removing RPATH from binaries
2. Add QA warning in patch
3. Minor tweaks in bbfile
4. Install tests in ${libdir}/nspr/tests

The following changes since commit 7d0fc3b5ffc2806d921567dbdad3de056069896a:

nspr: Integrate version 4.8.9 (2012-02-13 22:49:19 +0200)

are available in the git repository at:
[email protected]:agherzan/yocto-dev devel

Andrei Gherzan (2):
nspr: Compile nspr with tests
nspr: Add patch in order to remove rpath from binaries

 .../nspr/files/remove-rpath-from-tests.patch       |   26 ++++
 meta/recipes-support/nspr/nspr_4.8.9.bb            |  136 +++++++++++++++++++-
 2 files changed, 158 insertions(+), 4 deletions(-)
 create mode 100644 meta/recipes-support/nspr/files/remove-rpath-from-tests.patch
Signature · 1 line
1.7.5.4
#1 lore raw

PATCH v2 1/2 nspr: Compile nspr with tests

1. Compile package tests suite
2. Add tests to -dev rpm as it needs dev libraries

---
 meta/recipes-support/nspr/nspr_4.8.9.bb |  135 ++++++++++++++++++++++++++++++-
 1 files changed, 131 insertions(+), 4 deletions(-)
meta/recipes-support/nspr/nspr_4.8.9.bb +131 -4
index da324fc..74bfe6b 100644
@@ -5,17 +5,135 @@ LIC_FILES_CHKSUM = "file://configure.in;beginline=3;endline=40;md5=99d4d7d68bbc4
                     file://Makefile.in;beginline=4;endline=38;md5=c2b512182a334e1bfa1edc4d1c84a298 "
 SECTION = "libs/network"
 
-PR = "r0"
+PR = "r1"
 
-SRC_URI = "ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/nspr-${PV}.tar.gz"
+SRC_URI = "ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/nspr-${PV}.tar.gz \
+          "
 
-SRC_URI += "file://nspr.pc.in "
+SRC_URI += "file://nspr.pc.in"
 
 SRC_URI[md5sum] = "60770d45dc08c0f181b22cdfce5be3e8"
 SRC_URI[sha256sum] = "ff43c7c819e72f03bb908e7652c5d5f59a5d31ee86c333e692650207103d1cce"
 
 S = "${WORKDIR}/nspr-${PV}/mozilla/nsprpub"
 
+TESTS = "runtests.pl \
+    runtests.sh \
+    accept \
+    acceptread \
+    acceptreademu \
+    affinity \
+    alarm \
+    anonfm \
+    atomic \
+    attach \
+    bigfile \
+    cleanup \
+    cltsrv  \
+    concur \
+    cvar \
+    cvar2 \
+    dlltest \
+    dtoa \
+    errcodes \
+    exit \
+    fdcach \
+    fileio \
+    foreign \
+    formattm \
+    fsync \
+    gethost \
+    getproto \
+    i2l \
+    initclk \
+    inrval \
+    instrumt \
+    intrio \
+    intrupt \
+    io_timeout \
+    ioconthr \
+    join \
+    joinkk \
+    joinku \
+    joinuk \
+    joinuu \
+    layer \
+    lazyinit \
+    libfilename \
+    lltest \
+    lock \
+    lockfile \
+    logfile \
+    logger \
+    many_cv \
+    multiwait \
+    nameshm1 \
+    nblayer \
+    nonblock \
+    ntioto \
+    ntoh \
+    op_2long \
+    op_excl \
+    op_filnf \
+    op_filok \
+    op_nofil \
+    parent \
+    parsetm \
+    peek \
+    perf \
+    pipeping \
+    pipeping2 \
+    pipeself \
+    poll_nm \
+    poll_to \
+    pollable \
+    prftest \
+    primblok \
+    provider \
+    prpollml \
+    ranfile \
+    randseed \
+    reinit \
+    rwlocktest \
+    sel_spd \
+    selct_er \
+    selct_nm \
+    selct_to \
+    selintr \
+    sema \
+    semaerr \
+    semaping \
+    sendzlf \
+    server_test \
+    servr_kk \
+    servr_uk \
+    servr_ku \
+    servr_uu \
+    short_thread \
+    sigpipe \
+    socket \
+    sockopt \
+    sockping \
+    sprintf \
+    stack \
+    stdio \
+    str2addr \
+    strod \
+    switch \
+    system \
+    testbit \
+    testfile \
+    threads \
+    timemac \
+    timetest \
+    tpd \
+    udpsrv \
+    vercheck \
+    version \
+    writev \
+    xnotify \
+    zerolen"
+
 inherit autotools
 
 do_configure() {
@@ -26,12 +144,21 @@ do_compile_prepend() {
 	oe_runmake CROSS_COMPILE=1 CFLAGS="-DXP_UNIX" LDFLAGS="" CC=gcc -C config export
 }
 
+do_compile_append() {
+	oe_runmake -C pr/tests
+}
+
 do_install_append() {
     install -D ${WORKDIR}/nspr.pc.in ${D}${libdir}/pkgconfig/nspr.pc
     sed -i s:OEPREFIX:${prefix}:g ${D}${libdir}/pkgconfig/nspr.pc
     sed -i s:OELIBDIR:${libdir}:g ${D}${libdir}/pkgconfig/nspr.pc
     sed -i s:OEINCDIR:${includedir}:g ${D}${libdir}/pkgconfig/nspr.pc
     sed -i s:OEEXECPREFIX:${exec_prefix}:g ${D}${libdir}/pkgconfig/nspr.pc
+    cd ${S}/pr/tests
+    mkdir -p ${D}${libdir}/nspr/tests
+    install -m 0755 ${TESTS} ${D}${libdir}/nspr/tests
 }
 
-
+FILES_${PN} = ${bindir}/*
+FILES_${PN}-dev += "${libdir}/nspr/tests/*"
+FILES_${PN}-dbg += "${libdir}/nspr/tests/.debug/*"
Signature · 1 line
1.7.5.4
#2 lore raw

PATCH v2 2/2 nspr: Add patch in order to remove rpath from binaries

In reply to Andrei Gherzan

This patch was created in order to avoid QA warnings.

---
 .../nspr/files/remove-rpath-from-tests.patch       |   26 ++++++++++++++++++++
 meta/recipes-support/nspr/nspr_4.8.9.bb            |    3 +-
 2 files changed, 28 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-support/nspr/files/remove-rpath-from-tests.patch
meta/recipes-support/nspr/files/remove-rpath-from-tests.patch new file +26 -0
new file mode 100644
index 0000000..a7e7853
@@ -0,0 +1,26 @@
+Author: Andrei Gherzan <[email protected]>
+Date:   Thu Feb 9 00:03:38 2012 +0200
+
+Avoid QA warnings by removing hardcoded rpath from binaries.
+
+[...]
+WARNING: QA Issue: package nspr contains bad RPATH {builddir}/tmp/work/armv5te-poky-linux-gnueabi/nspr-4.8.9-r1/nspr-4.8.9/mozilla/nsprpub/pr/tests/../../dist/lib
+in file {builddir}/tmp/work/armv5te-poky-linux-gnueabi/nspr-4.8.9-r1/packages-split/nspr/usr/lib/nspr/tests/multiwait
+[...]
+
+Signed-off-by: Andrei Gherzan <[email protected]>
+Upstream-Status: Pending
+
+Index: nspr-4.8.9/mozilla/nsprpub/pr/tests/Makefile.in
+===================================================================
+--- nsprpub.orig/pr/tests/Makefile.in	2012-02-11 00:01:10.476220505 +0200
++++ nsprpub/pr/tests/Makefile.in	2012-02-10 23:57:40.000000000 +0200
+@@ -379,7 +379,7 @@
+ endif
+ 
+ ifeq (,$(filter-out Linux GNU GNU_%,$(OS_ARCH)))
+-    LDOPTS += -Xlinker -rpath $(ABSOLUTE_LIB_DIR)
++    LDOPTS += -Xlinker
+     ifeq ($(USE_PTHREADS),1)
+         EXTRA_LIBS = -lpthread
+     endif
meta/recipes-support/nspr/nspr_4.8.9.bb +2 -1
index 74bfe6b..0607c32 100644
@@ -5,9 +5,10 @@ LIC_FILES_CHKSUM = "file://configure.in;beginline=3;endline=40;md5=99d4d7d68bbc4
                     file://Makefile.in;beginline=4;endline=38;md5=c2b512182a334e1bfa1edc4d1c84a298 "
 SECTION = "libs/network"
 
-PR = "r1"
+PR = "r2"
 
 SRC_URI = "ftp://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${PV}/src/nspr-${PV}.tar.gz \
+           file://remove-rpath-from-tests.patch \
           "
 
 SRC_URI += "file://nspr.pc.in"
Signature · 1 line
1.7.5.4
Applied
#3 lore raw
In reply to Andrei Gherzan
Quoted 12 lines · Andrei Gherzan

1. Create a separate commit for removing RPATH from binaries
2. Add QA warning in patch
3. Minor tweaks in bbfile
4. Install tests in ${libdir}/nspr/tests

The following changes since commit 7d0fc3b5ffc2806d921567dbdad3de056069896a:

   nspr: Integrate version 4.8.9 (2012-02-13 22:49:19 +0200)

are available in the git repository at:
[email protected]:agherzan/yocto-dev devel

Quoted 9 lines

Andrei Gherzan (2):
nspr: Compile nspr with tests
nspr: Add patch in order to remove rpath from binaries

  .../nspr/files/remove-rpath-from-tests.patch       |   26 ++++
  meta/recipes-support/nspr/nspr_4.8.9.bb            |  136 +++++++++++++++++++-
  2 files changed, 158 insertions(+), 4 deletions(-)

create mode 100644 meta/recipes-support/nspr/files/remove-rpath-from-tests.patch

Merged into OE-core

Thanks
Sau!