aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/xcb-render-util
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/xcb-render-util
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/xcb-render-util')
-rw-r--r--vcpkg/ports/xcb-render-util/portfile.cmake31
-rw-r--r--vcpkg/ports/xcb-render-util/pthread.patch28
-rw-r--r--vcpkg/ports/xcb-render-util/vcpkg.json10
3 files changed, 69 insertions, 0 deletions
diff --git a/vcpkg/ports/xcb-render-util/portfile.cmake b/vcpkg/ports/xcb-render-util/portfile.cmake
new file mode 100644
index 0000000..c15e8e8
--- /dev/null
+++ b/vcpkg/ports/xcb-render-util/portfile.cmake
@@ -0,0 +1,31 @@
+if(NOT X_VCPKG_FORCE_VCPKG_X_LIBRARIES AND NOT VCPKG_TARGET_IS_WINDOWS)
+ message(STATUS "Utils and libraries provided by '${PORT}' should be provided by your system! Install the required packages or force vcpkg libraries by setting X_VCPKG_FORCE_VCPKG_X_LIBRARIES")
+ set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
+else()
+
+vcpkg_from_gitlab(
+ GITLAB_URL https://gitlab.freedesktop.org/xorg
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO lib/libxcb-render-util
+ REF 5293d8b6165f23b9f7a8bcc903da0e4d7a75984c #v 0.3.10
+ SHA512 ecd1876b62c1345ce3c06ac525f1af4f59dcce3c8d76003c59dd64c80f7787d6d2754c481e585507d6bcaf443026a7aa22ab9eac28b5153eff78d216e53eb29f
+ HEAD_REF master # branch name
+ PATCHES pthread.patch # required since this port directly depends on pthread functions. So it has to directly link it!
+)
+file(TOUCH "${SOURCE_PATH}/m4/dummy")
+set(ENV{ACLOCAL} "aclocal -I \"${CURRENT_INSTALLED_DIR}/share/xorg/aclocal/\"")
+
+vcpkg_configure_make(
+ SOURCE_PATH "${SOURCE_PATH}"
+ AUTOCONFIG
+)
+
+vcpkg_install_make()
+vcpkg_fixup_pkgconfig()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+# Handle copyright
+file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
+endif()
diff --git a/vcpkg/ports/xcb-render-util/pthread.patch b/vcpkg/ports/xcb-render-util/pthread.patch
new file mode 100644
index 0000000..f045879
--- /dev/null
+++ b/vcpkg/ports/xcb-render-util/pthread.patch
@@ -0,0 +1,28 @@
+diff --git a/configure.ac b/configure.ac
+index 803abe77b..7d694e401 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,6 +11,7 @@ AM_MAINTAINER_MODE
+ XCB_UTIL_COMMON([1.4], [1.6])
+
+ PKG_CHECK_MODULES(XCB_RENDER, xcb-render)
++PKG_CHECK_MODULES(PTHREAD_STUBS, pthread-stubs)
+
+ AC_CONFIG_FILES([Makefile
+ renderutil/Makefile
+diff --git a/renderutil/Makefile.am b/renderutil/Makefile.am
+index 3a5179884..d403aa34a 100644
+--- a/renderutil/Makefile.am
++++ b/renderutil/Makefile.am
+@@ -4,9 +4,9 @@ lib_LTLIBRARIES = libxcb-render-util.la
+ xcbinclude_HEADERS = xcb_renderutil.h
+
+ AM_CFLAGS = $(BASE_CFLAGS)
+-AM_CPPFLAGS = $(XCB_CFLAGS) $(XCB_RENDER_CFLAGS)
++AM_CPPFLAGS = $(XCB_CFLAGS) $(XCB_RENDER_CFLAGS) ${PTHREAD_STUBS_CFLAGS}
+ libxcb_render_util_la_SOURCES = cache.c util.c glyph.c
+-libxcb_render_util_la_LIBADD = $(XCB_LIBS) $(XCB_RENDER_LIBS)
++libxcb_render_util_la_LIBADD = $(XCB_LIBS) $(XCB_RENDER_LIBS) ${PTHREAD_STUBS_LIBS}
+ libxcb_render_util_la_LDFLAGS = -no-undefined
+
+ pkgconfig_DATA = xcb-renderutil.pc
diff --git a/vcpkg/ports/xcb-render-util/vcpkg.json b/vcpkg/ports/xcb-render-util/vcpkg.json
new file mode 100644
index 0000000..31fec04
--- /dev/null
+++ b/vcpkg/ports/xcb-render-util/vcpkg.json
@@ -0,0 +1,10 @@
+{
+ "name": "xcb-render-util",
+ "version": "0.3.10",
+ "description": "XCB convenience functions for the Render extension.",
+ "homepage": "https://xcb.freedesktop.org/",
+ "license": null,
+ "dependencies": [
+ "xcb"
+ ]
+}