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
}
Другие вопросы по тегам