environment settings
Joshua Root
jmr at macports.org
Mon Nov 26 00:55:58 UTC 2018
On 2018-11-26 02:35 , Ryan Schmidt wrote:
>
>
> On Nov 25, 2018, at 09:13, Mark Brethen wrote:
>
>> build {
>> ui_info "Building libtaucs archives:"
>> system -W ${worksrcpath} "${build.cmd} ${build.args} ${build.target}"
>> }
>>
>> with 'LD = $(F77)’ in the Makefile, but that didn’t work. How should I pass this during build?
>
> I suppose that ought to work, except that perhaps the problem you're running into is that ${build.args} is a list of values. If you want to concatenate all those list items with spaces and include that expanded value in a string, as you're doing here, you'll need to use the expand operator ({*}). Technically, build.cmd and build.target (and all other MacPorts options) are lists too, though they might only contain one item at the moment. To properly expand all those lists into strings, you'd use: "{*}${build.cmd} {*}${build.args} {*}${build.target}".
The function of {*} is to pass a list to a command as multiple
arguments, one per list element. That is not what's desired here, as the
command to be run by system should be given in a single argument.
Perhaps you were thinking of 'join'? But that shouldn't really be needed
here either.
- Josh
More information about the macports-dev
mailing list