First of all, thanks for your help.

M4 macros are fine but as documented, AS_HELP_STRING does not expand its
second argument, so you need to be careful about quoting when you use it.
[...]
If the defaults can be determined by m4 then you can use m4 to generate
the help string.
[...]
All the help text is generated statically at m4 time and is included
into the configure script as a quoted here-document.  So the shell will
not expand anything found within the help text at configure time.


I think that is the root of the problem. The default comes from variable 
${host_cpu}, which cannot be determined by m4 alone when generating the 
configure script.

To illustrate it, this is a piece of code I tried, which did not work either:

AS_CASE(["${host_cpu}"],
  [arm*], [
    m4_define([host_arm_bitbang_adapters_default], [auto])
    m4_define([host_arm_or_aarch64_bitbang_adapters_default], [auto])
  ],
  [aarch64], [
    m4_define([host_arm_or_aarch64_bitbang_adapters_default], [auto])
  ],
  [
    m4_define([host_arm_bitbang_adapters_default], [TODO])
    m4_define([host_arm_or_aarch64_bitbang_adapters_default], [TODO])
  ]
)

I am guessing there is no way around this, is there?


Otherwise, just write some text which is vague about the default.
Something like "default: auto" is usually fine.

The trouble is, OpenOCD uses "auto" with the following meaning: if the right libraries etc. are 
installed, enable the option. That is, enable the option if compilation should succeed. I would have to 
rewrite a chunk of configure.ac to provide a different "vague" help text for these options alone, 
and to implement the meaning of "auto" differently for those options.

Furthermore, I don't like the idea of being vague. It is then hard to predict 
whether a particular option would be automatically enabled, and that opens a 
window for head scratching, or perhaps I should write yet more custom 
configure.ac code for these options.

But I guess I am out of options. I'll speak to the OpenOCD guys about this.

Thanks again,
  rdiez


Reply via email to