1# Makefile updating perl
2# Install into the Extras directory (just like CPAN), and after post-install
3# cleanups, merge into the regular perl directories.
4
5# add directories here
6PROJECTS = CPAN-Meta-2.133380 \
7	   Scalar-List-Utils-1.38
8
9installarchlib := $(shell perl -MConfig -e 'print $$Config::Config{archlib}')
10installbin := $(shell perl -MConfig -e 'print $$Config::Config{installbin}')
11installprivlib := $(shell perl -MConfig -e 'print $$Config::Config{privlib}')
12ARCHLIB := $(DSTROOT)/$(installarchlib)
13PRIVLIB := $(DSTROOT)/$(installprivlib)
14PLARGS := INSTALLDIRS=perl INSTALLARCHLIB='$(installarchlib)' INSTALLPRIVLIB='$(installprivlib)' INSTALLBIN='$(installbin)' INSTALLSCRIPT='$(installbin)'
15PLBARGS := --installdirs core --install_path arch='$(installarchlib)' --install_path lib='$(installprivlib)' --install_path bin='$(installbin)' --install_path script='$(installbin)'
16MAKEARGS := DESTDIR=$(DSTROOT) CONFIGDEP=
17BUILDARGS := --destdir $(DSTROOT) CONFIGDEP=
18export PERL5LIB := $(PRIVLIB)
19export NO_PERL_PREPENDTOPATH := 1
20
21no_target:
22	@set -x && for i in $(PROJECTS); do \
23	    echo "===== $$i =====" && \
24	    $(MAKE) -C Modules/$$i unpack installarchlib="$(installarchlib)" \
25		installprivlib="$(installprivlib)" PLARGS="$(PLARGS)" \
26		PLBARGS="$(PLBARGS)" BUILDARGS="$(BUILDARGS)"\
27		MAKEARGS="$(MAKEARGS)" && \
28	    $(MAKE) -C Modules/$$i installarchlib="$(installarchlib)" \
29		installprivlib="$(installprivlib)" PLARGS="$(PLARGS)" \
30		PLBARGS="$(PLBARGS)" BUILDARGS="$(BUILDARGS)"\
31		MAKEARGS="$(MAKEARGS)" || exit 1; \
32	done
33
34install:
35	@set -x && for i in $(PROJECTS); do \
36	    echo "===== $$i =====" && \
37	    $(MAKE) -C Modules/$$i unpack installarchlib="$(installarchlib)" \
38		installprivlib="$(installprivlib)" PLARGS="$(PLARGS)" \
39		PLBARGS="$(PLBARGS)" BUILDARGS="$(BUILDARGS)"\
40		MAKEARGS="$(MAKEARGS)" && \
41	    $(MAKE) -C Modules/$$i install installarchlib="$(installarchlib)" \
42		installprivlib="$(installprivlib)" PLARGS="$(PLARGS)" \
43		PLBARGS="$(PLBARGS)" BUILDARGS="$(BUILDARGS)"\
44		MAKEARGS="$(MAKEARGS)" || exit 1; \
45	done
46	@echo ================ post-install fixups ================
47	rm -f $(ARCHLIB)/perllocal.pod
48	find $(ARCHLIB)/auto -name .packlist -print -delete
49
50projects:
51	@echo $(PROJECTS)
52