17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5fb3fb4f3Stomee# Common Development and Distribution License (the "License"). 6fb3fb4f3Stomee# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 217c478bd9Sstevel@tonic-gate# 22c5e0ece0SCathy Zhou# Copyright 2010 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 257c478bd9Sstevel@tonic-gate 267c478bd9Sstevel@tonic-gateinclude ../Makefile.master 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate# Note that libcurses installs commands along with its library. 297c478bd9Sstevel@tonic-gate# This is a minor bug which probably should be fixed. 307c478bd9Sstevel@tonic-gate# Note also that a few extra libraries are kept in cmd source. 317c478bd9Sstevel@tonic-gate# 327c478bd9Sstevel@tonic-gate# Certain libraries are linked with, hence depend on, other libraries. 337c478bd9Sstevel@tonic-gate# 347c478bd9Sstevel@tonic-gate# Although we have historically used .WAIT to express dependencies, it 357c478bd9Sstevel@tonic-gate# reduces the amount of parallelism and thus lengthens the time it 367c478bd9Sstevel@tonic-gate# takes to build the libraries. Thus, we now require that any new 377c478bd9Sstevel@tonic-gate# libraries explicitly call out their dependencies. Eventually, all 387c478bd9Sstevel@tonic-gate# the library dependencies will be called out explicitly. See 397c478bd9Sstevel@tonic-gate# "Library interdependencies" near the end of this file. 407c478bd9Sstevel@tonic-gate# 417c478bd9Sstevel@tonic-gate# Aside from explicit dependencies (and legacy .WAITs), all libraries 427c478bd9Sstevel@tonic-gate# are built in parallel. 437c478bd9Sstevel@tonic-gate# 447c478bd9Sstevel@tonic-gate.PARALLEL: 457c478bd9Sstevel@tonic-gate 46fb9f9b97Skupfer# 47fb9f9b97Skupfer# The $(CLOSED_BUILD) additions to SUBDIRS & MSGSUBDIRS are unfortunate, 48fb9f9b97Skupfer# but required due to the "dependencies" of using .WAIT to barrier the 49fb9f9b97Skupfer# parallel dmake builds. once 4631488 has been fixed, they can be 50fb9f9b97Skupfer# consolidated into one $(CLOSED_BUILD)SUBDIRS += (all closed libs) as 51fb9f9b97Skupfer# shown in HDRSUBDIRS 52fb9f9b97Skupfer# 537c478bd9Sstevel@tonic-gateSUBDIRS= \ 547c478bd9Sstevel@tonic-gate common .WAIT \ 557c478bd9Sstevel@tonic-gate ../cmd/sgs/libconv \ 56fb9f9b97Skupfer ../cmd/sgs/libdl .WAIT 57fb9f9b97Skupfer 58fb9f9b97Skupfer$(CLOSED_BUILD)SUBDIRS += \ 59fb9f9b97Skupfer $(CLOSED)/lib/libc_i18n 60fb9f9b97Skupfer 61fb9f9b97SkupferSUBDIRS += \ 627c478bd9Sstevel@tonic-gate libc .WAIT \ 637c478bd9Sstevel@tonic-gate ../cmd/sgs/libelf .WAIT \ 647257d1b4Sraf c_synonyms \ 65734b6a94Sdarrenm libmd \ 667c478bd9Sstevel@tonic-gate libmd5 \ 677c478bd9Sstevel@tonic-gate librsm \ 687c478bd9Sstevel@tonic-gate libmp .WAIT \ 697c478bd9Sstevel@tonic-gate libnsl \ 707c478bd9Sstevel@tonic-gate libsecdb .WAIT \ 717c478bd9Sstevel@tonic-gate librpcsvc \ 727c478bd9Sstevel@tonic-gate libsocket .WAIT \ 737c478bd9Sstevel@tonic-gate libsctp \ 7440cb5e5dSvi117747 libsip \ 75a93a1f58Sgm209912 libcommputil \ 767c478bd9Sstevel@tonic-gate libresolv \ 777c478bd9Sstevel@tonic-gate libresolv2 .WAIT \ 787c478bd9Sstevel@tonic-gate libw .WAIT \ 797c478bd9Sstevel@tonic-gate libintl .WAIT \ 807c478bd9Sstevel@tonic-gate ../cmd/sgs/librtld_db \ 817c478bd9Sstevel@tonic-gate libaio \ 82da2e3ebdSchin libast \ 83da2e3ebdSchin libdll \ 84da2e3ebdSchin libcmd \ 85da2e3ebdSchin libshell \ 867c2fbfb3SApril Chin libsum \ 877c478bd9Sstevel@tonic-gate librt \ 887c478bd9Sstevel@tonic-gate libadm \ 897c478bd9Sstevel@tonic-gate libctf \ 907c478bd9Sstevel@tonic-gate libdtrace \ 91fb3fb4f3Stomee libdtrace_jni \ 927c478bd9Sstevel@tonic-gate libcurses \ 937c478bd9Sstevel@tonic-gate libgen \ 947c478bd9Sstevel@tonic-gate libgss \ 957c478bd9Sstevel@tonic-gate libpam \ 967c478bd9Sstevel@tonic-gate libuuid \ 977c478bd9Sstevel@tonic-gate libthread \ 987c478bd9Sstevel@tonic-gate libpthread .WAIT \ 997c478bd9Sstevel@tonic-gate libslp \ 1007c478bd9Sstevel@tonic-gate libbsdmalloc \ 1017c478bd9Sstevel@tonic-gate libdoor \ 1027c478bd9Sstevel@tonic-gate libdevinfo \ 1037c478bd9Sstevel@tonic-gate libdladm \ 1047c478bd9Sstevel@tonic-gate libdlpi \ 1057c478bd9Sstevel@tonic-gate libeti \ 1067c478bd9Sstevel@tonic-gate libcrypt \ 1074b22b933Srs200217 libdns_sd \ 1087c478bd9Sstevel@tonic-gate libefi \ 1090e42dee6Sartem libfstyp \ 1107c478bd9Sstevel@tonic-gate libwanboot \ 1117c478bd9Sstevel@tonic-gate libwanbootutil \ 1127c478bd9Sstevel@tonic-gate libcryptoutil \ 1137c478bd9Sstevel@tonic-gate libinetcfg \ 1147c478bd9Sstevel@tonic-gate libinetutil \ 1157c478bd9Sstevel@tonic-gate libipmp \ 116a6d42e7dSPeter Dunlap libiscsit \ 117f3861e1aSahl libiscsitgt \ 11899ebb4caSwyllys libkmf \ 1197c478bd9Sstevel@tonic-gate libkstat \ 1207c478bd9Sstevel@tonic-gate libkvm \ 1217c478bd9Sstevel@tonic-gate liblm \ 1227c478bd9Sstevel@tonic-gate libmalloc \ 123f808c858Sraf libmapmalloc \ 1247c478bd9Sstevel@tonic-gate libmtmalloc \ 1257c478bd9Sstevel@tonic-gate libnls \ 126b00044a2SJames Carlson libnwam \ 12784ab085aSmws libsmbios \ 1287c478bd9Sstevel@tonic-gate libtecla \ 1297c478bd9Sstevel@tonic-gate libumem \ 1307c478bd9Sstevel@tonic-gate libnvpair .WAIT \ 1317c478bd9Sstevel@tonic-gate libexacct \ 1327c478bd9Sstevel@tonic-gate libplot \ 1337c478bd9Sstevel@tonic-gate libldap4 \ 1347c478bd9Sstevel@tonic-gate libsasl \ 1357c478bd9Sstevel@tonic-gate libldap5 \ 1367c478bd9Sstevel@tonic-gate libsldap .WAIT \ 1377c478bd9Sstevel@tonic-gate libbsm \ 1387c478bd9Sstevel@tonic-gate libsys \ 1397c478bd9Sstevel@tonic-gate libsysevent \ 1407c478bd9Sstevel@tonic-gate libnisdb \ 1417c478bd9Sstevel@tonic-gate libpool \ 142da2e3ebdSchin libpp \ 1437c478bd9Sstevel@tonic-gate libproc \ 1447c478bd9Sstevel@tonic-gate libproject \ 1457c478bd9Sstevel@tonic-gate libsendfile \ 1467c478bd9Sstevel@tonic-gate nametoaddr \ 1477c478bd9Sstevel@tonic-gate ncad_addr \ 148fcf3ce44SJohn Forte hbaapi \ 1499e86db79SHyon Kim smhba \ 150fcf3ce44SJohn Forte sun_fc \ 1519e86db79SHyon Kim sun_sas \ 1527c478bd9Sstevel@tonic-gate gss_mechs/mech_krb5 .WAIT \ 15310db1377Sgtb libkrb5 .WAIT \ 1544bff34e3Sthurlow krb5 .WAIT \ 155fcf3ce44SJohn Forte libsmbfs \ 1562a8164dfSZhong Wang libfcoe \ 157fcf3ce44SJohn Forte libstmf \ 15845039663SJohn Forte libstmfproxy \ 159fcf3ce44SJohn Forte libnsctl \ 160fcf3ce44SJohn Forte libunistat \ 161fcf3ce44SJohn Forte libdscfg \ 1625c51f124SMoriah Waterland librdc \ 1635c51f124SMoriah Waterland libinstzones \ 1645c51f124SMoriah Waterland libpkg 1655c51f124SMoriah Waterland 166fb9f9b97SkupferSUBDIRS += \ 1677c478bd9Sstevel@tonic-gate passwdutil \ 1687c478bd9Sstevel@tonic-gate pam_modules \ 1697c478bd9Sstevel@tonic-gate crypt_modules \ 1707c478bd9Sstevel@tonic-gate libadt_jni \ 171f808c858Sraf abi \ 1727c478bd9Sstevel@tonic-gate auditd_plugins \ 1737c478bd9Sstevel@tonic-gate libvolmgt \ 1747c478bd9Sstevel@tonic-gate libdevice \ 1757c478bd9Sstevel@tonic-gate libdevid \ 1767c478bd9Sstevel@tonic-gate libdhcpsvc \ 1777c478bd9Sstevel@tonic-gate libc_db \ 1782654012fSReza Sabdar libndmp \ 1797c478bd9Sstevel@tonic-gate libsec \ 1807c478bd9Sstevel@tonic-gate libtnfprobe \ 1817c478bd9Sstevel@tonic-gate libtnf \ 1827c478bd9Sstevel@tonic-gate libtnfctl \ 1837c478bd9Sstevel@tonic-gate libdhcpagent \ 1847c478bd9Sstevel@tonic-gate libdhcpdu \ 1857c478bd9Sstevel@tonic-gate libdhcputil \ 1865fbacb60SDan McDonald libxnet \ 187fb9f9b97Skupfer libipsecutil 188fb9f9b97Skupfer$(CLOSED_BUILD)SUBDIRS += \ 1892654012fSReza Sabdar $(CLOSED)/lib/libike 190fb9f9b97SkupferSUBDIRS += \ 1917c478bd9Sstevel@tonic-gate nsswitch \ 1927c478bd9Sstevel@tonic-gate print \ 1937c478bd9Sstevel@tonic-gate libuutil \ 1947c478bd9Sstevel@tonic-gate libscf \ 1957c478bd9Sstevel@tonic-gate libinetsvc \ 1967c478bd9Sstevel@tonic-gate librestart \ 197df8bdeb3Sjohnz libsched \ 198df8bdeb3Sjohnz libelfsign \ 1997c478bd9Sstevel@tonic-gate pkcs11 .WAIT \ 2007c478bd9Sstevel@tonic-gate libpctx .WAIT \ 2017c478bd9Sstevel@tonic-gate libcpc \ 2027c478bd9Sstevel@tonic-gate watchmalloc \ 203a5f69788Scraigm extendedFILE \ 2047c478bd9Sstevel@tonic-gate madv \ 2057c478bd9Sstevel@tonic-gate mpss \ 206dc0093f4Seschrock libdisasm \ 2077c478bd9Sstevel@tonic-gate libwrap \ 2087c478bd9Sstevel@tonic-gate libxcurses \ 2097c478bd9Sstevel@tonic-gate libxcurses2 \ 2109acbbeafSnn35248 libbrand .WAIT \ 2117c478bd9Sstevel@tonic-gate libzonecfg \ 2127c478bd9Sstevel@tonic-gate libzoneinfo \ 21345916cd2Sjpk libtsnet \ 21445916cd2Sjpk libtsol \ 2157c478bd9Sstevel@tonic-gate gss_mechs/mech_spnego \ 2167c478bd9Sstevel@tonic-gate gss_mechs/mech_dummy \ 2177c478bd9Sstevel@tonic-gate gss_mechs/mech_dh \ 2187c478bd9Sstevel@tonic-gate rpcsec_gss \ 219711890bcSjc156560 libraidcfg .WAIT \ 2207c478bd9Sstevel@tonic-gate librcm .WAIT \ 2217c478bd9Sstevel@tonic-gate libcfgadm .WAIT \ 2227c478bd9Sstevel@tonic-gate libpicl .WAIT \ 2237c478bd9Sstevel@tonic-gate libpicltree .WAIT \ 224711890bcSjc156560 raidcfg_plugins \ 2257c478bd9Sstevel@tonic-gate cfgadm_plugins \ 2267c478bd9Sstevel@tonic-gate libmail \ 2277c478bd9Sstevel@tonic-gate lvm \ 2287c478bd9Sstevel@tonic-gate libsmedia \ 2297c478bd9Sstevel@tonic-gate libipp \ 2307c478bd9Sstevel@tonic-gate libdiskmgt \ 2317c478bd9Sstevel@tonic-gate liblgrp \ 2327c478bd9Sstevel@tonic-gate libfsmgt \ 2337c478bd9Sstevel@tonic-gate fm \ 2347c478bd9Sstevel@tonic-gate libavl \ 2357c478bd9Sstevel@tonic-gate libcmdutils \ 2367c478bd9Sstevel@tonic-gate libcontract \ 2377c478bd9Sstevel@tonic-gate ../cmd/sendmail/libmilter \ 2387c478bd9Sstevel@tonic-gate sasl_plugins \ 2397c478bd9Sstevel@tonic-gate udapl \ 240fa9e4066Sahrens libzpool \ 241fa9e4066Sahrens libzfs \ 242fa9e4066Sahrens libzfs_jni \ 24314843421SMatthew Ahrens pyzfs \ 244e4d060fbSSam Falkner pysolaris \ 2458200fe25Srmesta libmapid \ 2469acbbeafSnn35248 brand \ 24718c2aff7Sartem policykit \ 24818c2aff7Sartem hal \ 2496185db85Sdougm libshare \ 250c5c4113dSnw141292 libsqlite \ 251c5c4113dSnw141292 libidmap \ 2522b4a7802SBaban Kenkre libadutils \ 2539113a79cSeschrock libipmi \ 254853de45fSdh155122 libexacct/demo \ 2551cb875aeSCathy Zhou libvrrpadm \ 256911106dfSjm199354 libvscan \ 257753a6d45SSherry Moore libgrubmgmt \ 258da6c28aaSamw smbsrv \ 259dbed73cbSSangeeta Misra libilb \ 260275c9da8Seschrock scsi \ 261cee0fb94SAllan Matthews mms \ 262fcf3ce44SJohn Forte libima \ 263fcf3ce44SJohn Forte libsun_ima \ 264fcf3ce44SJohn Forte mpapi \ 2654eaa4710SRishi Srivatsavai librstp \ 2667a286c47SDai Ngo libreparse \ 26726947304SEvan Yan libhotplug \ 2686bbe0590SSundeep Panicker libfruutils .WAIT \ 2696bbe0590SSundeep Panicker libfru \ 2707c478bd9Sstevel@tonic-gate $($(MACH)_SUBDIRS) 2717c478bd9Sstevel@tonic-gate 2727e7bd3dcSMark Logani386_SUBDIRS= \ 2737e7bd3dcSMark Logan libntfs \ 274aa1b14e7SSheshadri Vasudevan libparted \ 275aa1b14e7SSheshadri Vasudevan libfdisk 2767e7bd3dcSMark Logan 2777c478bd9Sstevel@tonic-gatesparc_SUBDIRS= .WAIT \ 2787c478bd9Sstevel@tonic-gate efcode \ 27903831d35Sstevel libc_psr .WAIT \ 28030588217SMike Christensen libds \ 28125cf1a30Sjl139090 libdscp \ 28203831d35Sstevel libprtdiag .WAIT \ 28303831d35Sstevel libprtdiag_psr \ 284ef884685Srb144127 libpri \ 28503831d35Sstevel librsc \ 2867c478bd9Sstevel@tonic-gate storage \ 2874a6822d0Swillard libpcp \ 288*82629e30SMike Christensen libtsalarm \ 289*82629e30SMike Christensen libv12n 2907c478bd9Sstevel@tonic-gate 291ef884685Srb144127FM_sparc_DEPLIBS= libpri 292ef884685Srb144127 2932eeaed14Srobjfm: \ 2942eeaed14Srobj libexacct \ 2952eeaed14Srobj libipmi \ 296815b023eSStephen Hanson libzfs \ 297940d71d2Seschrock scsi \ 2982eeaed14Srobj $(FM_$(MACH)_DEPLIBS) 2997c478bd9Sstevel@tonic-gate 3007c478bd9Sstevel@tonic-gate# 3017c478bd9Sstevel@tonic-gate# Create a special version of $(SUBDIRS) with no .WAIT's, for use with the 3027c478bd9Sstevel@tonic-gate# clean and clobber targets (for more information, see those targets, below). 3037c478bd9Sstevel@tonic-gate# 3047c478bd9Sstevel@tonic-gateNOWAIT_SUBDIRS= $(SUBDIRS:.WAIT=) 3057c478bd9Sstevel@tonic-gate 3067c478bd9Sstevel@tonic-gateDCSUBDIRS = \ 3077c478bd9Sstevel@tonic-gate lvm 3087c478bd9Sstevel@tonic-gate 3097c478bd9Sstevel@tonic-gateMSGSUBDIRS= \ 3107c478bd9Sstevel@tonic-gate abi \ 3117c478bd9Sstevel@tonic-gate auditd_plugins \ 3129acbbeafSnn35248 brand \ 3137c478bd9Sstevel@tonic-gate cfgadm_plugins \ 3147c478bd9Sstevel@tonic-gate gss_mechs/mech_dh \ 3157c478bd9Sstevel@tonic-gate gss_mechs/mech_krb5 \ 3167c478bd9Sstevel@tonic-gate krb5 \ 317da2e3ebdSchin libast \ 3187c478bd9Sstevel@tonic-gate libbsm \ 3197c478bd9Sstevel@tonic-gate libc \ 3207c478bd9Sstevel@tonic-gate libcfgadm \ 321da2e3ebdSchin libcmd \ 3227c478bd9Sstevel@tonic-gate libcontract \ 3237c478bd9Sstevel@tonic-gate libcurses \ 3247c478bd9Sstevel@tonic-gate libdhcpsvc \ 3257c478bd9Sstevel@tonic-gate libdhcputil \ 326a7485808Smarkfen libipsecutil \ 327181c2f42Smmusante libdiskmgt \ 32833343a97Smeem libdladm \ 329da2e3ebdSchin libdll \ 330753a6d45SSherry Moore libgrubmgmt \ 3317c478bd9Sstevel@tonic-gate libgss \ 332c5c4113dSnw141292 libidmap \ 3337c478bd9Sstevel@tonic-gate libinetcfg \ 3347c478bd9Sstevel@tonic-gate libipmp \ 335dbed73cbSSangeeta Misra libilb \ 3368002d411SSowmini Varadhan libinetutil \ 3375c51f124SMoriah Waterland libinstzones \ 3387c478bd9Sstevel@tonic-gate libnsl \ 3396ba597c5SAnurag S. Maskey libnwam \ 3407c478bd9Sstevel@tonic-gate libpam \ 3417c478bd9Sstevel@tonic-gate libpicl \ 3427c478bd9Sstevel@tonic-gate libpool \ 3435c51f124SMoriah Waterland libpkg \ 344da2e3ebdSchin libpp \ 3457c478bd9Sstevel@tonic-gate libscf \ 3467c478bd9Sstevel@tonic-gate libsasl \ 3477c478bd9Sstevel@tonic-gate libldap5 \ 3487c478bd9Sstevel@tonic-gate libsecdb \ 3496185db85Sdougm libshare \ 350da2e3ebdSchin libshell \ 3517c478bd9Sstevel@tonic-gate libsldap \ 3527c478bd9Sstevel@tonic-gate libslp \ 3534bff34e3Sthurlow libsmbfs \ 3547c478bd9Sstevel@tonic-gate libsmedia \ 3557c2fbfb3SApril Chin libsum \ 35645916cd2Sjpk libtsol \ 3577c478bd9Sstevel@tonic-gate libuutil \ 3581cb875aeSCathy Zhou libvrrpadm \ 359911106dfSjm199354 libvscan \ 3607c478bd9Sstevel@tonic-gate libwanboot \ 3617c478bd9Sstevel@tonic-gate libwanbootutil \ 362c3aa2a37Sck153898 libzfs \ 3637c478bd9Sstevel@tonic-gate libzonecfg \ 3647c478bd9Sstevel@tonic-gate lvm \ 3657c478bd9Sstevel@tonic-gate madv \ 366d1d2228cSDavid Major mms \ 3677c478bd9Sstevel@tonic-gate mpss \ 3687c478bd9Sstevel@tonic-gate pam_modules \ 36914843421SMatthew Ahrens pyzfs \ 370e4d060fbSSam Falkner pysolaris \ 3717a286c47SDai Ngo rpcsec_gss \ 3727a286c47SDai Ngo libreparse 373fb9f9b97SkupferMSGSUBDIRS += \ 3747c478bd9Sstevel@tonic-gate $($(MACH)_MSGSUBDIRS) 3757c478bd9Sstevel@tonic-gate 37603831d35Sstevelsparc_MSGSUBDIRS= \ 37703831d35Sstevel libprtdiag \ 37803831d35Sstevel libprtdiag_psr 3797c478bd9Sstevel@tonic-gate 380aa1b14e7SSheshadri Vasudevani386_MSGSUBDIRS= libfdisk 381aa1b14e7SSheshadri Vasudevan 382f841f6adSrafHDRSUBDIRS= \ 3837c478bd9Sstevel@tonic-gate auditd_plugins \ 384da2e3ebdSchin libast \ 3859acbbeafSnn35248 libbrand \ 3867c478bd9Sstevel@tonic-gate libbsm \ 3877c478bd9Sstevel@tonic-gate libc \ 388da2e3ebdSchin libcmd \ 3897c478bd9Sstevel@tonic-gate libcmdutils \ 3907c478bd9Sstevel@tonic-gate libcontract \ 3917c478bd9Sstevel@tonic-gate libcpc \ 3927c478bd9Sstevel@tonic-gate libctf \ 3937c478bd9Sstevel@tonic-gate libcurses \ 3947c478bd9Sstevel@tonic-gate libcryptoutil \ 3957c478bd9Sstevel@tonic-gate libdevice \ 3967c478bd9Sstevel@tonic-gate libdevid \ 3977c478bd9Sstevel@tonic-gate libdevinfo \ 3983e1bd7a2Ssjelinek libdiskmgt \ 3997c478bd9Sstevel@tonic-gate libdladm \ 400da2e3ebdSchin libdll \ 4017c478bd9Sstevel@tonic-gate libdlpi \ 4027c478bd9Sstevel@tonic-gate libdhcpagent \ 4037c478bd9Sstevel@tonic-gate libdhcpsvc \ 4047c478bd9Sstevel@tonic-gate libdhcputil \ 405dc0093f4Seschrock libdisasm \ 4064b22b933Srs200217 libdns_sd \ 407fcf3ce44SJohn Forte libdscfg \ 4087c478bd9Sstevel@tonic-gate libdtrace \ 409fb3fb4f3Stomee libdtrace_jni \ 410df8bdeb3Sjohnz libelfsign \ 4117c478bd9Sstevel@tonic-gate libeti \ 412c69f580fSSundeep Panicker libfru \ 4130e42dee6Sartem libfstyp \ 4147c478bd9Sstevel@tonic-gate libgen \ 4157c478bd9Sstevel@tonic-gate libwanboot \ 4167c478bd9Sstevel@tonic-gate libwanbootutil \ 4177c478bd9Sstevel@tonic-gate libipsecutil \ 4187c478bd9Sstevel@tonic-gate libinetcfg \ 4197c478bd9Sstevel@tonic-gate libinetsvc \ 4207c478bd9Sstevel@tonic-gate libinetutil \ 42122fb2eebSMoriah Waterland libinstzones \ 4229113a79cSeschrock libipmi \ 4237c478bd9Sstevel@tonic-gate libipmp \ 4247c478bd9Sstevel@tonic-gate libipp \ 425a6d42e7dSPeter Dunlap libiscsit \ 426f3861e1aSahl libiscsitgt \ 4277c478bd9Sstevel@tonic-gate libkstat \ 4287c478bd9Sstevel@tonic-gate libkvm \ 4297c478bd9Sstevel@tonic-gate libmail \ 430734b6a94Sdarrenm libmd \ 4317c478bd9Sstevel@tonic-gate libmtmalloc \ 4322654012fSReza Sabdar libndmp \ 4337c478bd9Sstevel@tonic-gate libnvpair \ 434fcf3ce44SJohn Forte libnsctl \ 43545916cd2Sjpk libnsl \ 436b00044a2SJames Carlson libnwam \ 4377c478bd9Sstevel@tonic-gate libpam \ 4387c478bd9Sstevel@tonic-gate libpctx \ 4397c478bd9Sstevel@tonic-gate libpicl \ 4407c478bd9Sstevel@tonic-gate libpicltree \ 4417c478bd9Sstevel@tonic-gate libplot \ 4427c478bd9Sstevel@tonic-gate libpool \ 443da2e3ebdSchin libpp \ 4447c478bd9Sstevel@tonic-gate libproc \ 4453e4f2897Sjc156560 libraidcfg \ 4467c478bd9Sstevel@tonic-gate librcm \ 447fcf3ce44SJohn Forte librdc \ 4487c478bd9Sstevel@tonic-gate libscf \ 44940cb5e5dSvi117747 libsip \ 450a93a1f58Sgm209912 libcommputil \ 45184ab085aSmws libsmbios \ 4527c478bd9Sstevel@tonic-gate librestart \ 4537c478bd9Sstevel@tonic-gate librpcsvc \ 4547c478bd9Sstevel@tonic-gate librsm \ 4554eaa4710SRishi Srivatsavai librstp \ 4567c478bd9Sstevel@tonic-gate libsasl \ 457fa9e4066Sahrens libsec \ 458da2e3ebdSchin libshell \ 4597c478bd9Sstevel@tonic-gate libslp \ 4607c478bd9Sstevel@tonic-gate libsmedia \ 461c5c4113dSnw141292 libsqlite \ 4622a8164dfSZhong Wang libfcoe \ 463fcf3ce44SJohn Forte libstmf \ 46445039663SJohn Forte libstmfproxy \ 4657c2fbfb3SApril Chin libsum \ 4667c478bd9Sstevel@tonic-gate libsysevent \ 4677c478bd9Sstevel@tonic-gate libtecla \ 4687c478bd9Sstevel@tonic-gate libtnf \ 4697c478bd9Sstevel@tonic-gate libtnfctl \ 4707c478bd9Sstevel@tonic-gate libtnfprobe \ 47145916cd2Sjpk libtsnet \ 47245916cd2Sjpk libtsol \ 4731cb875aeSCathy Zhou libvrrpadm \ 4747c478bd9Sstevel@tonic-gate libvolmgt \ 4757c478bd9Sstevel@tonic-gate libumem \ 476fcf3ce44SJohn Forte libunistat \ 4777c478bd9Sstevel@tonic-gate libuutil \ 4787c478bd9Sstevel@tonic-gate libwrap \ 4797c478bd9Sstevel@tonic-gate libxcurses2 \ 480fa9e4066Sahrens libzfs \ 481088e9d47Seschrock libzfs_jni \ 4827c478bd9Sstevel@tonic-gate libzoneinfo \ 48318c2aff7Sartem hal \ 48418c2aff7Sartem policykit \ 4857c478bd9Sstevel@tonic-gate lvm \ 4867c478bd9Sstevel@tonic-gate pkcs11 \ 4877c478bd9Sstevel@tonic-gate passwdutil \ 4887c478bd9Sstevel@tonic-gate ../cmd/sendmail/libmilter \ 4897c478bd9Sstevel@tonic-gate fm \ 4907c478bd9Sstevel@tonic-gate udapl \ 4918200fe25Srmesta libmapid \ 49210db1377Sgtb libkrb5 \ 493613a2f6bSGordon Ross libsmbfs \ 4946185db85Sdougm libshare \ 495c5c4113dSnw141292 libidmap \ 496911106dfSjm199354 libvscan \ 497753a6d45SSherry Moore libgrubmgmt \ 498da6c28aaSamw smbsrv \ 499dbed73cbSSangeeta Misra libilb \ 500275c9da8Seschrock scsi \ 501fcf3ce44SJohn Forte hbaapi \ 5029e86db79SHyon Kim smhba \ 503fcf3ce44SJohn Forte libima \ 504fcf3ce44SJohn Forte libsun_ima \ 505fcf3ce44SJohn Forte mpapi \ 506063ebb38SPaul Cheng mms \ 5077a286c47SDai Ngo libreparse \ 5087c478bd9Sstevel@tonic-gate $($(MACH)_HDRSUBDIRS) 5097c478bd9Sstevel@tonic-gate 510fb9f9b97Skupfer$(CLOSED_BUILD)HDRSUBDIRS += \ 511fb9f9b97Skupfer $(CLOSED)/lib/libc_i18n \ 51238603a20SDarren J Moffat $(CLOSED)/lib/libike 513fb9f9b97Skupfer 514964db34dSMark Logani386_HDRSUBDIRS= \ 515aa1b14e7SSheshadri Vasudevan libparted \ 516aa1b14e7SSheshadri Vasudevan libfdisk 517964db34dSMark Logan 5187c478bd9Sstevel@tonic-gatesparc_HDRSUBDIRS= \ 51930588217SMike Christensen libds \ 52025cf1a30Sjl139090 libdscp \ 521fcf3ce44SJohn Forte libpri \ 522*82629e30SMike Christensen libv12n \ 523fcf3ce44SJohn Forte storage 5247c478bd9Sstevel@tonic-gate 5257c478bd9Sstevel@tonic-gateall := TARGET= all 5267c478bd9Sstevel@tonic-gatecheck := TARGET= check 5277c478bd9Sstevel@tonic-gateclean := TARGET= clean 5287c478bd9Sstevel@tonic-gateclobber := TARGET= clobber 5297c478bd9Sstevel@tonic-gateinstall := TARGET= install 5307c478bd9Sstevel@tonic-gateinstall_h := TARGET= install_h 5317c478bd9Sstevel@tonic-gatelint := TARGET= lint 5327c478bd9Sstevel@tonic-gate_dc := TARGET= _dc 5337c478bd9Sstevel@tonic-gate_msg := TARGET= _msg 5347c478bd9Sstevel@tonic-gate 5357c478bd9Sstevel@tonic-gate.KEEP_STATE: 5367c478bd9Sstevel@tonic-gate 5377c478bd9Sstevel@tonic-gate# 5387c478bd9Sstevel@tonic-gate# For the all and install targets, we clearly must respect library 5397c478bd9Sstevel@tonic-gate# dependencies so that the libraries link correctly. However, for 5407c478bd9Sstevel@tonic-gate# the remaining targets (check, clean, clobber, install_h, lint, _dc 5417c478bd9Sstevel@tonic-gate# and _msg), libraries do not have any dependencies on one another 5427c478bd9Sstevel@tonic-gate# and thus respecting dependencies just slows down the build. 5437c478bd9Sstevel@tonic-gate# As such, for these rules, we use pattern replacement to explicitly 5447c478bd9Sstevel@tonic-gate# avoid triggering the dependency information. Note that for clean, 5457c478bd9Sstevel@tonic-gate# clobber and lint, we must use $(NOWAIT_SUBDIRS) rather than 5467c478bd9Sstevel@tonic-gate# $(SUBDIRS), to prevent `.WAIT' from expanding to `.WAIT-nodepend'. 5477c478bd9Sstevel@tonic-gate# 5487c478bd9Sstevel@tonic-gate 5497c478bd9Sstevel@tonic-gateall: $(SUBDIRS) 5507c478bd9Sstevel@tonic-gate 5517c478bd9Sstevel@tonic-gateinstall: $(SUBDIRS) .WAIT install_extra 5527c478bd9Sstevel@tonic-gate 5537c478bd9Sstevel@tonic-gate# extra libraries kept in other source areas 5547c478bd9Sstevel@tonic-gateinstall_extra: 5557c478bd9Sstevel@tonic-gate @cd ../cmd/sgs; pwd; $(MAKE) install_lib 5567c478bd9Sstevel@tonic-gate @pwd 5577c478bd9Sstevel@tonic-gate 5587c478bd9Sstevel@tonic-gateclean clobber lint: $(NOWAIT_SUBDIRS:%=%-nodepend) 5597c478bd9Sstevel@tonic-gate 5607c478bd9Sstevel@tonic-gateinstall_h check: $(HDRSUBDIRS:%=%-nodepend) 5617c478bd9Sstevel@tonic-gate 5627c478bd9Sstevel@tonic-gate_msg: $(MSGSUBDIRS:%=%-nodepend) .WAIT _dc 5637c478bd9Sstevel@tonic-gate 5647c478bd9Sstevel@tonic-gate_dc: $(DCSUBDIRS:%=%-nodepend) 5657c478bd9Sstevel@tonic-gate 5667c478bd9Sstevel@tonic-gate# 5677c478bd9Sstevel@tonic-gate# Library interdependencies are called out explicitly here 5687c478bd9Sstevel@tonic-gate# 5697c478bd9Sstevel@tonic-gateauditd_plugins: libbsm libnsl libsecdb 5707c478bd9Sstevel@tonic-gategss_mechs/mech_krb5: libgss libnsl libsocket libresolv pkcs11 5717c478bd9Sstevel@tonic-gatelibadt_jni: libbsm 572fb9f9b97Skupfer$(CLOSED_BUILD)libc: $(CLOSED)/lib/libc_i18n 573da2e3ebdSchinlibast: libsocket 5747a8a68f5SJulian Pullenlibadutils: libldap5 libresolv libsocket libnsl 5757a8a68f5SJulian Pullennsswitch: libadutils libidmap 576914d7362SJan Parcellibbsm: libtsol 5777c2fbfb3SApril Chinlibcmd: libsum libast libsocket libnsl 5787c478bd9Sstevel@tonic-gatelibcmdutils: libavl 5797c478bd9Sstevel@tonic-gatelibcontract: libnvpair 5807c478bd9Sstevel@tonic-gatelibdevid: libdevinfo 581fa9e4066Sahrenslibdevinfo: libnvpair libsec 582a1196271SJames Carlsonlibdhcpagent: libsocket libdhcputil libuuid libdlpi libcontract 5837c478bd9Sstevel@tonic-gatelibdhcpsvc: libinetutil 5844ee71a50Scarlsonjlibdhcputil: libnsl libgen libinetutil libdlpi 58582a2fc47SJames Carlsonlibdladm: libdevinfo libinetutil libsocket libscf librcm libnvpair \ 58682a2fc47SJames Carlson libexacct libnsl libkstat libcurses 587da2e3ebdSchinlibdll: libast 588d62bc4baSyz147064libdlpi: libinetutil libdladm 589*82629e30SMike Christensenlibds: libsysevent 590fcf3ce44SJohn Fortelibdscfg: libnsctl libunistat libsocket libnsl 5917c478bd9Sstevel@tonic-gatelibdtrace: libproc libgen libctf 592fb3fb4f3Stomeelibdtrace_jni: libuutil libdtrace 5937c478bd9Sstevel@tonic-gatelibefi: libuuid 5940e42dee6Sartemlibfstyp: libnvpair 595df8bdeb3Sjohnzlibelfsign: libcryptoutil libkmf 5967a8a68f5SJulian Pullenlibidmap: libadutils libldap5 libavl libsldap 597d62bc4baSyz147064libinetcfg: libnsl libsocket libdlpi 598a6d42e7dSPeter Dunlaplibiscsit: libc libnvpair libstmf libuuid libnsl 599bda1f129SMark Phalanlibkmf: libcryptoutil pkcs11 6007c478bd9Sstevel@tonic-gatelibnsl: libmd5 libscf 60106e1a714Sraflibmapid: libresolv 602fcf3ce44SJohn Fortelibrdc: libsocket libnsl libnsctl libunistat libdscfg 603d62bc4baSyz147064libuuid: libdlpi 6045fbacb60SDan McDonald$(CLOSED_BUILD)libike: libipsecutil libxnet libcryptoutil 6057c478bd9Sstevel@tonic-gatelibinetutil: libsocket 6065fbacb60SDan McDonaldlibipsecutil: libtecla libsocket 6075c51f124SMoriah Waterlandlibinstzones: libzonecfg libcontract 6085c51f124SMoriah Waterlandlibpkg: libwanboot libscf libadm 6096ba597c5SAnurag S. Maskeylibnwam: libscf 61006e1a714Sraflibsecdb: libnsl 611734b6a94Sdarrenmlibsasl: libgss libsocket pkcs11 libmd 6127c478bd9Sstevel@tonic-gatesasl_plugins: pkcs11 libgss libsocket libsasl 6137c478bd9Sstevel@tonic-gatelibsctp: libsocket 614da2e3ebdSchinlibshell: libast libcmd libdll libsocket libsecdb 61540cb5e5dSvi117747libsip: libmd5 6164bff34e3Sthurlowlibsmbfs: libsocket libnsl libkrb5 6177c478bd9Sstevel@tonic-gatelibsocket: libnsl 61845039663SJohn Fortelibstmfproxy: libstmf libsocket libnsl libpthread 6197c2fbfb3SApril Chinlibsum: libast 6206ba597c5SAnurag S. Maskeylibsysevent: libsecdb 621734b6a94Sdarrenmlibldap5: libsasl libsocket libnsl libmd 622e1dd0a2fSth160488libsldap: libldap5 libtsol libnsl libc libscf libresolv 6237c478bd9Sstevel@tonic-gatelibpool: libnvpair libexacct 624da2e3ebdSchinlibpp: libast 6259acbbeafSnn35248libzonecfg: libc libsocket libnsl libuuid libnvpair libsysevent libsec \ 6260209230bSgjelinek libbrand libpool libscf 627c6e80875Srablibproc: ../cmd/sgs/librtld_db ../cmd/sgs/libelf libctf 6287c478bd9Sstevel@tonic-gatelibproject: libpool libproc libsecdb 62945916cd2Sjpklibtsnet: libnsl libtsol libsecdb 6307c478bd9Sstevel@tonic-gatelibwrap: libnsl libsocket 6317c478bd9Sstevel@tonic-gatelibwanboot: libnvpair libresolv libnsl libsocket libdevinfo libinetutil \ 632bda1f129SMark Phalan libdhcputil 6337c478bd9Sstevel@tonic-gatelibwanbootutil: libnsl 63438603a20SDarren J Moffatpam_modules: libproject passwdutil smbsrv 635753a6d45SSherry Moorelibscf: libuutil libmd libgen libsmbios 6367c478bd9Sstevel@tonic-gatelibinetsvc: libscf 6377c478bd9Sstevel@tonic-gatelibrestart: libuutil libscf 6387c478bd9Sstevel@tonic-gate../cmd/sgs/libdl: ../cmd/sgs/libconv 6397c478bd9Sstevel@tonic-gate../cmd/sgs/libelf: ../cmd/sgs/libconv 640bda1f129SMark Phalanpkcs11: libcryptoutil 6417c478bd9Sstevel@tonic-gateprint: libldap5 6427c478bd9Sstevel@tonic-gateudapl/udapl_tavor: udapl/libdat 6434f67d755SEric Taylorlibzfs: libdevid libgen libnvpair libuutil libiscsitgt \ 64497322426SDarren J Moffat libadm libavl libefi libidmap libmd 645fa9e4066Sahrenslibzfs_jni: libdiskmgt libnvpair libzfs 646fa9e4066Sahrenslibzpool: libavl libumem libnvpair 647a74dfeddSMark Shellenbaumlibsec: libavl libidmap 6489acbbeafSnn35248brand: libc libsocket 6494bff34e3Sthurlowlibshare: libscf libzfs libuuid libfsmgt libsecdb libumem libsmbfs 650853de45fSdh155122libexacct/demo: libexacct libproject libsocket libnsl 6514a6822d0Swillardlibtsalarm: libpcp 652da6c28aaSamwsmbsrv: libsocket libnsl libmd libxnet libpthread librt \ 65377191e87SShawn Emery libshare libidmap pkcs11 libsqlite libcryptoutil 654*82629e30SMike Christensenlibv12n: libds libuuid 655c5e0ece0SCathy Zhoulibvrrpadm: libsocket libdladm libscf 656911106dfSjm199354libvscan: libscf 657275c9da8Seschrockscsi: libnvpair 658fcf3ce44SJohn Fortempapi: libpthread libdevinfo libsysevent libnvpair 659f94d63efSHyon Kimsun_fc: libdevinfo libsysevent libnvpair 660f94d63efSHyon Kimlibsun_ima: libdevinfo libsysevent libnsl 661f94d63efSHyon Kimsun_sas: libdevinfo libsysevent libnvpair libkstat libdevid 662753a6d45SSherry Moorelibgrubmgmt: libdevinfo libzfs libfstyp 663e4d060fbSSam Falknerpyzfs: libnvpair libzfs 664e4d060fbSSam Falknerpysolaris: libsec libidmap 6657a286c47SDai Ngolibreparse: libnvpair 66626947304SEvan Yanlibhotplug: libnvpair 66726947304SEvan Yancfgadm_plugins: libhotplug 668dbed73cbSSangeeta Misralibilb: libsocket 6692174cb7bSVirginia Wray$(INTEL_BUILD)libdiskmgt:libfdisk 6707c478bd9Sstevel@tonic-gate 6717c478bd9Sstevel@tonic-gate# 6727c478bd9Sstevel@tonic-gate# The reason this rule checks for the existence of the 6737c478bd9Sstevel@tonic-gate# Makefile is that some of the directories do not exist 674fb9f9b97Skupfer# in certain situations (e.g., exportable source builds, 675fb9f9b97Skupfer# OpenSolaris). 6767c478bd9Sstevel@tonic-gate# 677f808c858Sraf$(SUBDIRS): FRC 6787c478bd9Sstevel@tonic-gate @if [ -f $@/Makefile ]; then \ 6797c478bd9Sstevel@tonic-gate cd $@; pwd; $(MAKE) $(TARGET); \ 6807c478bd9Sstevel@tonic-gate else \ 6817c478bd9Sstevel@tonic-gate true; \ 6827c478bd9Sstevel@tonic-gate fi 6837c478bd9Sstevel@tonic-gate 684f808c858Sraf$(SUBDIRS:%=%-nodepend): 6857c478bd9Sstevel@tonic-gate @if [ -f $(@:%-nodepend=%)/Makefile ]; then \ 6867c478bd9Sstevel@tonic-gate cd $(@:%-nodepend=%); pwd; $(MAKE) $(TARGET); \ 6877c478bd9Sstevel@tonic-gate else \ 6887c478bd9Sstevel@tonic-gate true; \ 6897c478bd9Sstevel@tonic-gate fi 6907c478bd9Sstevel@tonic-gate 6917c478bd9Sstevel@tonic-gateFRC: 692