ExtUtils::MakeMaker пользовательская цель
Есть ли способ, чтобы ExtUtils::MakeMaker генерировал пользовательскую цель Makefile? Скажем, я хотел бы сделать некоторые конкретные вещи, которые интересуют только разработчика, такие как запуск pod и регрессионных тестов; Я могу использовать переменные env для этого, но немного неудобно вспоминать подобные вещи. Возможность запустить что-то вроде make devtest
вместо этого было бы очень удобно.
1 ответ
Регрессионное тестирование с помощью ExtUtils::MakeMaker
По умолчанию make-файлы MakeMaker поставляются с test
цель, которая выполняет все регрессионные тесты в test.pl
в текущем каталоге, а также все файлы, соответствующие glob("t/*.t")
когда ты бежишь make test
, Ваше типичное использование должно быть:
perl Makefile.PL
make
make test
make install
Вы можете определить свой собственный make
цели, есть некоторая информация о переменных, которые вы можете установить в документации CPAN для модуля, а также на странице руководства.
Вот пример из статьи CPAN:
sub MY::postamble {
return <<'MAKE_FRAG';
$(MYEXTLIB): sdbm/Makefile
cd sdbm && $(MAKE) all
MAKE_FRAG
}