[13] RFR (S): 8217404: --with-jvm-features doesn't work when multiple features are explicitly disabled

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Mon Jan 21 17:35:16 UTC 2019


> Vladimir, if you're okay with it I'd like to propose this as a patch to 
> the problem instead:
> 
> http://cr.openjdk.java.net/~ihse/JDK-8217404-fix-multiple-disabled-jvm-features/webrev.01

Looks good! I verified that it fixes the bug.

Best regards,
Vladimir Ivanov

>>>> On Jan 18, 2019, at 3:33 PM, Vladimir Ivanov 
>>>> <vladimir.x.ivanov at oracle.com> wrote:
>>>>
>>>> http://cr.openjdk.java.net/~vlivanov/8217404/webrev.00/
>>>> https://bugs.openjdk.java.net/browse/JDK-8217404
>>>>
>>>> --with-jvm-features doesn't work properly when multiple features are 
>>>> explicitly disabled:
>>>>
>>>> $ bash configure --with-jvm-features="-aot -jvmci -graal"
>>>> ...
>>>> checking if jvmci module jdk.internal.vm.ci should be built... yes
>>>> checking if graal module jdk.internal.vm.compiler should be built... 
>>>> yes
>>>> checking if aot should be enabled... yes
>>>> ...
>>>>
>>>> The problem in the following code:
>>>>
>>>>   DISABLE_AOT=`$ECHO $DISABLED_JVM_FEATURES | $GREP aot`
>>>>   if test "x$DISABLE_AOT" = "xaot"; then
>>>>     ENABLE_AOT="false"
>>>>   fi
>>>>
>>>> Since DISABLED_JVM_FEATURES ("aot jvmci graal") contains the list of 
>>>> explicitly disabled features, grep over it returns the whole list 
>>>> when there's a match. The subsequent check fails because there's no 
>>>> exact match, though DISABLE_AOT contains "aot" .
>>>>
>>>> Proposed fix is to check there's no match instead.
>>>>
>>>> After the fix it works as expected:
>>>>
>>>> $ bash configure --with-jvm-features="-aot -jvmci -graal"
>>>> ...
>>>> checking if jvmci module jdk.internal.vm.ci should be built... no, 
>>>> forced
>>>> checking if graal module jdk.internal.vm.compiler should be built... 
>>>> no, forced
>>>> checking if aot should be enabled... no, forced
>>>> ...
>>>>
>>>> (The fix doesn't address the case when one feature has a name which 
>>>> is a proper substring of another feature, but there are no such 
>>>> cases at the moment.)
>>>>
>>>> Best regards,
>>>> Vladimir Ivanov
>>>
> 



More information about the build-dev mailing list