bug#20903: aclocal failure when installed to prefix containing '@'

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

bug#20903: aclocal failure when installed to prefix containing '@'

Eric Bavier
Hello Automake devs,

I have automake version 1.14.1 installed to a prefix containing the '@'
character.  Perl version 5.10.0.  Running aclocal (through
'autoreconf'), I get the following warnings, then failure:

Possible unintended interpolation of @4 in string at
/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/bin/aclocal
line 72.
Possible unintended interpolation of @1 in string at
/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/bin/aclocal
line 72.
aclocal: error: couldn't open directory
'/ptmp/bavier/projects/spack/opt/unknown_arch/gcc.3.4/automake.14.1-56e69c6c/share/aclocal-1.14':
No such file or directory
autoreconf: aclocal failed with exit status: 1

This seems related to perl's array interpolation in strings.  Line 72
contains:

my @automake_includes =
("/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/share/aclocal-$APIVERSION");

Replacing the '@' characters with "\@" lets aclocal run without error.

`~Eric



Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

bug#20903: aclocal failure when installed to prefix containing '@'

Thomas Jahns
On 06/26/15 17:23, Eric Bavier wrote:
> This seems related to perl's array interpolation in strings.  Line 72 contains:
>
> my @automake_includes =
> ("/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/share/aclocal-$APIVERSION");
>
>
> Replacing the '@' characters with "\@" lets aclocal run without error.

But the better method would be to get the desired effect without string
interpolation here, i.e. to write something that becomes

my @automake_includes =
('/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/share/aclocal-'
. $APIVERSION);

Please see the attached (passes make check on Debian x64, but otherwise
untested) patch

Thomas
--
Thomas Jahns
HD(CP)^2
Abteilung Anwendungssoftware

Deutsches Klimarechenzentrum GmbH
Bundesstraße 45a • D-20146 Hamburg • Germany

Phone:  +49 40 460094-151
Fax:    +49 40 460094-270
Email:  Thomas Jahns <[hidden email]>
URL:    www.dkrz.de

Geschäftsführer: Prof. Dr. Thomas Ludwig
Sitz der Gesellschaft: Hamburg
Amtsgericht Hamburg HRB 39784

0001-Avoid-problematic-string-interpolation.patch.gz (744 bytes) Download Attachment
smime.p7s (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

bug#20903: aclocal failure when installed to prefix containing '@'

Mathieu Lirzin
Hello,

Thomas Jahns <[hidden email]> writes:

> On 06/26/15 17:23, Eric Bavier wrote:
>> This seems related to perl's array interpolation in strings.  Line 72 contains:
>>
>> my @automake_includes =
>> ("/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/share/aclocal-$APIVERSION");
>>
>>
>> Replacing the '@' characters with "\@" lets aclocal run without error.
>
> But the better method would be to get the desired effect without
> string interpolation here, i.e. to write something that becomes
>
> my @automake_includes =
> ('/ptmp/bavier/projects/spack/opt/unknown_arch/gcc@4.3.4/automake@1.14.1-56e69c6c/share/aclocal-'
> . $APIVERSION);
>
> Please see the attached (passes make check on Debian x64, but
> otherwise untested) patch

Thanks, I have applied this patch in commit
fd244f28f5637e13009f75b6962d03401b22149c in your name.

Eric: Thank you for the bug report.

--
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37



Loading...