RFR: 8221907: make reconfigure broken with "build/jmh/jars does not exist or is not a directory"

David Holmes david.holmes at oracle.com
Fri Apr 5 01:59:59 UTC 2019


Thanks for clarifying Erik.

Looks good.

David

On 4/04/2019 11:48 pm, Erik Joelsson wrote:
> Hello David,
> 
> On 2019-04-03 18:49, David Holmes wrote:
>> Hi Erik,
>>
>> On 4/04/2019 1:33 am, Erik Joelsson wrote:
>>> Hello Jie,
>>>
>>> This issue applies not only to --with-jmh, but to any configure 
>>> parameter given with a relative path. I think the proper fix would be 
>>> to record the current working directory when configure is launched 
>>> and cd to that directory when running reconfigure. Here is my 
>>> suggested patch:
>>>
>>> http://cr.openjdk.java.net/~erikj/8221907/webrev.01/index.html
>>>
>>> The relevant parts are exporting the variable from configure and 
>>> using it in Init.gmk. The rest is just renaming the variable since 
>>> CURDIR would clash with the pre defined make variable CURDIR.
>>
>> I see how the change fixes the issue with existing relative paths, but 
>> it indicates that OUTPUTDIR is different to CONFIGURE_START_DIR - so 
>> what happens with generated output now we have a different cwd? Is it 
>> all controlled by absolute paths and so will still go to the place(s) 
>> regardless?
>>
> All output is controlled with absolute paths yes. One of the first 
> things that happens when configure is run (in basics.m4) is figuring out 
> which dir is the workspace root (TOPDIR), which is the OUTPUTDIR etc. 
>  From then on, everything is defined as absolute paths using those basic 
> variables. Today you can run configure either from the root or from the 
> output dir. With this change, any reconfigure will match the original 
> cwd, so should get the same behavior as the original run of configure 
> (which is the idea of reconfigure).
> 
> /Erik
> 
>> Thanks,
>> David
>>
>>> /Erik
>>>
>>> On 2019-04-03 05:28, Jie Fu wrote:
>>>> Hi all,
>>>>
>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8221907
>>>>
>>>> For more info (e.g. the symptom & how to reproduce), please see the 
>>>> JBS.
>>>>
>>>> It can be fixed by
>>>> -----------------------------------------
>>>> diff -r 3326be37cd9a make/autoconf/lib-tests.m4
>>>> --- a/make/autoconf/lib-tests.m4        Tue Apr 02 17:27:48 2019 -0700
>>>> +++ b/make/autoconf/lib-tests.m4        Wed Apr 03 19:56:24 2019 +0800
>>>> @@ -73,6 +73,10 @@
>>>>    else
>>>>      # Path specified
>>>>      JMH_HOME="$with_jmh"
>>>> +    if test "x${JMH_HOME:0:1}" != x/; then
>>>> +      JMH_HOME="$TOPDIR/$JMH_HOME"
>>>> +    fi
>>>> +
>>>>      if test ! -d [$JMH_HOME]; then
>>>>        AC_MSG_RESULT([no, error])
>>>>        AC_MSG_ERROR([$JMH_HOME does not exist or is not a directory])
>>>> -----------------------------------------
>>>>
>>>> Could you please review it?
>>>> Thanks a lot.
>>>>
>>>> Best regards,
>>>> Jie
>>>>
>>>>



More information about the build-dev mailing list