Message ID | 20231227162504.690730-2-abhishek.ojha@savoirfairelinux.com |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel,1/2] libavdevice/pipewiregrab: add pipewire based grab | expand |
Context | Check | Description |
---|---|---|
yinshiyou/make_loongarch64 | success | Make finished |
yinshiyou/make_fate_loongarch64 | success | Make fate finished |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
Le 27 décembre 2023 17:25:03 GMT+01:00, Abhishek Ojha <abhishek.ojha@savoirfairelinux.com> a écrit : >This commit requires to resolve the compilation error of pipewiregrab >because Pipewire's spa plugin is requesting locale_t extension to >compile. >Which was added in POSIX 2008 but ffmpeg is using POSIX 2001 due to >which spa plugin complains. __LOCALE_C_ONLY flag is set to disable >the locale usage in spa plugin. Adding it in configure file fix both >the library test and source compilation issue. >Not sure if this is the right approach to fix the issue. >Feedback/Suggestions will be highly appreciated. AFAIK, glibc requires that macros with a single underscore be set by the external code before glibc headers, while those with two leading underscores are for internal glibc (header) use. So then this seems undefined. > >Signed-off-by: Abhishek Ojha <abhishek.ojha@savoirfairelinux.com> >--- > configure | 2 ++ > 1 file changed, 2 insertions(+) > >diff --git a/configure b/configure >index 375327d5fa..442d004258 100755 >--- a/configure >+++ b/configure >@@ -7106,6 +7106,8 @@ if enabled libxcb; then > enabled libxcb_xfixes && check_pkg_config libxcb_xfixes xcb-xfixes xcb/xfixes.h xcb_xfixes_get_cursor_image > fi > >+# _POSIX_C_SOURCE=200112 doesn't support locale >+add_cppflags -D__LOCALE_C_ONLY > enabled libpipewire && check_pkg_config libpipewire "libpipewire-0.3 >= 0.3.40" pipewire/pipewire.h pw_init > if enabled libpipewire; then > enabled libgio_unix && check_pkg_config libgio_unix gio-unix-2.0 gio/gio.h g_main_loop_new
diff --git a/configure b/configure index 375327d5fa..442d004258 100755 --- a/configure +++ b/configure @@ -7106,6 +7106,8 @@ if enabled libxcb; then enabled libxcb_xfixes && check_pkg_config libxcb_xfixes xcb-xfixes xcb/xfixes.h xcb_xfixes_get_cursor_image fi +# _POSIX_C_SOURCE=200112 doesn't support locale +add_cppflags -D__LOCALE_C_ONLY enabled libpipewire && check_pkg_config libpipewire "libpipewire-0.3 >= 0.3.40" pipewire/pipewire.h pw_init if enabled libpipewire; then enabled libgio_unix && check_pkg_config libgio_unix gio-unix-2.0 gio/gio.h g_main_loop_new
This commit requires to resolve the compilation error of pipewiregrab because Pipewire's spa plugin is requesting locale_t extension to compile. Which was added in POSIX 2008 but ffmpeg is using POSIX 2001 due to which spa plugin complains. __LOCALE_C_ONLY flag is set to disable the locale usage in spa plugin. Adding it in configure file fix both the library test and source compilation issue. Not sure if this is the right approach to fix the issue. Feedback/Suggestions will be highly appreciated. Signed-off-by: Abhishek Ojha <abhishek.ojha@savoirfairelinux.com> --- configure | 2 ++ 1 file changed, 2 insertions(+)