Допустим, у меня есть это в моем make-файле:
FOLDERS = "C:\Program Files\some3rdpartytool\inc\thing1.h" \
"C:\Program Files\some3rdpartytool\lib\libthing.lib" \
"C:\data\data1.h" \
Теперь я хочу, чтобы INCLUDE содержал:
INCLUDE = -I"C:\Program Files\some3rdpartytool\inc" \
-I"C:\Program Files\some3rdpartytool\lib" \
-I"C:\data" \
Обычно это легко - вы просто что-то вроде:
INCLUDE = $(addprefix -I, $(FOLDERS))
# you can also use the standard makefile function to take the folder path
# only - I just forget what it is off the top of my head...
Но независимо от того, что я делаю, это всегда работает только в списках, разделенных пробелами (как это и задумано), поэтому я получаю что-то вроде этого:
INCLUDE = -I"C:\Program \
-IFiles\some3rdpartytool\inc" \
-I"C:\Program \
-IFiles\some3rdpartytool\lib" \
-I"C:\data" \
Есть ли стандартный способ makefile для этого? (стандартный == портативный), я хочу, чтобы это идеально работало на Windows и Linux.
Примечание Я думал о замене любого ' "' --> ' -I"', но я не могу использовать пробел в команде subst... Я борюсь за продвижение вперед с этим...