mainAutoconf - Support: sr #111321, config.status generation by...

 
 

sr #111321: config.status generation by configure in dash 0.5.13 fails with ERROR

Submitter:  None
Submitted:  Mon 29 Sep 2025 09:50:45 AM UTC
   
 
Priority:  * 5 - Unprioritized Severity:  3 - Normal
Status:  None Privacy:  Public
Assigned to:  None Originator Email:  -email is unavailable-
Open/Closed:  Open Operating System:  Microsoft Windows
* Mandatory Fields

Post a Comment

Add a New Comment Rich Markup
   

Discussion

Sat 04 Oct 2025 04:02:57 AM UTC, comment #4: 
Anonymous
Sat 04 Oct 2025 03:34:52 AM UTC, comment #3: 

For completeness, the dash side of this bug report is https://lore.kern ... stematicSW.ab.ca/.

Sam James <thesamesam>
Sat 04 Oct 2025 03:19:17 AM UTC, comment #2: 

Checking back with dash-0.5.12, it appears automake 1.18 introduced an issue, so that no dash 0.5.12-0.5.13 commit builds successfully, with autoreconf config.status terminating after
...
esac
ac_sed_extra="

>>EOF<<


and all builds now failing with:

$ tail ko/dash-0.5.13-3.x86_64/log/dash-0.5.13-3-compile.log
checking for signal... yes
checking whether stat64 is declared... no
checking for glob64... no
checking for open64... no
checking for stat::st_mtim... yes
configure: updating cache config.cache
checking that generated files are newer than configure... done
configure: creating ./config.status
./config.status: 664: Syntax error: Unterminated quoted string
* ERROR: configure failed

Likely the autoreconfig with recently updated automake 1.18 using existing /usr/share/autoconf/autoconf/status.m4 stanza:

# Neutralize VPATH when `$srcdir' = `.'.
# Shell code in configure.ac might set extrasub.
# FIXME: do we really want to maintain this feature?
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_sed_extra="$ac_vpsub
$extrasub
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
:t
[/@[a-zA-Z_][a-zA-Z_0-9]*@/!b]
dnl configure_input is a somewhat special, so we don't call AC_SUBST_TRACE.
dnl Note if you change the s||| delimiter here, don't forget to adjust
dnl ac_sed_conf_input accordingly.  Using & is a bad idea if & appears in
dnl the replacement string.
s|@configure_input@|$ac_sed_conf_input|;t t
dnl During the transition period, this is a special case:
s&@top_builddir@&$ac_top_builddir_sub&;t t[]AC_SUBST_TRACE([top_builddir])
dnl For this substitution see the witness macro _AC_HAVE_TOP_BUILD_PREFIX above.
s&@top_build_prefix@&$ac_top_build_prefix&;t t[]AC_SUBST_TRACE([top_build_prefix])
m4_map_args_sep([$0_ADJUST_DIR(], [)], [
], [srcdir], [abs_srcdir], [top_srcdir], [abs_top_srcdir],
   [builddir], [abs_builddir],
   [abs_top_builddir]AC_PROVIDE_IFELSE([AC_PROG_INSTALL],
     [, [INSTALL]])AC_PROVIDE_IFELSE([AC_PROG_MKDIR_P], [, [MKDIR_P]]))
m4_ifndef([AC_DATAROOTDIR_CHECKED], [$ac_datarootdir_hack
])dnl
"

to generate config.status ending with an unterminated string where that _ACEOF line appears.


Anonymous
Sat 04 Oct 2025 12:12:04 AM UTC, comment #1: 


> bash and previous dash releases work okay.


That suggests that it is a bug in dash 0.5.13, no?

> This appears to be generated by lib/autoconf/status.m4 about line 650 where ac_sed_extra definition is added to config.status without a terminating '"'


Quoting POSIX https://pubs.open ... html#tag_19_07_04 :
« However, the double-quote character ('"') shall not be treated specially within a here-document, except when the double-quote appears within "$()", "``", or "${}". »
So, why would you expect the lone double-quotes in status.m4 lines 652 and 674 to be a problem?

Bruno Haible <haible>
Mon 29 Sep 2025 09:50:45 AM UTC, original submission:  

Testing dash 0.5.13 by rebuilding under Cygwin with dash == sh causes failure of configure when config.status is run, due to an unterminated null string definition on the last line of config.status:
ac_sed_extra="

This appears to be generated by lib/autoconf/status.m4 about line 650 where ac_sed_extra definition is added to config.status without a terminating '"'; it also appears that the here doc delimiter _ACEOF and following line with `cat >> $CONFIG_STATUS ...` is followed by a sequence of sed commands, which may be intended to be part of the definition, as it is '"' terminated.

However, this may be some clever shell scripting I don't understand, nor how it gets generated into configure by autoconf, as there may be some misquoting in effect somewhere.

This appears in a number of recently updated packages' configure scripts, and is not changed by autoreconf in the relevant lines.

Generation of config.status has not been affected until latest dash was tested as sh; bash and previous dash releases work okay.

The relevant bits of the autoconf macros have not changed in recent years:

$ grep -A9 VPATH /usr/share/autoconf2.7/autoconf/status.m4
# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
# trailing colons and then remove the whole line if VPATH becomes empty
# (actually we leave an empty line to preserve line numbers).
if test "x$srcdir" = x.; then
  ac_vpsub=['/^[ ]*VPATH[ ]*=[ ]*/{
h
s///
s/^/:/
s/[ ]*$/:/
s/:\$(srcdir):/:/g
s/:\${srcdir}:/:/g
s/:@srcdir@:/:/g
s/^:*//
s/:*$//
--
# Neutralize VPATH when '$srcdir' = '.'.
# Shell code in configure.ac might set extrasub.
# FIXME: do we really want to maintain this feature?
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_sed_extra="$ac_vpsub
$extrasub
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
:t
[/@[a-zA-Z_][a-zA-Z_0-9]*@/!b]

Anonymous

 

Attached Files

This item currently has no attached files.

(Note: upload size limit is set to 4.0MiB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

 

Dependencies

This item does not depend on any other items.

No items depend on this one.

 

Mail Notification Carbon-Copy List

Carbon-Copy List
  • -email is unavailable- added by thesamesam (Posted a comment)
  • -email is unavailable- added by haible (Posted a comment)
  • -email is unavailable- added by None (Submitted the item)
  •  

    Votes

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    History

    No changes have been made to this item

    Back to the top

    Powered by Savane 3.16-ed84.
    Corresponding source code