make-rules/ips.mk
changeset 1152 96d423311191
parent 1151 76498004a954
child 1188 d563dccb5adb
equal deleted inserted replaced
1151:76498004a954 1152:96d423311191
   114 endif
   114 endif
   115 
   115 
   116 VERSIONED_MANIFESTS = \
   116 VERSIONED_MANIFESTS = \
   117 	$(PYV_MANIFESTS) $(PYNV_MANIFESTS) \
   117 	$(PYV_MANIFESTS) $(PYNV_MANIFESTS) \
   118 	$(PERLV_MANIFESTS) $(PERLNV_MANIFESTS) \
   118 	$(PERLV_MANIFESTS) $(PERLNV_MANIFESTS) \
   119 	$(UNVERSIONED_MANIFESTS)
   119 	$(NOPERL_MANIFESTS)
   120 
   120 
   121 GENERATED =		$(MANIFEST_BASE)-generated
   121 GENERATED =		$(MANIFEST_BASE)-generated
   122 COMBINED =		$(MANIFEST_BASE)-combined
   122 COMBINED =		$(MANIFEST_BASE)-combined
   123 MANIFESTS =		$(VERSIONED_MANIFESTS:%=$(MANIFEST_BASE)-%)
   123 MANIFESTS =		$(VERSIONED_MANIFESTS:%=$(MANIFEST_BASE)-%)
   124 
   124 
   182 $(MANIFEST_BASE)-%.p5m: %-PYVER.p5m $(WS_TOP)/transforms/mkgeneric-python
   182 $(MANIFEST_BASE)-%.p5m: %-PYVER.p5m $(WS_TOP)/transforms/mkgeneric-python
   183 	$(PKGMOGRIFY) -D PYV=### $(WS_TOP)/transforms/mkgeneric-python \
   183 	$(PKGMOGRIFY) -D PYV=### $(WS_TOP)/transforms/mkgeneric-python \
   184 		$(WS_TOP)/transforms/mkgeneric $< > [email protected]
   184 		$(WS_TOP)/transforms/mkgeneric $< > [email protected]
   185 	if [ -f $*-GENFRAG.p5m ]; then cat $*-GENFRAG.p5m >> [email protected]; fi
   185 	if [ -f $*-GENFRAG.p5m ]; then cat $*-GENFRAG.p5m >> [email protected]; fi
   186 
   186 
       
   187 # Define and execute a macro that generates a rule to create a manifest for a
       
   188 # perl module specific to a particular version of the perl runtime.
       
   189 define perl-manifest-rule
       
   190 $(MANIFEST_BASE)-%-$(shell echo $(1) | tr -d .).p5m: %-PERLVER.p5m
       
   191 	$(PKGMOGRIFY) -D PERLVER=$(1) -D PLV=$(shell echo $(1) | tr -d .) \
       
   192 		-D PERL_ARCH=$(call PERL_ARCH_FUNC,$(PERL.$(1))) $$< > [email protected]
       
   193 endef
       
   194 $(foreach ver,$(PERL_VERSIONS),$(eval $(call perl-manifest-rule,$(ver))))
       
   195 
   187 # A rule to create a helper transform package for perl, that will insert the
   196 # A rule to create a helper transform package for perl, that will insert the
   188 # appropriate conditional dependencies into a perl library's
   197 # appropriate conditional dependencies into a perl library's
   189 # runtime-version-generic package to pull in the version-specific bits when the
   198 # runtime-version-generic package to pull in the version-specific bits when the
   190 # corresponding version of perl is on the system.
   199 # corresponding version of perl is on the system.
   191 $(WS_TOP)/transforms/mkgeneric-perl: $(WS_TOP)/make-rules/shared-macros.mk
   200 $(WS_TOP)/transforms/mkgeneric-perl: $(WS_TOP)/make-rules/shared-macros.mk
   192 	$(RM) [email protected]
   201 	$(RM) [email protected]
   193 	$(foreach ver,$(shell echo $(PERL_VERSIONS) | tr -d .), \
   202 	$(foreach ver,$(shell echo $(PERL_VERSIONS) | tr -d .), \
   194 		$(call mkgeneric,runtime/perl,$(ver)))
   203 		$(call mkgeneric,runtime/perl,$(ver)))
   195 
   204 
   196 # Define and execute a macro that generates a rule to create a manifest for a
       
   197 # perl module specific to a particular version of the perl runtime.
       
   198 define perl-manifest-rule
       
   199 $(MANIFEST_BASE)-%-$(shell echo $(1) | tr -d .).p5m: %-PERLVER.p5m
       
   200 	$(PKGMOGRIFY) -D PERLVER=$(1) -D PLV=$(shell echo $(1) | tr -d .) $< > [email protected]
       
   201 endef
       
   202 $(foreach ver,$(PERL_VERSIONS),$(eval $(call perl-manifest-rule,$(ver))))
       
   203 
       
   204 # Build Perl version-wrapping manifests from the generic version.
   205 # Build Perl version-wrapping manifests from the generic version.
   205 $(MANIFEST_BASE)-%.p5m: %-PERLVER.p5m
   206 $(MANIFEST_BASE)-%.p5m: %-PERLVER.p5m $(WS_TOP)/transforms/mkgeneric-perl
   206 	$(PKGMOGRIFY) -D PLV=### $(WS_TOP)/transforms/mkgeneric-perl \
   207 	$(PKGMOGRIFY) -D PLV=### $(WS_TOP)/transforms/mkgeneric-perl \
   207 		$(WS_TOP)/transforms/mkgeneric $< > [email protected]
   208 		$(WS_TOP)/transforms/mkgeneric $< > [email protected]
   208 	if [ -f $*-GENFRAG.p5m ]; then cat $*-GENFRAG.p5m >> [email protected]; fi
   209 	if [ -f $*-GENFRAG.p5m ]; then cat $*-GENFRAG.p5m >> [email protected]; fi
   209 
   210 
   210 # mogrify non-parameterized manifests
   211 # mogrify non-parameterized manifests