[FFmpeg-devel] [PATCH v3 5/5] fftools: Enable long path support on Windows (fixes #8885)
Marton Balint
cus at passwd.hu
Thu Feb 17 22:05:30 EET 2022
On Wed, 16 Feb 2022, nihil-admirari wrote:
> ---
> fftools/Makefile | 5 +++++
> fftools/long_paths_utf8.manifest | 12 ++++++++++++
> fftools/long_paths_utf8.rc | 3 +++
> 3 files changed, 20 insertions(+)
> create mode 100644 fftools/long_paths_utf8.manifest
> create mode 100644 fftools/long_paths_utf8.rc
>
> diff --git a/fftools/Makefile b/fftools/Makefile
> index da42078..53438b6 100644
> --- a/fftools/Makefile
> +++ b/fftools/Makefile
> @@ -11,6 +11,11 @@ ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
>
> OBJS-ffmpeg += fftools/ffmpeg_opt.o fftools/ffmpeg_filter.o fftools/ffmpeg_hw.o
>
> +# Windows resource files
> +OBJS-ffmpeg-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +OBJS-ffplay-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +OBJS-ffprobe-$(HAVE_GNU_WINDRES) += fftools/long_paths_utf8.o
> +
> define DOFFTOOL
> OBJS-$(1) += fftools/cmdutils.o fftools/$(1).o $(OBJS-$(1)-yes)
> $(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
> diff --git a/fftools/long_paths_utf8.manifest b/fftools/long_paths_utf8.manifest
> new file mode 100644
> index 0000000..d1ac1e4
> --- /dev/null
> +++ b/fftools/long_paths_utf8.manifest
> @@ -0,0 +1,12 @@
> +<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> +
> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
> + <assemblyIdentity type="win32" name="FFmpeg" version="1.0.0.0"/>
> + <application xmlns="urn:schemas-microsoft-com:asm.v3">
> + <windowsSettings xmlns:ws2016="http://schemas.microsoft.com/SMI/2016/WindowsSettings"
> + xmlns:ws2019="http://schemas.microsoft.com/SMI/2019/WindowsSettings">
> + <ws2016:longPathAware>true</ws2016:longPathAware>
> + <ws2019:activeCodePage>UTF-8</ws2019:activeCodePage>
Generally UTF-8 codepage should not be needed, because unicode windows
functions should be used everywhere, right?
I'd perfer if you enable UTF8 codepage in a separate patch. And use simple
fftools/fftools.manifest and fftools/manifest.rc as filenames, because
later other things might be put there, not only utf8/longpath support.
Thanks,
Marton
> + </windowsSettings>
> + </application>
> +</assembly>
> diff --git a/fftools/long_paths_utf8.rc b/fftools/long_paths_utf8.rc
> new file mode 100644
> index 0000000..f33de76
> --- /dev/null
> +++ b/fftools/long_paths_utf8.rc
> @@ -0,0 +1,3 @@
> +#include <windows.h>
> +
> +CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "long_paths_utf8.manifest"
> --
> 2.32.0
>
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>
More information about the ffmpeg-devel
mailing list