Makefile.PL: установка нескольких скриптов и двоичных файлов - PullRequest
4 голосов
/ 09 августа 2010

Учитывая Makefile.PL, как я могу установить два двоичных файла и два сценария в четырех разных местах?

Если быть более точным, структура каталога выглядит следующим образом:

  • lib / my_package / main.pl
  • bin / daemon / daemon.pl (*)
  • bin / plugin / plugin.pl (*)
  • scripts / conf / conf.sh (*)
  • scripts / init / initd.sh (*)
  • Makefile.PL

Файлы, отмеченные (*), должны быть установлены вследующие пути:

  • / usr / sbin / daemon.pl
  • / var / qmail / smtpplugins / plugin.pl
  • / usr / local / conf.sh
  • / etc / init.d / initd.sh

и содержимое моего Makefile.PL

use ExtUtils::MakeMaker;

WriteMakefile(
    NAME         => "my_package",
    VERSION_FROM => "lib/my_package/main.pl"
);

Что я могу сказать через perl черезMakefile.PL чтобы установить четыре файла в соответствующих каталогах?

Ответы [ 2 ]

1 голос
/ 14 мая 2015

Две идеи из документации ExtUtils::MakeMaker:

Используйте параметр PL_FILES.Перефразируя документацию: PL_FILES => {'bin/install.PL' => 'an-arg'} будет запускаться bin/foobar.PL как perl bin/installPL an-arg

. Или MakeMaker добавит новую цель к сгенерированному makefile, используя функцию postamble.

Или, да, Module::Install или Dist::Zilla (вероятно, есть еще один модуль Perl, чтобы сделать это с тех пор, как я в последний раз выглядел, живой живой язык).

0 голосов
/ 09 августа 2010

Если вы переключитесь на Module::Build, вы можете просто использовать install_path.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...