diff mbox series

libunwind: Enable building static archive on musl

Message ID 20181206000749.28731-1-raj.khem@gmail.com
State Accepted
Commit 37ddab09f0ed9b532fb9ac57f622c8609121aa65
Headers show
Series libunwind: Enable building static archive on musl | expand

Commit Message

Khem Raj Dec. 6, 2018, 12:07 a.m. UTC
This ensures that we have .a for libunwind on musl targets, this is used
for stack unwinding infra e.g. in rust

Help compiling rust compiler and standard library from meta-rust

Signed-off-by: Khem Raj <raj.khem@gmail.com>

---
 meta/recipes-support/libunwind/libunwind_1.2.1.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.19.2

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Comments

Ross Burton Dec. 6, 2018, 11:49 a.m. UTC | #1
Presumably static archives are disabled by the no-static-libs include.
So is this really musl-specific?

Ross
On Thu, 6 Dec 2018 at 00:08, Khem Raj <raj.khem@gmail.com> wrote:
>

> This ensures that we have .a for libunwind on musl targets, this is used

> for stack unwinding infra e.g. in rust

>

> Help compiling rust compiler and standard library from meta-rust

>

> Signed-off-by: Khem Raj <raj.khem@gmail.com>

> ---

>  meta/recipes-support/libunwind/libunwind_1.2.1.bb | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

>

> diff --git a/meta/recipes-support/libunwind/libunwind_1.2.1.bb b/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> index e7fb2b2190..c9239b695e 100644

> --- a/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> +++ b/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> @@ -14,7 +14,7 @@ SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV

>             "

>

>  SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"

> -EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests "

> +EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests --enable-static"

>

>  # http://errors.yoctoproject.org/Errors/Details/20487/

>  ARM_INSTRUCTION_SET_armv4 = "arm"

> --

> 2.19.2

>

> --

> _______________________________________________

> Openembedded-core mailing list

> Openembedded-core@lists.openembedded.org

> http://lists.openembedded.org/mailman/listinfo/openembedded-core

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Khem Raj Dec. 6, 2018, 3:45 p.m. UTC | #2
Yes, they are. But for musl libunwind static lib is required for rust
runtime to build all the time static or not

On Thu, Dec 6, 2018 at 3:49 AM Burton, Ross <ross.burton@intel.com> wrote:

> Presumably static archives are disabled by the no-static-libs include.

> So is this really musl-specific?

>

> Ross

> On Thu, 6 Dec 2018 at 00:08, Khem Raj <raj.khem@gmail.com> wrote:

> >

> > This ensures that we have .a for libunwind on musl targets, this is used

> > for stack unwinding infra e.g. in rust

> >

> > Help compiling rust compiler and standard library from meta-rust

> >

> > Signed-off-by: Khem Raj <raj.khem@gmail.com>

> > ---

> >  meta/recipes-support/libunwind/libunwind_1.2.1.bb | 2 +-

> >  1 file changed, 1 insertion(+), 1 deletion(-)

> >

> > diff --git a/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> b/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> > index e7fb2b2190..c9239b695e 100644

> > --- a/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> > +++ b/meta/recipes-support/libunwind/libunwind_1.2.1.bb

> > @@ -14,7 +14,7 @@ SRC_URI = "

> http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV

> >             "

> >

> >  SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"

> > -EXTRA_OECONF_append_libc-musl = " --disable-documentation

> --disable-tests "

> > +EXTRA_OECONF_append_libc-musl = " --disable-documentation

> --disable-tests --enable-static"

> >

> >  # http://errors.yoctoproject.org/Errors/Details/20487/

> >  ARM_INSTRUCTION_SET_armv4 = "arm"

> > --

> > 2.19.2

> >

> > --

> > _______________________________________________

> > Openembedded-core mailing list

> > Openembedded-core@lists.openembedded.org

> > http://lists.openembedded.org/mailman/listinfo/openembedded-core

>
<div><div><div dir="auto">Yes, they are. But for musl libunwind static lib is required for rust runtime to build all the time static or not</div></div></div><div><div><br><div class="gmail_quote"><div dir="ltr">On Thu, Dec 6, 2018 at 3:49 AM Burton, Ross &lt;<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Presumably static archives are disabled by the no-static-libs include.<br>
So is this really musl-specific?<br>
<br>
Ross<br>
On Thu, 6 Dec 2018 at 00:08, Khem Raj &lt;<a href="mailto:raj.khem@gmail.com" target="_blank">raj.khem@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; This ensures that we have .a for libunwind on musl targets, this is used<br>
&gt; for stack unwinding infra e.g. in rust<br>
&gt;<br>
&gt; Help compiling rust compiler and standard library from meta-rust<br>
&gt;<br>
&gt; Signed-off-by: Khem Raj &lt;<a href="mailto:raj.khem@gmail.com" target="_blank">raj.khem@gmail.com</a>&gt;<br>
&gt; ---<br>
&gt;  meta/recipes-support/libunwind/<a href="http://libunwind_1.2.1.bb" rel="noreferrer" target="_blank">libunwind_1.2.1.bb</a> | 2 +-<br>
&gt;  1 file changed, 1 insertion(+), 1 deletion(-)<br>
&gt;<br>
&gt; diff --git a/meta/recipes-support/libunwind/<a href="http://libunwind_1.2.1.bb" rel="noreferrer" target="_blank">libunwind_1.2.1.bb</a> b/meta/recipes-support/libunwind/<a href="http://libunwind_1.2.1.bb" rel="noreferrer" target="_blank">libunwind_1.2.1.bb</a><br>
&gt; index e7fb2b2190..c9239b695e 100644<br>
&gt; --- a/meta/recipes-support/libunwind/<a href="http://libunwind_1.2.1.bb" rel="noreferrer" target="_blank">libunwind_1.2.1.bb</a><br>
&gt; +++ b/meta/recipes-support/libunwind/<a href="http://libunwind_1.2.1.bb" rel="noreferrer" target="_blank">libunwind_1.2.1.bb</a><br>
&gt; @@ -14,7 +14,7 @@ SRC_URI = &quot;<a href="http://download.savannah.nongnu.org/releases/libunwind/libunwind-$%7BPV" rel="noreferrer" target="_blank">http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV</a><br>
&gt;             &quot;<br>
&gt;<br>
&gt;  SRC_URI_append_libc-musl = &quot; file://musl-header-conflict.patch&quot;<br>
&gt; -EXTRA_OECONF_append_libc-musl = &quot; --disable-documentation --disable-tests &quot;<br>
&gt; +EXTRA_OECONF_append_libc-musl = &quot; --disable-documentation --disable-tests --enable-static&quot;<br>
&gt;<br>
&gt;  # <a href="http://errors.yoctoproject.org/Errors/Details/20487/" rel="noreferrer" target="_blank">http://errors.yoctoproject.org/Errors/Details/20487/</a><br>
&gt;  ARM_INSTRUCTION_SET_armv4 = &quot;arm&quot;<br>
&gt; --<br>
&gt; 2.19.2<br>
&gt;<br>
&gt; --<br>
&gt; _______________________________________________<br>
&gt; Openembedded-core mailing list<br>
&gt; <a href="mailto:Openembedded-core@lists.openembedded.org" target="_blank">Openembedded-core@lists.openembedded.org</a><br>
&gt; <a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/mailman/listinfo/openembedded-core</a><br>
</blockquote></div></div>
</div>
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Ross Burton Dec. 6, 2018, 4:03 p.m. UTC | #3
On Thu, 6 Dec 2018 at 15:45, Khem Raj <raj.khem@gmail.com> wrote:
> Yes, they are. But for musl libunwind static lib is required for rust runtime to build all the time static or not


And that's a musl-specific quirk of rust?

Ross
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Khem Raj Dec. 6, 2018, 4:06 p.m. UTC | #4
Yes, that's correct, for glibc is uses libbacktrace, which is provided
by glibc itself, thats why we dont see a need for this with glibc

On Thu, Dec 6, 2018 at 8:03 AM Burton, Ross <ross.burton@intel.com> wrote:
>

> On Thu, 6 Dec 2018 at 15:45, Khem Raj <raj.khem@gmail.com> wrote:

> > Yes, they are. But for musl libunwind static lib is required for rust runtime to build all the time static or not

>

> And that's a musl-specific quirk of rust?

>

> Ross

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
diff mbox series

Patch

diff --git a/meta/recipes-support/libunwind/libunwind_1.2.1.bb b/meta/recipes-support/libunwind/libunwind_1.2.1.bb
index e7fb2b2190..c9239b695e 100644
--- a/meta/recipes-support/libunwind/libunwind_1.2.1.bb
+++ b/meta/recipes-support/libunwind/libunwind_1.2.1.bb
@@ -14,7 +14,7 @@  SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV
            "
 
 SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"
-EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests "
+EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests --enable-static"
 
 # http://errors.yoctoproject.org/Errors/Details/20487/
 ARM_INSTRUCTION_SET_armv4 = "arm"