Patchwork [2/2] openssl: Move libcrypto to base_libdir

login
register
mail settings
Submitter Andrei Gherzan
Date Feb. 9, 2012, 5:44 p.m.
Message ID <1328809480-13730-1-git-send-email-andrei@gherzan.ro>
Download mbox | patch
Permalink /patch/21047/
State New
Headers show

Comments

Andrei Gherzan - Feb. 9, 2012, 5:44 p.m.
This fix is for dhclient. It needs libcrypto at runtime and if
libcrypto is in libdir, it's path can be inaccessible on systems
where /usr is on nfs for example or dhclient is needed before
/usr is mounted.

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
---
 meta/recipes-connectivity/openssl/openssl.inc |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
Phil Blundell - Feb. 9, 2012, 5:46 p.m.
On Thu, 2012-02-09 at 19:44 +0200, Andrei Gherzan wrote:
> +	# Moving libcrypto to /usr
> +	mv ${D}${libdir}/libcrypto* ${D}${base_libdir}/

That looks like it will fail if ${libdir} and ${base_libdir} are the
same.

p.
Saul Wold - Feb. 9, 2012, 5:55 p.m.
On 02/09/2012 09:44 AM, Andrei Gherzan wrote:
> This fix is for dhclient. It needs libcrypto at runtime and if
> libcrypto is in libdir, it's path can be inaccessible on systems
> where /usr is on nfs for example or dhclient is needed before
> /usr is mounted.
>
> Signed-off-by: Andrei Gherzan<andrei@gherzan.ro>
> ---
>   meta/recipes-connectivity/openssl/openssl.inc |    7 ++++++-
>   1 files changed, 6 insertions(+), 1 deletions(-)
>
> diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
> index 771f146..45a6422 100644
> --- a/meta/recipes-connectivity/openssl/openssl.inc
> +++ b/meta/recipes-connectivity/openssl/openssl.inc
> @@ -36,10 +36,11 @@ export AS = "${CC} -c"
>   inherit pkgconfig siteinfo
>
>   PACKAGES =+ "libcrypto libssl ${PN}-misc"
> -FILES_libcrypto = "${libdir}/libcrypto.so.*"
> +FILES_libcrypto = "${base_libdir}/libcrypto.so.*"
libcrypto${SOLIBS}


>   FILES_libssl = "${libdir}/libssl.so.*"
>   FILES_${PN} =+ " ${libdir}/ssl/*"
>   FILES_${PN}-misc = "${libdir}/ssl/misc ${libdir}/ssl/openssl.cnf"
> +FILES_${PN}-dev += "${base_libdir}/libcrypto.so"
>
libcrypto${SOLIBSDEV}

These would be better to use than


>   do_configure_prepend_darwin () {
>   	sed -i -e '/version-script=openssl\.ld/d' Configure
> @@ -132,6 +133,10 @@ do_install () {
>   	oe_libinstall -so libcrypto ${D}${libdir}
>   	oe_libinstall -so libssl ${D}${libdir}
>
> +	# Moving libcrypto to /usr
> +	mv ${D}${libdir}/libcrypto* ${D}${base_libdir}/
> +	sed -i s/usr// ${D}/${libdir}/pkgconfig/libcrypto.pc
> +
>   	install -d ${D}${includedir}
>   	cp --dereference -R include/openssl ${D}${includedir}
>   	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
Koen Kooi - Feb. 9, 2012, 6:15 p.m.
Op 9 feb. 2012, om 18:44 heeft Andrei Gherzan het volgende geschreven:

> This fix is for dhclient. It needs libcrypto at runtime and if
> libcrypto is in libdir, it's path can be inaccessible on systems
> where /usr is on nfs for example or dhclient is needed before
> /usr is mounted.
> 
> Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>

MIssing PR bump
Andrei Gherzan - Feb. 9, 2012, 6:22 p.m.
On Thu, Feb 9, 2012 at 20:15, Koen Kooi <koen@dominion.thruhere.net> wrote:

>
> Op 9 feb. 2012, om 18:44 heeft Andrei Gherzan het volgende geschreven:
>
> > This fix is for dhclient. It needs libcrypto at runtime and if
> > libcrypto is in libdir, it's path can be inaccessible on systems
> > where /usr is on nfs for example or dhclient is needed before
> > /usr is mounted.
> >
> > Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
>
> MIssing PR bump
>
>
This and the actual /lib directory creation.
Re-sending patch with PR-bump, Saul's mentions and mkdir on /lib.

@g

Patch

diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
index 771f146..45a6422 100644
--- a/meta/recipes-connectivity/openssl/openssl.inc
+++ b/meta/recipes-connectivity/openssl/openssl.inc
@@ -36,10 +36,11 @@  export AS = "${CC} -c"
 inherit pkgconfig siteinfo
 
 PACKAGES =+ "libcrypto libssl ${PN}-misc"
-FILES_libcrypto = "${libdir}/libcrypto.so.*"
+FILES_libcrypto = "${base_libdir}/libcrypto.so.*"
 FILES_libssl = "${libdir}/libssl.so.*"
 FILES_${PN} =+ " ${libdir}/ssl/*"
 FILES_${PN}-misc = "${libdir}/ssl/misc ${libdir}/ssl/openssl.cnf"
+FILES_${PN}-dev += "${base_libdir}/libcrypto.so"
 
 do_configure_prepend_darwin () {
 	sed -i -e '/version-script=openssl\.ld/d' Configure
@@ -132,6 +133,10 @@  do_install () {
 	oe_libinstall -so libcrypto ${D}${libdir}
 	oe_libinstall -so libssl ${D}${libdir}
 
+	# Moving libcrypto to /usr
+	mv ${D}${libdir}/libcrypto* ${D}${base_libdir}/
+	sed -i s/usr// ${D}/${libdir}/pkgconfig/libcrypto.pc
+
 	install -d ${D}${includedir}
 	cp --dereference -R include/openssl ${D}${includedir}
 	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl