summaryrefslogtreecommitdiff
path: root/Build/source/libs/pixman
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2019-05-03 05:49:00 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2019-05-03 05:49:00 +0000
commit7fe326b8bb7d51f9c70122e7e7384f5771002547 (patch)
tree7e0bc45ef6628d5deace4dd494106b305065d7e2 /Build/source/libs/pixman
parent4cf2fa9da8208e0acd6dc5ea497a813f0c403769 (diff)
pixman-0.38.4
git-svn-id: svn://tug.org/texlive/trunk@50964 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/pixman')
-rw-r--r--Build/source/libs/pixman/ChangeLog5
-rw-r--r--Build/source/libs/pixman/README4
-rw-r--r--Build/source/libs/pixman/TLpatches/ChangeLog5
-rw-r--r--Build/source/libs/pixman/TLpatches/TL-Changes2
-rw-r--r--Build/source/libs/pixman/TLpatches/patch-01-hide-symbols6
-rwxr-xr-xBuild/source/libs/pixman/configure22
-rw-r--r--Build/source/libs/pixman/pixman-src/Makefile.am6
-rw-r--r--Build/source/libs/pixman/pixman-src/Makefile.win32.common18
-rw-r--r--Build/source/libs/pixman/pixman-src/arm-simd-test.S10
-rw-r--r--Build/source/libs/pixman/pixman-src/configure.ac2
-rw-r--r--Build/source/libs/pixman/pixman-src/meson.build55
-rw-r--r--Build/source/libs/pixman/pixman-src/neon-test.S12
-rw-r--r--Build/source/libs/pixman/pixman-src/pixman/meson.build20
-rw-r--r--Build/source/libs/pixman/pixman-src/pixman/pixman-radial-gradient.c30
-rw-r--r--Build/source/libs/pixman/version.ac2
15 files changed, 119 insertions, 80 deletions
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])