intltool.m4 error with OpenBSD sh

Bug #639857 reported by on 2010-09-15
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Данило Шеган

Bug Description

On OpenBSD, configure scripts that use intltool.m4 produce this error:

checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... Can't find string terminator '"' anywhere before EOF at -e line 1.

This is specifically due to this line of sh code in intltool.m4:

   IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`"

OpenBSD's /bin/sh normally processes this just fine, but autoconf scripts now enable POSIX mode (set -o posix), which causes these nested quotes to be parsed differently. This may or may not be a bug in OpenBSD's sh, but meanwhile it is easy to avoid this problem by not nesting more quoting levels than necessary. Since there is no word splitting/globbing in variable assignments, this would do just fine:

   IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"`

Related branches

Thanks for the bug report and fix, applied in r719 of lp:intltool.

Changed in intltool:
status: New → Fix Committed
importance: Undecided → Low
assignee: nobody → Данило Шеган (danilo)
milestone: none → 0.42.0
Changed in intltool:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers