perl: only run finalize hook when necessary
authorDanomi Manchego <danomimanchego123@gmail.com>
Tue, 21 Jul 2015 01:59:24 +0000 (21:59 -0400)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 21 Jul 2015 21:42:36 +0000 (23:42 +0200)
The PERL_FINALIZE_TARGET always runs, even if perl is not installed.
This results in errors from the find command when it fails to find
anything, even when doing "make -s":

>>>   Finalizing target directory
find: `...../output/target/usr/lib/perl5/': No such file or directory
find: `...../output/target/usr/lib/perl5/': No such file or directory
find: `...../output/target/usr/lib/perl5/': No such file or directory

This is not helpful for projects that do not select Perl.  Silence this
by making the hook conditional on package selection.

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/perl/perl.mk

index 091c0327d701e1e06436fb2b671c810b1b6b73e9..1e6a054aabf8cc8a12a418c4efe8d21ef367fde4 100644 (file)
@@ -115,6 +115,7 @@ endef
 $(eval $(generic-package))
 $(eval $(host-generic-package))
 
+ifeq ($(BR2_PACKAGE_PERL),y)
 define PERL_FINALIZE_TARGET
        rm -rf $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)/pod
        rm -rf $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)/$(PERL_ARCHNAME)/CORE
@@ -122,6 +123,5 @@ define PERL_FINALIZE_TARGET
        find $(TARGET_DIR)/usr/lib/perl5/ -name '*.bs' -print0 | xargs -0 rm -f
        find $(TARGET_DIR)/usr/lib/perl5/ -name '.packlist' -print0 | xargs -0 rm -f
 endef
-
 TARGET_FINALIZE_HOOKS += PERL_FINALIZE_TARGET
-
+endif