[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <569783D7.5000303@arm.com>
Date: Thu, 14 Jan 2016 11:17:43 +0000
From: Sudeep Holla <sudeep.holla@....com>
To: Michael Ellerman <mpe@...erman.id.au>,
Shuah Khan <shuahkh@....samsung.com>,
linux-api@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Sudeep Holla <sudeep.holla@....com>
Subject: Re: [RFC PATCH] selftests: use INSTALL_HDR_PATH instead of relative
paths
On 14/01/16 03:37, Michael Ellerman wrote:
> On Mon, 2016-01-11 at 14:22 +0000, Sudeep Holla wrote:
>
>> The selftests build fails or picks up wrong headers when cross-compiling
>> and build directory is different from source as the headers are referred
>> using the relative paths.
>>
>> This patch use $INSTALL_HDR_PATH to fix the compilation. It also removes
>> installing the headers.
>>
>> Cc: Shuah Khan <shuahkh@....samsung.com>
>> Signed-off-by: Sudeep Holla <sudeep.holla@....com>
>> ---
>> tools/testing/selftests/membarrier/Makefile | 2 +-
>> tools/testing/selftests/memfd/Makefile | 2 +-
>> tools/testing/selftests/net/Makefile | 2 +-
>> tools/testing/selftests/vm/Makefile | 7 ++-----
>> 4 files changed, 5 insertions(+), 8 deletions(-)
>>
>> Hi,
>>
>> When I was cross-compiling these tests for arm{32,64}, I faced issues.
>> With limited knowledge I have on this build system, I came up with this
>> patch. Please treat this as bug report if this approach makes no-sense
>> and suggest on how to fix it.
>
> Yeah sorry that doesn't work.
>
> If $(INSTALL_HDR_PATH) isn't defined you end up with:
>
> gcc -Wall -I /include -o compaction_test compaction_test.c -lrt
> ^
>
Ah OK, I got carried away by below in the main Makefile.
#Default location for installed headers
export INSTALL_HDR_PATH = $(objtree)/usr
> Which is wrong.
>
> INSTALL_HDR_PATH will not be defined when the tests are built standalone, ie.
> like:
>
> $ make -C tools/testing/selftests
>
Thanks for pointing this out. I had totally forgotten about that.
>
> This has been on my todo list to fix, but it doesn't actually bother me so I
> haven't got around to it.
>
> Does the patch below work for you? It uses INSTALL_HDR_PATH if it is defined,
> or otherwise KERNEL_HEADERS if it is defined, or finally it guesses at
> ../../../usr/include (ie. the base of the source tree).
>
Yes it does work fine. So feel free to add my tested-by when you post
the patch. Thanks for the quick and clean fix.
--
Regards,
Sudeep
Powered by blists - more mailing lists