[PATCH] winetest: Guess when to append the .dll extension.

Rémi Bernon rbernon at codeweavers.com
Mon Mar 22 05:42:18 CDT 2021


On 3/22/21 11:39 AM, Rémi Bernon wrote:
> On 3/22/21 11:28 AM, Francois Gouget wrote:
>> On Sun, 21 Mar 2021, Zebediah Figura (she/her) wrote:
>>
>>> On 3/21/21 1:11 PM, Francois Gouget wrote:
>>>> WineTest derives the dll name from the test executable filename. 
>>>> However
>>>> the '.dll' extension is omitted in the executable filename. So if the
>>>> guessed library name does not already have a three-letter extension
>>>> (such as .ocx, .sys, etc.), assume it should have the '.dll' extension.
>>>>
>>>> Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
>>>> ---
>>>> This allows WineTest to retrieve the version information for
>>>> windows.media.speech.dll.
>>>> This is pretty ugly but at least it's a simple patch. Plus three
>>>> letters should be enough for any library extension ;-)
>>>> ---
>>>>    programs/winetest/main.c | 10 +++++++++-
>>>>    1 file changed, 9 insertions(+), 1 deletion(-)
>>>>
>>>
>>> I don't know if any WinRT DLLs end in a three-letter word, but it 
>>> seems not
>>> implausible...
>>>
>>> Wouldn't it be more consistent and easier just to name the directory
>>> "windows.media.speech.dll", and the test 
>>> "windows.media.speech.dll_test.exe",
>>> and then the rule everywhere becomes "if there's no dot in the name 
>>> already,
>>> append .dll or .exe"?
>>
>> That's how Rémi's patches started but then they switched to not
>> including the trailing .dll.
>>
>> Compare: 
>> https://www.winehq.org/pipermail/wine-devel/2021-March/182127.html
>> To:      
>> https://www.winehq.org/pipermail/wine-devel/2021-March/182686.html
>>
>> Apparently there was also a setupapi issue (which he fixed) but
>> presumably there was a decision at some point to keep omitting the .dll
>> extension (I don't see it in the mailing list archives though).
>>
> 
> Yes, omitting the .dll extension was done because of how differently 
> winetest computes the test executable names compared to winebuild. The 
> testbot uses (used?) the module directory name, while winebuild uses the 
> TESTDLL makefile variable (which could be different). It was easier imho 
> to just use the existing logic and not use .dll in the folder names.
> 

Maybe not winebuild but makedep.

> Also all other modules have an implicit .dll extension, unless otherwise 
> specified. It seemed more consistent to have the implicit .dll extension 
> for these modules too (considering that the extension is what differs 
> between the module folder and the MODULE makefile variable, not 
> something about dots in the name).
> 
> There's also several other places where the implicit .dll is used (ntdll 
> loader code for instance, when looking for modules in the build tree, 
> which I had patches for at some point, but maybe others).
-- 
Rémi Bernon <rbernon at codeweavers.com>



More information about the wine-devel mailing list