[13] RFR (S): 8217404: --with-jvm-features doesn't work when multiple features are explicitly disabled
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Sat Jan 19 00:31:03 UTC 2019
Thanks, Vladimir.
> I usually used --with-jvm-features=-aot,-jvmci,-graal
>
> Did not work in this case too?
I didn't know it supports comma-separated list, but it doesn't work as
well:
$ 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
Best regards,
Vladimir Ivanov
> On 1/18/19 3:33 PM, Vladimir Ivanov 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