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@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,