You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

53 lines
1.3 KiB

# This makefile simplifies perl module builds.
#
# Build environment
PERL_CMD := $(STAGING_DIR)/usr/bin/perl
PERL_LIB := $(STAGING_DIR)/usr/lib/perl5/5.20
# Module install prefix
PERL_SITELIB := /usr/lib/perl5/5.20
define perlmod/Configure
(cd $(PKG_BUILD_DIR); \
PERL5LIB=$(PERL_LIB) \
PERL_MM_USE_DEFAULT=1 \
$(2) \
$(PERL_CMD) Makefile.PL \
$(1) \
PERL_LIB=$(PERL_LIB) \
PERL_ARCHLIB=$(PERL_LIB) \
INSTALLSITELIB=$(PERL_SITELIB) \
INSTALLSITEARCH=$(PERL_SITELIB) \
DESTDIR=$(PKG_INSTALL_DIR) \
);
endef
define perlmod/Compile
PERL5LIB=$(PERL_LIB) \
$(2) \
$(MAKE) -C $(PKG_BUILD_DIR) \
$(1) \
install
endef
define perlmod/Install
$(INSTALL_DIR) $(strip $(1))$(PERL_SITELIB)
(cd $(PKG_INSTALL_DIR)$(PERL_SITELIB) && \
rsync --relative -rlHp --itemize-changes \
--exclude=\*.pod \
--exclude=.packlist \
$(addprefix --exclude=/,$(strip $(3))) \
--prune-empty-dirs \
$(strip $(2)) $(strip $(1))$(PERL_SITELIB))
chmod -R u+w $(strip $(1))$(PERL_SITELIB)
@echo "---> Stripping modules in: $(strip $(1))$(PERL_SITELIB)"
find $(strip $(1))$(PERL_SITELIB) -name \*.pm -or -name \*.pl | \
xargs -r sed -i \
-e '/^=\(head\|pod\|item\|over\|back\)/,/^=cut/d' \
-e '/^=\(head\|pod\|item\|over\|back\)/,$$$$d' \
-e '/^#$$$$/d' \
-e '/^#[^!"'"'"']/d'
endef