Re: [Bug Report] - kselftest build fails if output directory is first level sub-directory

From: Muhammad Usama Anjum
Date: Tue Jun 07 2022 - 08:59:24 EST


Hi Shuah,

Should we merge this?

Thanks,
Usama

On 5/23/22 2:40 PM, Muhammad Usama Anjum wrote:
> On 5/22/22 10:15 PM, Masahiro Yamada wrote:
>> On Sat, May 21, 2022 at 3:44 PM Muhammad Usama Anjum
>> <usama.anjum@xxxxxxxxxxxxx> wrote:
>>>
>>> Hello,
>>>
>>> kselftest can be built using the kernel's top most Makefile without
>>> using kselftest's Makefile directly. But there is bug in the top most
>>> Makefile. The build fails if the specified output directory is first
>>> level sub-directory. Here is a example to reproduce this bug:
>>>
>>> make kselftest-all O=build
>>>
>>> "The Make is working in a wrong directory, that is why the relative path
>>> does not work." Masahiro Yamada. Feel free to fix it if someone pin the bug.
>>>
>>> It should be noted that the build works in some other combinations:
>>> make kselftest-all (works)
>>> make kselftest-all O=/tmp (works)
>>> make kselftest-all O=build/build2 (works)
>>>
>>> My unsuccessful attempt to fix this bug can be found here:
>>> https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@xxxxxxxxxxxxx/
>>>
>>> Thanks,
>>> Muhammad Usama Anjum
>>
>>
>> This problem starts from the bad design of the kselftest framework.
>> I did some research before. I think I can fix the root cause but
>> currently I do not have enough time to do it.
>>
>>
>> KBUILD_ABS_SRCTREE is a user-interface to request
>> Kbuild to use the absolute path.
>> If it is forced in the top Makefile, users have no way to
>> negate it.
>> It is true that using the absolute path is a quick work-around
>> because you do not need to care about the current working directory.
>>
>> If you insist on it, just go ahead. It is just two line changes.
>> Once the issue is fixed in a better way, your patch can be reverted easily.
> Thank you for replying. Lets merge it Shuah?
>
>>
>>
>>
>

--
Muhammad Usama Anjum