У меня есть цель в моем make-файле с именем "cambios", которая заставляет cvs коммитить каждый файл проекта (по отдельности) и показывает последнюю ревизию.
Теперь у меня есть знакомый скрипт, который делает это, но я хотел бы знать, как я могу это сделать в make-файле. Я создал цель cambios2, которая делает то же самое без привычного сценария, но у него есть некоторые проблемы с синтаксисом.
Makefile:
(...)
TODO= makefile cambiosaux.sh lib/libreria.cc include/libreria.h src/principal.cc
(...)
cambios:
@./cambiosaux.sh "$(TODO)"
cambios2:
@for dir in $(TODO); do \
A = $(cvs commit -m "Incorporando cambios automáticamente." $$dir) \
ifneq ($(A),)
echo $dir ; \
echo "Última revisión:"$(echo $(A) | sed 's/.*new revision: //' | sed 's/;.*//') ; \
endif ; \
done
cambiosaux.sh:
for dir in $1
do
A=$(cvs commit -m "Incorporando cambios automáticamente." $dir)
if [ "$A" != "" ]; then
echo $dir
echo "Última revisión:"$(echo $A | sed 's/.*new revision: //' | sed 's/;.*//')
fi
done
В объекте cambios2 есть некоторые проблемы с синтаксисом, но я действительно новичок в создании make-файлов и действительно не знаю, как решить эти проблемы.
Спасибо!