Patchwork [1/1] openjade-native: do not create shared libraries

login
register
mail settings
Submitter Joe Slater
Date Aug. 6, 2013, 7:08 p.m.
Message ID <1375816107-30963-1-git-send-email-jslater@windriver.com>
Download mbox | patch
Permalink /patch/55211/
State New
Headers show

Comments

Joe Slater - Aug. 6, 2013, 7:08 p.m.
CQID: 429576

openjade is the only one that uses the shared libraries
and sometimes it cannot find them!

[Yocto #2972]

Signed-off-by: Joe Slater <jslater@windriver.com>
---
 .../openjade/openjade-native_1.3.2.bb              |   29 ++++++++++++++-----
 1 files changed, 21 insertions(+), 8 deletions(-)
Saul Wold - Aug. 9, 2013, 6:32 p.m.
On 08/06/2013 12:08 PM, Joe Slater wrote:
> CQID: 429576
>
> openjade is the only one that uses the shared libraries
> and sometimes it cannot find them!
>
> [Yocto #2972]
>
> Signed-off-by: Joe Slater <jslater@windriver.com>
> ---
>   .../openjade/openjade-native_1.3.2.bb              |   29 ++++++++++++++-----
>   1 files changed, 21 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> index 8af0b52..ffdb3fc 100644
> --- a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> +++ b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
> @@ -7,7 +7,7 @@ SECTION = "base"
>   LICENSE = "BSD"
>   LIC_FILES_CHKSUM = "file://COPYING;md5=641ff1e4511f0a87044ad42f87cb1045"
>
> -PR = "r5"
> +PR = "r6"
>
No need to add PR Bump here anymore.

>   DEPENDS = "opensp-native sgml-common-native"
>   RDEPENDS_${PN} = "sgml-common-native"
> @@ -24,8 +24,13 @@ SRC_URI[sha256sum] = "1d2d7996cc94f9b87d0c51cf0e028070ac177c4123ecbfd7ac1cb8d0b7
>
>   inherit autotools native
>
> +# Per bugzilla.yoctoproject.org/show_bug.cgi?id=2972 we do
> +# not create shared libraries.  Note that openjade still links
> +# to shared libraries from other packages.
> +#
>   EXTRA_OECONF = "--enable-spincludedir=${STAGING_INCDIR}/OpenSP \
> -                --enable-splibdir=${STAGING_LIBDIR}"
> +                --enable-splibdir=${STAGING_LIBDIR} \
> +                --disable-shared"
>
>   # We need to set datadir explicitly, but adding it to EXTRA_OECONF
>   # results in it being specified twice when configure is run.
> @@ -55,13 +60,21 @@ do_compile_prepend () {
>   do_install() {
>   	# Refer to http://www.linuxfromscratch.org/blfs/view/stable/pst/openjade.html
>   	# for details.
> -	install -d ${D}${bindir}	
> -	install -m 0755 ${S}/jade/.libs/openjade ${D}${bindir}/openjade
> -	ln -sf openjade ${D}${bindir}/jade
> +	install -d ${D}${bindir}
>
> -	oe_libinstall -a -so -C style libostyle ${D}${libdir}
> -	oe_libinstall -a -so -C spgrove libospgrove ${D}${libdir}
> -	oe_libinstall -a -so -C grove libogrove ${D}${libdir}
> +	# install shared library version if it exists
> +	#
> +	if [ -f ${S}/jade/.libs/openjade ]
> +	then
> +	 install -m 0755 ${S}/jade/.libs/openjade ${D}${bindir}/openjade
> +	 oe_libinstall -a -so -C style libostyle ${D}${libdir}
> +	 oe_libinstall -a -so -C spgrove libospgrove ${D}${libdir}
> +	 oe_libinstall -a -so -C grove libogrove ${D}${libdir}
> +	else
> +	 install -m 0755 ${S}/jade/openjade ${D}${bindir}/openjade
> +	fi
> +
> +	ln -sf openjade ${D}${bindir}/jade
>
Convention is to use tabs for indentation in oe-core Shell code and 
4-spaces for python code.

Thanks

     Sau!

>   	install -d ${D}${datadir}/sgml/openjade-${PV}
>   	install -m 644 dsssl/catalog ${D}${datadir}/sgml/openjade-${PV}
>

Patch

diff --git a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
index 8af0b52..ffdb3fc 100644
--- a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
+++ b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
@@ -7,7 +7,7 @@  SECTION = "base"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://COPYING;md5=641ff1e4511f0a87044ad42f87cb1045"
 
-PR = "r5"
+PR = "r6"
 
 DEPENDS = "opensp-native sgml-common-native"
 RDEPENDS_${PN} = "sgml-common-native"
@@ -24,8 +24,13 @@  SRC_URI[sha256sum] = "1d2d7996cc94f9b87d0c51cf0e028070ac177c4123ecbfd7ac1cb8d0b7
 
 inherit autotools native
 
+# Per bugzilla.yoctoproject.org/show_bug.cgi?id=2972 we do
+# not create shared libraries.  Note that openjade still links
+# to shared libraries from other packages.
+#
 EXTRA_OECONF = "--enable-spincludedir=${STAGING_INCDIR}/OpenSP \
-                --enable-splibdir=${STAGING_LIBDIR}"
+                --enable-splibdir=${STAGING_LIBDIR} \
+                --disable-shared"
 
 # We need to set datadir explicitly, but adding it to EXTRA_OECONF
 # results in it being specified twice when configure is run.
@@ -55,13 +60,21 @@  do_compile_prepend () {
 do_install() {
 	# Refer to http://www.linuxfromscratch.org/blfs/view/stable/pst/openjade.html
 	# for details.
-	install -d ${D}${bindir}	
-	install -m 0755 ${S}/jade/.libs/openjade ${D}${bindir}/openjade
-	ln -sf openjade ${D}${bindir}/jade
+	install -d ${D}${bindir}
 
-	oe_libinstall -a -so -C style libostyle ${D}${libdir}
-	oe_libinstall -a -so -C spgrove libospgrove ${D}${libdir}
-	oe_libinstall -a -so -C grove libogrove ${D}${libdir}
+	# install shared library version if it exists
+	#
+	if [ -f ${S}/jade/.libs/openjade ]
+	then
+	 install -m 0755 ${S}/jade/.libs/openjade ${D}${bindir}/openjade
+	 oe_libinstall -a -so -C style libostyle ${D}${libdir}
+	 oe_libinstall -a -so -C spgrove libospgrove ${D}${libdir}
+	 oe_libinstall -a -so -C grove libogrove ${D}${libdir}
+	else
+	 install -m 0755 ${S}/jade/openjade ${D}${bindir}/openjade
+	fi
+
+	ln -sf openjade ${D}${bindir}/jade
 
 	install -d ${D}${datadir}/sgml/openjade-${PV}
 	install -m 644 dsssl/catalog ${D}${datadir}/sgml/openjade-${PV}