git: 2cf7924d2f43 - main - multimedia/vmaf: unbreak build with clang 15 after a57fa8802ae7

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Tue, 21 Nov 2023 20:39:39 UTC
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2cf7924d2f434617187db3f9a5205e461e89c26a

commit 2cf7924d2f434617187db3f9a5205e461e89c26a
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2023-11-21 20:31:52 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2023-11-21 20:39:25 +0000

    multimedia/vmaf: unbreak build with clang 15 after a57fa8802ae7
    
    ../tools/cli_parse.c:194:21: error: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion]
        while ((key_val = strsep(&optarg_copy, ":")) != NULL) {
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:195:15: error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion]
            char *key = strsep(&key_val, "=");
                  ^     ~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:196:15: error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion]
            char *val = strsep(&key_val, "=");
                  ^     ~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:221:19: error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion]
                char *name = strsep(&key, ".");
                      ^      ~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:223:19: error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion]
                char *opt = strsep(&key, ".");
                      ^     ~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:240:30: warning: call to undeclared function 'strnlen'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
        const size_t optarg_sz = strnlen(optarg, 1024);
                                 ^
    ../tools/cli_parse.c:249:17: warning: call to undeclared function 'strsep'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
            .name = strsep(&optarg_copy, "="),
                    ^
    ../tools/cli_parse.c:249:17: error: incompatible integer to pointer conversion initializing 'const char *' with an expression of type 'int' [-Wint-conversion]
            .name = strsep(&optarg_copy, "="),
                    ^~~~~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:255:21: error: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion]
        while ((key_val = strsep(&optarg_copy, ":")) != NULL) {
                        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:256:21: error: incompatible integer to pointer conversion initializing 'const char *' with an expression of type 'int' [-Wint-conversion]
            const char *key = strsep(&key_val, "=");
                        ^     ~~~~~~~~~~~~~~~~~~~~~
    ../tools/cli_parse.c:257:21: error: incompatible integer to pointer conversion initializing 'const char *' with an expression of type 'int' [-Wint-conversion]
            const char *val = strsep(&key_val, "=");
                        ^     ~~~~~~~~~~~~~~~~~~~~~
    
    Reported by:    Michael Butler
---
 multimedia/vmaf/Makefile                |  1 +
 multimedia/vmaf/files/patch-meson.build | 22 ++++++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/multimedia/vmaf/Makefile b/multimedia/vmaf/Makefile
index 33cb60a3ded0..1594d4390525 100644
--- a/multimedia/vmaf/Makefile
+++ b/multimedia/vmaf/Makefile
@@ -1,6 +1,7 @@
 PORTNAME=	vmaf
 DISTVERSIONPREFIX=	v
 DISTVERSION=	3.0.0-rc
+PORTREVISION=	1
 CATEGORIES=	multimedia
 
 MAINTAINER=	jbeich@FreeBSD.org
diff --git a/multimedia/vmaf/files/patch-meson.build b/multimedia/vmaf/files/patch-meson.build
new file mode 100644
index 000000000000..0843e2f267a1
--- /dev/null
+++ b/multimedia/vmaf/files/patch-meson.build
@@ -0,0 +1,22 @@
+../src/feature/feature_collector.c:72:36: error: call to undeclared function 'strnlen'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+   72 |     const size_t feature_name_sz = strnlen(feature_name, 2048);
+      |                                    ^
+../src/feature/feature_name.c:34:24: error: call to undeclared function 'strnlen'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+   34 |     const size_t len = strnlen(buf, buf_sz);
+      |                        ^
+../tools/cli_parse.c:194:21: error: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion]
+    while ((key_val = strsep(&optarg_copy, ":")) != NULL) {
+                    ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+--- meson.build.orig	2023-11-20 19:15:15 UTC
++++ meson.build
+@@ -26,9 +26,6 @@ elif host_machine.system() == 'darwin'
+ elif host_machine.system() == 'darwin'
+     test_args += '-D_DARWIN_C_SOURCE'
+     add_project_arguments('-D_DARWIN_C_SOURCE', language: 'c')
+-else
+-    test_args += '-D_XOPEN_SOURCE=600'
+-    add_project_arguments('-D_XOPEN_SOURCE=600', language: 'c')
+ endif
+ 
+ # Header checks