diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-03 05:49:00 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-03 05:49:00 +0000 |
commit | 7fe326b8bb7d51f9c70122e7e7384f5771002547 (patch) | |
tree | 7e0bc45ef6628d5deace4dd494106b305065d7e2 | |
parent | 4cf2fa9da8208e0acd6dc5ea497a813f0c403769 (diff) |
pixman-0.38.4
git-svn-id: svn://tug.org/texlive/trunk@50964 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Build/source/libs/README | 2 | ||||
-rw-r--r-- | Build/source/libs/pixman/ChangeLog | 5 | ||||
-rw-r--r-- | Build/source/libs/pixman/README | 4 | ||||
-rw-r--r-- | Build/source/libs/pixman/TLpatches/ChangeLog | 5 | ||||
-rw-r--r-- | Build/source/libs/pixman/TLpatches/TL-Changes | 2 | ||||
-rw-r--r-- | Build/source/libs/pixman/TLpatches/patch-01-hide-symbols | 6 | ||||
-rwxr-xr-x | Build/source/libs/pixman/configure | 22 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/Makefile.am | 6 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/Makefile.win32.common | 18 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/arm-simd-test.S | 10 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/configure.ac | 2 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/meson.build | 55 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/neon-test.S | 12 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/pixman/meson.build | 20 | ||||
-rw-r--r-- | Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c | 30 | ||||
-rw-r--r-- | Build/source/libs/pixman/version.ac | 2 |
16 files changed, 120 insertions, 81 deletions
diff --git a/Build/source/libs/README b/Build/source/libs/README index 28a80a56b5e..1b267815774 100644 --- a/Build/source/libs/README +++ b/Build/source/libs/README @@ -49,7 +49,7 @@ luajit 2.1.0-beta3 - checked 20jun17 mpfr 4.0.2 - checked 1jan19 http://ftp.gnu.org/gnu/mpfr/ -pixman 0.38.0 - checked 13feb19 +pixman 0.38.4 - checked 03may19 http://cairographics.org/releases/ poppler 0.68.0 - checked 20aug18 diff --git a/Build/source/libs/pixman/ChangeLog b/Build/source/libs/pixman/ChangeLog index 8f5ad629fed..c074877948a 100644 --- a/Build/source/libs/pixman/ChangeLog +++ b/Build/source/libs/pixman/ChangeLog @@ -1,3 +1,8 @@ +2019-05-03 Akira Kakuto <kakuto@w32tex.org> + + Import pixman-0.38.4. + * version.ac: Adapted. + 2019-02-13 Akira Kakuto <kakuto@w32tex.org> Import pixman-0.38.0. diff --git a/Build/source/libs/pixman/README b/Build/source/libs/pixman/README index a60417a1b35..efe0177a46f 100644 --- a/Build/source/libs/pixman/README +++ b/Build/source/libs/pixman/README @@ -1,4 +1,4 @@ - Building pixman-0.38.0 as part of the TL tree + Building pixman-0.38.4 as part of the TL tree ============================================= This directory libs/pixman/ uses a proxy Makefile.am to build the pixman @@ -12,4 +12,4 @@ been translated into equivalent test in libs/pixman/configure.ac. 2012-11-10 Taco Hoekwater <taco@metatex.org> 2012-11-15 Peter Breitenlohner <peb@mppmu.mpg.de> -2019-02-13 Akira Kakuto <kakuto@w32tex.org> +2019-05-03 Akira Kakuto <kakuto@w32tex.org> diff --git a/Build/source/libs/pixman/TLpatches/ChangeLog b/Build/source/libs/pixman/TLpatches/ChangeLog index ac12617622c..40e05acfc60 100644 --- a/Build/source/libs/pixman/TLpatches/ChangeLog +++ b/Build/source/libs/pixman/TLpatches/ChangeLog @@ -1,3 +1,8 @@ +2019-05-03 Akira Kakuto <kakuto@w32tex.org> + + Import pixman-0.38.4. + * patch-01-hide-symbols: Adapted. + 2019-02-13 Akira Kakuto <kakuto@w32tex.org> Import pixman-0.38.0. diff --git a/Build/source/libs/pixman/TLpatches/TL-Changes b/Build/source/libs/pixman/TLpatches/TL-Changes index f566f095177..3708e172dc1 100644 --- a/Build/source/libs/pixman/TLpatches/TL-Changes +++ b/Build/source/libs/pixman/TLpatches/TL-Changes @@ -1,4 +1,4 @@ -Changes applied to the pixman-0.38.0/ tree as obtained from: +Changes applied to the pixman-0.38.4/ tree as obtained from: http://cairographics.org/releases/ Removed: diff --git a/Build/source/libs/pixman/TLpatches/patch-01-hide-symbols b/Build/source/libs/pixman/TLpatches/patch-01-hide-symbols index dcc3bb0989c..b56100ba539 100644 --- a/Build/source/libs/pixman/TLpatches/patch-01-hide-symbols +++ b/Build/source/libs/pixman/TLpatches/patch-01-hide-symbols @@ -1,6 +1,6 @@ -diff -ur pixman-0.38.0/pixman/pixman-compiler.h pixman-src/pixman/pixman-compiler.h ---- pixman-0.38.0/pixman/pixman-compiler.h Wed Apr 11 21:07:58 2018 -+++ pixman-src/pixman/pixman-compiler.h Wed Feb 13 07:43:19 2019 +diff -ur pixman-0.38.4/pixman/pixman-compiler.h pixman-src/pixman/pixman-compiler.h +--- pixman-0.38.4/pixman/pixman-compiler.h Sun Mar 31 06:49:22 2019 ++++ pixman-src/pixman/pixman-compiler.h Thu Apr 11 07:00:03 2019 @@ -91,7 +91,7 @@ /* GCC visibility */ diff --git a/Build/source/libs/pixman/configure b/Build/source/libs/pixman/configure index be287c076fb..998d87f732a 100755 --- a/Build/source/libs/pixman/configure +++ b/Build/source/libs/pixman/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for pixman (TeX Live) 0.38.0. +# Generated by GNU Autoconf 2.69 for pixman (TeX Live) 0.38.4. # # Report bugs to <tex-k@tug.org>. # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='pixman (TeX Live)' PACKAGE_TARNAME='pixman--tex-live-' -PACKAGE_VERSION='0.38.0' -PACKAGE_STRING='pixman (TeX Live) 0.38.0' +PACKAGE_VERSION='0.38.4' +PACKAGE_STRING='pixman (TeX Live) 0.38.4' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' @@ -1281,7 +1281,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures pixman (TeX Live) 0.38.0 to adapt to many kinds of systems. +\`configure' configures pixman (TeX Live) 0.38.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1348,7 +1348,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pixman (TeX Live) 0.38.0:";; + short | recursive ) echo "Configuration of pixman (TeX Live) 0.38.4:";; esac cat <<\_ACEOF @@ -1445,7 +1445,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pixman (TeX Live) configure 0.38.0 +pixman (TeX Live) configure 0.38.4 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1952,7 +1952,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by pixman (TeX Live) $as_me 0.38.0, which was +It was created by pixman (TeX Live) $as_me 0.38.4, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3876,7 +3876,7 @@ fi # Define the identity of the package. PACKAGE='pixman--tex-live-' - VERSION='0.38.0' + VERSION='0.38.4' cat >>confdefs.h <<_ACEOF @@ -4079,7 +4079,7 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags PIXMAN_VERSION_MAJOR=0 PIXMAN_VERSION_MINOR=38 -PIXMAN_VERSION_MICRO=0 +PIXMAN_VERSION_MICRO=4 test_CFLAGS=${CFLAGS+set} # We may override autoconf default CFLAGS. @@ -6587,7 +6587,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by pixman (TeX Live) $as_me 0.38.0, which was +This file was extended by pixman (TeX Live) $as_me 0.38.4, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6653,7 +6653,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -pixman (TeX Live) config.status 0.38.0 +pixman (TeX Live) config.status 0.38.4 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/libs/pixman/pixman-src/Makefile.am b/Build/source/libs/pixman/pixman-src/Makefile.am index a6806650391..e33b2b9c279 100644 --- a/Build/source/libs/pixman/pixman-src/Makefile.am +++ b/Build/source/libs/pixman/pixman-src/Makefile.am @@ -15,8 +15,8 @@ USERNAME=$$USER RELEASE_OR_SNAPSHOT = $$(if test "x$(PIXMAN_VERSION_MINOR)" = "x$$(echo "$(PIXMAN_VERSION_MINOR)/2*2" | bc)" ; then echo release; else echo snapshot; fi) RELEASE_CAIRO_HOST = $(USERNAME)@cairographics.org RELEASE_CAIRO_DIR = /srv/cairo.freedesktop.org/www/$(RELEASE_OR_SNAPSHOT)s -RELEASE_CAIRO_URL = http://cairographics.org/$(RELEASE_OR_SNAPSHOT)s -RELEASE_XORG_URL = http://xorg.freedesktop.org/archive/individual/lib +RELEASE_CAIRO_URL = https://cairographics.org/$(RELEASE_OR_SNAPSHOT)s +RELEASE_XORG_URL = https://www.x.org/releases/individual/lib RELEASE_XORG_HOST = $(USERNAME)@xorg.freedesktop.org RELEASE_XORG_DIR = /srv/xorg.freedesktop.org/archive/individual/lib RELEASE_ANNOUNCE_LIST = cairo-announce@cairographics.org, xorg-announce@lists.freedesktop.org, pixman@lists.freedesktop.org @@ -26,6 +26,8 @@ EXTRA_DIST = \ Makefile.win32.common \ meson.build \ meson_options.txt \ + neon-test.S \ + arm-simd-test.S \ $(NULL) tar_gz = $(PACKAGE)-$(VERSION).tar.gz diff --git a/Build/source/libs/pixman/pixman-src/Makefile.win32.common b/Build/source/libs/pixman/pixman-src/Makefile.win32.common index 756fc94a6ee..1b2f894873d 100644 --- a/Build/source/libs/pixman/pixman-src/Makefile.win32.common +++ b/Build/source/libs/pixman/pixman-src/Makefile.win32.common @@ -1,5 +1,17 @@ LIBRARY = pixman-1 +ifeq ($(shell echo ""),) +# POSIX style shell +mkdir_p = mkdir -p $1 +rm = $(RM) $1 +echo = echo "$1" +else +# DOS/Windows style shell +mkdir_p = if not exist $(subst /,\,$1) md $(subst /,\,$1) +echo = echo $1 +rm = del $(subst /,\,$1) +endif + CC = cl LD = link AR = lib @@ -50,12 +62,12 @@ endif endif $(CFG_VAR): - @mkdir $@ + @$(call mkdir_p,$@) $(CFG_VAR)/%.obj: %.c $(libpixman_headers) | $(CFG_VAR) - @$(CC) -c $(PIXMAN_CFLAGS) -Fo"$@" $< + $(CC) -c $(PIXMAN_CFLAGS) -Fo"$@" $< clean: inform $(CFG_VAR) - @cd $(CFG_VAR) && echo > silence_error.exe && $(RM) *.exe *.ilk *.lib *.obj *.pdb + -$(call rm,$(CFG_VAR)/*.exe $(CFG_VAR)/*.ilk $(CFG_VAR)/*.lib $(CFG_VAR)/*.obj $(CFG_VAR)/*.pdb) .PHONY: inform clean diff --git a/Build/source/libs/pixman/pixman-src/arm-simd-test.S b/Build/source/libs/pixman/pixman-src/arm-simd-test.S new file mode 100644 index 00000000000..910c814d6a1 --- /dev/null +++ b/Build/source/libs/pixman/pixman-src/arm-simd-test.S @@ -0,0 +1,10 @@ +.text +.arch armv6 +.object_arch armv4 +.arm +.altmacro +#ifndef __ARM_EABI__ +#error EABI is required (to be sure that calling conventions are compatible) +#endif +pld [r0] +uqadd8 r0, r0, r0 diff --git a/Build/source/libs/pixman/pixman-src/configure.ac b/Build/source/libs/pixman/pixman-src/configure.ac index 6efc6c0f80d..4cbd454a111 100644 --- a/Build/source/libs/pixman/pixman-src/configure.ac +++ b/Build/source/libs/pixman/pixman-src/configure.ac @@ -54,7 +54,7 @@ AC_PREREQ([2.57]) m4_define([pixman_major], 0) m4_define([pixman_minor], 38) -m4_define([pixman_micro], 0) +m4_define([pixman_micro], 4) m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro]) diff --git a/Build/source/libs/pixman/pixman-src/meson.build b/Build/source/libs/pixman/pixman-src/meson.build index fe77893b8ce..fad22eea910 100644 --- a/Build/source/libs/pixman/pixman-src/meson.build +++ b/Build/source/libs/pixman/pixman-src/meson.build @@ -21,7 +21,7 @@ project( 'pixman', ['c'], - version : '0.38.0', + version : '0.38.4', license : 'MIT', meson_version : '>= 0.47.2', default_options : ['buildtype=debugoptimized'], @@ -50,7 +50,7 @@ endforeach use_loongson_mmi = get_option('loongson-mmi') have_loongson_mmi = false -loongson_mmi_flags = ['-mach=loongson2f'] +loongson_mmi_flags = ['-march=loongson2f'] if not use_loongson_mmi.disabled() if host_machine.cpu_family() == 'mips64' and cc.compiles(''' #ifndef __mips_loongson_vector_rev @@ -70,6 +70,7 @@ if not use_loongson_mmi.disabled() return 0; }''', args : loongson_mmi_flags, + include_directories : include_directories('.'), name : 'Loongson MMI Intrinsic Support') have_loongson_mmi = true endif @@ -223,20 +224,7 @@ use_armv6_simd = get_option('arm-simd') have_armv6_simd = false if not use_armv6_simd.disabled() if host_machine.cpu_family() == 'arm' - if cc.compiles(''' - .text - .arch armv6 - .object_arch armv4 - .arm - .altmacro - #ifndef __ARM_EABI__ - #error EABI is required (to be sure that calling conventions are compatible) - #endif - pld [r0] - uqadd8 r0, r0, r0 - ''', - args : ['-x assembler-with-cpp'], - name : 'ARMv6 SIMD Intrinsic Support') + if cc.compiles(files('arm-simd-test.S'), name : 'ARMv6 SIMD Intrinsic Support') have_armv6_simd = true endif endif @@ -252,22 +240,7 @@ use_neon = get_option('neon') have_neon = false if not use_neon.disabled() if host_machine.cpu_family() == 'arm' - if cc.compiles(''' - .text - .fpu neon - .arch armv7a - .object_arch armv4 - .eabi_attribute 10, 0 - .arm - .altmacro - #ifndef __ARM_EABI__ - #error EABI is required (to be sure that calling conventions are compatible) - #endif - pld [r0] - vmovn.u16 d0, q0 - ''', - args : ['-x assembler-with-cpp'], - name : 'NEON Intrinsic Support') + if cc.compiles(files('neon-test.S'), name : 'NEON Intrinsic Support') have_neon = true endif endif @@ -317,7 +290,7 @@ endif if have_iwmmxt config.set10('USE_ARM_IWMMXT', true) elif use_iwmmxt.enabled() - error('NEON Support unavailable, but required') + error('IWMMXT Support unavailable, but required') endif use_mips_dspr2 = get_option('mips-dspr2') @@ -376,13 +349,15 @@ if get_option('gnuplot') config.set('PIXMAN_GNUPLOT', 1) endif -use_openmp = get_option('openmp') -dep_openmp = null_dep -if not use_openmp.disabled() - dep_openmp = dependency('openmp', required : get_option('openmp')) - if dep_openmp.found() - config.set10('USE_OPENMP', true) - endif +dep_openmp = dependency('openmp', required : get_option('openmp')) +if dep_openmp.found() + config.set10('USE_OPENMP', true) +elif meson.version().version_compare('<0.51.0') +# In versions of meson before 0.51 the openmp dependency can still +# inject arguments in the the auto case when it is not found, the +# detection does work correctly in that case however, so we just +# replace dep_openmp with null_dep to work around this. + dep_openmp = null_dep endif dep_gtk = dependency('gtk+-2.0', version : '>= 2.16', required : get_option('gtk')) diff --git a/Build/source/libs/pixman/pixman-src/neon-test.S b/Build/source/libs/pixman/pixman-src/neon-test.S new file mode 100644 index 00000000000..c30a3990bfd --- /dev/null +++ b/Build/source/libs/pixman/pixman-src/neon-test.S @@ -0,0 +1,12 @@ +.text +.fpu neon +.arch armv7a +.object_arch armv4 +.eabi_attribute 10, 0 +.arm +.altmacro +#ifndef __ARM_EABI__ +#error EABI is required (to be sure that calling conventions are compatible) +#endif +pld [r0] +vmovn.u16 d0, q0 diff --git a/Build/source/libs/pixman/pixman-src/pixman/meson.build b/Build/source/libs/pixman/pixman-src/pixman/meson.build index 3dabec97cab..6ce87e7addb 100644 --- a/Build/source/libs/pixman/pixman-src/pixman/meson.build +++ b/Build/source/libs/pixman/pixman-src/pixman/meson.build @@ -32,17 +32,25 @@ version_h = configure_file( pixman_simd_libs = [] simds = [ + # the mmx library can be compiled with mmx on x86/x86_64, iwmmxt on + # some arm cores, or loongson mmi on loongson mips systems. The + # libraries will all have the same name, "pixman-mmx", but there is + # no chance of more than one version being built in the same build + # because no system could have mmx, iwmmxt, and mmi, and it + # simplifies the build logic to give them the same name. ['mmx', have_mmx, mmx_flags, []], + ['mmx', have_loongson_mmi, loongson_mmi_flags, []], + ['mmx', have_iwmmxt, iwmmxt_flags, []], + ['sse2', have_sse2, sse2_flags, []], ['ssse3', have_ssse3, ssse3_flags, []], ['vmx', have_vmx, vmx_flags, []], ['arm-simd', have_armv6_simd, [], ['pixman-arm-simd-asm.S', 'pixman-arm-simd-asm-scaled.S']], ['arm-neon', have_neon, [], - ['pixman-arm-neon-asm.S', 'pixman-arm-neon-asm-scaled.S']], + ['pixman-arm-neon-asm.S', 'pixman-arm-neon-asm-bilinear.S']], ['mips-dspr2', have_mips_dspr2, mips_dspr2_flags, ['pixman-mips-dspr2-asm.S', 'pixman-mips-memcpy-asm.S']], - ['loongson-mmi', have_loongson_mmi, loongson_mmi_flags, []] ] foreach simd : simds @@ -56,14 +64,6 @@ foreach simd : simds endif endforeach -if have_iwmmxt - pixman_simd_libs += static_library( - 'pixman-iwmmt', - 'pixman-mmx.c', - c_args : iwmmxt_flags, - ) -endif - pixman_files = files( 'pixman.c', 'pixman-access.c', diff --git a/Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c b/Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c index 0367d78424d..e8e99c98b92 100644 --- a/Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c +++ b/Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c @@ -111,12 +111,18 @@ radial_write_color (double a, if (repeat == PIXMAN_REPEAT_NONE) { if (0 <= t && t <= pixman_fixed_1) - return write_pixel (walker, t, buffer); + { + write_pixel (walker, t, buffer); + return; + } } else { if (t * dr >= mindr) - return write_pixel (walker, t, buffer); + { + write_pixel (walker, t, buffer); + return; + } } memset (buffer, 0, Bpp); @@ -146,16 +152,28 @@ radial_write_color (double a, if (repeat == PIXMAN_REPEAT_NONE) { if (0 <= t0 && t0 <= pixman_fixed_1) - return write_pixel (walker, t0, buffer); + { + write_pixel (walker, t0, buffer); + return; + } else if (0 <= t1 && t1 <= pixman_fixed_1) - return write_pixel (walker, t1, buffer); + { + write_pixel (walker, t1, buffer); + return; + } } else { if (t0 * dr >= mindr) - return write_pixel (walker, t0, buffer); + { + write_pixel (walker, t0, buffer); + return; + } else if (t1 * dr >= mindr) - return write_pixel (walker, t1, buffer); + { + write_pixel (walker, t1, buffer); + return; + } } } diff --git a/Build/source/libs/pixman/version.ac b/Build/source/libs/pixman/version.ac index 09a14edeed6..cba8651fb2a 100644 --- a/Build/source/libs/pixman/version.ac +++ b/Build/source/libs/pixman/version.ac @@ -8,4 +8,4 @@ dnl dnl -------------------------------------------------------- dnl dnl m4-include this file to define the current pixman version -m4_define([pixman_version], [0.38.0]) +m4_define([pixman_version], [0.38.4]) |