* [FFmpeg-devel] [PATCH] configure: support msvc build inside WSL
@ 2024-04-27 13:49 Timo Rothenpieler
2024-04-27 20:14 ` [FFmpeg-devel] [PATCH v2] " Timo Rothenpieler
0 siblings, 1 reply; 6+ messages in thread
From: Timo Rothenpieler @ 2024-04-27 13:49 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Timo Rothenpieler
---
configure | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index 8101b4fce6..b872c37933 100755
--- a/configure
+++ b/configure
@@ -5036,7 +5036,11 @@ probe_cc(){
else
_ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
fi
- _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
+ if [ -x "$(command -v wslpath)" ]; then
+ _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); if (!match($$0, / /)) { cmd = "wslpath -u '\'\\\'\''" $$0 "'\'\\\'\''"; cmd | getline; close(cmd); print "$@:", $$0 } }'\'' > $(@:.o=.d)'
+ else
+ _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
+ fi
_DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -showIncludes -Zs'
_cflags_speed="-O2"
_cflags_size="-O1"
--
2.43.2
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* [FFmpeg-devel] [PATCH v2] configure: support msvc build inside WSL
2024-04-27 13:49 [FFmpeg-devel] [PATCH] configure: support msvc build inside WSL Timo Rothenpieler
@ 2024-04-27 20:14 ` Timo Rothenpieler
2024-04-27 20:21 ` Sean McGovern
2024-05-01 15:06 ` Alexander Strasser via ffmpeg-devel
0 siblings, 2 replies; 6+ messages in thread
From: Timo Rothenpieler @ 2024-04-27 20:14 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Timo Rothenpieler
---
configure | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index 8101b4fce6..89af5f75e7 100755
--- a/configure
+++ b/configure
@@ -5036,7 +5036,12 @@ probe_cc(){
else
_ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
fi
- _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
+ if [ -x "$(command -v wslpath)" ]; then
+ _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); if (!match($$0, / /)) { print $$0 } }'\'' | xargs -d\\n -n1 wslpath -u | awk '\''BEGIN { printf "%s:", "$@" }; { sub(/\r/,""); printf " %s", $$0 }; END { print "" }'\'' > $(@:.o=.d)'
+
+ else
+ _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
+ fi
_DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -showIncludes -Zs'
_cflags_speed="-O2"
_cflags_size="-O1"
--
2.43.2
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2] configure: support msvc build inside WSL
2024-04-27 20:14 ` [FFmpeg-devel] [PATCH v2] " Timo Rothenpieler
@ 2024-04-27 20:21 ` Sean McGovern
2024-04-27 20:47 ` Timo Rothenpieler
2024-05-01 15:06 ` Alexander Strasser via ffmpeg-devel
1 sibling, 1 reply; 6+ messages in thread
From: Sean McGovern @ 2024-04-27 20:21 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Sat, Apr 27, 2024, 16:15 Timo Rothenpieler <timo@rothenpieler.org> wrote:
> ---
> configure | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 8101b4fce6..89af5f75e7 100755
> --- a/configure
> +++ b/configure
> @@ -5036,7 +5036,12 @@ probe_cc(){
> else
> _ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
> fi
> - _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 |
> awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if
> (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
> + if [ -x "$(command -v wslpath)" ]; then
> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1
> | awk '\''/including/ { sub(/^.*file: */, ""); if (!match($$0, / /)) {
> print $$0 } }'\'' | xargs -d\\n -n1 wslpath -u | awk '\''BEGIN { printf
> "%s:", "$@" }; { sub(/\r/,""); printf " %s", $$0 }; END { print "" }'\'' >
> $(@:.o=.d)'
> +
> + else
> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1
> | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if
> (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
> + fi
> _DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -showIncludes -Zs'
> _cflags_speed="-O2"
> _cflags_size="-O1"
> --
> 2.43.2
>
> _______________________________________________
> 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".
>
Aside: We are now that much closer to summoning a demon inside 'configure'
*laughs*.
-- Sean McGovern
>
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2] configure: support msvc build inside WSL
2024-04-27 20:21 ` Sean McGovern
@ 2024-04-27 20:47 ` Timo Rothenpieler
0 siblings, 0 replies; 6+ messages in thread
From: Timo Rothenpieler @ 2024-04-27 20:47 UTC (permalink / raw)
To: ffmpeg-devel
On 27.04.2024 22:21, Sean McGovern wrote:
> Aside: We are now that much closer to summoning a demon inside 'configure'
> *laughs*.
The reasoning behind this complexification in v2 is that v1 put the
string returned by cl.exe into a shell, allowing potential injection
vectors.
Granted, the injection would come from inside ffmpeg code, so probably
all would be lost at that point anyway, but at the very least, this
approach avoids spawning a bunch of subshells we don't need, though is
quite a bit uglier.
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2] configure: support msvc build inside WSL
2024-04-27 20:14 ` [FFmpeg-devel] [PATCH v2] " Timo Rothenpieler
2024-04-27 20:21 ` Sean McGovern
@ 2024-05-01 15:06 ` Alexander Strasser via ffmpeg-devel
2024-05-01 16:54 ` Timo Rothenpieler
1 sibling, 1 reply; 6+ messages in thread
From: Alexander Strasser via ffmpeg-devel @ 2024-05-01 15:06 UTC (permalink / raw)
To: FFmpeg development discussions and patches; +Cc: Alexander Strasser
On 2024-04-27 22:14 +0200, Timo Rothenpieler wrote:
> ---
> configure | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 8101b4fce6..89af5f75e7 100755
> --- a/configure
> +++ b/configure
> @@ -5036,7 +5036,12 @@ probe_cc(){
> else
> _ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
> fi
> - _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
> + if [ -x "$(command -v wslpath)" ]; then
> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); if (!match($$0, / /)) { print $$0 } }'\'' | xargs -d\\n -n1 wslpath -u | awk '\''BEGIN { printf "%s:", "$@" }; { sub(/\r/,""); printf " %s", $$0 }; END { print "" }'\'' > $(@:.o=.d)'
> +
> + else
> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
> + fi
> _DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -showIncludes -Zs'
> _cflags_speed="-O2"
> _cflags_size="-O1"
> --
Should be good enough if it doesn't break MSVC builds outside of WSL.
Alexander
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2] configure: support msvc build inside WSL
2024-05-01 15:06 ` Alexander Strasser via ffmpeg-devel
@ 2024-05-01 16:54 ` Timo Rothenpieler
0 siblings, 0 replies; 6+ messages in thread
From: Timo Rothenpieler @ 2024-05-01 16:54 UTC (permalink / raw)
To: ffmpeg-devel
On 01.05.2024 17:06, Alexander Strasser via ffmpeg-devel wrote:
> On 2024-04-27 22:14 +0200, Timo Rothenpieler wrote:
>> ---
>> configure | 7 ++++++-
>> 1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/configure b/configure
>> index 8101b4fce6..89af5f75e7 100755
>> --- a/configure
>> +++ b/configure
>> @@ -5036,7 +5036,12 @@ probe_cc(){
>> else
>> _ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r')
>> fi
>> - _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
>> + if [ -x "$(command -v wslpath)" ]; then
>> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); if (!match($$0, / /)) { print $$0 } }'\'' | xargs -d\\n -n1 wslpath -u | awk '\''BEGIN { printf "%s:", "$@" }; { sub(/\r/,""); printf " %s", $$0 }; END { print "" }'\'' > $(@:.o=.d)'
>> +
>> + else
>> + _DEPCMD='$(DEP$(1)) $(DEP$(1)FLAGS) $($(1)DEP_FLAGS) $< 2>&1 | awk '\''/including/ { sub(/^.*file: */, ""); gsub(/\\/, "/"); if (!match($$0, / /)) print "$@:", $$0 }'\'' > $(@:.o=.d)'
>> + fi
>> _DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -showIncludes -Zs'
>> _cflags_speed="-O2"
>> _cflags_size="-O1"
>> --
>
> Should be good enough if it doesn't break MSVC builds outside of WSL.
Unless there for some reason is a wslpath binary on the path, that won't
be an issue.
Will apply shortly
_______________________________________________
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".
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-05-01 16:54 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-27 13:49 [FFmpeg-devel] [PATCH] configure: support msvc build inside WSL Timo Rothenpieler
2024-04-27 20:14 ` [FFmpeg-devel] [PATCH v2] " Timo Rothenpieler
2024-04-27 20:21 ` Sean McGovern
2024-04-27 20:47 ` Timo Rothenpieler
2024-05-01 15:06 ` Alexander Strasser via ffmpeg-devel
2024-05-01 16:54 ` Timo Rothenpieler
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