diff --git ../../../libpng-1.6.16/arm/arm_init.c arm/arm_init.c --- ../../../libpng-1.6.16/arm/arm_init.c 2014-12-21 22:08:08.000000000 -0500 +++ arm/arm_init.c 2014-12-22 17:33:57.556305506 -0500 @@ -29,17 +29,17 @@ * You may set the macro PNG_ARM_NEON_FILE to the file name of file containing * a fragment of C source code which defines the png_have_neon function. There * are a number of implementations in contrib/arm-neon, but the only one that * has partial support is contrib/arm-neon/linux.c - a generic Linux * implementation which reads /proc/cpufino. */ #ifndef PNG_ARM_NEON_FILE # ifdef __linux__ -# define PNG_ARM_NEON_FILE "contrib/arm-neon/linux.c" +# define PNG_ARM_NEON_FILE "linux.c" # endif #endif #ifdef PNG_ARM_NEON_FILE #include <signal.h> /* for sig_atomic_t */ static int png_have_neon(png_structp png_ptr); #include PNG_ARM_NEON_FILE diff --git ../../../libpng-1.6.16/arm/filter_neon.S arm/filter_neon.S --- ../../../libpng-1.6.16/arm/filter_neon.S 2014-12-21 22:08:08.000000000 -0500 +++ arm/filter_neon.S 2014-12-22 17:43:31.588323649 -0500 @@ -5,16 +5,22 @@ * Written by Mans Rullgard, 2011. * Last changed in libpng 1.6.16 [December 22, 2014] * * This code is released under the libpng license. * For conditions of distribution and use, see the disclaimer * and license in png.h */ +/* These are required because Mozilla's moz.build system doesn't pass + * -DDefined macros to the assembler. + */ +#define PNG_READ_SUPPORTED +#define MOZ_PNG_HAVE_ARM_NEON + /* This is required to get the symbol renames, which are #defines, and the * definitions (or not) of PNG_ARM_NEON_OPT and PNG_ARM_NEON_IMPLEMENTATION. */ #define PNG_VERSION_INFO_ONLY #include "../pngpriv.h" #if defined(__linux__) && defined(__ELF__) .section .note.GNU-stack,"",%progbits /* mark stack as non-executable */