Makefile revision dc0093f44ee4fac928e006850f8ed53f68277af5
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# CDDL HEADER START
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
69340304f32eac4d438c67b5e1f6bc2f0a05ea22pjrm# The contents of this file are subject to the terms of the
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Common Development and Distribution License (the "License").
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# You may not use this file except in compliance with the License.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# or http://www.opensolaris.org/os/licensing.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# See the License for the specific language governing permissions
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# and limitations under the License.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# When distributing Covered Code, include this CDDL HEADER in each
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# If applicable, add the following below this CDDL HEADER, with the
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# fields enclosed by brackets "[]" replaced with your own identifying
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# information: Portions Copyright [yyyy] [name of copyright owner]
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# CDDL HEADER END
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Use is subject to license terms.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# ident "%Z%%M% %I% %E% SMI"
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzinclude ../Makefile.master
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Note that libcurses installs commands along with its library.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# This is a minor bug which probably should be fixed.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Note also that a few extra libraries are kept in cmd source.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Certain libraries are linked with, hence depend on, other libraries.
6ad76e4c8e1862d23d04bb34a3fbc330e6b8cd30joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Although we have historically used .WAIT to express dependencies, it
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# reduces the amount of parallelism and thus lengthens the time it
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# takes to build the libraries. Thus, we now require that any new
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# libraries explicitly call out their dependencies. Eventually, all
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# the library dependencies will be called out explicitly. See
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# "Library interdependencies" near the end of this file.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
69340304f32eac4d438c67b5e1f6bc2f0a05ea22pjrm# Aside from explicit dependencies (and legacy .WAITs), all libraries
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# are built in parallel.
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz.PARALLEL:
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# The $(CLOSED_BUILD) additions to SUBDIRS & MSGSUBDIRS are unfortunate,
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# but required due to the "dependencies" of using .WAIT to barrier the
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# parallel dmake builds. once 4631488 has been fixed, they can be
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# consolidated into one $(CLOSED_BUILD)SUBDIRS += (all closed libs) as
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# shown in HDRSUBDIRS
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruzSUBDIRS= \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz common .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz abi/apptrace .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/abi/spectrans .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sgs/libconv \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sgs/libdl .WAIT
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libc_i18n
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
69340304f32eac4d438c67b5e1f6bc2f0a05ea22pjrmSUBDIRS += \
69340304f32eac4d438c67b5e1f6bc2f0a05ea22pjrm libc .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmapmalloc .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sgs/libelf .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmd5 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmp .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcmd \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnsl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsecdb .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librpcsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsocket .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsctp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libresolv \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libresolv2 .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libw .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libintl .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sgs/librtld_db \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libaio \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libctf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdtrace \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdtrace_jni \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcurses \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libgen \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libgss \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpam \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libuuid \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libthread \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpthread .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libslp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libbsdmalloc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdoor \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdevinfo \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdladm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdlpi \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libeti \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcrypt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libefi \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanboot \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanbootutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcryptoutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetcfg \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipmp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libkstat \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libkvm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz liblaadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz liblm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmacadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmalloc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmtmalloc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnls \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsmbios \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtecla \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libumem \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnvpair .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libexacct \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libplot \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libldap4 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsasl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libldap5 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsldap .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libbsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsys \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsysevent \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnisdb \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpool \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libproc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libproject \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsendfile \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz nametoaddr \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ncad_addr \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_krb5 .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz krb5 .WAIT
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/smartcard
70fd8f7de4994668eeb9f532d0523266a176e795joncruzSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz passwdutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz pam_modules \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz crypt_modules \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libadt_jni \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz auditd_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libvolmgt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdevice \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdevid \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libc_db \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsec \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnfprobe \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnfctl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpagent \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpdu \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcputil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipsecutil
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libike
70fd8f7de4994668eeb9f532d0523266a176e795joncruzSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz nsswitch \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz print \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libuutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libscf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librestart \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsched
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libelfsign
70fd8f7de4994668eeb9f532d0523266a176e795joncruzSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz pkcs11 .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpctx .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcpc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz watchmalloc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz madv \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz mpss \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdisasm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwrap \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libxcurses \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libxcurses2 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libxnet \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzonecfg \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzoneinfo \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_spnego \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_dummy \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_dh \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz rpcsec_gss \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librcm .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcfgadm .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpicl .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpicltree .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz cfgadm_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmail \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz lvm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsmedia \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz openssl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdiskmgt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz liblgrp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libfsmgt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz fm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libavl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcmdutils \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcontract \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sendmail/libmilter \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz sasl_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz udapl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzpool \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzfs \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzfs_jni \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $($(MACH)_SUBDIRS)
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzsparc_SUBDIRS= .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz efcode \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libc_psr .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmd5_psr .WAIT
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)sparc_SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libprtdiag .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libprtdiag_psr \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/librsc
70fd8f7de4994668eeb9f532d0523266a176e795joncruzsparc_SUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libfruutils .WAIT \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libfru \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwrsmconf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz storage \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz wrsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpcp
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzfm: libexacct
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# Create a special version of $(SUBDIRS) with no .WAIT's, for use with the
70fd8f7de4994668eeb9f532d0523266a176e795joncruz# clean and clobber targets (for more information, see those targets, below).
70fd8f7de4994668eeb9f532d0523266a176e795joncruz#
70fd8f7de4994668eeb9f532d0523266a176e795joncruzNOWAIT_SUBDIRS= $(SUBDIRS:.WAIT=)
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzDCSUBDIRS = \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz lvm
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzMSGSUBDIRS= \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz abi \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz auditd_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz cfgadm_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_dh \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz gss_mechs/mech_krb5 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz krb5 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libbsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcfgadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcontract \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcurses \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcputil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libgss \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetcfg \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipmp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnsl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpam \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpicl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpool \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libscf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsasl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libldap5 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsecdb \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsldap \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libslp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsmedia \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libuutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanboot \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanbootutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzonecfg \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz lvm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz madv \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz mpss \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz pam_modules \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz rpcsec_gss
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)MSGSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/smartcard
70fd8f7de4994668eeb9f532d0523266a176e795joncruzMSGSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $($(MACH)_MSGSUBDIRS)
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzsparc_MSGSUBDIRS=
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)sparc_MSGSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libprtdiag \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libprtdiag_psr
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzHDRSUBDIRS= libaio \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz auditd_plugins \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libbsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcmdutils \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcontract \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcpc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libctf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcurses \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libcryptoutil \
6ad76e4c8e1862d23d04bb34a3fbc330e6b8cd30joncruz libdevice \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdevid \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdevinfo \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdiskmgt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdladm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdlpi \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpagent \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcpsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdhcputil \
6ad76e4c8e1862d23d04bb34a3fbc330e6b8cd30joncruz libdisasm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdtrace \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libdtrace_jni \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libeti \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libgen \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanboot \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwanbootutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipsecutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetcfg \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libinetutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipmp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libipp \
6ad76e4c8e1862d23d04bb34a3fbc330e6b8cd30joncruz libkstat \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libkvm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz liblaadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmacadm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmail \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libmtmalloc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libnvpair \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpam \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpctx \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpicl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpicltree \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libplot \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libpool \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libproc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librcm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libscf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsmbios \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librestart \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librpcsvc \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz librsm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsasl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsec \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libslp \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsmedia \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libsysevent \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtecla \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnf \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnfctl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libtnfprobe \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libvolmgt \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libumem \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libuutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwrap \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libxcurses2 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzfs \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzfs_jni \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libzoneinfo \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz lvm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz openssl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz pkcs11 \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz passwdutil \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz ../cmd/sendmail/libmilter \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz fm \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz udapl \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $($(MACH)_HDRSUBDIRS)
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruz$(CLOSED_BUILD)HDRSUBDIRS += \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libc_i18n \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/libike \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz $(CLOSED)/lib/smartcard
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzsparc_HDRSUBDIRS= \
70fd8f7de4994668eeb9f532d0523266a176e795joncruz libwrsmconf
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
70fd8f7de4994668eeb9f532d0523266a176e795joncruzall := TARGET= all
70fd8f7de4994668eeb9f532d0523266a176e795joncruzcheck := TARGET= check
70fd8f7de4994668eeb9f532d0523266a176e795joncruzclean := TARGET= clean
70fd8f7de4994668eeb9f532d0523266a176e795joncruzclobber := TARGET= clobber
70fd8f7de4994668eeb9f532d0523266a176e795joncruzinstall := TARGET= install
70fd8f7de4994668eeb9f532d0523266a176e795joncruzinstall_h := TARGET= install_h
70fd8f7de4994668eeb9f532d0523266a176e795joncruzlint := TARGET= lint
70fd8f7de4994668eeb9f532d0523266a176e795joncruz_dc := TARGET= _dc
70fd8f7de4994668eeb9f532d0523266a176e795joncruz_msg := TARGET= _msg
70fd8f7de4994668eeb9f532d0523266a176e795joncruz
.KEEP_STATE:
#
# For the all and install targets, we clearly must respect library
# dependencies so that the libraries link correctly. However, for
# the remaining targets (check, clean, clobber, install_h, lint, _dc
# and _msg), libraries do not have any dependencies on one another
# and thus respecting dependencies just slows down the build.
# As such, for these rules, we use pattern replacement to explicitly
# avoid triggering the dependency information. Note that for clean,
# clobber and lint, we must use $(NOWAIT_SUBDIRS) rather than
# $(SUBDIRS), to prevent `.WAIT' from expanding to `.WAIT-nodepend'.
#
all: $(SUBDIRS)
install: $(SUBDIRS) .WAIT install_extra
# extra libraries kept in other source areas
install_extra:
@cd ../cmd/sgs; pwd; $(MAKE) install_lib
@pwd
clean clobber lint: $(NOWAIT_SUBDIRS:%=%-nodepend)
install_h check: $(HDRSUBDIRS:%=%-nodepend)
_msg: $(MSGSUBDIRS:%=%-nodepend) .WAIT _dc
_dc: $(DCSUBDIRS:%=%-nodepend)
# dependencies for pam_modules (see below)
$(CLOSED_BUILD)SMARTCARD= $(CLOSED)/lib/smartcard
#
# Library interdependencies are called out explicitly here
#
auditd_plugins: libbsm libnsl libsecdb
gss_mechs/mech_krb5: libgss libnsl libsocket libresolv pkcs11
libadt_jni: libbsm
$(CLOSED_BUILD)libc: $(CLOSED)/lib/libc_i18n
libcmdutils: libavl
libcontract: libnvpair
libdevid: libdevinfo
libdevinfo: libnvpair libsec
libdhcpagent: libdhcputil libnsl libsocket
libdhcpsvc: libinetutil
libdhcputil: libinetutil
libdladm: libdlpi libdevinfo
libdtrace: libproc libgen libctf
libdtrace_jni: libuutil libdtrace
libefi: libuuid
$(CLOSED_BUILD)$(CLOSED)/lib/libelfsign: \
$(CLOSED)/lib/libike libcryptoutil pkcs11
libinetcfg: libnsl libsocket libdevinfo
libnsl: libmd5 libscf
libmacadm: libdevinfo
libuuid: libsocket
libinetutil: libsocket
libsecdb: libcmd libnsl
librt: libaio libmd5
libsasl: libgss libsocket pkcs11 libmd5
sasl_plugins: pkcs11 libgss libsocket libsasl
libsctp: libsocket
libsocket: libnsl
libldap5: libsasl libsocket libnsl libmd5
libsldap: libldap5
libpool: libnvpair libexacct
libproject: libpool libproc libsecdb
libwrap: libnsl libsocket
libwanboot: libnvpair libresolv libnsl libsocket libdevinfo libinetutil \
libdhcputil openssl
libwanbootutil: libnsl
pam_modules: libproject passwdutil $(SMARTCARD)
libscf: libuutil
libinetsvc: libscf
librestart: libuutil libscf
../cmd/sgs/libdl: ../cmd/sgs/libconv
../cmd/sgs/libelf: ../cmd/sgs/libconv
pkcs11: libcryptoutil
print: libldap5
udapl/udapl_tavor: udapl/libdat
libzfs: libdevinfo libdevid libgen libnvpair libuutil
libzfs_jni: libdiskmgt libnvpair libzfs
libzpool: libavl libumem libnvpair
libsec: libavl
#
# The reason this rule checks for the existence of the
# Makefile is that some of the directories do not exist
# in certain situations (e.g., exportable source builds,
# OpenSolaris).
#
$(SUBDIRS) abi: FRC
@if [ -f $@/Makefile ]; then \
cd $@; pwd; $(MAKE) $(TARGET); \
else \
true; \
fi
$(SUBDIRS:%=%-nodepend) abi-nodepend:
@if [ -f $(@:%-nodepend=%)/Makefile ]; then \
cd $(@:%-nodepend=%); pwd; $(MAKE) $(TARGET); \
else \
true; \
fi
FRC: