diff options
author | orbea <orbea@riseup.net> | 2023-04-08 17:37:10 -0700 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-04-14 01:48:05 +0100 |
commit | c208bef9e8d9413ef1a57d7541aa4f755b8078c0 (patch) | |
tree | 2ff2c6a79b57d8fde92d548003b39a6b789b6bd9 /net-libs/libsearpc | |
parent | www-apache/mod_musicindex: revbump for EAPI change (diff) | |
download | gentoo-c208bef9e8d9413ef1a57d7541aa4f755b8078c0.tar.gz gentoo-c208bef9e8d9413ef1a57d7541aa4f755b8078c0.tar.bz2 gentoo-c208bef9e8d9413ef1a57d7541aa4f755b8078c0.zip |
net-libs/libsearpc: Fix the build with clang-16
Closes: https://bugs.gentoo.org/870544
Upstream-PR: https://github.com/haiwen/libsearpc/pull/63
Signed-off-by: orbea <orbea@riseup.net>
Closes: https://github.com/gentoo/gentoo/pull/30525
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-libs/libsearpc')
-rw-r--r-- | net-libs/libsearpc/files/libsearpc-3.3.0-clang16.patch | 164 | ||||
-rw-r--r-- | net-libs/libsearpc/libsearpc-3.3.0-r1.ebuild (renamed from net-libs/libsearpc/libsearpc-3.3.0.ebuild) | 4 |
2 files changed, 168 insertions, 0 deletions
diff --git a/net-libs/libsearpc/files/libsearpc-3.3.0-clang16.patch b/net-libs/libsearpc/files/libsearpc-3.3.0-clang16.patch new file mode 100644 index 000000000000..3bdc191b1b1d --- /dev/null +++ b/net-libs/libsearpc/files/libsearpc-3.3.0-clang16.patch @@ -0,0 +1,164 @@ +https://bugs.gentoo.org/870544 +https://github.com/haiwen/libsearpc/pull/63 + +From ae466d2b3b503f4831bc701e97d0a600e23fed60 Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Sat, 8 Apr 2023 16:53:07 -0700 +Subject: [PATCH 1/2] Fix -Werror=strict-prototypes + +--- + lib/searpc-client.c | 2 +- + lib/searpc-client.h | 2 +- + lib/searpc-codegen.py | 4 ++-- + lib/searpc-server.c | 2 +- + lib/searpc-server.h | 2 +- + tests/clar.c | 4 ++-- + tests/searpc.c | 2 +- + 7 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/lib/searpc-client.c b/lib/searpc-client.c +index 050a524..916241a 100644 +--- a/lib/searpc-client.c ++++ b/lib/searpc-client.c +@@ -36,7 +36,7 @@ static void clean_objlist(GList *list) + + + SearpcClient * +-searpc_client_new () ++searpc_client_new (void) + { + return g_new0 (SearpcClient, 1); + } +diff --git a/lib/searpc-client.h b/lib/searpc-client.h +index 725fadd..157a407 100644 +--- a/lib/searpc-client.h ++++ b/lib/searpc-client.h +@@ -44,7 +44,7 @@ struct _SearpcClient { + typedef struct _SearpcClient LIBSEARPC_API SearpcClient; + + LIBSEARPC_API +-SearpcClient *searpc_client_new (); ++SearpcClient *searpc_client_new (void); + + LIBSEARPC_API void + searpc_client_free (SearpcClient *client); +diff --git a/lib/searpc-codegen.py b/lib/searpc-codegen.py +index dbbf8c9..acee024 100644 +--- a/lib/searpc-codegen.py ++++ b/lib/searpc-codegen.py +@@ -139,7 +139,7 @@ def generate_marshal_register_item(ret_type, arg_types): + signature_name=signature_name) + + def gen_marshal_register_function(f): +- write_file(f, "static void register_marshals()""") ++ write_file(f, "static void register_marshals(void)""") + write_file(f, "{") + for item in func_table: + write_file(f, generate_marshal_register_item(item[0], item[1])) +@@ -147,7 +147,7 @@ def gen_marshal_register_function(f): + + signature_template = r""" + inline static gchar * +-${signature_name}() ++${signature_name}(void) + { + return searpc_compute_signature (${args}); + } +diff --git a/lib/searpc-server.c b/lib/searpc-server.c +index 3d6dc09..a82fbe4 100644 +--- a/lib/searpc-server.c ++++ b/lib/searpc-server.c +@@ -248,7 +248,7 @@ searpc_server_reopen_slow_log (const char *slow_log_path) + #endif + + void +-searpc_server_final() ++searpc_server_final(void) + { + g_hash_table_destroy (service_table); + g_hash_table_destroy (marshal_table); +diff --git a/lib/searpc-server.h b/lib/searpc-server.h +index 02722a4..aa1a9fe 100644 +--- a/lib/searpc-server.h ++++ b/lib/searpc-server.h +@@ -67,7 +67,7 @@ searpc_server_reopen_slow_log (const char *slow_log_path); + * Free the server structure. + */ + LIBSEARPC_API +-void searpc_server_final (); ++void searpc_server_final (void); + + /** + * searpc_create_service: +diff --git a/tests/clar.c b/tests/clar.c +index 1546447..81da15a 100644 +--- a/tests/clar.c ++++ b/tests/clar.c +@@ -371,7 +371,7 @@ clar_test_init(int argc, char **argv) + } + + int +-clar_test_run() ++clar_test_run(void) + { + if (_clar.argc > 1) + clar_parse_args(_clar.argc, _clar.argv); +@@ -386,7 +386,7 @@ clar_test_run() + } + + void +-clar_test_shutdown() ++clar_test_shutdown(void) + { + clar_print_shutdown( + _clar.tests_ran, +diff --git a/tests/searpc.c b/tests/searpc.c +index 4c7edb7..7a2d5a5 100644 +--- a/tests/searpc.c ++++ b/tests/searpc.c +@@ -204,7 +204,7 @@ get_substring (const gchar *orig_str, int sub_len, GError **error) + } + + static SearpcClient * +-do_create_client_with_pipe_transport() ++do_create_client_with_pipe_transport(void) + { + SearpcNamedPipeClient *pipe_client = searpc_create_named_pipe_client(pipe_path); + cl_must_pass_(searpc_named_pipe_client_connect(pipe_client), "named pipe client failed to connect"); + +From d78aede0e4c559fa3dbce0e64ffc943da47fe76c Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Sat, 8 Apr 2023 17:13:55 -0700 +Subject: [PATCH 2/2] Fix -Werror=implicit-function-declaration + +unistd.h is needed for write, close and read +--- + demo/searpc-demo-packet.h | 1 + + demo/test-object.h | 2 ++ + 2 files changed, 3 insertions(+) + +diff --git a/demo/searpc-demo-packet.h b/demo/searpc-demo-packet.h +index 926f36b..6552396 100644 +--- a/demo/searpc-demo-packet.h ++++ b/demo/searpc-demo-packet.h +@@ -4,6 +4,7 @@ + + #include <stdint.h> + #include <stdio.h> ++#include <unistd.h> + #include <errno.h> + + #ifdef WIN32 +diff --git a/demo/test-object.h b/demo/test-object.h +index f3f7589..a6d8b5d 100644 +--- a/demo/test-object.h ++++ b/demo/test-object.h +@@ -4,6 +4,8 @@ + #include <glib.h> + #include <glib-object.h> + ++GType test_object_get_type (void); ++ + #define TEST_OBJECT_TYPE (test_object_get_type()) + #define TEST_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TEST_OBJECT_TYPE, TestObject)) + #define IS_TEST_OBJCET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TEST_OBJCET_TYPE)) diff --git a/net-libs/libsearpc/libsearpc-3.3.0.ebuild b/net-libs/libsearpc/libsearpc-3.3.0-r1.ebuild index 0cb48cecbff4..9df86b3f3be3 100644 --- a/net-libs/libsearpc/libsearpc-3.3.0.ebuild +++ b/net-libs/libsearpc/libsearpc-3.3.0-r1.ebuild @@ -29,6 +29,10 @@ RDEPEND="${DEPEND} S="${WORKDIR}/${PN}-${RELEASE_COMMIT}" +PATCHES=( + "${FILESDIR}"/${P}-clang16.patch #870544 +) + src_prepare() { default sed -i -e "s/(DESTDIR)//" ${PN}.pc.in || die |