diff --git a/components/media/pixman/origin.patch b/components/media/pixman/origin.patch new file mode 100644 index 0000000000000000000000000000000000000000..ceb8f570f55aa2fac14b26d3bc8367a25f7256a6 --- /dev/null +++ b/components/media/pixman/origin.patch @@ -0,0 +1,388 @@ +diff --git a/pixman-0.40.0/config.h b/pixman-0.40.0/config.h +new file mode 100644 +index 0000000..9feff94 +--- /dev/null ++++ b/pixman-0.40.0/config.h +@@ -0,0 +1,188 @@ ++/* config.h. Generated from config.h.in by configure. */ ++/* config.h.in. Generated from configure.ac by autoheader. */ ++ ++/* Define if building universal (internal helper macro) */ ++/* #undef AC_APPLE_UNIVERSAL_BUILD */ ++ ++/* Whether we have alarm() */ ++#define HAVE_ALARM 1 ++ ++/* Whether the compiler supports __builtin_clz */ ++#define HAVE_BUILTIN_CLZ /**/ ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_DLFCN_H 1 ++ ++/* Whether we have FE_DIVBYZERO */ ++#define HAVE_FEDIVBYZERO 0 ++ ++/* Whether we have feenableexcept() */ ++#define HAVE_FEENABLEEXCEPT 0 ++ ++/* Define to 1 if we have */ ++#define HAVE_FENV_H 0 ++ ++/* Whether the tool chain supports __float128 */ ++#define HAVE_FLOAT128 /**/ ++ ++/* Whether the compiler supports GCC vector extensions */ ++#define HAVE_GCC_VECTOR_EXTENSIONS /**/ ++ ++/* Define to 1 if you have the `getisax' function. */ ++/* #undef HAVE_GETISAX */ ++ ++/* Whether we have getpagesize() */ ++#define HAVE_GETPAGESIZE 1 ++ ++/* Whether we have gettimeofday() */ ++#define HAVE_GETTIMEOFDAY 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_INTTYPES_H 1 ++ ++/* Define to 1 if you have the `pixman-1' library (-lpixman-1). */ ++/* #undef HAVE_LIBPIXMAN_1 */ ++ ++/* Whether we have libpng */ ++#define HAVE_LIBPNG 0 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_MEMORY_H 1 ++ ++/* Whether we have mmap() */ ++#define HAVE_MMAP 1 ++ ++/* Whether we have mprotect() */ ++#define HAVE_MPROTECT 1 ++ ++/* Whether we have posix_memalign() */ ++#define HAVE_POSIX_MEMALIGN 1 ++ ++/* Whether pthreads is supported */ ++#define HAVE_PTHREADS /**/ ++ ++/* Whether we have sigaction() */ ++#define HAVE_SIGACTION 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_STDINT_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_STDLIB_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_STRINGS_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_STRING_H 1 ++ ++/* Define to 1 if we have */ ++#define HAVE_SYS_MMAN_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_SYS_STAT_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_SYS_TYPES_H 1 ++ ++/* Define to 1 if you have the header file. */ ++#define HAVE_UNISTD_H 1 ++ ++/* Define to the sub-directory where libtool stores uninstalled libraries. */ ++#define LT_OBJDIR ".libs/" ++ ++/* Name of package */ ++#define PACKAGE "pixman" ++ ++/* Define to the address where bug reports for this package should be sent. */ ++#define PACKAGE_BUGREPORT "pixman@lists.freedesktop.org" ++ ++/* Define to the full name of this package. */ ++#define PACKAGE_NAME "pixman" ++ ++/* Define to the full name and version of this package. */ ++#define PACKAGE_STRING "pixman 0.40.0" ++ ++/* Define to the one symbol short name of this package. */ ++#define PACKAGE_TARNAME "pixman" ++ ++/* Define to the home page for this package. */ ++#define PACKAGE_URL "" ++ ++/* Define to the version of this package. */ ++#define PACKAGE_VERSION "0.40.0" ++ ++/* enable output that can be piped to gnuplot */ ++/* #undef PIXMAN_GNUPLOT */ ++ ++/* enable TIMER_BEGIN/TIMER_END macros */ ++/* #undef PIXMAN_TIMERS */ ++ ++/* The size of `long', as computed by sizeof. */ ++#define SIZEOF_LONG 8 ++ ++/* Define to 1 if you have the ANSI C header files. */ ++#define STDC_HEADERS 1 ++ ++/* The compiler supported TLS storage class */ ++#define TLS __thread ++ ++/* Whether the tool chain supports __attribute__((constructor)) */ ++#define TOOLCHAIN_SUPPORTS_ATTRIBUTE_CONSTRUCTOR /**/ ++ ++/* use ARM IWMMXT compiler intrinsics */ ++/* #undef USE_ARM_IWMMXT */ ++ ++/* use ARM NEON assembly optimizations */ ++/* #undef USE_ARM_NEON */ ++ ++/* use ARM SIMD assembly optimizations */ ++/* #undef USE_ARM_SIMD */ ++ ++/* use GNU-style inline assembler */ ++//#define USE_GCC_INLINE_ASM 0 ++ ++/* use Loongson Multimedia Instructions */ ++/* #undef USE_LOONGSON_MMI */ ++ ++/* use MIPS DSPr2 assembly optimizations */ ++/* #undef USE_MIPS_DSPR2 */ ++ ++/* use OpenMP in the test suite */ ++#define USE_OPENMP 1 ++ ++/* use SSE2 compiler intrinsics */ ++#define USE_SSE2 1 ++ ++/* use SSSE3 compiler intrinsics */ ++#define USE_SSSE3 1 ++ ++/* use VMX compiler intrinsics */ ++/* #undef USE_VMX */ ++ ++/* use x86 MMX compiler intrinsics */ ++#define USE_X86_MMX 1 ++ ++/* Version number of package */ ++#define VERSION "0.40.0" ++ ++/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most ++ significant byte first (like Motorola and SPARC, unlike Intel). */ ++#if defined AC_APPLE_UNIVERSAL_BUILD ++# if defined __BIG_ENDIAN__ ++# define WORDS_BIGENDIAN 1 ++# endif ++#else ++# ifndef WORDS_BIGENDIAN ++/* # undef WORDS_BIGENDIAN */ ++# endif ++#endif ++ ++/* Define to `__inline__' or `__inline' if that's what the C compiler ++ calls it, or to nothing if 'inline' is not supported under any name. */ ++#ifndef __cplusplus ++/* #undef inline */ ++#endif ++ ++/* Define to sqrt if you do not have the `sqrtf' function. */ ++/* #undef sqrtf */ +diff --git a/pixman-0.40.0/demos/gtk-utils.h b/pixman-0.40.0/demos/gtk-utils.h +index 36be4de..bf88b42 100644 +--- a/pixman-0.40.0/demos/gtk-utils.h ++++ b/pixman-0.40.0/demos/gtk-utils.h +@@ -1,15 +1,18 @@ + #include + #include ++#ifndef __LITEOS__ + #include + #include ++#endif + #include "pixman.h" + + void show_image (pixman_image_t *image); + + pixman_image_t * + pixman_image_from_file (const char *filename, pixman_format_code_t format); +- ++#ifndef __LITEOS__ + GdkPixbuf *pixbuf_from_argb32 (uint32_t *bits, + int width, + int height, + int stride); ++#endif +diff --git a/pixman-0.40.0/pixman/pixman-compiler.h b/pixman-0.40.0/pixman/pixman-compiler.h +index a02aa49..888b992 100644 +--- a/pixman-0.40.0/pixman/pixman-compiler.h ++++ b/pixman-0.40.0/pixman/pixman-compiler.h +@@ -229,6 +229,6 @@ + + #else + +-# error "Unknown thread local support for this system. Pixman will not work with multiple threads. Define PIXMAN_NO_TLS to acknowledge and accept this limitation and compile pixman without thread-safety support." ++//# error "Unknown thread local support for this system. Pixman will not work with multiple threads. Define PIXMAN_NO_TLS to acknowledge and accept this limitation and compile pixman without thread-safety support." + + #endif +diff --git a/pixman-0.40.0/pixman/pixman-general.c b/pixman-0.40.0/pixman/pixman-general.c +index 7e5a0d0..05e45be 100644 +--- a/pixman-0.40.0/pixman/pixman-general.c ++++ b/pixman-0.40.0/pixman/pixman-general.c +@@ -153,7 +153,7 @@ general_composite_rect (pixman_implementation_t *imp, + Bpp = 16; + } + +-#define ALIGN(addr) \ ++#define _ALIGN(addr) \ + ((uint8_t *)((((uintptr_t)(addr)) + 15) & (~15))) + + if (width <= 0 || _pixman_multiply_overflows_int (width, Bpp * 3)) +@@ -173,9 +173,9 @@ general_composite_rect (pixman_implementation_t *imp, + memset (stack_scanline_buffer, 0, sizeof (stack_scanline_buffer)); + } + +- src_buffer = ALIGN (scanline_buffer); +- mask_buffer = ALIGN (src_buffer + width * Bpp); +- dest_buffer = ALIGN (mask_buffer + width * Bpp); ++ src_buffer = _ALIGN (scanline_buffer); ++ mask_buffer = _ALIGN (src_buffer + width * Bpp); ++ dest_buffer = _ALIGN (mask_buffer + width * Bpp); + + if (width_flag == ITER_WIDE) + { +diff --git a/pixman-0.40.0/pixman/pixman-implementation.c b/pixman-0.40.0/pixman/pixman-implementation.c +index 2c7de4c..111ddbf 100644 +--- a/pixman-0.40.0/pixman/pixman-implementation.c ++++ b/pixman-0.40.0/pixman/pixman-implementation.c +@@ -394,8 +394,9 @@ _pixman_choose_implementation (void) + + if (!_pixman_disabled ("fast")) + imp = _pixman_implementation_create_fast_path (imp); +- ++#if 0 + imp = _pixman_x86_get_implementations (imp); ++#endif + imp = _pixman_arm_get_implementations (imp); + imp = _pixman_ppc_get_implementations (imp); + imp = _pixman_mips_get_implementations (imp); +diff --git a/pixman-0.40.0/pixman/pixman-private.h b/pixman-0.40.0/pixman/pixman-private.h +index d836cc5..9e3da60 100644 +--- a/pixman-0.40.0/pixman/pixman-private.h ++++ b/pixman-0.40.0/pixman/pixman-private.h +@@ -15,9 +15,9 @@ + + #ifndef __ASSEMBLER__ + +-#ifndef PACKAGE +-# error config.h must be included before pixman-private.h +-#endif ++//#ifndef PACKAGE ++//# error config.h must be included before pixman-private.h ++//#endif + + #define PIXMAN_DISABLE_DEPRECATED + #define PIXMAN_USE_INTERNAL_API +diff --git a/pixman-0.40.0/pixman/pixman-version.h b/pixman-0.40.0/pixman/pixman-version.h +new file mode 100644 +index 0000000..8b0e774 +--- /dev/null ++++ b/pixman-0.40.0/pixman/pixman-version.h +@@ -0,0 +1,54 @@ ++/* ++ * Copyright © 2008 Red Hat, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person ++ * obtaining a copy of this software and associated documentation ++ * files (the "Software"), to deal in the Software without ++ * restriction, including without limitation the rights to use, copy, ++ * modify, merge, publish, distribute, sublicense, and/or sell copies ++ * of the Software, and to permit persons to whom the Software is ++ * furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be ++ * included in all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS ++ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ++ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN ++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++ * SOFTWARE. ++ * ++ * Author: Carl D. Worth ++ */ ++ ++#ifndef PIXMAN_VERSION_H__ ++#define PIXMAN_VERSION_H__ ++ ++#ifndef PIXMAN_H__ ++# error pixman-version.h should only be included by pixman.h ++#endif ++ ++#define PIXMAN_VERSION_MAJOR 0 ++#define PIXMAN_VERSION_MINOR 40 ++#define PIXMAN_VERSION_MICRO 0 ++ ++#define PIXMAN_VERSION_STRING "0.40.0" ++ ++#define PIXMAN_VERSION_ENCODE(major, minor, micro) ( \ ++ ((major) * 10000) \ ++ + ((minor) * 100) \ ++ + ((micro) * 1)) ++ ++#define PIXMAN_VERSION PIXMAN_VERSION_ENCODE( \ ++ PIXMAN_VERSION_MAJOR, \ ++ PIXMAN_VERSION_MINOR, \ ++ PIXMAN_VERSION_MICRO) ++ ++#ifndef PIXMAN_API ++# define PIXMAN_API ++#endif ++ ++#endif /* PIXMAN_VERSION_H__ */ +diff --git a/pixman-0.40.0/test/fuzzer-find-diff.pl b/pixman-0.40.0/test/fuzzer-find-diff.pl +old mode 100755 +new mode 100644 +diff --git a/pixman-0.40.0/test/utils.c b/pixman-0.40.0/test/utils.c +index cd9ab26..42964e3 100644 +--- a/pixman-0.40.0/test/utils.c ++++ b/pixman-0.40.0/test/utils.c +@@ -982,7 +982,7 @@ enable_divbyzero_exceptions (void) + #ifdef HAVE_FENV_H + #ifdef HAVE_FEENABLEEXCEPT + #ifdef HAVE_FEDIVBYZERO +- feenableexcept (FE_DIVBYZERO); ++ //feenableexcept (FE_DIVBYZERO); + #endif + #endif + #endif +@@ -994,7 +994,7 @@ enable_invalid_exceptions (void) + #ifdef HAVE_FENV_H + #ifdef HAVE_FEENABLEEXCEPT + #ifdef FE_INVALID +- feenableexcept (FE_INVALID); ++ //feenableexcept (FE_INVALID); + #endif + #endif + #endif +diff --git a/pixman-0.40.0/test/utils.h b/pixman-0.40.0/test/utils.h +index 701417f..646220f 100644 +--- a/pixman-0.40.0/test/utils.h ++++ b/pixman-0.40.0/test/utils.h +@@ -113,8 +113,8 @@ fence_image_create_bits (pixman_format_code_t format, + pixman_bool_t stride_fence); + + /* Return the page size if FENCE_MALLOC_ACTIVE, or zero otherwise */ +-unsigned long +-fence_get_page_size (); ++//unsigned long ++//fence_get_page_size (); + + /* Generate n_bytes random bytes in fence_malloced memory */ + uint8_t * diff --git a/components/media/pixman/patch.sha256 b/components/media/pixman/patch.sha256 new file mode 100644 index 0000000000000000000000000000000000000000..dfdc25c96e516e2604b43fbbedc5682828ae2a58 --- /dev/null +++ b/components/media/pixman/patch.sha256 @@ -0,0 +1 @@ +5204346eb10afbbef47798e71b4629fdb931c4cbab82ca9899102e868834298d origin.patch diff --git a/components/media/pixman/src.sha256 b/components/media/pixman/src.sha256 new file mode 100644 index 0000000000000000000000000000000000000000..7f1ecfdc42ef38e703c41c0760c5c1269d254e04 --- /dev/null +++ b/components/media/pixman/src.sha256 @@ -0,0 +1 @@ +27c253621386e9d1a981d285d0cb13052ec276ed9945969cbf1d9a03d7caee32 pixman-0.40.0.zip