Subject: | Exit with 0 in Makefile.PL When emacs Is Not Available |
Dear John Tobey,
Hi. This is imacat from Taiwan. I'm currently helping to run smoke
tests for CPAN modules. I found that your Emacs-EPL-0.7 hangs forever
if emacs is not available. I would suggest you to exit() with 0 from
the Makefile.PL if the required emacs fails, as suggested by this article:
<<Notes For CPAN Authors>
"How can I stop getting FAIL reports for missing libraries or other
non-Perl dependencies?"
http://cpantest.grango.org/wiki/CPANAuthorNotes
The terminal log is attached below. I made a simple patch to
Emacs-EPL-0.7, in the hope that it helps. Please tell me if you need
any more information, or if I could be of any help. Thank you.
imacat@rinse build/Emacs-EPL-0.7 % perl -v
This is perl, v5.8.8 built for x86_64-linux-thread-multi-ld
Copyright 1987-2006, Larry Wall
Perl may be copied only under the terms of either the Artistic License
or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
imacat@rinse build/Emacs-EPL-0.7 % make test
t/00_boot.........1/2 Can't exec "emacs": No such file or directory at
/tmp/build/Emacs-EPL-0.7/blib/lib/Emacs/EPL.pm line 667.
exec: No such file or directory at
/tmp/build/Emacs-EPL-0.7/blib/lib/Emacs/EPL.pm line 671.
make: *** wait: No child processes. Stop.
make: *** Waiting for unfinished jobs....
make: *** wait: No child processes. Stop.
imacat@rinse build/Emacs-EPL-0.7 % perl -Iblib/lib -Iblib/arch t/00_boot.t
1..2
ok 1
Can't exec "emacs": No such file or directory at blib/lib/Emacs/EPL.pm
line 667.
exec: No such file or directory at blib/lib/Emacs/EPL.pm line 671.
imacat@rinse build/Emacs-EPL-0.7 %
Subject: | Emacs-EPL-0.7-emacs.diff |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
diff -u -r Emacs-EPL-0.7.orig/Makefile.PL Emacs-EPL-0.7/Makefile.PL
- --- Emacs-EPL-0.7.orig/Makefile.PL 2001-02-12 08:55:58.000000000 +0800
+++ Emacs-EPL-0.7/Makefile.PL 2008-04-07 03:14:03.000000000 +0800
@@ -45,6 +45,14 @@
exit;
}
+$prog = 'emacs';
+$prog = $ENV{'EMACS'} if exists $ENV{'EMACS'};
+`$prog --version`;
+if ($? != 0) {
+ print STDERR "Cannot continue without a working emacs\n";
+ exit 0;
+}
+
WriteMakefile (
'NAME' => 'Emacs::EPL',
'VERSION' => $version,
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkf5IRMACgkQi9gubzC5S1w/NQCfXkfGlqlB4VIkWXtpeiBN05r7
4ooAn3hIyoF0hWElSak1t5aZzx1oe2ou
=QjYw
-----END PGP SIGNATURE-----