1Project = mod_perl 2ProjectVersion = $(Project)-2.0.7 3 4include $(MAKEFILEPATH)/CoreOS/ReleaseControl/Common.make 5 6# Perl multi-version support 7 8VERSIONERDIR = /usr/local/versioner 9PERLVERSIONS = $(VERSIONERDIR)/perl/versions 10DEFAULT := $(shell sed -n '/^DEFAULT = /s///p' $(PERLVERSIONS)) 11KNOWNVERSIONS := $(shell grep -v '^DEFAULT' $(PERLVERSIONS)) 12BOOTSTRAPPERL = 5.16 13VERSIONS = $(sort $(KNOWNVERSIONS) $(BOOTSTRAPPERL)) 14# do default version last 15PERLORDEREDVERS = $(filter-out $(DEFAULT),$(VERSIONS)) $(DEFAULT) 16 17PERLEXTRASLIB := $(subst Perl,Perl/Extras,$(shell perl -e 'require Config; print $$Config::Config{installprivlib}')) 18PERLARCHLIB := $(shell perl -e 'require Config; print $$Config::Config{installarchlib}') 19PERLEXTRASARCHLIB := $(subst Perl,Perl/Extras,$(PERLARCHLIB)) 20CFLAGS += -std=c89 21 22install:: 23 @echo "--> Extracting..." 24 $(MKDIR) $(OBJROOT) 25 $(TAR) -C $(OBJROOT) -zxf $(SRCROOT)/$(ProjectVersion).tar.gz 26 27 @echo "--> Building/installing..." 28 @set -x && \ 29 cd $(OBJROOT)/$(ProjectVersion) && \ 30 for vers in $(PERLORDEREDVERS); do \ 31 export VERSIONER_PERL_VERSION=$${vers} && \ 32 installarchlib=`perl -MConfig -e 'print $$Config::Config{installarchlib}' | sed 's,Perl,Perl/Extras,'` && \ 33 installprivlib=`perl -MConfig -e 'print $$Config::Config{installprivlib}' | sed 's,Perl,Perl/Extras,'` && \ 34 ARCHFLAGS="$(RC_CFLAGS)" perl Makefile.PL \ 35 MP_APXS="/usr/sbin/apxs" \ 36 MP_CCOPTS="$(CFLAGS)" \ 37 INSTALLARCHLIB=$${installarchlib} \ 38 INSTALLDIRS=perl \ 39 INSTALLMAN3DIR="$(MANDIR)/man3" && \ 40 $(MAKE) && \ 41 $(MAKE) install DESTDIR=$(DSTROOT); \ 42 done 43 44 @echo "--> Post install cleanup..." 45 find $(DSTROOT) -name \*.bs -delete 46 find $(DSTROOT) -name perllocal.pod -delete 47 find $(DSTROOT) -type d -empty -delete 48 49 @set -x && \ 50 cd $(DSTROOT) && \ 51 for bundle in `find . -type f -name \*.bundle -o -name \*.so`; do \ 52 bundledir=$(SYMROOT)/`dirname $${bundle}` && \ 53 $(MKDIR) $${bundledir} && \ 54 $(CP) $${bundle} $${bundledir} && \ 55 $(STRIP) -x $${bundle}; \ 56 done 57 58 $(INSTALL_DIRECTORY) $(DSTROOT)/usr/local/OpenSourceVersions 59 $(INSTALL_FILE) $(SRCROOT)/mod_perl.plist $(DSTROOT)/usr/local/OpenSourceVersions/apache_mod_perl.plist 60 $(INSTALL_DIRECTORY) $(DSTROOT)/usr/local/OpenSourceLicenses 61 $(INSTALL_FILE) $(OBJROOT)/$(ProjectVersion)/LICENSE $(DSTROOT)/usr/local/OpenSourceLicenses/apache_mod_perl.txt 62 $(MKDIR) $(DSTROOT)/usr/share/man/man1 63 $(INSTALL_FILE) $(SRCROOT)/mp2bug.1 $(DSTROOT)/usr/share/man/man1 64 $(_v) $(MAKE) compress_man_pages 65