diff options
author | jbeich <jbeich@FreeBSD.org> | 2020-01-20 13:30:11 +0800 |
---|---|---|
committer | jbeich <jbeich@FreeBSD.org> | 2020-01-20 13:30:11 +0800 |
commit | c6dcb3b1be3342e374f24fc5d23639ab91a52d34 (patch) | |
tree | 0a05fe2eabe75c17a69a4005e1661e560d8c6234 | |
parent | bafceaf2fb60cab2c0cfa6e5e2674667c9198c48 (diff) | |
download | freebsd-ports-gnome-c6dcb3b1be3342e374f24fc5d23639ab91a52d34.tar.gz freebsd-ports-gnome-c6dcb3b1be3342e374f24fc5d23639ab91a52d34.tar.zst freebsd-ports-gnome-c6dcb3b1be3342e374f24fc5d23639ab91a52d34.zip |
multimedia/aom: unbreak consumers with VMAF=on after r522621
$ make -C /usr/ports/multimedia/mpv
[...]
Checking for libav* is FFmpeg : no
[...]
['cc', 'test.c.1.o', '-o/path/to/mpv-0.31.0/build/.conf_check_*/testbuild/testprog', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-L/usr/local/lib', '-lavcodec', '-fstack-protector-strong', '-fuse-ld=bfd', '-L/usr/local/lib']
err: /usr/local/bin/ld.bfd: /usr/local/lib/libaom.so.0: undefined reference to `fatal'
cc: error: linker command failed with exit code 1 (use -v to see invocation)
-rw-r--r-- | multimedia/aom/files/patch-aom__dsp_vmaf.c | 49 |
1 files changed, 47 insertions, 2 deletions
diff --git a/multimedia/aom/files/patch-aom__dsp_vmaf.c b/multimedia/aom/files/patch-aom__dsp_vmaf.c index 602b55f5d592..2af46104ed68 100644 --- a/multimedia/aom/files/patch-aom__dsp_vmaf.c +++ b/multimedia/aom/files/patch-aom__dsp_vmaf.c @@ -4,9 +4,13 @@ aom_dsp/vmaf.c:12:10: fatal error: 'libvmaf/libvmaf.h' file not found #include <libvmaf/libvmaf.h> ^~~~~~~~~~~~~~~~~~~ ---- aom_dsp/vmaf.c.orig 2020-01-10 22:53:28 UTC +Don't use CLI symbols in shared library + + /usr/lib/libaom.so: undefined reference to `fatal' + +--- aom_dsp/vmaf.c.orig 2020-01-17 20:13:03 UTC +++ aom_dsp/vmaf.c -@@ -9,7 +9,11 @@ +@@ -9,13 +9,17 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ #include <assert.h> @@ -15,6 +19,47 @@ aom_dsp/vmaf.c:12:10: fatal error: 'libvmaf/libvmaf.h' file not found +#else +#include <libvmaf.h> +#endif ++#include <stdio.h> #include <stdlib.h> + #include <string.h> #include "aom_dsp/vmaf.h" + #include "aom_ports/system_state.h" +-#include "common/tools_common.h" + + typedef struct FrameData { + const YV12_BUFFER_CONFIG *source; +@@ -82,7 +86,10 @@ void aom_calc_vmaf(const char *model_path, const YV12_ + + aom_clear_system_state(); + *vmaf = vmaf_score; +- if (ret) fatal("Failed to compute VMAF scores."); ++ if (ret) { ++ fprintf(stderr, "Failed to compute VMAF scores.\n"); ++ exit(EXIT_FAILURE); ++ } + } + + void aom_calc_vmaf_multi_frame( +@@ -102,7 +109,10 @@ void aom_calc_vmaf_multi_frame( + /*do_ms_ssim=*/0, /*pool_method=*/NULL, /*n_thread=*/0, + /*n_subsample=*/1, /*enable_conf_interval=*/0); + FILE *vmaf_log = fopen("vmaf_scores.xml", "r"); +- if (vmaf_log == NULL || ret) fatal("Failed to compute VMAF scores."); ++ if (vmaf_log == NULL || ret) { ++ fprintf(stderr, "Failed to compute VMAF scores.\n"); ++ exit(EXIT_FAILURE); ++ } + + int frame_index = 0; + char buf[512]; +@@ -114,7 +124,8 @@ void aom_calc_vmaf_multi_frame( + *p2 = '\0'; + const double score = atof(&p[6]); + if (score < 0.0 || score > 100.0) { +- fatal("Failed to compute VMAF scores."); ++ fprintf(stderr, "Failed to compute VMAF scores.\n"); ++ exit(EXIT_FAILURE); + } + vmaf[frame_index++] = score; + } |