[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