RFR: 8031669: (xs) Allow override of "simple required tools" in basics.m4
Mike Duigou
mike.duigou at oracle.com
Tue Jan 14 19:59:50 UTC 2014
On Jan 14 2014, at 10:35 , Mike Duigou <mike.duigou at oracle.com> wrote:
>
> On Jan 14 2014, at 05:17 , Magnus Ihse Bursie <magnus.ihse.bursie at oracle.com> wrote:
>
>> On 2014-01-14 02:57, Mike Duigou wrote:
>>> Hello all;
>>>
>>> This changeset allows overriding of the "simple required tools" which are gathered in BASIC_SETUP_FUNDAMENTAL_TOOLS macro of basics.m4 I didn't extend the override ability to every tool, instead primarily to the file manipulation and archiving tools which I need to override for a project I am working on.
>>>
>>> http://cr.openjdk.java.net/~mduigou/JDK-8031669/0/webrev/
>>>
>>> Mike
>>
>> I think you are partly reimplementing functionality that already exists.
>>
>> If you call AC_PATH_PROG(CAT, cat) and $CAT is already definied, then it will not change it. So if you call configure like this
>> configure CAT=/usr/local/bin/meow
>> then AC_PATH_PROG will not look for "cat", but will accept that CAT is set to /usr/local/bin/meow.
>>
>> I think this is your needed use case..?
>
> setting CAT didn't seem to have any effect for me and was overridden by BASIC_REQUIRE_PROG without adding the [$CAT cat] list. I will check again though.
I discovered the problem.
CAT=foo sh configure
will result in
CAT=/usr/bin/cat
(the default) whereas
CAT=/usr/bin/foo sh configure
will result in
CAT=/usr/bin/foo
(overridden) The value for CAT has to be an absolute path and not merely the name of something on the path. I'm now using
CAT=`which foo`
(overridden to /usr/bin/foo) and that seems to work fine.
Mike
>
>>
>> On the other hand, you do actually need AC_PATH_PROGS to check for both readlink and greadlink. And we should have used it to test for both gdiff and diff. So BASIC_REQUIRE_PROGS seems to fill a purpose anyway. But I think it is overkill to have bothBASIC_REQUIRE_PROG and BASIC_REQUIRE_PROGS; I think you can just convert the former into the latter and use it everywhere.
>
> I added BASIC_REQUIRE_PROGS which calls AC_PATH_PROGS to mirror BASIC_REQUIRE_PROG and it's calling of AC_PATH_PROG. The existence of both AC_PATH_PROGS and AC_PATH_PROG is presumably a historical wart but one I chose to copy.
>
> Mike
More information about the build-dev
mailing list