#42594: llvm-3.3: ./configure: line 1990: -Os: command not found ------------------------------+------------------------ Reporter: Peter_Dyballa@… | Owner: jeremyhu@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: llvm-3.3 | ------------------------------+------------------------ Comment (by larryv@…): Replying to [comment:1 ryandesign@…]:
Lines 1990-1991 of the configure script read:
{{{ ${CFLAGS=} ${CXXFLAGS=} }}}
I don't know what that's supposed to mean.
These are special shell [http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag... parameter expansions], intended to assign default values. Given an expansion `${FOO=bar}`: - If `FOO` has a value (including null), that value is substituted. - If `FOO` is unset, it is assigned the value `bar`, which is then substituted. So these lines are intended to set `CFLAGS` and `CXXFLAGS` to be null if they aren’t already set in the invoking environment. It’s a bit of an obtuse method of accomplishing this.
In llvm-3.2, which does not produce this message, these lines are absent. In llvm-3.4 and llvm-3.5, which do not produce this message, the lines instead read:
{{{ : ${CFLAGS=} : ${CXXFLAGS=} }}}
I still don't know what that's supposed to mean.
The [http://pubs.opengroup.org/onlinepubs/009695399/utilities/colon.html colon] utility is a kind of weird no-op, except it still expands its arguments. So this accomplishes the same default-value behavior, except it avoids invoking a nonexistent command composed of compiler flags. -- Ticket URL: <https://trac.macports.org/ticket/42594#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X