libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Correctly concat commands when export_symbols_cmds starts wi


From: Ralf Wildenhues
Subject: Re: [PATCH] Correctly concat commands when export_symbols_cmds starts with some 'word'.
Date: Mon, 27 Jun 2011 23:12:05 +0200

Hi Michael,

* Michael Haubenwallner wrote on Mon, Jun 27, 2011 at 04:28:38PM CEST:
> Concatening commands breaks when export_symbols_cmds starts with something
> like "dump", which does not need another shell expansion step. Instead, it
> is merged with "\$concat_cmds" to "$concat_cmdsdump" for within the eval.
> 
> While this isn't a problem right now, it hits me when experimenting with
> shared library versioning support for AIX.

How can that be?

> +     Correctly concat commands when export_symbols_cmds starts with 'word'.
> +     * libltdl/config/ltmain.m4sh: When export_symbols_cmd starts with some
> +     'word', 'word' is joined with 'concat_cmds' to 'concat_cmdsword' due to
> +     different expansion time: Need to embrace concat_cmds variable for
> +     export_symbols_cmds too as for reload_cmds and old_archive_cmds.

When $concat_cmds is nonempty, it gets a '~' at the end.  That can never
be part of a shell word, if I see correctly.  Can you give an example?

> --- a/libltdl/config/ltmain.m4sh
> +++ b/libltdl/config/ltmain.m4sh
> @@ -7636,7 +7636,7 @@ EOF
>             libobjs=$output
>             # Append the command to create the export file.
>             test -z "$concat_cmds" || concat_cmds=$concat_cmds~
> -           eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
> +           eval concat_cmds=\"\${concat_cmds}$export_symbols_cmds\"
>             if test -n "$last_robj"; then
>               eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
>             fi

Thanks,
Ralf



reply via email to

[Prev in Thread] Current Thread [Next in Thread]