You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Entering anything other than a simple string in CBS Makefile builder's build / clean commands don't parse correctly and are not passed to make as expected.
I am referring to these fields:
For example, enter make all with an extra space leads to a make error:
This is happening because the builder is simply splitting on " " which leads to an extra empty command line option
Another common-ish use case that needs proper parsing is passing things like CFLAGS on the build command line, e.g. make CFLAGS="-Wall -g" does not work today and it should be made to work, today the space in the middle is split so you get output like this:
…upport
Without this the build and clean command entered in the CBS
settings could be parsed and re-assembled incorrectly.
A simple example is that an extra space (e.g. "make clean") would
lead to an error when running make like:
```
make: *** empty string invalid as file name. Stop.
```
This happened because the code used trivial split on " " and join
with " " to handle parsing that command line string into array of
arguments. This change fixes that by using the functionality already
available in CommandLineUtil
Fixeseclipse-cdt#1072
Entering anything other than a simple string in CBS Makefile builder's build / clean commands don't parse correctly and are not passed to make as expected.
I am referring to these fields:
For example, enter
make all
with an extra space leads to a make error:This is happening because the builder is simply splitting on
" "
which leads to an extra empty command line optioncdt/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/build/StandardBuildConfiguration.java
Line 102 in 84d99f2
This also means other, more complicated cases, such as quoted strings are not handled properly either:
leads to:
The text was updated successfully, but these errors were encountered: