RFR: JDK-8282700: Properly handle several --without options during configure [v4]

Magnus Ihse Bursie ihse at openjdk.java.net
Thu Mar 10 09:44:47 UTC 2022


On Thu, 10 Mar 2022 09:17:16 GMT, Julian Waters <jwaters at openjdk.org> wrote:

>> Some of the --without options are not properly handled and will crash when processed (For example, --without-version-string), in other cases the --without-* option will actually silently produce incorrect results instead of actually doing what --without-* implies (For example, --without-build-user and all the --with-vendor-* options). The most elegant way to solve this would simply be to handle such cases and display warnings when they're encountered (or if the option is critical to the build process, throwing an error)
>> 
>> Even if it doesn't make sense to pass said option however, it should display a warning instead of letting configure exit with a confusing error when it's run
>
> Julian Waters has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix syntax errors

make/autoconf/jdk-version.m4 line 507:

> 505:     # Set vendor version string if --without is not passed
> 506:     # Check not required if an empty value is passed, since VENDOR_VERSION_STRING
> 507:     # would then be set to ""

I'm not sure that works. In general, values like these are *supposed* to have a value. The default fallback is "N/A", which is not the empty string. I see no point in allowing overriding this to be empty. It just introduces cases where the build might fail later, for something that will hardly ever be tested.

make/autoconf/jdk-version.m4 line 554:

> 552:   elif test "x$with_macosx_bundle_build_version" = xno; then
> 553:     # Interpret --without-* as empty string instead of the literal "no"
> 554:     MACOSX_BUNDLE_BUILD_VERSION=

Same objection here. And even if it works right now, if we do allow this, it means that all future changes in the build system that involves MACOSX_BUNDLE_BUILD_VERSION needs to be verified that it works with the empty string.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7713



More information about the build-dev mailing list