mirror of
https://gitlab.redox-os.org/redox-os/redox.git
synced 2026-06-30 16:48:45 +08:00
cairo: enable X integration
This commit is contained in:
parent
a775a29fb4
commit
d4fef6be80
@ -1,6 +1,7 @@
|
||||
[source]
|
||||
tar = "https://www.cairographics.org/releases/cairo-1.18.4.tar.xz"
|
||||
blake3 = "b9fa14e02f85ec4e72396c62236c98502d04dbbdf8daf01ab9557a1c7aa7106e"
|
||||
patches = ["redox.patch"]
|
||||
|
||||
[build]
|
||||
dependencies = [
|
||||
@ -12,8 +13,14 @@ dependencies = [
|
||||
"libffi",
|
||||
"libiconv",
|
||||
"libpng",
|
||||
"libpthread-stubs",
|
||||
"libx11",
|
||||
"libxau",
|
||||
"libxcb",
|
||||
"libxext",
|
||||
"pcre2",
|
||||
"pixman",
|
||||
"x11proto",
|
||||
"zlib",
|
||||
]
|
||||
template = "custom"
|
||||
@ -24,5 +31,6 @@ DYNAMIC_INIT
|
||||
#TODO: why is -lexpat not automatic?
|
||||
cookbook_meson \
|
||||
-Dc_args="-DCAIRO_NO_MUTEX=1 -DM_SQRT2=1.41421356237309504880 -DM_LN2=0.69314718055994530942 -lexpat" \
|
||||
-Dxlib-xcb=enabled \
|
||||
-Dtests=disabled
|
||||
"""
|
||||
|
||||
@ -1,12 +1,50 @@
|
||||
diff -ruwN source/src/cairoint.h source-new/src/cairoint.h
|
||||
--- source/src/cairoint.h 2018-08-16 19:10:53.000000000 -0600
|
||||
+++ source-new/src/cairoint.h 2019-10-02 19:55:59.131388156 -0600
|
||||
@@ -187,7 +187,7 @@
|
||||
static inline int cairo_const
|
||||
_cairo_popcount (uint32_t mask)
|
||||
diff -ruwN cairo-1.18.4/meson.build source/meson.build
|
||||
--- cairo-1.18.4/meson.build 2025-03-08 05:35:35.000000000 -0700
|
||||
+++ source/meson.build 2025-05-04 18:07:04.594213814 -0600
|
||||
@@ -440,13 +440,13 @@
|
||||
if feature_conf.get('CAIRO_HAS_XCB_SURFACE', 0) == 1
|
||||
xcbshm_dep = dependency('xcb-shm', required: get_option('xcb'))
|
||||
if xcbshm_dep.found()
|
||||
- feature_conf.set('CAIRO_HAS_XCB_SHM_FUNCTIONS', 1)
|
||||
- deps += [xcbshm_dep]
|
||||
- built_features += [{
|
||||
- 'name': 'cairo-xcb-shm',
|
||||
- 'description': 'XCB/SHM functions',
|
||||
- 'deps': [xcbshm_dep],
|
||||
- }]
|
||||
+ #feature_conf.set('CAIRO_HAS_XCB_SHM_FUNCTIONS', 1)
|
||||
+ #deps += [xcbshm_dep]
|
||||
+ #built_features += [{
|
||||
+ # 'name': 'cairo-xcb-shm',
|
||||
+ # 'description': 'XCB/SHM functions',
|
||||
+ # 'deps': [xcbshm_dep],
|
||||
+ #}]
|
||||
endif
|
||||
endif
|
||||
|
||||
diff -ruwN cairo-1.18.4/perf/Makefile.in source/perf/Makefile.in
|
||||
--- cairo-1.18.4/perf/Makefile.in 1969-12-31 17:00:00.000000000 -0700
|
||||
+++ source/perf/Makefile.in 2025-05-01 12:52:11.400963345 -0600
|
||||
@@ -0,0 +1,3 @@
|
||||
+all:
|
||||
+
|
||||
+install:
|
||||
diff -ruwN cairo-1.18.4/src/cairo-ps-surface.c source/src/cairo-ps-surface.c
|
||||
--- cairo-1.18.4/src/cairo-ps-surface.c 2025-03-08 05:35:35.000000000 -0700
|
||||
+++ source/src/cairo-ps-surface.c 2025-05-04 18:08:43.821264417 -0600
|
||||
@@ -102,7 +102,7 @@
|
||||
#define DEBUG_FALLBACK(s)
|
||||
#endif
|
||||
|
||||
-#ifndef HAVE_CTIME_R
|
||||
+#if !defined(HAVE_CTIME_R) && !defined(__redox__)
|
||||
static char *ctime_r(const time_t *timep, char *buf)
|
||||
{
|
||||
-#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
||||
+#if !defined(__redox__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
||||
return __builtin_popcount (mask);
|
||||
#else
|
||||
register int y;
|
||||
(void)buf;
|
||||
diff -ruwN cairo-1.18.4/test/Makefile.in source/test/Makefile.in
|
||||
--- cairo-1.18.4/test/Makefile.in 1969-12-31 17:00:00.000000000 -0700
|
||||
+++ source/test/Makefile.in 2025-05-01 12:52:11.400963345 -0600
|
||||
@@ -0,0 +1,3 @@
|
||||
+all:
|
||||
+
|
||||
+install:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user