Patchwork cpan.bbclass: Fail unless Makefile.PL generates Makefile

login
register
mail settings
Submitter Olof Johansson
Date July 22, 2013, 9:35 a.m.
Message ID <1374485747-8334-1-git-send-email-olof.johansson@axis.com>
Download mbox | patch
Permalink /patch/54157/
State Accepted
Commit 0a2dffefc6fbca37ce9604117cebc2f7d4abc1c6
Headers show

Comments

Olof Johansson - July 22, 2013, 9:35 a.m.
Makefile.PLs can exit with success without generating a Makefile,
e.g. in cases of missing configure time dependencies. This is
considered a best practice by cpantesters.org. See:

 * http://wiki.cpantesters.org/wiki/CPANAuthorNotes
 * http://www.nntp.perl.org/group/perl.qa/2008/08/msg11236.html

Signed-off-by: Olof Johansson <olof.johansson@axis.com>
---
 meta/classes/cpan.bbclass |    9 +++++++++
 1 file changed, 9 insertions(+)

Patch

diff --git a/meta/classes/cpan.bbclass b/meta/classes/cpan.bbclass
index bef9e82..7088039 100644
--- a/meta/classes/cpan.bbclass
+++ b/meta/classes/cpan.bbclass
@@ -18,6 +18,15 @@  export PERLHOSTLIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${@get_perl_vers
 cpan_do_configure () {
 	export PERL5LIB="${PERL_ARCHLIB}"
 	yes '' | perl ${EXTRA_PERLFLAGS} Makefile.PL ${EXTRA_CPANFLAGS}
+
+	# Makefile.PLs can exit with success without generating a
+	# Makefile, e.g. in cases of missing configure time
+	# dependencies. This is considered a best practice by
+	# cpantesters.org. See:
+	#  * http://wiki.cpantesters.org/wiki/CPANAuthorNotes
+	#  * http://www.nntp.perl.org/group/perl.qa/2008/08/msg11236.html
+	[ -e Makefile ] || bbfatal "No Makefile was generated by Makefile.PL"
+
 	if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then
 		. ${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/config.sh
 		# Use find since there can be a Makefile generated for each Makefile.PL