1N/A#
1N/A# CDDL HEADER START
1N/A#
1N/A# The contents of this file are subject to the terms of the
1N/A# Common Development and Distribution License (the "License").
1N/A# You may not use this file except in compliance with the License.
1N/A#
1N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1N/A# or http://www.opensolaris.org/os/licensing.
1N/A# See the License for the specific language governing permissions
1N/A# and limitations under the License.
1N/A#
1N/A# When distributing Covered Code, include this CDDL HEADER in each
1N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1N/A# If applicable, add the following below this CDDL HEADER, with the
1N/A# fields enclosed by brackets "[]" replaced with your own identifying
1N/A# information: Portions Copyright [yyyy] [name of copyright owner]
1N/A#
1N/A# CDDL HEADER END
1N/A#
1N/A
1N/A#
1N/A# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
1N/A#
1N/A
1N/Ainclude ../../../Makefile.cmd
1N/Ainclude ../Makefile.perlcfg
1N/A
1N/A#
1N/A# Extra arguments needed to fool MakeMaker into building in the distrib tree.
1N/A# Note we fake up an extra directory for contrib scripts under distrib - the
1N/A# modified installperl knows how to handle the contents.
1N/A#
1N/APERL_MM_ARGS += INST_ARCHLIB=$(PERL_DISTRIB)/lib INST_LIB=$(PERL_DISTRIB)/lib \
1N/A INST_SCRIPT=$(PERL_DISTRIB)/contrib_bin \
1N/A INST_BIN=$(PERL_DISTRIB)/contrib_bin PERL_SRC=$(PERL_DISTRIB)
1N/A
1N/A# All SMI perl libraries should be prefixed with this.
1N/ASUN_SOLARIS = Sun/Solaris
1N/A
1N/A# Add any XS extensions here.
1N/APERL_DYNAMIC_EXT = \
1N/A $(SUN_SOLARIS)/Utils \
1N/A $(SUN_SOLARIS)/Intrs \
1N/A $(SUN_SOLARIS)/Kstat \
1N/A $(SUN_SOLARIS)/Project \
1N/A $(SUN_SOLARIS)/Task \
1N/A $(SUN_SOLARIS)/Exacct \
1N/A $(SUN_SOLARIS)/Privilege \
1N/A $(SUN_SOLARIS)/Lgrp \
1N/A $(SUN_SOLARIS)/Ucred
1N/A
1N/A# Add any pure-perl extensions here.
1N/APERL_NONXS_EXT = \
1N/A $(SUN_SOLARIS)/BSM \
1N/A $(SUN_SOLARIS)/PerlGcc \
1N/A $(SUN_SOLARIS)/Pg
1N/A
1N/A
1N/APERL_EXT = $(PERL_DYNAMIC_EXT) $(PERL_NONXS_EXT)
1N/APERL_EXT_MAKEFILES = $(PERL_EXT:%=%/Makefile)
1N/A
1N/Aall: copy_contrib $(PERL_EXT_MAKEFILES) $(PERL_EXT)
1N/A
1N/A.PARALLEL: $(PERL_EXT_MAKEFILES) $(PERL_EXT)
1N/A
1N/A#
1N/A# Note: this is a dummy install target; during 'make all' this Makefile
1N/A# populates ../distrib/lib with the modules that it is responsible for building,
1N/A# and the install target of ../distrib/Makefile subsequently copies the modules
1N/A# into the proto area.
1N/A#
1N/Ainstall: all
1N/A
1N/A#
1N/A# copy_contrib copies the clearfiles from ../../contrib to here.
1N/A#
1N/Acopy_contrib: ../../contrib/copy_contrib
1N/A @ ../../contrib/copy_contrib ../../contrib . $(PERL_EXT)
1N/A
1N/Aclean:
1N/A -@ $(PERL_MM_ENV); \
1N/A for ext in $(PERL_EXT); do \
1N/A if [ -d $$ext ]; then \
1N/A ( \
1N/A cd $$ext; pwd; \
1N/A [ -f Makefile.old ] && mf=Makefile.old; \
1N/A [ -f Makefile ] && mf=Makefile; \
1N/A [ ! -z "$$mf" ] && $(MAKE) -f $$mf clean; \
1N/A ) \
1N/A fi \
1N/A done
1N/A
1N/Aclobber:
1N/A -@ $(PERL_MM_ENV); \
1N/A for ext in $(PERL_EXT); do \
1N/A if [ -d $$ext ]; then \
1N/A ( \
1N/A cd $$ext; pwd; \
1N/A [ -f Makefile.old ] && mf=Makefile.old; \
1N/A [ -f Makefile ] && mf=Makefile; \
1N/A [ ! -z "$$mf" ] && $(MAKE) -f $$mf realclean; \
1N/A ); \
1N/A $(RM) -r $$ext; \
1N/A fi \
1N/A done
1N/A
1N/Atest: all
1N/A @ $(PERL_MM_ENV); $(PERL_LD_ENV); \
1N/A for ext in $(PERL_EXT); do \
1N/A ( \
1N/A cd $$ext; pwd; \
1N/A [ -f Makefile.old ] && mf=Makefile.old; \
1N/A [ -f Makefile ] && mf=Makefile; \
1N/A [ ! -z "$$mf" ] && $(MAKE) -f $$mf test; \
1N/A ) \
1N/A done
1N/A
1N/A# Pattern-matching rule for Makefiles.
1N/A%/Makefile: %/Makefile.PL $(PERL_CONFIGDEP)
1N/A @ cd $(@D); pwd; $(RUN_MINIPERL) $(<F) $(PERL_MM_ARGS) > /dev/null
1N/A
1N/A# Pattern-matching rule for extensions.
1N/A$(SUN_SOLARIS)/%: $(SUN_SOLARIS)/%/Makefile FRC
1N/A @ cd $@; pwd; $(PERL_MM_ENV); $(MAKE) all
1N/A
1N/A#
1N/A# Additional rule to make sure changes to the ::Exacct sub-module Makefile.PL
1N/A# files results in the parent Makefile.PL being rerun.
1N/A#
1N/A$(SUN_SOLARIS)/Exacct/Makefile: $(SUN_SOLARIS)/Exacct/Makefile.PL \
1N/A $(SUN_SOLARIS)/Exacct/Catalog/Makefile.PL \
1N/A $(SUN_SOLARIS)/Exacct/File/Makefile.PL \
1N/A $(SUN_SOLARIS)/Exacct/Object/Makefile.PL \
1N/A $(PERL_CONFIGDEP)
1N/A @ cd $(SUN_SOLARIS)/Exacct; pwd; \
1N/A $(RUN_MINIPERL) Makefile.PL $(PERL_MM_ARGS) > /dev/null
1N/A
1N/AFRC: