43 lines
1.5 KiB
Diff
43 lines
1.5 KiB
Diff
|
Allow libffmpeg to be built for Chromium-based browsers
|
||
|
https://patchwork.ffmpeg.org/patch/4500/
|
||
|
|
||
|
NOTE: This patch lacks the Makefile include line. We append it
|
||
|
manually instead to make patching across different versions easier.
|
||
|
|
||
|
diff --git a/ffbuild/libffmpeg.mak b/ffbuild/libffmpeg.mak
|
||
|
new file mode 100644
|
||
|
index 0000000..992cf3c
|
||
|
--- /dev/null
|
||
|
+++ b/ffbuild/libffmpeg.mak
|
||
|
@@ -0,0 +1,27 @@
|
||
|
+LIBFFMPEG = $(SLIBPREF)ffmpeg$(SLIBSUF)
|
||
|
+LIBFFMPEG_LINK = $(LD) -shared -Wl,-soname,$(LIBFFMPEG) -Wl,-Bsymbolic -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--gc-sections $(LDFLAGS) $(LDLIBFLAGS) -o $(LIBFFMPEG)
|
||
|
+
|
||
|
+ifeq ($(CONFIG_SHARED),yes)
|
||
|
+LIBFFMPEG_DEPS = libavcodec/$(SLIBPREF)avcodec$(SLIBSUF) libavformat/$(SLIBPREF)avformat$(SLIBSUF) libavutil/$(SLIBPREF)avutil$(SLIBSUF)
|
||
|
+else
|
||
|
+LIBFFMPEG_DEPS = libavcodec/$(LIBPREF)avcodec$(LIBSUF) libavformat/$(LIBPREF)avformat$(LIBSUF) libavutil/$(LIBPREF)avutil$(LIBSUF) libswresample/$(LIBPREF)swresample$(LIBSUF)
|
||
|
+endif
|
||
|
+
|
||
|
+$(LIBFFMPEG): $(LIBFFMPEG_DEPS)
|
||
|
+ifeq ($(CONFIG_SHARED),yes)
|
||
|
+ $(LIBFFMPEG_LINK) -Wl,--no-as-needed -lavcodec -lavformat -lavutil
|
||
|
+else
|
||
|
+ $(LIBFFMPEG_LINK) -Wl,--whole-archive $^ -Wl,--no-whole-archive $(EXTRALIBS-avcodec) $(EXTRALIBS-avformat) $(EXTRALIBS-avutil) $(EXTRALIBS-swresample)
|
||
|
+endif
|
||
|
+
|
||
|
+libffmpeg: $(LIBFFMPEG)
|
||
|
+
|
||
|
+install-libffmpeg: $(LIBFFMPEG)
|
||
|
+ $(Q)mkdir -p "$(SHLIBDIR)/chromium"
|
||
|
+ $(INSTALL) -m 755 $< "$(SHLIBDIR)/chromium/$<"
|
||
|
+ $(STRIP) "$(SHLIBDIR)/chromium/$<"
|
||
|
+
|
||
|
+uninstall-libffmpeg:
|
||
|
+ $(RM) "$(SHLIBDIR)/chromium/$(LIBFFMPEG)"
|
||
|
+
|
||
|
+.PHONY: libffmpeg install-libffmpeg uninstall-libffmpeg
|
||
|
--
|
||
|
2.13.1
|
||
|
|