RFR: 8296478: Rework 8282948 and 8282700 to use the new autoconf UTIL_ARG_WITH
Julian Waters
jwaters at openjdk.org
Thu Nov 17 07:16:39 UTC 2022
On Wed, 16 Nov 2022 19:44:58 GMT, Magnus Ihse Bursie <ihse at openjdk.org> wrote:
> > For one reason or another this particular flag simply refuses to work properly with UTIL_ARG_WITH, and after numerous attempts I'm completely lost as to how to make it function without crashing autoconf halfway through before the configure script is even generated
>
> This sounds like the typical case that happens if you inadvertently write the name of a macro ("function") that gets expanded. Like this:
>
> ```
> AC_DEFUN([TEST_FOO],
> [
> echo Debug: we are running in TEST_FOO
> ])
> ```
>
> will fail to compile with a stack overflow, since the `TEST_FOO` in the debug output will be recursively expanded with the function we're trying to expand. (Been there, done that, has produced profanities over autoconf enough to guarantee me a very hot place in the afterlife, before I figured that one out...)
>
> So check if you are trying to write a "keyword" where a substring matches some other defined macro.
Scoured the following for any of the related issues you pointed out, can't seem to figure out what I'm overwriting or doing wrong though :(
(I'm only using the IF_GIVEN block for demonstration purposes, I'll change it to CHECK_VALUE later on, but see above for a problem I picked up while doing so)
UTIL_ARG_WITH(NAME: vendor-name, TYPE: string,
RESULT: COMPANY_NAME,
DEFAULT: $DEFAULT_COMPANY_NAME,
DESC: [Set vendor name. Among others, used to set the 'java.vendor'
and 'java.vm.vendor' system properties.],
DEFAULT_DESC: [not specified],
IF_GIVEN: [
if test "x$COMPANY_NAME" = x; then
AC_MSG_ERROR([--with-vendor-name must have a value])
elif [ ! [[ $COMPANY_NAME =~ ^[[:print:]]*$ ]] ]; then
AC_MSG_ERROR([--with-vendor-name contains non-printing characters: $COMPANY_NAME])
fi
])
AC_SUBST(COMPANY_NAME)
Runnable configure script is not up to date
Generating runnable configure script at /d/Eclipse/Workspace/jdk/build/.configure-support/generated-configure.sh
Using autoconf at /usr/bin/autoconf [autoconf (GNU Autoconf) 2.71]
-------------
PR: https://git.openjdk.org/jdk/pull/11020
More information about the build-dev
mailing list