<pre style='margin:0'>
Dan Ports (drkp) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/8ff2541a2e6ba5bac7a0812b0ea9506b4ab52991">https://github.com/macports/macports-ports/commit/8ff2541a2e6ba5bac7a0812b0ea9506b4ab52991</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 8ff2541a2e6 libdbi-drivers: add patch to compile with latest gcc or clang
</span>8ff2541a2e6 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 8ff2541a2e6ba5bac7a0812b0ea9506b4ab52991
</span>Author: Dan R. K. Ports <dports@macports.org>
AuthorDate: Mon Oct 28 13:15:42 2024 -0700
<span style='display:block; white-space:pre;color:#404040;'> libdbi-drivers: add patch to compile with latest gcc or clang
</span>---
databases/libdbi-drivers/Portfile | 4 ++
.../libdbi-drivers/files/compile_w_gcc14.patch | 63 ++++++++++++++++++++++
2 files changed, 67 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/databases/libdbi-drivers/Portfile b/databases/libdbi-drivers/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index f35e70b9a87..df0b3dcb879 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/databases/libdbi-drivers/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/databases/libdbi-drivers/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,6 +24,10 @@ configure.args-append \
</span> --with-dbi-libdir=${prefix}/lib \
--disable-docs
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.pre_args -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# via https://sources.debian.org/data/main/libd/libdbi-drivers/0.9.0-13/debian/patches/compile_w_gcc14.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles compile_w_gcc14.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> platform darwin arm {
depends_build-append \
port:automake
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/databases/libdbi-drivers/files/compile_w_gcc14.patch b/databases/libdbi-drivers/files/compile_w_gcc14.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..54f7a21e4f1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/databases/libdbi-drivers/files/compile_w_gcc14.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,63 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Description: Fix build with gcc-14
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Fix type errors in the cgreen with constraints facility.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Remove bogus test from test_dbi.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Author: Florian Weimer <fweimer@redhat.com>, <Boian Bonev <bbonev@ipacct.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Origin: other
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Forwarded: https://sourceforge.net/p/libdbi-drivers/bugs/28/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Last-Update: 2024-08-25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tests/cgreen/src/constraint.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tests/cgreen/src/constraint.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,8 +22,7 @@ static double unbox_double(intptr_t box)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static double as_double(intptr_t box);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int compare_using_matcher(Constraint *constraint, intptr_t actual);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static void test_with_matcher(Constraint *constraint, const char *function, const char* matcher_name, intptr_t actual, const char *test_file, int test_line, TestReporter *reporter);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static void test_with_matcher(Constraint *constraint, const char *function, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void destroy_constraint(void *abstract) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Constraint *constraint = (Constraint *)abstract;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -164,11 +163,11 @@ static void test_want_double(Constraint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int compare_using_matcher(Constraint *constraint, intptr_t actual) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- int (*matches)(const void*) = constraint->expected;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- return matches(actual);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int (*matches)(const void*) = (int (*)(const void*)) constraint->expected;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return matches((const void *)actual);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static void test_with_matcher(Constraint *constraint, const char *function, const char* matcher_name, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static void test_with_matcher(Constraint *constraint, const char *function, intptr_t matcher_function, const char *test_file, int test_line, TestReporter *reporter) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (*reporter->assert_true)(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reporter,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ test_file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -176,7 +175,7 @@ static void test_with_matcher(Constraint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (*constraint->compare)(constraint, matcher_function),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "Wanted parameter [%s] to match [%s] in function [%s]",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ constraint->parameter,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- matcher_name,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ constraint->name,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ function);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tests/test_dbi.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tests/test_dbi.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4599,11 +4599,12 @@ Ensure test_dbi_result_get_datetime() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ assert_equal( the_datetime, expect_longlong_from_name("the_datetime", cinfo.drivername));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(!strcmp(cinfo.drivername, "msql")) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- the_date = dbi_result_get_string(result, "the_date");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- assert_string_equal(the_date, "11-jul-1977");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ // comparing time_t to string does not make any sense
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ //the_date = dbi_result_get_string(result, "the_date");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ //assert_string_equal(the_date, "11-jul-1977");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- the_time = dbi_result_get_string(result, "the_time");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- assert_string_equal(the_time, "23:59:59");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ //the_time = dbi_result_get_string(result, "the_time");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ //assert_string_equal(the_time, "23:59:59");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ the_date = dbi_result_get_datetime(result, "the_date");
</span></pre><pre style='margin:0'>
</pre>