From 84d27a2ef67e1cf20322094da36f67e6755c705b Mon Sep 17 00:00:00 2001 From: Arthapz Date: Sat, 15 Jan 2022 04:08:54 +0100 Subject: [PATCH] Add xcb addons (#910) * Add xcb-util-cursor addon * Add xcb-util-image addon * Add xcb-util-errors addon * Add xcb-util-keysyms addon * Add xcb-util addon * Add xcb-util-renderutil addon * Add xcb-util-wm addon * Add missing apt packages * Fix dependencies * Fix xcb-util-renderutil missing dependency * Fix installation checking * Fix m4 dependency * Cleanup * More cleanup --- packages/x/xcb-proto/xmake.lua | 2 +- packages/x/xcb-util-cursor/xmake.lua | 31 ++++++++++++++++++++++++ packages/x/xcb-util-errors/xmake.lua | 28 +++++++++++++++++++++ packages/x/xcb-util-image/xmake.lua | 30 +++++++++++++++++++++++ packages/x/xcb-util-keysyms/xmake.lua | 30 +++++++++++++++++++++++ packages/x/xcb-util-renderutil/xmake.lua | 29 ++++++++++++++++++++++ packages/x/xcb-util-wm/xmake.lua | 31 ++++++++++++++++++++++++ packages/x/xcb-util/xmake.lua | 31 ++++++++++++++++++++++++ 8 files changed, 211 insertions(+), 1 deletion(-) create mode 100644 packages/x/xcb-util-cursor/xmake.lua create mode 100644 packages/x/xcb-util-errors/xmake.lua create mode 100644 packages/x/xcb-util-image/xmake.lua create mode 100644 packages/x/xcb-util-keysyms/xmake.lua create mode 100644 packages/x/xcb-util-renderutil/xmake.lua create mode 100644 packages/x/xcb-util-wm/xmake.lua create mode 100644 packages/x/xcb-util/xmake.lua diff --git a/packages/x/xcb-proto/xmake.lua b/packages/x/xcb-proto/xmake.lua index 8e87532ba..d6e722b06 100644 --- a/packages/x/xcb-proto/xmake.lua +++ b/packages/x/xcb-proto/xmake.lua @@ -10,7 +10,7 @@ package("xcb-proto") add_versions("1.14.1", "85cd21e9d9fbc341d0dbf11eace98d55d7db89fda724b0e598855fcddf0944fd") if is_plat("macosx", "linux") then - add_deps("pkg-config", "python 3.x", {kind = "binary"}) + add_deps("pkg-config", "python 3.x") end on_install("macosx", "linux", function (package) diff --git a/packages/x/xcb-util-cursor/xmake.lua b/packages/x/xcb-util-cursor/xmake.lua new file mode 100644 index 000000000..7c8e8fa72 --- /dev/null +++ b/packages/x/xcb-util-cursor/xmake.lua @@ -0,0 +1,31 @@ + +package("xcb-util-cursor") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-cursor-$(version).tar.gz") + add_versions("0.1.0", "fe856df5cfd37ac1a574293790fb93b1414f0d06e3bd3b087ad7da6bba685e11") + add_versions("0.1.1", "3f89a77e1a7bd29bd82b935225f640dee02daf46cb0394bfafb180412b5b7252") + add_versions("0.1.2", "b9e55161eb283ce14b5f73d09aba58c7ccadebc010984db659ae2d95d2ada02e") + add_versions("0.1.3", "a322332716a384c94d3cbf98f2d8fe2ce63c2fe7e2b26664b6cea1d411723df8") + + if is_plat("linux") then + add_extsources("apt::libxcb-cursor-dev", "pacman::xcb-util-cursor") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("libxcb", "xcb-util-renderutil", "xcb-util-image") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_cursor_context_new", {includes = "xcb/xcb_cursor.h"})) + end) + diff --git a/packages/x/xcb-util-errors/xmake.lua b/packages/x/xcb-util-errors/xmake.lua new file mode 100644 index 000000000..98e0119f8 --- /dev/null +++ b/packages/x/xcb-util-errors/xmake.lua @@ -0,0 +1,28 @@ + +package("xcb-util-errors") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-errors-$(version).tar.gz") + add_versions("1.0", "7752a722e580efdbada30632cb23aed35c18757399ac3b547b59fd7257cf5e33") + + if is_plat("linux") then + add_extsources("pacman::xcb-util-errors") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("xcb-proto", "libxcb") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_errors_context_new", {includes = "xcb/xcb_errors.h"})) + end) + diff --git a/packages/x/xcb-util-image/xmake.lua b/packages/x/xcb-util-image/xmake.lua new file mode 100644 index 000000000..7c62ad8ce --- /dev/null +++ b/packages/x/xcb-util-image/xmake.lua @@ -0,0 +1,30 @@ + +package("xcb-util-image") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-image-$(version).tar.gz") + add_versions("0.3.8", "3d7f6e3e7e73ca0d42154d360ad61a1e16fc62f6bb000f4e69c0d00305d1e00b") + add_versions("0.3.9", "ac7fa09eddc9ecda6fd872d32b6dc23d451a1c6c201873dfe7cac8362c87acf3") + add_versions("0.4.0", "cb2c86190cf6216260b7357a57d9100811bb6f78c24576a3a5bfef6ad3740a42") + + if is_plat("linux") then + add_extsources("apt::libxcb-image0-dev", "pacman::xcb-util-image") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("xcb-proto", "libxcb", "xcb-util") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_image_create", {includes = "xcb/xcb_image.h"})) + end) + diff --git a/packages/x/xcb-util-keysyms/xmake.lua b/packages/x/xcb-util-keysyms/xmake.lua new file mode 100644 index 000000000..3eaad562b --- /dev/null +++ b/packages/x/xcb-util-keysyms/xmake.lua @@ -0,0 +1,30 @@ + +package("xcb-util-keysyms") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-keysyms-$(version).tar.gz") + add_versions("0.3.8", "99fcf9273f9866c1682bcf8a51df41296fe239e0f1df14f55350a33fd0e948b0") + add_versions("0.3.9", "9fda86f6a26be8872f33c10f47505c40c9305758d320b170aa976b7201533a42") + add_versions("0.4.0", "0807cf078fbe38489a41d755095c58239e1b67299f14460dec2ec811e96caa96") + + if is_plat("linux") then + add_extsources("apt::libxcb-keysyms1-dev", "pacman::xcb-util-keysyms") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("xcb-proto", "libxcb") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_key_symbols_get_keycode", {includes = "xcb/xcb_keysyms.h"})) + end) + diff --git a/packages/x/xcb-util-renderutil/xmake.lua b/packages/x/xcb-util-renderutil/xmake.lua new file mode 100644 index 000000000..83c92bc37 --- /dev/null +++ b/packages/x/xcb-util-renderutil/xmake.lua @@ -0,0 +1,29 @@ + +package("xcb-util-renderutil") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-renderutil-$(version).tar.gz") + add_versions("0.3.8", "cfa1130bfff8f281e10285ae063475dd172c78dad609ac10bce3924b5ca11484") + add_versions("0.3.9", "55eee797e3214fe39d0f3f4d9448cc53cffe06706d108824ea37bb79fcedcad5") + + if is_plat("linux") then + add_extsources("apt::libxcb-render-util0-dev", "pacman::xcb-util-renderutil") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("libxcb", "xcb-util") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_render_util_find_format", {includes = "xcb/xcb_renderutil.h"})) + end) + diff --git a/packages/x/xcb-util-wm/xmake.lua b/packages/x/xcb-util-wm/xmake.lua new file mode 100644 index 000000000..2748541b9 --- /dev/null +++ b/packages/x/xcb-util-wm/xmake.lua @@ -0,0 +1,31 @@ + +package("xcb-util-wm") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-wm-$(version).tar.gz") + add_versions("0.3.8", "ed73bbecb2c1b523396ddbdbd8063f04a13e56b96e34515ef6af5826c84b4ef1") + add_versions("0.3.9", "7a2f032f0f791dda6e75f2dc7b6cf347f62f27234fab58308124feff5f27be69") + add_versions("0.4.0", "48c9b2a8c5697e0fde189706a6fa4b09b7b65762d88a495308e646eaf891f42a") + add_versions("0.4.1", "038b39c4bdc04a792d62d163ba7908f4bb3373057208c07110be73c1b04b8334") + + if is_plat("linux") then + add_extsources("apt::libxcb-icccm4-dev", "pacman::xcb-util-wm") + end + + if is_plat("macosx", "linux") then + add_deps("m4", "pkg-config") + add_deps("libxcb") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_icccm_get_wm_name", {includes = "xcb/xcb_icccm.h"})) + end) + diff --git a/packages/x/xcb-util/xmake.lua b/packages/x/xcb-util/xmake.lua new file mode 100644 index 000000000..6e11868f9 --- /dev/null +++ b/packages/x/xcb-util/xmake.lua @@ -0,0 +1,31 @@ + +package("xcb-util") + set_homepage("https://xcb.freedesktop.org") + set_description("X.Org: XML-XCB protocol descriptions for libxcb code generation") + + set_urls("https://xcb.freedesktop.org/dist/xcb-util-$(version).tar.gz") + add_versions("0.3.6", "ebb4064db813bfbfedfa30086483e73404f5358fab38698e584c195dc74bd609") + add_versions("0.3.8", "e9e7f68d60ddd1bab6da714399dd1d91c78cb900c88427d3b8436a013178b3be") + add_versions("0.3.9", "c3f9e8921998d92b3709baeb6c0b78179d0d8b6f592efdb11120584c5dfedc7e") + add_versions("0.4.0", "0ed0934e2ef4ddff53fcc70fc64fb16fe766cd41ee00330312e20a985fd927a7") + + if is_plat("linux") then + add_extsources("apt::libxcb-util-dev", "pacman::xcb-util") + end + + if is_plat("macosx", "linux") then + add_deps("pkg-config") + add_deps("libxcb") + end + + on_install("macosx", "linux", function (package) + local configs = {"--sysconfdir=" .. package:installdir("etc"), + "--localstatedir=" .. package:installdir("var"), + "--disable-silent-rules"} + import("package.tools.autoconf").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("xcb_atom_name_by_screen", {includes = "xcb/xcb_atom.h"})) + end) +