From d1e09cb2521ccb9d02ced2d61abb4034cb04836d Mon Sep 17 00:00:00 2001 From: Changqing Li Date: Thu, 30 Aug 2018 15:52:03 +0800 Subject: libjpeg-turbo: fix wrongly defined HAVE_STDLIB_H After uprade to 2.0.0, build system change from autotools to cmake, wrong usage of #cmakedefine cause wrongly defined HAVE_STDLIB_H, which cause some other package compile failed. Signed-off-by: Changqing Li Signed-off-by: Richard Purdie --- ...bo-fix-wrongly-defined-define-HAVE_STDLIB.patch | 119 +++++++++++++++++++++ meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.0.bb | 3 +- 2 files changed, 121 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-graphics/jpeg/files/0001-libjpeg-turbo-fix-wrongly-defined-define-HAVE_STDLIB.patch (limited to 'meta') diff --git a/meta/recipes-graphics/jpeg/files/0001-libjpeg-turbo-fix-wrongly-defined-define-HAVE_STDLIB.patch b/meta/recipes-graphics/jpeg/files/0001-libjpeg-turbo-fix-wrongly-defined-define-HAVE_STDLIB.patch new file mode 100644 index 0000000000..16767ebb6b --- /dev/null +++ b/meta/recipes-graphics/jpeg/files/0001-libjpeg-turbo-fix-wrongly-defined-define-HAVE_STDLIB.patch @@ -0,0 +1,119 @@ +From d301019d0f23d12b9666d3d88b0859067a4ade77 Mon Sep 17 00:00:00 2001 +From: Changqing Li +Date: Thu, 30 Aug 2018 15:08:23 +0800 +Subject: [PATCH] libjpeg-turbo: fix wrongly defined define HAVE_STDLIB_H + +when change build system from autotools to cmake, below +part is replace wrongly: + +"#undef HAVE_STDLIB_H" +should be change to "#cmakedefine HAVE_STDLIB_H 1" +not "#cmakedefine HAVE_STDLIB_H" + +otherwise, even if stdlib.h is found, output file +of configure_file() will define like: #define HAVE_STDLIB_H +but we need it as #define HAVE_STDLIB_H 1, since for +different defination of HAVE_STDLIB_H will cause below error: +error: "HAVE_STDLIB_H" redefined [-Werror] + +Upstream-Status: Submitted[https://github.com/libjpeg-turbo/libjpeg-turbo/pull/275] + +Signed-off-by: Changqing Li +--- + jconfig.h.in | 28 ++++++++++++++-------------- + jconfigint.h.in | 4 ++-- + 2 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/jconfig.h.in b/jconfig.h.in +index 2842754..18a69a4 100644 +--- a/jconfig.h.in ++++ b/jconfig.h.in +@@ -10,16 +10,16 @@ + #define LIBJPEG_TURBO_VERSION_NUMBER @LIBJPEG_TURBO_VERSION_NUMBER@ + + /* Support arithmetic encoding */ +-#cmakedefine C_ARITH_CODING_SUPPORTED ++#cmakedefine C_ARITH_CODING_SUPPORTED 1 + + /* Support arithmetic decoding */ +-#cmakedefine D_ARITH_CODING_SUPPORTED ++#cmakedefine D_ARITH_CODING_SUPPORTED 1 + + /* Support in-memory source/destination managers */ +-#cmakedefine MEM_SRCDST_SUPPORTED ++#cmakedefine MEM_SRCDST_SUPPORTED 1 + + /* Use accelerated SIMD routines. */ +-#cmakedefine WITH_SIMD ++#cmakedefine WITH_SIMD 1 + + /* + * Define BITS_IN_JSAMPLE as either +@@ -33,37 +33,37 @@ + #define BITS_IN_JSAMPLE @BITS_IN_JSAMPLE@ /* use 8 or 12 */ + + /* Define to 1 if you have the header file. */ +-#cmakedefine HAVE_LOCALE_H ++#cmakedefine HAVE_LOCALE_H 1 + + /* Define to 1 if you have the header file. */ +-#cmakedefine HAVE_STDDEF_H ++#cmakedefine HAVE_STDDEF_H 1 + + /* Define to 1 if you have the header file. */ +-#cmakedefine HAVE_STDLIB_H ++#cmakedefine HAVE_STDLIB_H 1 + + /* Define if you need to include to get size_t. */ +-#cmakedefine NEED_SYS_TYPES_H ++#cmakedefine NEED_SYS_TYPES_H 1 + + /* Define if you have BSD-like bzero and bcopy in rather than + memset/memcpy in . */ +-#cmakedefine NEED_BSD_STRINGS ++#cmakedefine NEED_BSD_STRINGS 1 + + /* Define to 1 if the system has the type `unsigned char'. */ +-#cmakedefine HAVE_UNSIGNED_CHAR ++#cmakedefine HAVE_UNSIGNED_CHAR 1 + + /* Define to 1 if the system has the type `unsigned short'. */ +-#cmakedefine HAVE_UNSIGNED_SHORT ++#cmakedefine HAVE_UNSIGNED_SHORT 1 + + /* Compiler does not support pointers to undefined structures. */ +-#cmakedefine INCOMPLETE_TYPES_BROKEN ++#cmakedefine INCOMPLETE_TYPES_BROKEN 1 + + /* Define if your (broken) compiler shifts signed values as if they were + unsigned. */ +-#cmakedefine RIGHT_SHIFT_IS_UNSIGNED ++#cmakedefine RIGHT_SHIFT_IS_UNSIGNED 1 + + /* Define to 1 if type `char' is unsigned and you are not using gcc. */ + #ifndef __CHAR_UNSIGNED__ +- #cmakedefine __CHAR_UNSIGNED__ ++ #cmakedefine __CHAR_UNSIGNED__ 1 + #endif + + /* Define to empty if `const' does not conform to ANSI C. */ +diff --git a/jconfigint.h.in b/jconfigint.h.in +index 55df053..6c898ac 100644 +--- a/jconfigint.h.in ++++ b/jconfigint.h.in +@@ -17,10 +17,10 @@ + #define SIZEOF_SIZE_T @SIZE_T@ + + /* Define if your compiler has __builtin_ctzl() and sizeof(unsigned long) == sizeof(size_t). */ +-#cmakedefine HAVE_BUILTIN_CTZL ++#cmakedefine HAVE_BUILTIN_CTZL 1 + + /* Define to 1 if you have the header file. */ +-#cmakedefine HAVE_INTRIN_H ++#cmakedefine HAVE_INTRIN_H 1 + + #if defined(_MSC_VER) && defined(HAVE_INTRIN_H) + #if (SIZEOF_SIZE_T == 8) +-- +2.7.4 + diff --git a/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.0.bb b/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.0.bb index 7737a593b0..282bf95e8a 100644 --- a/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.0.bb +++ b/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.0.bb @@ -11,7 +11,8 @@ 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://0001-libjpeg-turbo-fix-package_qa-error.patch" + file://0001-libjpeg-turbo-fix-package_qa-error.patch \ + file://0001-libjpeg-turbo-fix-wrongly-defined-define-HAVE_STDLIB.patch" SRC_URI[md5sum] = "b12a3fcf1d078db38410f27718a91b83" SRC_URI[sha256sum] = "778876105d0d316203c928fd2a0374c8c01f755d0a00b12a1c8934aeccff8868" -- cgit 1.2.3-korg