From: Niklas Haas <ffmpeg@haasn.xyz> To: ffmpeg-devel@ffmpeg.org Cc: Niklas Haas <git@haasn.dev> Subject: [FFmpeg-devel] [PATCH] lavu: always provide symbols from hwcontext_vulkan.h Date: Tue, 5 Jul 2022 02:11:01 +0200 Message-ID: <20220705001101.111869-1-ffmpeg@haasn.xyz> (raw) From: Niklas Haas <git@haasn.dev> This header is unconditionally installed, even though the utility functions defined by it may be missing from the built library. A precedent set by e.g. libavcodec/qsv.h (and others) is to always provide these functions by compiling stub functions in the absence of CONFIG_*. Make hwcontext_vulkan.h match this convention. Fixes downstream issues, e.g. https://github.com/haasn/libplacebo/issues/120 Signed-off-by: Niklas Haas <git@haasn.dev> --- libavutil/Makefile | 2 +- libavutil/hwcontext_vulkan.c | 26 ++++++++++++++++++++++++-- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/libavutil/Makefile b/libavutil/Makefile index 29c170214c..66017a33a2 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -136,6 +136,7 @@ OBJS = adler32.o \ hdr_dynamic_vivid_metadata.o \ hmac.o \ hwcontext.o \ + hwcontext_vulkan.o \ imgutils.o \ integer.o \ intmath.o \ @@ -194,7 +195,6 @@ OBJS-$(CONFIG_QSV) += hwcontext_qsv.o OBJS-$(CONFIG_VAAPI) += hwcontext_vaapi.o OBJS-$(CONFIG_VIDEOTOOLBOX) += hwcontext_videotoolbox.o OBJS-$(CONFIG_VDPAU) += hwcontext_vdpau.o -OBJS-$(CONFIG_VULKAN) += hwcontext_vulkan.o OBJS += $(COMPAT_OBJS:%=../compat/%) diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index 237caa4bc0..f7944a321c 100644 --- a/libavutil/hwcontext_vulkan.c +++ b/libavutil/hwcontext_vulkan.c @@ -16,6 +16,13 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include <stddef.h> + +#include "config.h" +#include "pixdesc.h" + +#if CONFIG_VULKAN + #define VK_NO_PROTOTYPES #define VK_ENABLE_BETA_EXTENSIONS @@ -29,8 +36,6 @@ #include <unistd.h> -#include "config.h" -#include "pixdesc.h" #include "avstring.h" #include "imgutils.h" #include "hwcontext.h" @@ -4161,3 +4166,20 @@ const HWContextType ff_hwcontext_type_vulkan = { AV_PIX_FMT_NONE }, }; + +#else /* !CONFIG_VULKAN */ + +struct AVVkFrame *av_vk_frame_alloc(void); +const enum VkFormat *av_vkfmt_from_pixfmt(enum AVPixelFormat p); + +struct AVVkFrame *av_vk_frame_alloc(void) +{ + return NULL; +} + +const enum VkFormat *av_vkfmt_from_pixfmt(enum AVPixelFormat p) +{ + return NULL; +} + +#endif -- 2.36.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next reply other threads:[~2022-07-05 0:11 UTC|newest] Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-07-05 0:11 Niklas Haas [this message] 2022-07-05 12:20 ` J. Dekker 2022-07-05 17:05 ` Michael Niedermayer 2022-07-05 17:16 ` Andreas Rheinhardt
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220705001101.111869-1-ffmpeg@haasn.xyz \ --to=ffmpeg@haasn.xyz \ --cc=ffmpeg-devel@ffmpeg.org \ --cc=git@haasn.dev \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git