Передайте параметр с пробелами в CMake ExternalProject_Add BUILD_COMMAND

Я пытаюсь выполнить кросс-компиляцию bzip2 в Linux, используя CMake ExternalProject_Add (...) команда.

Однако для кросс-компиляции libbzip вы должны изменить некоторые макросы Makefile для выполнения сборки. Вот моя текущая переменная кросс-компиляции:

set(bzlib_CROSS CC=${CROSS_PREFIX}gcc AR=${CROSS_PREFIX}ar RANLIB=${CROSS_PREFIX}ranlib LDFLAGS=-L${bzlib_MINGW_SRC}/lib CFLAGS=-Wall -Winline -O2 -g -I${bzlib_MINGW_SRC}/include)

Эта переменная затем используется для команды сборки

set(bzlib_BUILD make ${bzlib_CROSS} PREFIX=${DEPENDENCY_DIR})

Ошибки CMake, потому что она пытается передать -O2, -g и т.д. в make , который из конечно, не работает, но когда я пытаюсь добавить кавычки вокруг переменной CFLAGS , он говорит

cc1: error: unrecognized command line option '-Wall -Winline -O2 -g -I/long/path/here/include'

Можно ли установить макрос Makefile с пробелами в нем с помощью CMake BUILD_COMMAND ? Спасибо!

5
задан mevatron 16 November 2011 в 15:32
поделиться