summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-17 00:13:57 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-17 00:13:57 +0000
commit27b3683509c5229cce540418778a8b64afbc0009 (patch)
treeb7164898142b8b093b91c8254c4387b6eec679ee /dev-util
parentf2bdc27fe0f79f8f9a3945eb2b1163ce75c56439 (diff)
gentoo auto-resync : 17:02:2025 - 00:13:57
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Manifest.gzbin65153 -> 65147 bytes
-rw-r--r--dev-util/bats/Manifest2
-rw-r--r--dev-util/bats/bats-1.11.0.ebuild43
-rw-r--r--dev-util/geany-plugins/Manifest6
-rw-r--r--dev-util/geany-plugins/files/geany-plugins-1.38-libgit2-1.4.patch139
-rw-r--r--dev-util/geany-plugins/files/geany-plugins-1.38-webkit2gtk-4.1.patch20
-rw-r--r--dev-util/geany-plugins/files/geany-plugins-2.0-gcc15.patch27
-rw-r--r--dev-util/geany-plugins/geany-plugins-2.0-r2.ebuild (renamed from dev-util/geany-plugins/geany-plugins-1.38-r410.ebuild)28
-rw-r--r--dev-util/geany/Manifest4
-rw-r--r--dev-util/geany/files/geany-2.0-gcc15.patch86
-rw-r--r--dev-util/geany/geany-2.0-r1.ebuild (renamed from dev-util/geany/geany-1.38.ebuild)14
-rw-r--r--dev-util/unicorn/Manifest14
-rw-r--r--dev-util/unicorn/files/unicorn-2.0.1-configure.patch34
-rw-r--r--dev-util/unicorn/files/unicorn-2.0.1-old-style-declaration.patch45
-rw-r--r--dev-util/unicorn/files/unicorn-2.0.1-strict-prototypes.patch299
-rw-r--r--dev-util/unicorn/metadata.xml3
-rw-r--r--dev-util/unicorn/unicorn-2.0.1-r1.ebuild93
-rw-r--r--dev-util/unicorn/unicorn-2.0.1.ebuild10
-rw-r--r--dev-util/unicorn/unicorn-2.1.1.ebuild93
-rw-r--r--dev-util/unicorn/unicorn-2.1.2.ebuild104
-rw-r--r--dev-util/unicorn/unicorn-9999.ebuild33
21 files changed, 854 insertions, 243 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 356f9edf8134..65be6b8b4e83 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/bats/Manifest b/dev-util/bats/Manifest
index b3f547c5da0d..a638b0aa9d22 100644
--- a/dev-util/bats/Manifest
+++ b/dev-util/bats/Manifest
@@ -1,5 +1,3 @@
-DIST bats-1.11.0.tar.gz 172044 BLAKE2B a86737e8f38e59031f926ce36e70417517095e2f34a9c6a8f1564879297dd097a44839343b66909e00338e53e8516a473e7b4bffc399166df87912e1e645809b SHA512 8f8dc767ba2d1551288942b50fdc73ef1f31e4dd1c6d7d539968454d286fff6509ed85d8728b4779d9b085e265ddf77e89a8cd8746f3afab0c7c3542eeacbd51
DIST bats-1.11.1.tar.gz 174699 BLAKE2B 3e64257d45344a9e0a77178a77fe9f19f65aae6bb4cbba497e6ee960cb2a1d8bbcc5078b0600024f25da5c298d075c89d1fe054ee0529fb23489af05b97c1e80 SHA512 56faccadebc92555418c6aa6cb1985e7928d6db9c7bdbdd788f3dd55e82ef831d2389aa5b7198dd810fa6fd9dc6cfae78f7a10149e3027ed4f6517ede02dd8c3
-EBUILD bats-1.11.0.ebuild 952 BLAKE2B c9e854e3d4c19831c39df962422c61c44b6ea672b18f27bc61c8b2dc96c2ab22dbc7c2b7fae7a918a770b8f93886724e2b4f1c57a9787c2afc129f719c357bd5 SHA512 773d5ea9376ae243ec5c5d79c3c4da6b52b84b3f7025c9e03fe3be9309c9274fa83908c5fe2a136a8ae1a00e110d0d58eb8fcd65099fcf6bbc617ab4cbc2c2f3
EBUILD bats-1.11.1.ebuild 952 BLAKE2B e4260a1d4096c972fd1bd7f1a2a6c326605bf4dbd145e04633cef6c04caac6529916bba33a0b50b074ee4752aa771455a183ac8624791073b78f48c241b42651 SHA512 943192c4ebddbb5f173096796c8756e5148fec9e19b325107d70569bef1eae59175bc0fbb9137dc2b474c5691aca170f5f76bfef1da1281b33149071b47a425a
MISC metadata.xml 960 BLAKE2B 1eef5273fa063fbeb31bf73be2dd264f83a37a75ae5bfc116cfe6e97a0707349b9fdd6e0700505d7f698e63eeffeec2f72f9f9e853be3c3eb70ea80891fddde0 SHA512 906495ef8f00981f362302c4cc0f24aca8a9a7d4898e4f729941836b3bb126590c7d4863b37b6d216c1485cc96502c330ca03801c9cb271793ebd298285f8923
diff --git a/dev-util/bats/bats-1.11.0.ebuild b/dev-util/bats/bats-1.11.0.ebuild
deleted file mode 100644
index d27ff055809f..000000000000
--- a/dev-util/bats/bats-1.11.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit multiprocessing optfeature
-
-MY_PN="bats-core"
-DESCRIPTION="Bats-core: Bash Automated Testing System"
-HOMEPAGE="https://github.com/bats-core/bats-core/"
-SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ppc ppc64 ~riscv ~sparc x86"
-
-DEPEND="app-shells/bash:*"
-RDEPEND="${DEPEND}"
-
-src_test() {
- local my_jobs=$(get_nproc)
- if ! command -v parallel >/dev/null; then
- my_jobs=1
- fi
- bin/bats --tap --jobs "${my_jobs}" test || die "Tests failed"
-}
-
-src_install() {
- exeinto /usr/libexec/${MY_PN}
- doexe libexec/${MY_PN}/*
- exeinto /usr/lib/${MY_PN}
- doexe lib/${MY_PN}/*
- dobin bin/${PN}
-
- dodoc README.md
- doman man/${PN}.1 man/${PN}.7
-}
-
-pkg_postinst() {
- optfeature "Parallel Execution" sys-process/parallel
-}
diff --git a/dev-util/geany-plugins/Manifest b/dev-util/geany-plugins/Manifest
index 344c92ef09ec..6623e8834891 100644
--- a/dev-util/geany-plugins/Manifest
+++ b/dev-util/geany-plugins/Manifest
@@ -1,9 +1,7 @@
-AUX geany-plugins-1.38-libgit2-1.4.patch 4854 BLAKE2B 5605f5776186adaadbc0f861a1de217587a0cadcbd5f0844a0071246e5622ac830f759de4b1c7a5a3540d809c40822b619d0985561cb0f05c557c6d4d06a4a37 SHA512 9b35a656171a6183bbc8764622903d2e7767fafb548c3f2d3cb4e072a01c0bdbbfbeee20b65d42dc36f30bbfde28c5c2899e14f5ccdde1c8e96c877670889977
-AUX geany-plugins-1.38-webkit2gtk-4.1.patch 811 BLAKE2B 1c682cd813350cc61d53fe72609aac7ef212bb4710f0925bc55f5da6f9241c3709d7183d25478024ac8883633ff3605b5b4e5e5c90005a09eb653c701059909a SHA512 4b02c9a13e57ded452d52ff10c0f81ddc56bc193e0301c0805ef154792125fe9f9b6a5c35e81d9535407a67b12a268f5e1eb122b24580c6cf5ad92b0de2b1479
AUX geany-plugins-2.0-gcc14.patch 380 BLAKE2B 11f10bf77c00e6db4397fb7ca769763891c1d2182e240aaa6139e379e1edf8f6bd69fa060b489368af9116e7a55b08d1bc7792ae2981a9f1b4e4185379fb7fc5 SHA512 45ac7d7729dd99eb824c34b740b6f101f04962736b6152ee13fec1c5a5a8f8c6154e8c732e94a89aef0969756a0d10be2656dbdb023e33b5f8e587cbf7c6374e
+AUX geany-plugins-2.0-gcc15.patch 900 BLAKE2B 073d70f8f15317ac77ef9d2ab695d5459d41b194ba4f7e14f332b47efde9ee6f2542fb36d9acd511b343fdd917c98fc51fa28fbe52f060fdffaec688984a1002 SHA512 95ccbed92c639329ee79990b27a9534cabf91f341648ff895261ca60c33d2a33ba293b27813171cedbf229300951773dae3ba25c9367804a3659619c2a6f3229
AUX geany-plugins-2.0-webkit2gtk-4.1.patch 1341 BLAKE2B 33613eee4f4f547d5eeecb13872e1fef85e934d25c74c93fa52915aaa14f02baac9e941215f617d5a29230a4eb68169d6b655444044f1b89d85371ba06000b6a SHA512 8cf132a9eb7d0054645a50aec9be847e743a888aa3fc5f349272c64aa158c3f1ab811e2d814aa8aa0e1f4b34d074c9095f18acf343005deee5356291a4347ec3
-DIST geany-plugins-1.38.tar.gz 4783970 BLAKE2B 386a05d7136183799059ef6d73b28a0d67d738939b0dc57649ac68f1049104568fe7c8453ebf2144277f60ee0834564b19bf4e756168864f1551962ba2411c14 SHA512 82d04331e23c5d81765b11e081a960a7a17172184cabe94efd2ddb37ac94668349b036e6083f77c867ac650fa7b251ba3970ae26b562b4568d6e313652763339
DIST geany-plugins-2.0.tar.bz2 3181264 BLAKE2B 6175f91a3a7effa081393e9397336e0f5f59846fdadd0e31584f237c14863016cc4ab1b17745e1e2804ad88161dc7e43aef97a2332a5c18a7f1baf10d2ea42ba SHA512 48d575459e5c9f905b8809796ea89a05f6e082a1bb1d29c9f44dd5de607a64ad65a27d18348312702d25cfbb80ea0348b9e806f8c0fe649ea558b5b4ccd84818
-EBUILD geany-plugins-1.38-r410.ebuild 3208 BLAKE2B 894283262a9a73fd2748522dae234622e7388f89e21defe808559b9aea1e46dc42284c8bbe2edd9e8c23fe8dc36810f910b3941cb5a0e0a5a06b7b19bb074349 SHA512 c7d6994c0b0119c2d8e4dbdd96161de225f6ea1c2a6dafc1c5b4eed3cede8b9a83adf0f67a600d9634ad8407514e6da5e287e5ed785ef16ac5c22136b36e091c
EBUILD geany-plugins-2.0-r1.ebuild 2900 BLAKE2B 4446915724c95e4ace8a1d662daaf22d87d99e86a14a29b34649cb85b31491c57a10ce9b6c141951d7adbd7597426deb2005abd992f07b83799b5022cd9c5d96 SHA512 1b50bdc99488c00ec1c7d0dd1a0f9665c1cef9784f450de863dbace8e68d0f928aa00e11092cac254c64dc804366306ae919d6bf07c139a9a712dbcdfb3dd01b
+EBUILD geany-plugins-2.0-r2.ebuild 2937 BLAKE2B 108d1e880bcd17b3e6dbc54e50fcab2ce0f4d9512af9c300d16a28ebab6e52482b7467aadeeeb7d65e1b1eb0faed1bfbe29a1941ec4160591e6776bc50de468f SHA512 b409414a5ec354adde8e90613796affc18e360bd0ce1ec6eb4a632f1485ed9ad63cb6bbbcf3d7be3ac1f7965ab1aac39de74c28674c318f9c0aa609441413dc1
MISC metadata.xml 1143 BLAKE2B 71996899973fa713a167cd6acab9c21ef46efef1b12bd997867ae2553c3a739e6a1c0395d8c712e11dcb280ba299885c3a69c1b642650d70e8f8565249dd7e14 SHA512 8fbfdb5fc84b37fbd33924d12beea933231c191db6b9c51e9f22bc37b3169b04d063a7537e008bebb2bac394de8b040c8116b5ae439c9dfc348ce9fe5b8d8da0
diff --git a/dev-util/geany-plugins/files/geany-plugins-1.38-libgit2-1.4.patch b/dev-util/geany-plugins/files/geany-plugins-1.38-libgit2-1.4.patch
deleted file mode 100644
index 87034471d09e..000000000000
--- a/dev-util/geany-plugins/files/geany-plugins-1.38-libgit2-1.4.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-# https://github.com/geany/geany-plugins/commit/668f5d07eef16e227402eab09141c738b315d94b
-# https://github.com/geany/geany-plugins/commit/5d9f1bc6d010e6b4c6a21af8a39b90922f89a82c
---- a/git-changebar/src/gcb-plugin.c
-+++ b/git-changebar/src/gcb-plugin.c
-@@ -32,11 +32,19 @@
- #include <geany.h>
- #include <document.h>
-
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 22) )
-+#ifdef LIBGIT2_VER_MINOR
-+# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) \
-+ ((LIBGIT2_VER_MAJOR == (MAJOR) && LIBGIT2_VER_MINOR >= (MINOR)) || \
-+ LIBGIT2_VER_MAJOR > (MAJOR))
-+#else /* ! defined(LIBGIT2_VER_MINOR) */
-+# define CHECK_LIBGIT2_VERSION(MAJOR, MINOR) 0
-+#endif
-+
-+#if ! CHECK_LIBGIT2_VERSION(0, 22)
- # define git_libgit2_init git_threads_init
- # define git_libgit2_shutdown git_threads_shutdown
- #endif
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 23) )
-+#if ! CHECK_LIBGIT2_VERSION(0, 23)
- /* 0.23 added @p binary_cb */
- # define git_diff_buffers(old_buffer, old_len, old_as_path, \
- new_buffer, new_len, new_as_path, options, \
-@@ -45,7 +53,7 @@
- new_buffer, new_len, new_as_path, options, \
- file_cb, hunk_cb, line_cb, payload)
- #endif
--#if ! defined (LIBGIT2_VER_MINOR) || ( (LIBGIT2_VER_MAJOR == 0) && (LIBGIT2_VER_MINOR < 28) )
-+#if ! CHECK_LIBGIT2_VERSION(0, 28)
- # define git_buf_dispose git_buf_free
- # define git_error_last giterr_last
- #endif
-@@ -211,30 +219,19 @@ static const struct {
- };
-
-
--/* workaround https://github.com/libgit2/libgit2/pull/3187 */
--static int
--gcb_git_buf_grow (git_buf *buf,
-- size_t target_size)
--{
-- if (buf->asize == 0) {
-- if (target_size == 0) {
-- target_size = buf->size;
-- }
-- if ((target_size & 7) == 0) {
-- target_size++;
-- }
-- }
-- return git_buf_grow (buf, target_size);
--}
--#define git_buf_grow gcb_git_buf_grow
--
- static void
- buf_zero (git_buf *buf)
- {
- if (buf) {
- buf->ptr = NULL;
- buf->size = 0;
-+#if ! CHECK_LIBGIT2_VERSION(1, 4)
- buf->asize = 0;
-+#else
-+ /* we don't really need this field, but the documentation states that all
-+ * fields should be set to 0, so fill it as well */
-+ buf->reserved = 0;
-+#endif
- }
- }
-
-@@ -248,6 +245,52 @@ clear_cached_blob_contents (void)
- G_blob_contents_tag = 0;
- }
-
-+/* similar to old git_blob_filtered_content() but makes sure the caller owns
-+ * the data in the output buffer -- and uses a boolean return */
-+static gboolean
-+get_blob_contents (git_buf *out,
-+ git_blob *blob,
-+ const char *as_path,
-+ int check_for_binary_data)
-+{
-+/* libgit2 1.4 changed buffer API quite a bit */
-+#if ! CHECK_LIBGIT2_VERSION(1, 4)
-+ gboolean success = TRUE;
-+
-+ if (git_blob_filtered_content (out, blob, as_path,
-+ check_for_binary_data) != 0)
-+ return FALSE;
-+
-+ /* Workaround for https://github.com/libgit2/libgit2/pull/3187
-+ * We want to own the buffer, which git_buf_grow(buf, 0) was supposed to do,
-+ * but there is a corner case where it doesn't do what it should and
-+ * truncates the buffer contents, so we fix this manually. */
-+ if (out->asize == 0) {
-+ size_t target_size = out->size;
-+ if ((target_size & 7) == 0) {
-+ target_size++;
-+ }
-+ success = (git_buf_grow (out, target_size) == 0);
-+ }
-+
-+ return success;
-+#else /* libgit2 >= 1.4 */
-+ /* Here we can assume we will always get a buffer we own (at least as of
-+ * 2022-06-05 it is the case), so there's no need for a pendent to the
-+ * previous git_buf_grow() shenanigans.
-+ * This code path does the same as the older git_blob_filtered_content()
-+ * but with non-deprecated API */
-+ git_blob_filter_options opts = GIT_BLOB_FILTER_OPTIONS_INIT;
-+
-+ if (check_for_binary_data)
-+ opts.flags |= GIT_BLOB_FILTER_CHECK_FOR_BINARY;
-+ else
-+ opts.flags &= ~GIT_BLOB_FILTER_CHECK_FOR_BINARY;
-+
-+ return git_blob_filter(out, blob, as_path, &opts) == 0;
-+#endif
-+}
-+
- /* get the file blob for @relpath at HEAD */
- static gboolean
- repo_get_file_blob_contents (git_repository *repo,
-@@ -271,11 +314,8 @@ repo_get_file_blob_contents (git_repository *repo,
- git_blob *blob;
-
- if (git_blob_lookup (&blob, repo, git_tree_entry_id (entry)) == 0) {
-- if (git_blob_filtered_content (contents, blob, relpath,
-- check_for_binary_data) == 0 &&
-- git_buf_grow (contents, 0) == 0) {
-- success = TRUE;
-- }
-+ success = get_blob_contents (contents, blob, relpath,
-+ check_for_binary_data);
- git_blob_free (blob);
- }
- git_tree_entry_free (entry);
diff --git a/dev-util/geany-plugins/files/geany-plugins-1.38-webkit2gtk-4.1.patch b/dev-util/geany-plugins/files/geany-plugins-1.38-webkit2gtk-4.1.patch
deleted file mode 100644
index ad543af6587f..000000000000
--- a/dev-util/geany-plugins/files/geany-plugins-1.38-webkit2gtk-4.1.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/build/markdown.m4 b/build/markdown.m4
-index 6c1f53a6..39bea2a6 100644
---- a/build/markdown.m4
-+++ b/build/markdown.m4
-@@ -49,13 +49,13 @@ AC_DEFUN([GP_CHECK_MARKDOWN],
- GTK_VERSION=2.16
- WEBKIT_VERSION=1.1.13
-
-- GP_CHECK_GTK3([webkit_package=webkit2gtk-4.0],
-+ GP_CHECK_GTK3([webkit_package=webkit2gtk-4.1],
- [webkit_package=webkit-1.0])
- GP_CHECK_PLUGIN_DEPS([markdown], [MARKDOWN],
- [$GP_GTK_PACKAGE >= ${GTK_VERSION}
- $webkit_package >= ${WEBKIT_VERSION}
- gthread-2.0])
-- AM_CONDITIONAL([MARKDOWN_WEBKIT2], [test "$webkit_package" = webkit2gtk-4.0])
-+ AM_CONDITIONAL([MARKDOWN_WEBKIT2], [test "$webkit_package" = webkit2gtk-4.1])
-
- GP_COMMIT_PLUGIN_STATUS([Markdown])
-
diff --git a/dev-util/geany-plugins/files/geany-plugins-2.0-gcc15.patch b/dev-util/geany-plugins/files/geany-plugins-2.0-gcc15.patch
new file mode 100644
index 000000000000..d30e496bbf02
--- /dev/null
+++ b/dev-util/geany-plugins/files/geany-plugins-2.0-gcc15.patch
@@ -0,0 +1,27 @@
+# https://github.com/geany/geany-plugins/pull/1389
+--- a/git-changebar/src/gcb-plugin.c
++++ b/git-changebar/src/gcb-plugin.c
+@@ -1410,9 +1410,9 @@ read_setting_boolean (GKeyFile *kf,
+ const gchar *key,
+ gpointer value)
+ {
+- gboolean *bool = value;
++ gboolean *boolean = value;
+
+- *bool = utils_get_setting_boolean (kf, group, key, *bool);
++ *boolean = utils_get_setting_boolean (kf, group, key, *boolean);
+ }
+
+ static void
+@@ -1421,9 +1421,9 @@ write_setting_boolean (GKeyFile *kf,
+ const gchar *key,
+ gconstpointer value)
+ {
+- const gboolean *bool = value;
++ const gboolean *boolean = value;
+
+- g_key_file_set_boolean (kf, group, key, *bool);
++ g_key_file_set_boolean (kf, group, key, *boolean);
+ }
+
+ /* loads @filename in @kf and return %FALSE if failed, emitting a warning
diff --git a/dev-util/geany-plugins/geany-plugins-1.38-r410.ebuild b/dev-util/geany-plugins/geany-plugins-2.0-r2.ebuild
index 72532b531671..e92ded0945d8 100644
--- a/dev-util/geany-plugins/geany-plugins-1.38-r410.ebuild
+++ b/dev-util/geany-plugins/geany-plugins-2.0-r2.ebuild
@@ -1,27 +1,26 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( lua5-1 )
-LUA_REQ_USE="deprecated"
-inherit autotools flag-o-matic lua-single
+inherit autotools lua-single
DESCRIPTION="A collection of different plugins for Geany"
HOMEPAGE="https://plugins.geany.org"
-SRC_URI="https://plugins.geany.org/${PN}/${P}.tar.gz"
+SRC_URI="https://plugins.geany.org/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 arm ppc ppc64 ~riscv ~sparc x86"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="ctags debugger enchant git gpg gtkspell lua markdown nls pretty-printer scope workbench"
+IUSE="ctags debugger enchant git gpg gtkspell lua markdown nls pretty-printer scope webhelper workbench"
REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
DEPEND="
dev-libs/glib:2
- >=dev-util/geany-1.37[-gtk2(-)]
+ >=dev-util/geany-2.0
x11-libs/gtk+:3
ctags? ( dev-util/ctags )
debugger? ( x11-libs/vte:2.91 )
@@ -36,6 +35,7 @@ DEPEND="
)
pretty-printer? ( dev-libs/libxml2:2 )
scope? ( x11-libs/vte:2.91 )
+ webhelper? ( net-libs/webkit-gtk:4.1 )
workbench? ( dev-libs/libgit2:= )
"
RDEPEND="${DEPEND}
@@ -46,7 +46,8 @@ BDEPEND="virtual/pkgconfig
"
PATCHES=(
- "${FILESDIR}/${P}-libgit2-1.4.patch"
+ "${FILESDIR}/${P}-gcc14.patch"
+ "${FILESDIR}/${P}-gcc15.patch"
"${FILESDIR}/${P}-webkit2gtk-4.1.patch"
)
@@ -60,10 +61,6 @@ src_prepare() {
}
src_configure() {
- # -DLUA_COMPAT_OPENLIB=1 is required to enable the
- # deprecated (in 5.1) luaL_openlib API (#878529)
- use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
-
local myeconfargs=(
--disable-cppcheck
--disable-extra-c-warnings
@@ -107,18 +104,13 @@ src_configure() {
$(use_enable pretty-printer)
$(use_enable scope)
$(use_enable enchant spellcheck)
+ $(use_enable webhelper)
$(use_enable workbench)
# GeanyGenDoc requires ctpl which isn’t yet in portage
--disable-geanygendoc
# Require libsoup-2.4 which conflicts with webkit2gtk-4.1
--disable-geniuspaste
--disable-updatechecker
- # Require obsolete and vulnerable webkit-gtk versions
- --disable-devhelp
- --disable-webhelper
- # GTK 2 only
- --disable-geanypy
- --disable-multiterm
)
econf "${myeconfargs[@]}"
diff --git a/dev-util/geany/Manifest b/dev-util/geany/Manifest
index e21636d9a246..965c3523b3f5 100644
--- a/dev-util/geany/Manifest
+++ b/dev-util/geany/Manifest
@@ -1,5 +1,5 @@
-DIST geany-1.38.tar.bz2 4860717 BLAKE2B 3dda3a7454f96be18de95f8dfeb7a6ee2627ffe370879fa3ee7aee851e21fa46076de6b9741b6e83af94b66afa245a0f69237db4582858bc40f819d8a3c78e6e SHA512 5aff0643d0d9e667d0fb526e9c8426cb80c89decf92110683086c2a7a18e0d3d55ab514fdd68aa0c4431c98ae0c4685607b49c620525184c89e21b26fca06699
+AUX geany-2.0-gcc15.patch 2014 BLAKE2B 986d9f1e8e66e5182b5daf1647655eb515ac938bb50970375334e03c816424717adc19ad4cf4d17ac875a4d3f7a537736498a4d722dbf9d4b87c4c98c56be78e SHA512 3987007ed186ebb4423e5d38ee2e0c4ffafb79bb698c17ebea7a3b0d933ad8b8f21d5f35699ecb7d33aff88a909dd088f8a95b12a60eea80d0bcdb7a6be108e7
DIST geany-2.0.tar.bz2 6836300 BLAKE2B 9a810827c3c8e5156329ec2e693d7181183d341ea74b5cbca940904912004e09b1ac0307710d2a6bec76c3c4b3e08c0a5231ffe5e65ba1234b33900192703d1a SHA512 443b64fc09501a95241340a6ee582810a3fddb033ef06c1a42d530625921a871a5183b575d73a858fa98b040651c4308a273272cb735753e969fd1270170b87d
-EBUILD geany-1.38.ebuild 1606 BLAKE2B c8d96e008952ab1734c81070ac9573953332883d8f8864c665e7fed2d1e4361891a4223bfada790cc8453635db3fef38a3a3df7413361670b4214eccf9e6b092 SHA512 840227a680da2fd62955054c8b07bd588dc671b3377cfc8edb302b1f15d9ad915ec2402e21e1ec27ba2d283d150698eddf4abee9e5668820dc9e156e06a447ec
+EBUILD geany-2.0-r1.ebuild 1744 BLAKE2B 4153c575c4c93b7f87b52c7ce63547cbc100f318dd374d2b0a16b3b73886ab5309ac7ef6c21dce43922b240a3bf564052923e2ee63e2d09019e107d57d7f113e SHA512 d6578b9feaa18900593e221e0daf81822d6230241342755241a0401cf2353345a2b9f01d260e2e638c04992dab3e4f4845089d8d6f92e1989463c7f4b3029935
EBUILD geany-2.0.ebuild 1695 BLAKE2B 6a12cf9d49e60e502c00604cb0f9bcc76122e776979f8655bc4adc80c3b0e55b12a239a6a277c38cd0134cdd4d8dbdf079860cf4a54a6a160917a55d2ffe62ad SHA512 d074084f261befd1e15c96cefcb3a2dfada75174f63b9d10d4b4ff318ed921d75b429feb0277587efc68bf30fba5c4036635639500be5bcb60b77bfb0ed352fb
MISC metadata.xml 2079 BLAKE2B 231aa8e22749349026a3b3008a8fd75014ed5f26a139d5cd93a70735527ccbc056355a9020afb304a5d95c75913a4cf04dc5d9b26e5bef8062f49da450379b74 SHA512 e454183d6cd55228276bbb28ddf672a826152bc2fa1293f31c386a4f4343aa4c36b27caef3295a8c4b9d45aed13334e2e0566e58b01b4bff14f52aff30913b9e
diff --git a/dev-util/geany/files/geany-2.0-gcc15.patch b/dev-util/geany/files/geany-2.0-gcc15.patch
new file mode 100644
index 000000000000..259bea2e0007
--- /dev/null
+++ b/dev-util/geany/files/geany-2.0-gcc15.patch
@@ -0,0 +1,86 @@
+# https://sourceforge.net/p/scintilla/code/ci/c7ffad21b23dfad4e8e9f36bb587acc2f6e84fee/
+--- a/scintilla/gtk/PlatGTK.cxx
++++ b/scintilla/gtk/PlatGTK.cxx
+@@ -7,2 +7,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cstring>
+--- a/scintilla/src/AutoComplete.cxx
++++ b/scintilla/src/AutoComplete.cxx
+@@ -9,2 +9,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/CallTip.cxx
++++ b/scintilla/src/CallTip.cxx
+@@ -9,2 +9,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/CellBuffer.cxx
++++ b/scintilla/src/CellBuffer.cxx
+@@ -9,2 +9,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/ChangeHistory.cxx
++++ b/scintilla/src/ChangeHistory.cxx
+@@ -9,2 +9,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/Decoration.cxx
++++ b/scintilla/src/Decoration.cxx
+@@ -8,2 +8,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cstring>
+--- a/scintilla/src/Document.cxx
++++ b/scintilla/src/Document.cxx
+@@ -9,2 +9,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/Indicator.cxx
++++ b/scintilla/src/Indicator.cxx
+@@ -7,2 +7,3 @@
+
++#include <cstdint>
+ #include <cmath>
+--- a/scintilla/src/KeyMap.cxx
++++ b/scintilla/src/KeyMap.cxx
+@@ -8,2 +8,3 @@
+ #include <cstdlib>
++#include <cstdint>
+
+--- a/scintilla/src/LineMarker.cxx
++++ b/scintilla/src/LineMarker.cxx
+@@ -7,2 +7,3 @@
+
++#include <cstdint>
+ #include <cstring>
+--- a/scintilla/src/PerLine.cxx
++++ b/scintilla/src/PerLine.cxx
+@@ -8,2 +8,3 @@
+ #include <cstddef>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/Style.cxx
++++ b/scintilla/src/Style.cxx
+@@ -7,2 +7,4 @@
+
++#include <cstdint>
++
+ #include <stdexcept>
+--- a/scintilla/src/ViewStyle.cxx
++++ b/scintilla/src/ViewStyle.cxx
+@@ -8,2 +8,3 @@
+ #include <cstddef>
++#include <cstdint>
+ #include <cassert>
+--- a/scintilla/src/XPM.cxx
++++ b/scintilla/src/XPM.cxx
+@@ -8,2 +8,3 @@
+ #include <cstdlib>
++#include <cstdint>
+ #include <cstring>
diff --git a/dev-util/geany/geany-1.38.ebuild b/dev-util/geany/geany-2.0-r1.ebuild
index e41079ad515e..c2480b52fdf5 100644
--- a/dev-util/geany/geany-1.38.ebuild
+++ b/dev-util/geany/geany-2.0-r1.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit strip-linguas xdg
+inherit optfeature strip-linguas xdg
-LANGS="ar ast be bg ca cs de el en_GB es et eu fa fi fr gl he hi hu id it ja kk ko ku lb lt mn nl nn pl pt pt_BR ro ru sk sl sr sv tr uk vi zh_CN ZH_TW"
+LANGS="ar ast be bg ca cs de el en_GB es et eu fa fi fr gl he hi hu id it ja kk ko ku lb lt mn nl nn pl pt pt_BR ro ru si sk sl sr sv tr uk vi zh_CN ZH_TW"
NOSHORTLANGS="en_GB zh_CN zh_TW"
DESCRIPTION="GTK+ based fast and lightweight IDE"
@@ -16,7 +16,7 @@ if [[ "${PV}" = 9999* ]] ; then
else
[[ "${PV}" == *_pre* ]] && inherit autotools
SRC_URI="https://download.geany.org/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
+ KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="GPL-2+ HPND"
SLOT="0"
@@ -26,7 +26,7 @@ IUSE="+vte"
BDEPEND="virtual/pkgconfig"
RDEPEND="
>=dev-libs/glib-2.32:2
- >=x11-libs/gtk+-3.0:3
+ >=x11-libs/gtk+-3.24:3
vte? ( x11-libs/vte:2.91 )
"
DEPEND="
@@ -35,6 +35,8 @@ DEPEND="
sys-devel/gettext
"
+PATCHES=( "${FILESDIR}/${P}-gcc15.patch" )
+
pkg_setup() {
strip-linguas ${LANGS}
}
@@ -73,6 +75,8 @@ pkg_preinst() {
pkg_postinst() {
xdg_pkg_postinst
+
+ optfeature "editing files outside the local filesystem" gnome-base/gvfs
}
pkg_postrm() {
diff --git a/dev-util/unicorn/Manifest b/dev-util/unicorn/Manifest
index 6bbb929f1264..be6a17f11bc8 100644
--- a/dev-util/unicorn/Manifest
+++ b/dev-util/unicorn/Manifest
@@ -1,4 +1,12 @@
+AUX unicorn-2.0.1-configure.patch 894 BLAKE2B ee4ae97b7f462287dac96fb446c58ea83d73f206659e88b5ac663482c3b38eb96551bc5e93a72144b768b8c7ca069b53190710000f0b6a0c379f6986aa3ef050 SHA512 fd6e15ae9ff4143d48155ac0774ffece13a36c7be8841532a66188de9f928e62dbbe9a4352559e316cdc57791b86eaeb13f2c45d461fbd5dad9e2092670ee0eb
+AUX unicorn-2.0.1-old-style-declaration.patch 1387 BLAKE2B 43d01ea5aa2a2cddca38955786e424805fe4620153d8953f8a52282878acf2a5dc81787fe848567fbafad052e645146a202f0d91036eae50134ee413af9b908d SHA512 3be01281c68b285b72376e518f3fc438fa585af682338f99483594268321803b660513d1e62a8872fefac0538c9206a8bb9b6d710879f796819b3e6c027e8c29
+AUX unicorn-2.0.1-strict-prototypes.patch 7529 BLAKE2B c66d6ff669e214e752c44611159b1829c6f06ec75974dcf53616cb1e889b8141b2cd025af9df9a81c80f9e1730e549894826a5e03b6a5babcbb6f94fbc658b02 SHA512 d94a42c55b8f1d9206bfed16d559d221d86941ba022312b7f3dc043d8e5b0002166329218ed1f5b047e30de67a1d2fd1bb0041e4d07635a8895ebf77c728ef8e
DIST unicorn-2.0.1.gh.tar.gz 4070004 BLAKE2B 4ab8f92367e7df5762d29ed58dfff524f59053e28548b170b982d16988eea16df46851d2ea559d8beabb4f1315e5ee627f9ded755a4f3b1cfd6d863a50c633b6 SHA512 4249d33d38614ea1ca51e38c7838cb276306100aa44c65ad1b3e39304e4b856ac643a9c6f9d13678fc07bea58989a08b64653d17afe9e62bcef2936ba63e1b1f
-EBUILD unicorn-2.0.1.ebuild 1738 BLAKE2B 5ebf472d18bb209f1245ff88db87fbd48d15c3cb6e64c7ffd5971321a163d9ee1e566244c2babb0f206abd1a7374c7f24cdb56db9101cb7cd960bbb83bf9569e SHA512 0bc2e58a7a5fa95e191068ae5852eea4cfc3860106e7ebcb98350670cb5fc0dd5ffde3be7c6bda64e4d121673153a329df9800f4aafe354767f4606e5bf24798
-EBUILD unicorn-9999.ebuild 1740 BLAKE2B 5d75e14bd5e9b9cc7fc2dfdb64eb6ea49a391b92638ea21ad598ec3b3662572136c4c5a870306c8b5585d7a6b8ea360e67cffe478423874ec5871c2fda74ab9b SHA512 e97e0836e003b0dde81328ff81b4454187f289d182e82f7ece6a3151d75d097c13a21eeb63f50d26e401068257012148a108fae593dec0d1e329860694da9053
-MISC metadata.xml 510 BLAKE2B 857f3ee3645ffdb28846b7305ec3066ddf49934225fe2c173a5a6b5b8354b208b6bb1337c2e11713b7c983a6fe3a1e67dae62bf64b0c9228f14ccfea8d57d5c5 SHA512 e1da17744042b95f11fb8b5f562020738c7495b0256469420cfa19fda995a24f02e806f67db8521e2f4a19a32825bf54a0865ec723d853cd5aa440c42b007946
+DIST unicorn-2.1.1.gh.tar.gz 4176172 BLAKE2B 3dd434121418b9a4eb69683cfca6ec0cd019b632492fbfff421eaf26f4907a2f30bf78699b3afe28df624037e3973a5110a6ea21bd233e66a04a689d3e3e5d1c SHA512 d6184b87a0fb729397ec2ac2cb8bfd9d10c9d4276e49efa681c66c7c54d1a325305a920332a708e68989cc299d0d1a543a1ceeaf552a9b44ec93084f7bf85ef2
+DIST unicorn-2.1.2.gh.tar.gz 4196820 BLAKE2B 3e97c0f0b6dccd157222d473ef51f28fbcaf72eda056713fe1463a3f741f1abe6fbf73d770f391c3730c02e94ede2de4f25c0bf460c80dcc560a79258a7338b2 SHA512 f05e16f02fbf527875f7246811307b8b224cecd4d305dd59490a2a51444672c7ec769153545c857b5425111c19b8c0c33abbb51fcc8d49c0777771d31cf32630
+EBUILD unicorn-2.0.1-r1.ebuild 1962 BLAKE2B 6f9c80d5099842284d8bb09573c23f310e9a96220d4a0fc1b7be3ddd73a2194b835940bf3fc0c1397c32183b6a166578d5a1d7e232b44ca749a2f5415fc4b214 SHA512 88008c916adce75fa2b4fc36f1068ebd982b191ee1457f819c44f877a83986baa7456dce371566286f0f840d021fcb230f74b6f6b253159f64eb6df0bb258722
+EBUILD unicorn-2.0.1.ebuild 1868 BLAKE2B ceb48894a9104fcb8e75a9353aa76751e1940039727c516435307b807aa0970f58f4070fa9f457022d983a3b54c20169f505395378a959c6a2cc4f7f1afa2655 SHA512 0d8da0ab68c7584f0976b504d3c56011fcc14ef3d45262d17bb91768a8ecd0874def9c15d21a7661f45c75f09557e631d45f57bf3e301b38170085d33c6c5c45
+EBUILD unicorn-2.1.1.ebuild 1932 BLAKE2B afb31039c958f36eefabf968b76f9abe2a68c0f8a3def7ef573566bf9ac79cf82a5589cf667854f8d42954dabc71f34c3591f630d516ff9f0dd7a370037c9fe0 SHA512 ab93d78802f826108c482211ed3df3a8151be1c165a0927d2f363e2ef9dec350e3f7ac554c274b9a0ef2f3e358c31e0fa10eed3a171d731496dbaa50f97d0120
+EBUILD unicorn-2.1.2.ebuild 2142 BLAKE2B cedf19add0e5ac75779ba2c1fff96ad660a97565d9aac525d3d6441557ce4d9f67fecbc6a90b4f7da4d958c793a1db2b755f73d741f3dd8fc0854bd8ff40e2bf SHA512 ede7a7469d5d1ecc0a652aa3601ce360c23d2017e17b16d6a633733f03bd3498fa6a07207027cdb1ece2a72814e45a1eb1232760c7545e8691eb10638341e952
+EBUILD unicorn-9999.ebuild 2142 BLAKE2B cedf19add0e5ac75779ba2c1fff96ad660a97565d9aac525d3d6441557ce4d9f67fecbc6a90b4f7da4d958c793a1db2b755f73d741f3dd8fc0854bd8ff40e2bf SHA512 ede7a7469d5d1ecc0a652aa3601ce360c23d2017e17b16d6a633733f03bd3498fa6a07207027cdb1ece2a72814e45a1eb1232760c7545e8691eb10638341e952
+MISC metadata.xml 570 BLAKE2B 1d58bd235b5016d23d7e0733765cf9c5996fec700e2d48735ebb97d7093c864ebc6ae551db9b252ed3fa1ea083aa48fde1fb64ad68f37ae05011a63a2ba13e30 SHA512 bb9f43b9a653f5d0664df11b7d151c74b885f420a378632bae0e4726b70bbe7692cc443e3d93f44645356a6ea7438d9d75b35fbca7f97de620445add248ed314
diff --git a/dev-util/unicorn/files/unicorn-2.0.1-configure.patch b/dev-util/unicorn/files/unicorn-2.0.1-configure.patch
new file mode 100644
index 000000000000..57f945e08d37
--- /dev/null
+++ b/dev-util/unicorn/files/unicorn-2.0.1-configure.patch
@@ -0,0 +1,34 @@
+From a78d690da54f3afbd3213502c997ba68b29aa404 Mon Sep 17 00:00:00 2001
+From: "Z. Liu" <zhixu.liu@gmail.com>
+Date: Tue, 14 Jan 2025 08:47:54 +0800
+Subject: [PATCH] configure: add <sys/timex.h> for clock_adjtime on musl
+ (#2085)
+
+for glibc, if _GNU_SOURCE is defined, <time.h> will include <sys/timex.h>
+but not for musl, so add "#include <sys/timex.h>"
+
+although `man clock_adjtime` said "#include <sys/timex.h>", but it won't
+work for glibc w/o "#include <time.h>", I don't known why yet.
+
+PS it seems clock_adjtime is used nowhere?
+
+Signed-off-by: Z. Liu <zhixu.liu@gmail.com>
+---
+ qemu/configure | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/qemu/configure b/qemu/configure
+index db820ca1..47d4a4c6 100755
+--- a/qemu/configure
++++ b/qemu/configure
+@@ -1455,6 +1455,7 @@ fi
+ clock_adjtime=no
+ cat > $TMPC <<EOF
+ #include <time.h>
++#include <sys/timex.h>
+
+ int main(void)
+ {
+--
+2.45.2
+
diff --git a/dev-util/unicorn/files/unicorn-2.0.1-old-style-declaration.patch b/dev-util/unicorn/files/unicorn-2.0.1-old-style-declaration.patch
new file mode 100644
index 000000000000..b63ffee0c096
--- /dev/null
+++ b/dev-util/unicorn/files/unicorn-2.0.1-old-style-declaration.patch
@@ -0,0 +1,45 @@
+commit 9a2583e96710ba49a8fd2a4ab87db7212c1e887c
+Upstream: https://github.com/unicorn-engine/unicorn/pull/1886
+Author: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de>
+Date: Sun Oct 8 13:40:23 2023 +0200
+
+ fix deprecated storage-class declarations
+
+--- a/qemu/accel/tcg/cputlb.c
++++ b/qemu/accel/tcg/cputlb.c
+@@ -1415,7 +1415,7 @@ load_memop(const void *haddr, MemOp op)
+ }
+ }
+
+-static uint64_t inline
++static inline uint64_t
+ load_helper(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi,
+ uintptr_t retaddr, MemOp op, bool code_read,
+ FullLoadHelper *full_load)
+@@ -1983,7 +1983,7 @@ uint64_t cpu_ldq_data(CPUArchState *env, target_ulong ptr)
+ * Store Helpers
+ */
+
+-static void inline
++static inline void
+ store_memop(void *haddr, uint64_t val, MemOp op)
+ {
+ switch (op) {
+@@ -2014,7 +2014,7 @@ store_memop(void *haddr, uint64_t val, MemOp op)
+ }
+ }
+
+-static void inline
++static inline void
+ store_helper(CPUArchState *env, target_ulong addr, uint64_t val,
+ TCGMemOpIdx oi, uintptr_t retaddr, MemOp op)
+ {
+@@ -2343,7 +2343,7 @@ void helper_be_stq_mmu(CPUArchState *env, target_ulong addr, uint64_t val,
+ * Store Helpers for cpu_ldst.h
+ */
+
+-static void inline
++static inline void
+ cpu_store_helper(CPUArchState *env, target_ulong addr, uint64_t val,
+ int mmu_idx, uintptr_t retaddr, MemOp op) // qq
+ {
diff --git a/dev-util/unicorn/files/unicorn-2.0.1-strict-prototypes.patch b/dev-util/unicorn/files/unicorn-2.0.1-strict-prototypes.patch
new file mode 100644
index 000000000000..d8ae8677d837
--- /dev/null
+++ b/dev-util/unicorn/files/unicorn-2.0.1-strict-prototypes.patch
@@ -0,0 +1,299 @@
+commit 5983b399d84c534ad2f19461dd38f69e70ea9cfb
+Upstream: https://github.com/unicorn-engine/unicorn/pull/1886
+Author: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de>
+Date: Sun Oct 8 13:39:13 2023 +0200
+
+ use full prototypes for functions without parameters
+
+--- a/bindings/ruby/unicorn_gem/ext/unicorn.c
++++ b/bindings/ruby/unicorn_gem/ext/unicorn.c
+@@ -31,7 +31,7 @@ VALUE SavedContext = Qnil;
+ VALUE Hook = Qnil;
+
+
+-void Init_unicorn_engine() {
++void Init_unicorn_engine(void) {
+ rb_require("unicorn_engine/unicorn_const");
+ UnicornModule = rb_define_module("UnicornEngine");
+ UcError = rb_define_class_under(UnicornModule, "UcError", rb_eStandardError);
+--- a/samples/mem_apis.c
++++ b/samples/mem_apis.c
+@@ -193,7 +193,7 @@ static void do_nx_demo(bool cause_fault)
+ uc_close(uc);
+ }
+
+-static void nx_test()
++static void nx_test(void)
+ {
+ printf("NX demo - step 1: show that code runs to completion\n");
+ do_nx_demo(false);
+@@ -276,7 +276,7 @@ static void do_perms_demo(bool change_perms)
+ uc_close(uc);
+ }
+
+-static void perms_test()
++static void perms_test(void)
+ {
+ printf("Permissions demo - step 1: show that area is writeable\n");
+ do_perms_demo(false);
+@@ -355,7 +355,7 @@ static void do_unmap_demo(bool do_unmap)
+ uc_close(uc);
+ }
+
+-static void unmap_test()
++static void unmap_test(void)
+ {
+ printf("Unmap demo - step 1: show that area is writeable\n");
+ do_unmap_demo(false);
+--- a/samples/sample_arm.c
++++ b/samples/sample_arm.c
+@@ -366,7 +366,7 @@ static void test_thumb_ite_internal(bool step, uint32_t *r2_out,
+ *r3_out = r3;
+ }
+
+-static void test_thumb_ite()
++static void test_thumb_ite(void)
+ {
+ uint32_t r2, r3;
+ uint32_t step_r2, step_r3;
+@@ -390,7 +390,7 @@ static void test_thumb_ite()
+ }
+ }
+
+-static void test_read_sctlr()
++static void test_read_sctlr(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/samples/sample_arm64.c
++++ b/samples/sample_arm64.c
+@@ -197,7 +197,7 @@ static void test_arm64eb(void)
+ uc_close(uc);
+ }
+
+-static void test_arm64_sctlr()
++static void test_arm64_sctlr(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+@@ -248,7 +248,7 @@ static uint32_t hook_mrs(uc_engine *uc, uc_arm64_reg reg,
+ return 1;
+ }
+
+-static void test_arm64_hook_mrs()
++static void test_arm64_hook_mrs(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/samples/sample_batch_reg.c
++++ b/samples/sample_batch_reg.c
+@@ -49,7 +49,7 @@ void hook_code(uc_engine *uc, uint64_t addr, uint32_t size, void *user_data)
+ printf("HOOK_CODE: 0x%" PRIx64 ", 0x%x\n", addr, size);
+ }
+
+-int main()
++int main(void)
+ {
+ int i;
+ uc_hook sys_hook;
+--- a/samples/sample_ctl.c
++++ b/samples/sample_ctl.c
+@@ -79,7 +79,7 @@ static void trace_new_edge(uc_engine *uc, uc_tb *cur, uc_tb *prev, void *data)
+ prev->pc + prev->size - 1, cur->pc);
+ }
+
+-void test_uc_ctl_exits()
++void test_uc_ctl_exits(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+@@ -193,7 +193,7 @@ double time_emulation(uc_engine *uc, uint64_t start, uint64_t end)
+ return (t2 - t1) * 1000.0 / CLOCKS_PER_SEC;
+ }
+
+-static void test_uc_ctl_tb_cache()
++static void test_uc_ctl_tb_cache(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/samples/sample_x86.c
++++ b/samples/sample_x86.c
+@@ -1240,7 +1240,7 @@ static void test_i386_invalid_mem_read_in_tb(void)
+ uc_close(uc);
+ }
+
+-static void test_i386_smc_xor()
++static void test_i386_smc_xor(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+@@ -1319,7 +1319,7 @@ static void mmio_write_callback(uc_engine *uc, uint64_t offset, unsigned size,
+ return;
+ }
+
+-static void test_i386_mmio()
++static void test_i386_mmio(void)
+ {
+ uc_engine *uc;
+ int r_ecx = 0xdeadbeef;
+@@ -1392,7 +1392,7 @@ static bool test_i386_hook_mem_invalid_cb(uc_engine *uc, uc_mem_type type,
+ return true;
+ }
+
+-static void test_i386_hook_mem_invalid()
++static void test_i386_hook_mem_invalid(void)
+ {
+ uc_engine *uc;
+ uc_hook hook;
+--- a/samples/sample_x86_32_gdt_and_seg_regs.c
++++ b/samples/sample_x86_32_gdt_and_seg_regs.c
+@@ -163,7 +163,7 @@ static void hex_dump(unsigned char *ptr, unsigned int len)
+ }
+ */
+
+-static void gdt_demo()
++static void gdt_demo(void)
+ {
+ uc_engine *uc;
+ uc_hook hook1, hook2;
+--- a/tests/regress/00opcode_uc_crash.c
++++ b/tests/regress/00opcode_uc_crash.c
+@@ -7,7 +7,7 @@
+ #define X86_CODE32 "\x00" // add byte ptr ds:[eax],al
+ #define ADDRESS 0x1000000
+
+-static void VM_exec()
++static void VM_exec(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/tests/regress/arm_enable_vfp.c
++++ b/tests/regress/arm_enable_vfp.c
+@@ -6,7 +6,7 @@
+ #define ADDRESS 0x1000
+ #define ARM_VMOV "\xC0\xEF\x10\x00" // VMOV.I32 D16, #0 ; Vector Move
+
+-int main()
++int main(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/tests/regress/block_test.c
++++ b/tests/regress/block_test.c
+@@ -24,7 +24,7 @@ void cb_hookblock(uc_engine *uc, uint64_t address, uint32_t size, void *user_dat
+ fprintf(stderr, "ok %d - basic block size is correct\n", count++);
+ }
+
+-int main() {
++int main(void) {
+ uc_engine *uc;
+
+ fprintf(stderr, "# basic block callback test\n");
+--- a/tests/regress/eflags_noset.c
++++ b/tests/regress/eflags_noset.c
+@@ -20,7 +20,7 @@ typedef uint64_t puint;
+ #define PRIX3264 PRIX64
+ #endif
+
+-uint32_t realEflags()
++uint32_t realEflags(void)
+ {
+ puint val = 0;
+
+@@ -55,7 +55,7 @@ uint32_t realEflags()
+ return (uint32_t)val & 0xFFFFFFFF;
+ }
+
+-static void VM_exec()
++static void VM_exec(void)
+ {
+ #if defined(__i386__) || defined(__x86_64__)
+ uc_engine *uc;
+--- a/tests/regress/eflags_nosync.c
++++ b/tests/regress/eflags_nosync.c
+@@ -64,7 +64,7 @@ static bool hook_invalid_mem(uc_engine *uc, uc_mem_type type, uint64_t address,
+ }
+ }
+
+-static void VM_exec()
++static void VM_exec(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/tests/regress/emu_clear_errors.c
++++ b/tests/regress/emu_clear_errors.c
+@@ -38,7 +38,7 @@ bool cb_hookunmapped(uc_engine *uc, uc_mem_type type, uint64_t address, uint32_t
+ "\x56" \
+ "\xFF\x15\x20\x20\x00\x10"
+
+-int main() {
++int main(void) {
+ uc_engine *uc;
+
+ uc_err err = uc_open(UC_ARCH_X86, UC_MODE_32, &uc);
+--- a/tests/regress/hook_extrainvoke.c
++++ b/tests/regress/hook_extrainvoke.c
+@@ -14,7 +14,7 @@ void hook_ins(uc_engine *uc, uint64_t address, uint32_t size, void *user_data)
+ printf("hook called\n");
+ }
+
+-static void VM_exec()
++static void VM_exec(void)
+ {
+ uc_engine *uc;
+ uc_err err;
+--- a/tests/regress/map_crash.c
++++ b/tests/regress/map_crash.c
+@@ -6,7 +6,7 @@
+ #define UC_BUG_WRITE_SIZE 13000
+ #define UC_BUG_WRITE_ADDR 0x1000
+
+-int main()
++int main(void)
+ {
+ int size;
+ uint8_t *buf;
+--- a/tests/regress/map_write.c
++++ b/tests/regress/map_write.c
+@@ -6,7 +6,7 @@
+ #define SIZE 1024*64
+ #define OVERFLOW 1
+
+-int main()
++int main(void)
+ {
+ uc_engine *uc = NULL;
+ uint8_t *buf = NULL, *buf2 = NULL;
+--- a/tests/regress/mips_kseg0_1.c
++++ b/tests/regress/mips_kseg0_1.c
+@@ -20,7 +20,7 @@
+
+ #define MIPS_CODE_EL "\x56\x34\x21\x34" // ori $at, $at, 0x3456;
+
+-int main()
++int main(void)
+ {
+
+ uc_engine *uc;
+--- a/tests/regress/sigill.c
++++ b/tests/regress/sigill.c
+@@ -16,7 +16,7 @@ void _interrupt(uc_engine *uc, uint32_t intno, void *user_data)
+ }
+ }
+
+-int main()
++int main(void)
+ {
+ int size;
+ uint8_t *buf;
+--- a/tests/regress/sigill2.c
++++ b/tests/regress/sigill2.c
+@@ -6,7 +6,7 @@
+ #define UC_BUG_WRITE_SIZE 128
+ #define UC_BUG_WRITE_ADDR 0x2000
+
+-int main()
++int main(void)
+ {
+ int size;
+ uc_engine *uc;
diff --git a/dev-util/unicorn/metadata.xml b/dev-util/unicorn/metadata.xml
index 0585a8a2d9d3..50bfe9d49714 100644
--- a/dev-util/unicorn/metadata.xml
+++ b/dev-util/unicorn/metadata.xml
@@ -9,6 +9,9 @@
<email>sam@gentoo.org</email>
<name>Sam James</name>
</maintainer>
+ <use>
+ <flag name="logging">Enable logging</flag>
+ </use>
<upstream>
<remote-id type="github">unicorn-engine/unicorn</remote-id>
<remote-id type="pypi">unicorn</remote-id>
diff --git a/dev-util/unicorn/unicorn-2.0.1-r1.ebuild b/dev-util/unicorn/unicorn-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..43fcd6ebac57
--- /dev/null
+++ b/dev-util/unicorn/unicorn-2.0.1-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_/-}
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..12} )
+inherit cmake distutils-r1
+
+DESCRIPTION="A lightweight multi-platform, multi-architecture CPU emulator framework"
+HOMEPAGE="https://www.unicorn-engine.org"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/unicorn-engine/unicorn"
+else
+ SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1"
+SLOT="0/2"
+IUSE="python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="${PYTHON_DEPS}
+ dev-libs/glib:2"
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+BDEPEND="virtual/pkgconfig
+ python? ( ${DISTUTILS_DEPS} )"
+
+UNICORN_TARGETS="x86 arm aarch64 riscv mips sparc m68k ppc s390x tricore"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.0.1-configure.patch"
+ "${FILESDIR}/${P}-strict-prototypes.patch"
+ "${FILESDIR}/${P}-old-style-declaration.patch"
+)
+
+wrap_python() {
+ if use python; then
+ # src_prepare
+ # Do not compile C extensions
+ export LIBUNICORN_PATH=1
+
+ pushd bindings/python >/dev/null || die
+ distutils-r1_${1} "$@"
+ popd >/dev/null || die
+ fi
+}
+
+src_prepare() {
+ # Build from sources
+ rm -r bindings/python/prebuilt || die "failed to remove prebuilt files"
+
+ cmake_src_prepare
+ wrap_python ${FUNCNAME}
+
+ if use elibc_musl ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( malloc_trim )
+ fi
+}
+
+src_configure(){
+ local mycmakeargs=(
+ -DUNICORN_ARCH="${UNICORN_TARGETS// /;}"
+ )
+
+ cmake_src_configure
+
+ wrap_python ${FUNCNAME}
+}
+
+src_compile() {
+ cmake_src_compile
+
+ wrap_python ${FUNCNAME}
+}
+
+src_install() {
+ cmake_src_install
+
+ if ! use static-libs; then
+ find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
+ fi
+
+ wrap_python ${FUNCNAME}
+}
diff --git a/dev-util/unicorn/unicorn-2.0.1.ebuild b/dev-util/unicorn/unicorn-2.0.1.ebuild
index 16a12869842d..43e298db0e08 100644
--- a/dev-util/unicorn/unicorn-2.0.1.ebuild
+++ b/dev-util/unicorn/unicorn-2.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -36,6 +36,10 @@ BDEPEND="virtual/pkgconfig
UNICORN_TARGETS="x86 arm aarch64 riscv mips sparc m68k ppc s390x tricore"
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.1-configure.patch
+)
+
wrap_python() {
if use python; then
# src_prepare
@@ -54,6 +58,10 @@ src_prepare() {
cmake_src_prepare
wrap_python ${FUNCNAME}
+
+ if use elibc_musl ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( malloc_trim )
+ fi
}
src_configure(){
diff --git a/dev-util/unicorn/unicorn-2.1.1.ebuild b/dev-util/unicorn/unicorn-2.1.1.ebuild
new file mode 100644
index 000000000000..bec4af229dfd
--- /dev/null
+++ b/dev-util/unicorn/unicorn-2.1.1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_/-}
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake distutils-r1
+
+DESCRIPTION="A lightweight multi-platform, multi-architecture CPU emulator framework"
+HOMEPAGE="https://www.unicorn-engine.org"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/unicorn-engine/unicorn"
+else
+ SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1"
+SLOT="0/2"
+IUSE="logging python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="${PYTHON_DEPS}
+ dev-libs/glib:2"
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+BDEPEND="virtual/pkgconfig
+ python? ( ${DISTUTILS_DEPS} )"
+
+UNICORN_TARGETS="x86 arm aarch64 riscv mips sparc m68k ppc s390x tricore"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.1-configure.patch
+)
+
+wrap_python() {
+ if use python; then
+ # src_prepare
+ # Do not compile C extensions
+ export LIBUNICORN_PATH=1
+
+ pushd bindings/python >/dev/null || die
+ distutils-r1_${1} "$@"
+ popd >/dev/null || die
+ fi
+}
+
+src_prepare() {
+ # Build from sources
+ rm -r bindings/python/prebuilt || die "failed to remove prebuilt files"
+
+ cmake_src_prepare
+ wrap_python ${FUNCNAME}
+
+ if use elibc_musl ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( malloc_trim )
+ fi
+}
+
+src_configure(){
+ local mycmakeargs=(
+ -DUNICORN_ARCH="${UNICORN_TARGETS// /;}"
+ -DUNICORN_LOGGING=$(usex logging)
+ -DZIG_BUILD=OFF
+ )
+
+ cmake_src_configure
+
+ wrap_python ${FUNCNAME}
+}
+
+src_compile() {
+ cmake_src_compile
+
+ wrap_python ${FUNCNAME}
+}
+
+src_install() {
+ cmake_src_install
+
+ if ! use static-libs; then
+ find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
+ fi
+
+ wrap_python ${FUNCNAME}
+}
diff --git a/dev-util/unicorn/unicorn-2.1.2.ebuild b/dev-util/unicorn/unicorn-2.1.2.ebuild
new file mode 100644
index 000000000000..6afc0cd70a64
--- /dev/null
+++ b/dev-util/unicorn/unicorn-2.1.2.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_/-}
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit cmake distutils-r1
+
+DESCRIPTION="A lightweight multi-platform, multi-architecture CPU emulator framework"
+HOMEPAGE="https://www.unicorn-engine.org"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/unicorn-engine/unicorn"
+else
+ SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1"
+SLOT="0/2"
+IUSE="logging python static-libs test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="${PYTHON_DEPS}
+ dev-libs/glib:2"
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+BDEPEND="virtual/pkgconfig
+ python? ( ${DISTUTILS_DEPS} )"
+
+RESTRICT="!test? ( test )"
+
+UNICORN_TARGETS="x86 arm aarch64 riscv mips sparc m68k ppc s390x tricore"
+
+wrap_python() {
+ if use python; then
+ # src_prepare
+ # Do not compile C extensions
+ export LIBUNICORN_PATH=1
+
+ pushd bindings/python >/dev/null || die
+ distutils-r1_${1} "$@"
+ popd >/dev/null || die
+ fi
+}
+
+src_prepare() {
+ # Build from sources
+ rm -r bindings/python/prebuilt || die "failed to remove prebuilt files"
+
+ cmake_src_prepare
+ wrap_python ${FUNCNAME}
+
+ if use elibc_musl ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( malloc_trim )
+ fi
+}
+
+src_configure(){
+ local mycmakeargs=(
+ -DUNICORN_ARCH="${UNICORN_TARGETS// /;}"
+ -DUNICORN_LOGGING=$(usex logging)
+ -DUNICORN_LEGACY_STATIC_ARCHIVE=$(usex static-libs)
+ -DZIG_BUILD=OFF
+ )
+
+ cmake_src_configure
+
+ wrap_python ${FUNCNAME}
+}
+
+src_compile() {
+ cmake_src_compile
+
+ wrap_python ${FUNCNAME}
+}
+
+src_test() {
+ cmake_src_install
+
+ wrap_python ${FUNCNAME}
+}
+
+python_test() {
+# export LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
+ for f in tests/test_*.py; do
+ if test -x ${f}; then
+ LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" ${EPYHTON} ${f} || die
+ fi
+ done
+}
+
+src_install() {
+ cmake_src_install
+
+ wrap_python ${FUNCNAME}
+}
diff --git a/dev-util/unicorn/unicorn-9999.ebuild b/dev-util/unicorn/unicorn-9999.ebuild
index faf29b762879..6afc0cd70a64 100644
--- a/dev-util/unicorn/unicorn-9999.ebuild
+++ b/dev-util/unicorn/unicorn-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,6 +8,7 @@ MY_PV=${PV/_/-}
DISTUTILS_USE_PEP517=setuptools
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{10..13} )
+
inherit cmake distutils-r1
DESCRIPTION="A lightweight multi-platform, multi-architecture CPU emulator framework"
@@ -25,7 +26,7 @@ S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="BSD-2 GPL-2 LGPL-2.1"
SLOT="0/2"
-IUSE="python static-libs"
+IUSE="logging python static-libs test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
DEPEND="${PYTHON_DEPS}
@@ -34,6 +35,8 @@ RDEPEND="python? ( ${PYTHON_DEPS} )"
BDEPEND="virtual/pkgconfig
python? ( ${DISTUTILS_DEPS} )"
+RESTRICT="!test? ( test )"
+
UNICORN_TARGETS="x86 arm aarch64 riscv mips sparc m68k ppc s390x tricore"
wrap_python() {
@@ -54,11 +57,18 @@ src_prepare() {
cmake_src_prepare
wrap_python ${FUNCNAME}
+
+ if use elibc_musl ; then
+ QA_CONFIG_IMPL_DECL_SKIP=( malloc_trim )
+ fi
}
src_configure(){
local mycmakeargs=(
-DUNICORN_ARCH="${UNICORN_TARGETS// /;}"
+ -DUNICORN_LOGGING=$(usex logging)
+ -DUNICORN_LEGACY_STATIC_ARCHIVE=$(usex static-libs)
+ -DZIG_BUILD=OFF
)
cmake_src_configure
@@ -72,12 +82,23 @@ src_compile() {
wrap_python ${FUNCNAME}
}
-src_install() {
+src_test() {
cmake_src_install
- if ! use static-libs; then
- find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
- fi
+ wrap_python ${FUNCNAME}
+}
+
+python_test() {
+# export LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
+ for f in tests/test_*.py; do
+ if test -x ${f}; then
+ LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" ${EPYHTON} ${f} || die
+ fi
+ done
+}
+
+src_install() {
+ cmake_src_install
wrap_python ${FUNCNAME}
}