[3PP] Switch FFmpeg to latest release with port of xmaframes codec

And pull out all the xenia specific build junk into
third_party/ffmpeg-xenia rather than keeping it checked in the
submodule
This commit is contained in:
Herman S.
2026-02-12 01:36:21 +09:00
parent d6ed83f1ea
commit cd5df622a9
25 changed files with 998 additions and 41 deletions

42
third_party/ffmpeg-xenia/premake5.lua vendored Normal file
View File

@@ -0,0 +1,42 @@
group("third_party")
--
-- Call this function in subproject scope to set the needed include
-- dirs and defines.
--
function ffmpeg_common()
defines({
"HAVE_AV_CONFIG_H",
"_USE_MATH_DEFINES", -- For M_PI/etc
})
-- Paths are relative to the calling script (sub-library premake files),
-- which are one level deeper (e.g. libavcodec/premake5.lua).
includedirs({
"..", -- ffmpeg-xenia/ (config.h, avconfig.h, ffversion.h)
"../../FFmpeg", -- FFmpeg source headers
})
filter({"platforms:Windows", "configurations:Debug or configurations:Checked"})
optimize("Size") -- dead code elimination is mandatory
removebuildoptions({
"/RTCsu", -- '/O1' and '/RTCs' command-line options are incompatible
})
filter({"platforms:Windows", "configurations:Release"})
linktimeoptimization("Off")
filter("platforms:Windows")
includedirs({
"../../FFmpeg/compat/atomics/win32",
})
links({
"bcrypt",
})
filter("platforms:Linux")
includedirs({
"../../FFmpeg/compat/atomics/gcc",
})
filter({})
end
include("libavcodec/premake5.lua")
include("libavformat/premake5.lua")
include("libavutil/premake5.lua")