environment settings

Ryan Schmidt ryandesign at macports.org
Mon Nov 26 05:54:01 UTC 2018



On Nov 25, 2018, at 18:55, Joshua Root wrote:

>>> 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.

Perhaps I was. Ok, never mind then, I was just taking a wild stab at something that might be wrong, given that the custom build phase seemed unnecessary and therefore wrong, and since we weren't told in what way it "didn't work".



More information about the macports-dev mailing list