[PATCH] tools: Relax the dot in module names rules.
Rémi Bernon
rbernon at codeweavers.com
Wed Mar 10 15:26:08 CST 2021
On 3/5/21 7:16 PM, Rémi Bernon wrote:
> This should allow modules with dot in their names, while still making
> the .dll extension optional. The MODULE variable still determines the
> actual output file extension.
>
> Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
> ---
>
> Supersedes: 201129
>
> This should be a better fix, that will also allow to add tests to these
> modules without any changes on the testbot (although it should arguably
> use the same logic as makedep to compute the test executable names).
>
> tools/make_makefiles | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/tools/make_makefiles b/tools/make_makefiles
> index 2d3c14cb2ec..3abba2da840 100755
> --- a/tools/make_makefiles
> +++ b/tools/make_makefiles
> @@ -446,18 +446,17 @@ sub update_makefiles(@)
> if (defined $make{"APPMODE"}) { $dllflags .= " " . $make{"APPMODE"}; }
> die "MODULE should not be defined in $file" unless $file =~ /^(dlls|programs)\//;
> die "STATICLIB should not be defined in $file" if defined $make{"STATICLIB"};
> - die "Invalid MODULE in $file" if $name =~ /\./ && $make{"MODULE"} ne $name;
> if ($file =~ /^programs\//)
> {
> die "EXTRADLLFLAGS should be defined in $file" unless $dllflags;
> die "EXTRADLLFLAGS should contain -mconsole or -mwindows in $file" unless $dllflags =~ /-m(console|windows)/;
> - die "Invalid MODULE in $file" unless $name =~ /\./ || $make{"MODULE"} eq "$name.exe";
> + die "Invalid MODULE in $file" unless ($name =~ /\./ && $make{"MODULE"} eq $name) || $make{"MODULE"} eq "$name.exe";
> }
> else
> {
> die "APPMODE should not be defined in $file" if defined $make{"APPMODE"} ;
> die "EXTRADLLFLAGS should not contain -mconsole or -mwindows in $file" if $dllflags =~ /-m(console|windows)/;
> - die "Invalid MODULE in $file" unless $name =~ /\./ || $make{"MODULE"} eq "$name.dll";
> + die "Invalid MODULE in $file" unless ($name =~ /\./ && $make{"MODULE"} eq $name) || $make{"MODULE"} eq "$name.dll";
> }
> if (defined $make{"IMPORTLIB"})
> {
>
Hi,
Is there anything wrong with this?
I'd like to add some tests with the windows.media.speech DLL and it's
currently not possible because of the dots in the module name. If I name
the module folder "windows.media.speech.dll" to pass these checks,
marvin doesn't get the test executable right.
There's maybe an issue on the testbot side, but it's also IMHO a bit of
a hack to add this .dll suffix to pass the checks, and not very
consistent with the other modules suffix.
Cheers,
--
Rémi Bernon <rbernon at codeweavers.com>
More information about the wine-devel
mailing list