summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2024-01-16 13:05:55 +0000
committerTim-Philipp Müller <tim@centricular.com>2024-01-16 16:41:23 +0000
commite55c86ee15b0f13370525216023dcd164c2d17a8 (patch)
tree0e98c8810ec0b0a3b4e3e67d48d54bd897a43a21
parent4318244b2b7f8ab954301c94403bb11ad5568b13 (diff)
pixman: update to 0.43.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1323>
-rw-r--r--recipes/pixman.recipe18
-rw-r--r--recipes/pixman/0001-meson-add-option-to-skip-building-of-tests-and-demos.patch44
-rw-r--r--recipes/pixman/0002-meson-add-cpu-features-path-option-for-Android.patch94
3 files changed, 8 insertions, 148 deletions
diff --git a/recipes/pixman.recipe b/recipes/pixman.recipe
index 7ad64b1c..03b8e124 100644
--- a/recipes/pixman.recipe
+++ b/recipes/pixman.recipe
@@ -7,22 +7,18 @@ from cerbero.tools.libtool import LibtoolLibrary
class Recipe(recipe.Recipe):
name = 'pixman'
- version = '0.40.0'
+ version = '0.43.0'
stype = SourceType.TARBALL
btype = BuildType.MESON
- url = 'https://cairographics.org/releases/pixman-%(version)s.tar.gz'
- tarball_checksum = '6d200dec3740d9ec4ec8d1180e25779c00bc749f94278c8b9021f5534db223fc'
+ url = 'https://www.x.org/releases/individual/lib/pixman-%(version)s.tar.xz'
+ tarball_checksum = '5ba00c2879932c32d2ef878b6e802e3f898dda14c07e881dcfcc6a8f670e0cdc'
meson_options = {'openmp': 'disabled',
'gtk': 'disabled',
'libpng': 'disabled',
+ 'demos' : 'disabled',
'tests' : 'disabled'}
licenses = [{License.MIT: ['COPYING']}]
- patches = [
- # https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/36
- 'pixman/0001-meson-add-option-to-skip-building-of-tests-and-demos.patch',
- # https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/37
- 'pixman/0002-meson-add-cpu-features-path-option-for-Android.patch'
- ]
+ patches = []
files_libs = ['libpixman-1']
files_devel = ['include/pixman-1', '%(libdir)s/pkgconfig/pixman-1.pc']
@@ -39,9 +35,11 @@ class Recipe(recipe.Recipe):
# FIXME: Fails to link because of undefined __builtin_* symbols
self.meson_options['iwmmxt'] = 'disabled'
if self.config.target_arch in [Architecture.ARMv7, Architecture.ARM64]:
- # Needs https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/71
+ # Needs https://gitlab.freedesktop.org/pixman/pixman/-/merge_requests/78/
self.meson_options['neon'] = 'disabled'
self.meson_options['arm-simd'] = 'disabled'
+ if self.config.target_arch == Architecture.ARM64:
+ self.meson_options['a64-neon'] = 'enabled'
self.meson_options['cpu-features-path'] = os.path.join(self.config.toolchain_prefix, 'sources', 'android', 'cpufeatures')
# Prevent symbol conflicts
self.append_env('CFLAGS',
diff --git a/recipes/pixman/0001-meson-add-option-to-skip-building-of-tests-and-demos.patch b/recipes/pixman/0001-meson-add-option-to-skip-building-of-tests-and-demos.patch
deleted file mode 100644
index 9c258075..00000000
--- a/recipes/pixman/0001-meson-add-option-to-skip-building-of-tests-and-demos.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 77b6675d8340085a1434ad5672f77d44728a7782 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Sat, 30 May 2020 11:42:22 +0100
-Subject: [PATCH 1/2] meson: add option to skip building of tests and demos
-
----
- meson.build | 7 +++++--
- meson_options.txt | 5 +++++
- 2 files changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 1cec227..a247183 100644
---- a/meson.build
-+++ b/meson.build
-@@ -528,8 +528,11 @@ version_conf.set('PIXMAN_VERSION_MICRO', split[2])
- add_project_arguments('-DHAVE_CONFIG_H', language : ['c'])
-
- subdir('pixman')
--subdir('test')
--subdir('demos')
-+
-+if not get_option('tests').disabled()
-+ subdir('test')
-+ subdir('demos')
-+endif
-
- pkg = import('pkgconfig')
- pkg.generate(
-diff --git a/meson_options.txt b/meson_options.txt
-index 79ff4a3..781e258 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -101,3 +101,8 @@ option(
- type : 'feature',
- description : 'Use libpng'
- )
-+option(
-+ 'tests',
-+ type : 'feature',
-+ description : 'Build tests and demos'
-+)
---
-2.26.1
-
diff --git a/recipes/pixman/0002-meson-add-cpu-features-path-option-for-Android.patch b/recipes/pixman/0002-meson-add-cpu-features-path-option-for-Android.patch
deleted file mode 100644
index c9b27b85..00000000
--- a/recipes/pixman/0002-meson-add-cpu-features-path-option-for-Android.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From a63652174985ba4f65a1c249c15e675fdb7a20d7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Sat, 30 May 2020 13:24:46 +0100
-Subject: [PATCH 2/2] meson: add cpu-features-path option for Android
-
-Add option to include cpu-features.[ch] from a given path
-into the build for platforms that don't provide this out
-of the box. This is needed on Android.
-
-We copy the files into the build directory instead of using
-them directly from the original location, for better build
-hygiene, and so that they are automatically included as part
-of CI build artifacts and such.
-
-Need to bump meson dep for fs module.
----
- meson.build | 2 +-
- meson_options.txt | 5 +++++
- pixman/meson.build | 23 ++++++++++++++++++++++-
- 3 files changed, 28 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index a247183..e8e80e8 100644
---- a/meson.build
-+++ b/meson.build
-@@ -23,7 +23,7 @@ project(
- ['c'],
- version : '0.40.0',
- license : 'MIT',
-- meson_version : '>= 0.50.0',
-+ meson_version : '>= 0.53.0',
- default_options : ['buildtype=debugoptimized'],
- )
-
-diff --git a/meson_options.txt b/meson_options.txt
-index 781e258..355a8f5 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -74,6 +74,11 @@ option(
- type : 'feature',
- description : 'Use GNU style inline assembler',
- )
-+option(
-+ 'cpu-features-path',
-+ type : 'string',
-+ description : 'Path to platform-specific cpu-features.[ch] for systems that do not provide it (e.g. Android)',
-+)
- option(
- 'openmp',
- type : 'feature',
-diff --git a/pixman/meson.build b/pixman/meson.build
-index f48357f..34330d2 100644
---- a/pixman/meson.build
-+++ b/pixman/meson.build
-@@ -102,6 +102,27 @@ pixman_files = files(
- 'pixman-utils.c',
- )
-
-+# Android cpu-features
-+cpu_features_path = get_option('cpu-features-path')
-+cpu_features_sources = []
-+if cpu_features_path != ''
-+ cpu_features_h_path = join_paths(cpu_features_path, 'cpu-features.h')
-+ cpu_features_c_path = join_paths(cpu_features_path, 'cpu-features.c')
-+ fs = import('fs')
-+ if not fs.exists(cpu_features_c_path) or not fs.exists(cpu_features_h_path)
-+ error('Expected cpu-features.[ch] in directory ' + cpu_features_path)
-+ endif
-+ # copy into build directory
-+ cpu_features_h = configure_file(output: 'cpu-features.h',
-+ input: cpu_features_h_path,
-+ copy: true)
-+ cpu_features_c = configure_file(output: 'cpu-features.c',
-+ input: cpu_features_c_path,
-+ copy: true)
-+ message('Using cpu-features.[ch] from ' + cpu_features_path)
-+ cpu_features_sources = [cpu_features_c, cpu_features_h]
-+endif
-+
- # We cannot use 'link_with' or 'link_whole' because meson wont do the right
- # thing for static archives.
- _obs = []
-@@ -111,7 +132,7 @@ endforeach
-
- libpixman = library(
- 'pixman-1',
-- [pixman_files, config_h, version_h],
-+ [pixman_files, config_h, version_h, cpu_features_sources],
- objects : _obs,
- c_args : libpixman_extra_cargs,
- dependencies : [dep_m, dep_threads],
---
-2.26.1
-