[FFmpeg-cvslog] avutil/cuda_check: avoid pointlessly exporting same symbol from two libraries
Timo Rothenpieler
git at videolan.org
Thu Feb 14 14:39:22 EET 2019
ffmpeg | branch: master | Timo Rothenpieler <timo at rothenpieler.org> | Fri Feb 8 22:47:01 2019 +0100| [15c6390139096b7e7634bf0f6aaab1cd8b3aa509] | committer: Timo Rothenpieler
avutil/cuda_check: avoid pointlessly exporting same symbol from two libraries
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=15c6390139096b7e7634bf0f6aaab1cd8b3aa509
---
libavcodec/Makefile | 6 +++---
libavcodec/cuda_check.c | 1 -
libavutil/Makefile | 2 +-
libavutil/cuda_check.c | 45 ---------------------------------------------
libavutil/cuda_check.h | 24 +++++++++++++++++++++---
tests/ref/fate/source | 2 --
6 files changed, 25 insertions(+), 55 deletions(-)
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 21c39281e4..15c43a8a6a 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -124,7 +124,7 @@ OBJS-$(CONFIG_MPEGVIDEOENC) += mpegvideo_enc.o mpeg12data.o \
motion_est.o ratecontrol.o \
mpegvideoencdsp.o
OBJS-$(CONFIG_MSS34DSP) += mss34dsp.o
-OBJS-$(CONFIG_NVENC) += nvenc.o cuda_check.o
+OBJS-$(CONFIG_NVENC) += nvenc.o
OBJS-$(CONFIG_PIXBLOCKDSP) += pixblockdsp.o
OBJS-$(CONFIG_QPELDSP) += qpeldsp.o
OBJS-$(CONFIG_QSV) += qsv.o
@@ -347,7 +347,7 @@ OBJS-$(CONFIG_H264_DECODER) += h264dec.o h264_cabac.o h264_cavlc.o \
h264_refs.o h264_sei.o \
h264_slice.o h264data.o
OBJS-$(CONFIG_H264_AMF_ENCODER) += amfenc_h264.o
-OBJS-$(CONFIG_H264_CUVID_DECODER) += cuviddec.o cuda_check.o
+OBJS-$(CONFIG_H264_CUVID_DECODER) += cuviddec.o
OBJS-$(CONFIG_H264_MEDIACODEC_DECODER) += mediacodecdec.o
OBJS-$(CONFIG_H264_MMAL_DECODER) += mmaldec.o
OBJS-$(CONFIG_H264_NVENC_ENCODER) += nvenc_h264.o
@@ -856,7 +856,7 @@ OBJS-$(CONFIG_ADPCM_YAMAHA_ENCODER) += adpcmenc.o adpcm_data.o
# hardware accelerators
OBJS-$(CONFIG_D3D11VA) += dxva2.o
OBJS-$(CONFIG_DXVA2) += dxva2.o
-OBJS-$(CONFIG_NVDEC) += nvdec.o cuda_check.o
+OBJS-$(CONFIG_NVDEC) += nvdec.o
OBJS-$(CONFIG_VAAPI) += vaapi_decode.o
OBJS-$(CONFIG_VIDEOTOOLBOX) += videotoolbox.o
OBJS-$(CONFIG_VDPAU) += vdpau.o
diff --git a/libavcodec/cuda_check.c b/libavcodec/cuda_check.c
deleted file mode 100644
index a1ebb88882..0000000000
--- a/libavcodec/cuda_check.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "libavutil/cuda_check.c"
diff --git a/libavutil/Makefile b/libavutil/Makefile
index 7dcb92b06b..53208fc587 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -160,7 +160,7 @@ OBJS = adler32.o \
xtea.o \
tea.o \
-OBJS-$(CONFIG_CUDA) += hwcontext_cuda.o cuda_check.o
+OBJS-$(CONFIG_CUDA) += hwcontext_cuda.o
OBJS-$(CONFIG_D3D11VA) += hwcontext_d3d11va.o
OBJS-$(CONFIG_DXVA2) += hwcontext_dxva2.o
OBJS-$(CONFIG_LIBDRM) += hwcontext_drm.o
diff --git a/libavutil/cuda_check.c b/libavutil/cuda_check.c
deleted file mode 100644
index 95c0256d12..0000000000
--- a/libavutil/cuda_check.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "compat/cuda/dynlink_loader.h"
-#include "libavutil/cuda_check.h"
-
-int ff_cuda_check(void *avctx,
- void *cuGetErrorName_fn,
- void *cuGetErrorString_fn,
- CUresult err, const char *func)
-{
- const char *err_name;
- const char *err_string;
-
- av_log(avctx, AV_LOG_TRACE, "Calling %s\n", func);
-
- if (err == CUDA_SUCCESS)
- return 0;
-
- ((tcuGetErrorName *)cuGetErrorName_fn)(err, &err_name);
- ((tcuGetErrorString *)cuGetErrorString_fn)(err, &err_string);
-
- av_log(avctx, AV_LOG_ERROR, "%s failed", func);
- if (err_name && err_string)
- av_log(avctx, AV_LOG_ERROR, " -> %s: %s", err_name, err_string);
- av_log(avctx, AV_LOG_ERROR, "\n");
-
- return AVERROR_EXTERNAL;
-}
-
diff --git a/libavutil/cuda_check.h b/libavutil/cuda_check.h
index b8e5f65cbb..ec1705b000 100644
--- a/libavutil/cuda_check.h
+++ b/libavutil/cuda_check.h
@@ -23,10 +23,28 @@
/**
* Wrap a CUDA function call and print error information if it fails.
*/
+static inline int ff_cuda_check(void *avctx,
+ void *cuGetErrorName_fn, void *cuGetErrorString_fn,
+ CUresult err, const char *func)
+{
+ const char *err_name;
+ const char *err_string;
-int ff_cuda_check(void *avctx,
- void *cuGetErrorName_fn, void *cuGetErrorString_fn,
- CUresult err, const char *func);
+ av_log(avctx, AV_LOG_TRACE, "Calling %s\n", func);
+
+ if (err == CUDA_SUCCESS)
+ return 0;
+
+ ((tcuGetErrorName *)cuGetErrorName_fn)(err, &err_name);
+ ((tcuGetErrorString *)cuGetErrorString_fn)(err, &err_string);
+
+ av_log(avctx, AV_LOG_ERROR, "%s failed", func);
+ if (err_name && err_string)
+ av_log(avctx, AV_LOG_ERROR, " -> %s: %s", err_name, err_string);
+ av_log(avctx, AV_LOG_ERROR, "\n");
+
+ return AVERROR_EXTERNAL;
+}
/**
* Convenience wrapper for ff_cuda_check when directly linking libcuda.
diff --git a/tests/ref/fate/source b/tests/ref/fate/source
index 0c98a0638a..8e12582ce8 100644
--- a/tests/ref/fate/source
+++ b/tests/ref/fate/source
@@ -1,7 +1,6 @@
Files without standard license headers:
compat/avisynth/windowsPorts/basicDataTypeConversions.h
compat/avisynth/windowsPorts/windows2linux.h
-libavcodec/cuda_check.c
libavcodec/file_open.c
libavcodec/ilbcdata.h
libavcodec/ilbcdec.c
@@ -10,7 +9,6 @@ libavcodec/log2_tab.c
libavcodec/reverse.c
libavdevice/file_open.c
libavdevice/reverse.c
-libavfilter/cuda_check.c
libavfilter/log2_tab.c
libavformat/file_open.c
libavformat/golomb_tab.c
More information about the ffmpeg-cvslog
mailing list