[V2] libjpeg-turbo: don't depend on NASM for non-x86 targets

Message ID 1491221074-30437-1-git-send-email-ross.burton@intel.com
State New
Headers show

Commit Message

Burton, Ross April 3, 2017, 12:04 p.m.
NASM is a x86-specific assembler so it is only required when building for x86
targets.  Use x86-architecture and class-target overrides to depend on NASM, but
explicitly disable and don't depend on it for native as complications in the
native overrides meant NASM was enabled for x86-64 but disabled for x86 (this
will be investigated later).

Original patch by Tristan Van Berkom <tristan.vanberkom@codethink.co.uk>, more
work to solve selftest failures by Richard Purdie
<richard.purdie@linuxfoundation.org>.  I just wrote a nice commit message.

Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

-- 
2.8.1

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

Comments

Andre McCurdy April 3, 2017, 5:03 p.m. | #1
On Mon, Apr 3, 2017 at 5:04 AM, Ross Burton <ross.burton@intel.com> wrote:
> NASM is a x86-specific assembler so it is only required when building for x86

> targets.  Use x86-architecture and class-target overrides to depend on NASM, but

> explicitly disable and don't depend on it for native as complications in the

> native overrides meant NASM was enabled for x86-64 but disabled for x86 (this

> will be investigated later).

>

> Original patch by Tristan Van Berkom <tristan.vanberkom@codethink.co.uk>, more

> work to solve selftest failures by Richard Purdie

> <richard.purdie@linuxfoundation.org>.  I just wrote a nice commit message.

>

> Signed-off-by: Ross Burton <ross.burton@intel.com>

> ---

>  meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb | 6 +++++-

>  1 file changed, 5 insertions(+), 1 deletion(-)

>

> diff --git a/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb b/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb

> index 70d38f4..6f407cc 100644

> --- a/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb

> +++ b/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb

> @@ -7,7 +7,8 @@ LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=05bab7c7ad899d85bfba60da1a127

>                      file://jpeglib.h;endline=16;md5=f67d70e547a2662c079781c72f877f72 \

>                      file://djpeg.c;endline=11;md5=b90b6d2b4119f9e5807cd273f525d2af \

>  "

> -DEPENDS = "nasm-native"

> +DEPENDS_append_x86-64_class-target = " nasm-native"

> +DEPENDS_append_x86_class-target    = " nasm-native"

>

>  SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \

>             file://fix-mips.patch"

> @@ -26,6 +27,9 @@ RCONFLICTS_${PN} += "jpeg"

>

>  inherit autotools pkgconfig

>

> +# Add nasm-native dependency consistently for all build arches is hard

> +EXTRA_OECONF_append_class-native = "--without-simd"


Missing space?

> +

>  # Work around missing x32 ABI support

>  EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--without-simd", "", d)}"

>

> --

> 2.8.1

>

> --

> _______________________________________________

> 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
Burton, Ross April 3, 2017, 5:25 p.m. | #2
On 3 April 2017 at 18:03, Andre McCurdy <armccurdy@gmail.com> wrote:

> > +EXTRA_OECONF_append_class-native = "--without-simd"

>

> Missing space?

>


Argh.  V3 incoming.

Ross
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Patrick Ohly April 4, 2017, 8:08 a.m. | #3
On Mon, 2017-04-03 at 18:25 +0100, Burton, Ross wrote:
> 

> On 3 April 2017 at 18:03, Andre McCurdy <armccurdy@gmail.com> wrote:

>         > +EXTRA_OECONF_append_class-native = "--without-simd"

>         

>         

>         Missing space?

> 

> 

> Argh.  V3 incoming.


I'm so glad that this can happen even to the best of us and not just
me ;-}

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.



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

Patch

diff --git a/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb b/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb
index 70d38f4..6f407cc 100644
--- a/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb
+++ b/meta/recipes-graphics/jpeg/libjpeg-turbo_1.5.1.bb
@@ -7,7 +7,8 @@  LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=05bab7c7ad899d85bfba60da1a127
                     file://jpeglib.h;endline=16;md5=f67d70e547a2662c079781c72f877f72 \
                     file://djpeg.c;endline=11;md5=b90b6d2b4119f9e5807cd273f525d2af \
 "
-DEPENDS = "nasm-native"
+DEPENDS_append_x86-64_class-target = " nasm-native"
+DEPENDS_append_x86_class-target    = " nasm-native"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
            file://fix-mips.patch"
@@ -26,6 +27,9 @@  RCONFLICTS_${PN} += "jpeg"
 
 inherit autotools pkgconfig
 
+# Add nasm-native dependency consistently for all build arches is hard
+EXTRA_OECONF_append_class-native = "--without-simd"
+
 # Work around missing x32 ABI support
 EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--without-simd", "", d)}"