In particular, the Signed-off-by: line is critically important -- we cannot apply a patch without one.
git blame says this + syntax was originally introduced in commit becaeb726 in July (though at that point the variable name was slightly different: ${gnutls_nettle+($nettle_version)} ). That means we were using this construct in v2.4.0, so this is not a regression for 2.5.0. I'm also a bit confused by your patch and your original bug report. The error message you quote is complaining about a line with ":+" syntax, but upstream configure is not using ":+" syntax here. Indeed your patch is changing it from + to :+. -echo "nettle $nettle ${nettle+($nettle_version)}" +echo "nettle $nettle ${nettle:+($nettle_version)}" It's not clear to me why this would help, because http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02 (section "Parameter Expansion") which documents the syntax describes both ":+" and "+", so whatever the shell is complaining about it presumably isn't the + vs :+ distinction. Which shell is this? -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1525682 Title: configure: fix POSIX compatibility issue Status in QEMU: New Bug description: When running configure script from 2.5.0-rc4 on OpenBSD-current (amd64), I get the following error: ./configure[4756]: ${nettle:+($nettle_version)}": bad substitution *** Error 1 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2747 '/usr/ports/pobj/qemu-2.5.0rc4/.configure_done') *** Error 1 in /usr/ports/openbsd-wip/emulators/qemu (/usr/ports/infrastructure/mk/bsd.port.mk:2491 'configure') Indeed, construct "${nettle:+($nettle_version)}" does not conform to POSIX Shell Command Language. The attached patch fixes the issue. To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/1525682/+subscriptions