Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   Ошибка в Makefile (http://forum.oszone.net/showthread.php?t=290695)

hnsk 10-11-2014 01:16 2427194

Ошибка в Makefile
 
Необходимо собрать порт для freebsd.

Запнулся, казалось бы, на очень простой вещи.
Есть список файлов в pkg-plist нужно его прогнать через цикл и разложить в нужные места, скажем в ${PREFIX}

Есть Makefile c целю pre-install с содержимым:
Код:

pre-install:
        @FILES!=${CAT} ${PLIST} | ${XARGS}
        ${ECHO} ${FILES}

Cудя по man make все должно работать.
Код:

    !=      Expand the value and pass it to the shell for execution and
            assign the result to the variable.  Any newlines in the result
            are replaced with spaces.

Но не работает:
Код:

#make pre-install
FILES!=/bin/cat: not found
echo

#

Причем:
Код:

# whereis cat
cat: /bin/cat /usr/share/man/man1/cat.1.gz

Заменя переменных на абсалютные пути ни к чему не приводит.

Меняем на:
Код:

pre-install:
        @FILES= ${CAT} ${PLIST} | ${XARGS}
        ${ECHO} ${FILES}

Код:

# make pre-install
login.access nsswitch.conf
echo

#

Тут команды экзекутятся, но не присваивается к FILES. echo - ничего не выводит.

Собвсенно вопрос: где ошибка?:)
PS: не обращайте внимание на название целей и прочее. Сделано исключительно для демонстрации ошибки.

FreeBSD 9.2-STABLE
какой версии make сказать не могу pkg which молчит.
быстрое гугление дало только
strings `which make` | grep -B1 MAKE_VERSION
9201210220
MAKE_VERSION


Спасибо.


Время: 18:27.

Время: 18:27.
© OSzone.net 2001-