174b5a35dSPaul Cheng# 274b5a35dSPaul Cheng# CDDL HEADER START 374b5a35dSPaul Cheng# 474b5a35dSPaul Cheng# The contents of this file are subject to the terms of the 574b5a35dSPaul Cheng# Common Development and Distribution License (the "License"). 674b5a35dSPaul Cheng# You may not use this file except in compliance with the License. 774b5a35dSPaul Cheng# 874b5a35dSPaul Cheng# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 974b5a35dSPaul Cheng# or http://www.opensolaris.org/os/licensing. 1074b5a35dSPaul Cheng# See the License for the specific language governing permissions 1174b5a35dSPaul Cheng# and limitations under the License. 1274b5a35dSPaul Cheng# 1374b5a35dSPaul Cheng# When distributing Covered Code, include this CDDL HEADER in each 1474b5a35dSPaul Cheng# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1574b5a35dSPaul Cheng# If applicable, add the following below this CDDL HEADER, with the 1674b5a35dSPaul Cheng# fields enclosed by brackets "[]" replaced with your own identifying 1774b5a35dSPaul Cheng# information: Portions Copyright [yyyy] [name of copyright owner] 1874b5a35dSPaul Cheng# 1974b5a35dSPaul Cheng# CDDL HEADER END 2074b5a35dSPaul Cheng# 2174b5a35dSPaul Cheng 22c3a558e7SSue Gleeson# Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 234445fffbSMatthew Ahrens# Copyright (c) 2012 by Delphix. All rights reserved. 24abc79d9dSRobert Mustacchi# Copyright (c) 2012, Joyent, Inc. All rights reserved. 250a1278f2SGary Mills# Copyright (c) 2013 Gary Mills 26786d1eecSBart Coddens# Copyright 2014 Garrett D'Amore <garrett@damore.org> 27*b3700b07SGordon Ross# Copyright 2014 Nexenta Systems, Inc. All rights reserved. 28fca42680SGary Mills# Copyright (c) 2015 Gary Mills 297c478bd9Sstevel@tonic-gate 307c478bd9Sstevel@tonic-gateinclude ../Makefile.master 317c478bd9Sstevel@tonic-gate 327c478bd9Sstevel@tonic-gate# Note that libcurses installs commands along with its library. 337c478bd9Sstevel@tonic-gate# This is a minor bug which probably should be fixed. 347c478bd9Sstevel@tonic-gate# Note also that a few extra libraries are kept in cmd source. 357c478bd9Sstevel@tonic-gate# 367c478bd9Sstevel@tonic-gate# Certain libraries are linked with, hence depend on, other libraries. 377c478bd9Sstevel@tonic-gate# 387c478bd9Sstevel@tonic-gate# Although we have historically used .WAIT to express dependencies, it 397c478bd9Sstevel@tonic-gate# reduces the amount of parallelism and thus lengthens the time it 407c478bd9Sstevel@tonic-gate# takes to build the libraries. Thus, we now require that any new 417c478bd9Sstevel@tonic-gate# libraries explicitly call out their dependencies. Eventually, all 427c478bd9Sstevel@tonic-gate# the library dependencies will be called out explicitly. See 437c478bd9Sstevel@tonic-gate# "Library interdependencies" near the end of this file. 447c478bd9Sstevel@tonic-gate# 457c478bd9Sstevel@tonic-gate# Aside from explicit dependencies (and legacy .WAITs), all libraries 467c478bd9Sstevel@tonic-gate# are built in parallel. 477c478bd9Sstevel@tonic-gate# 487c478bd9Sstevel@tonic-gate.PARALLEL: 497c478bd9Sstevel@tonic-gate 507c478bd9Sstevel@tonic-gateSUBDIRS= \ 517c478bd9Sstevel@tonic-gate common .WAIT \ 527c478bd9Sstevel@tonic-gate ../cmd/sgs/libconv \ 53fb9f9b97Skupfer ../cmd/sgs/libdl .WAIT 54fb9f9b97Skupfer 55fb9f9b97SkupferSUBDIRS += \ 567c478bd9Sstevel@tonic-gate libc .WAIT \ 577c478bd9Sstevel@tonic-gate ../cmd/sgs/libelf .WAIT \ 587257d1b4Sraf c_synonyms \ 59734b6a94Sdarrenm libmd \ 607c478bd9Sstevel@tonic-gate libmd5 \ 617c478bd9Sstevel@tonic-gate librsm \ 627c478bd9Sstevel@tonic-gate libmp .WAIT \ 637c478bd9Sstevel@tonic-gate libnsl \ 647c478bd9Sstevel@tonic-gate libsecdb .WAIT \ 657c478bd9Sstevel@tonic-gate librpcsvc \ 667c478bd9Sstevel@tonic-gate libsocket .WAIT \ 677c478bd9Sstevel@tonic-gate libsctp \ 6840cb5e5dSvi117747 libsip \ 69a93a1f58Sgm209912 libcommputil \ 707c478bd9Sstevel@tonic-gate libresolv \ 717c478bd9Sstevel@tonic-gate libresolv2 .WAIT \ 727c478bd9Sstevel@tonic-gate libw .WAIT \ 737c478bd9Sstevel@tonic-gate libintl .WAIT \ 747c478bd9Sstevel@tonic-gate ../cmd/sgs/librtld_db \ 757c478bd9Sstevel@tonic-gate libaio \ 76da2e3ebdSchin libast \ 77da2e3ebdSchin libdll \ 78da2e3ebdSchin libcmd \ 79da2e3ebdSchin libshell \ 807c2fbfb3SApril Chin libsum \ 817c478bd9Sstevel@tonic-gate librt \ 827c478bd9Sstevel@tonic-gate libadm \ 837c478bd9Sstevel@tonic-gate libctf \ 847c478bd9Sstevel@tonic-gate libdtrace \ 85fb3fb4f3Stomee libdtrace_jni \ 867c478bd9Sstevel@tonic-gate libcurses \ 877c1d3545SGordon Ross libtermcap \ 887c478bd9Sstevel@tonic-gate libgen \ 897c478bd9Sstevel@tonic-gate libgss \ 907c478bd9Sstevel@tonic-gate libpam \ 917c478bd9Sstevel@tonic-gate libuuid \ 927c478bd9Sstevel@tonic-gate libthread \ 937c478bd9Sstevel@tonic-gate libpthread .WAIT \ 947c478bd9Sstevel@tonic-gate libslp \ 957c478bd9Sstevel@tonic-gate libbsdmalloc \ 967c478bd9Sstevel@tonic-gate libdoor \ 977c478bd9Sstevel@tonic-gate libdevinfo \ 987c478bd9Sstevel@tonic-gate libdladm \ 997c478bd9Sstevel@tonic-gate libdlpi \ 1007c478bd9Sstevel@tonic-gate libeti \ 1017c478bd9Sstevel@tonic-gate libcrypt \ 1024b22b933Srs200217 libdns_sd \ 1037c478bd9Sstevel@tonic-gate libefi \ 1040e42dee6Sartem libfstyp \ 1057c478bd9Sstevel@tonic-gate libwanboot \ 1067c478bd9Sstevel@tonic-gate libwanbootutil \ 1077c478bd9Sstevel@tonic-gate libcryptoutil \ 1087c478bd9Sstevel@tonic-gate libinetutil \ 1096e91bba0SGirish Moodalbail libipadm \ 110fe77cc04SRobert Mustacchi libipd \ 1117c478bd9Sstevel@tonic-gate libipmp \ 112a6d42e7dSPeter Dunlap libiscsit \ 11399ebb4caSwyllys libkmf \ 1147c478bd9Sstevel@tonic-gate libkstat \ 1157c478bd9Sstevel@tonic-gate libkvm \ 1167c478bd9Sstevel@tonic-gate liblm \ 1177c478bd9Sstevel@tonic-gate libmalloc \ 118f808c858Sraf libmapmalloc \ 1197c478bd9Sstevel@tonic-gate libmtmalloc \ 1207c478bd9Sstevel@tonic-gate libnls \ 121b00044a2SJames Carlson libnwam \ 12284ab085aSmws libsmbios \ 1237c478bd9Sstevel@tonic-gate libtecla \ 1247c478bd9Sstevel@tonic-gate libumem \ 1257c478bd9Sstevel@tonic-gate libnvpair .WAIT \ 1267c478bd9Sstevel@tonic-gate libexacct \ 1277c478bd9Sstevel@tonic-gate libsasl \ 1287c478bd9Sstevel@tonic-gate libldap5 \ 1297c478bd9Sstevel@tonic-gate libsldap .WAIT \ 1307c478bd9Sstevel@tonic-gate libbsm \ 1317c478bd9Sstevel@tonic-gate libsys \ 1327c478bd9Sstevel@tonic-gate libsysevent \ 1337c478bd9Sstevel@tonic-gate libnisdb \ 1347c478bd9Sstevel@tonic-gate libpool \ 135da2e3ebdSchin libpp \ 1367c478bd9Sstevel@tonic-gate libproc \ 1377c478bd9Sstevel@tonic-gate libproject \ 1387c478bd9Sstevel@tonic-gate libsendfile \ 1397c478bd9Sstevel@tonic-gate nametoaddr \ 1407c478bd9Sstevel@tonic-gate ncad_addr \ 141fcf3ce44SJohn Forte hbaapi \ 1429e86db79SHyon Kim smhba \ 143fcf3ce44SJohn Forte sun_fc \ 1449e86db79SHyon Kim sun_sas \ 1457c478bd9Sstevel@tonic-gate gss_mechs/mech_krb5 .WAIT \ 14610db1377Sgtb libkrb5 .WAIT \ 1474bff34e3Sthurlow krb5 .WAIT \ 148fcf3ce44SJohn Forte libsmbfs \ 1492a8164dfSZhong Wang libfcoe \ 150c3a558e7SSue Gleeson libsrpt \ 151fcf3ce44SJohn Forte libstmf \ 15245039663SJohn Forte libstmfproxy \ 153fcf3ce44SJohn Forte libnsctl \ 154fcf3ce44SJohn Forte libunistat \ 155fcf3ce44SJohn Forte libdscfg \ 1565c51f124SMoriah Waterland librdc \ 1575c51f124SMoriah Waterland libinstzones \ 158abc79d9dSRobert Mustacchi libpkg \ 15925c28e83SPiotr Jasiukajtis libpcidb \ 16025c28e83SPiotr Jasiukajtis libm1 \ 16125c28e83SPiotr Jasiukajtis libm \ 16225c28e83SPiotr Jasiukajtis libmvec 16325c28e83SPiotr Jasiukajtis 1645c51f124SMoriah Waterland 165fb9f9b97SkupferSUBDIRS += \ 1667c478bd9Sstevel@tonic-gate passwdutil \ 1677c478bd9Sstevel@tonic-gate pam_modules \ 1687c478bd9Sstevel@tonic-gate crypt_modules \ 1697c478bd9Sstevel@tonic-gate libadt_jni \ 170f808c858Sraf abi \ 1717c478bd9Sstevel@tonic-gate auditd_plugins \ 1727c478bd9Sstevel@tonic-gate libvolmgt \ 1737c478bd9Sstevel@tonic-gate libdevice \ 1747c478bd9Sstevel@tonic-gate libdevid \ 1757c478bd9Sstevel@tonic-gate libc_db \ 1762654012fSReza Sabdar libndmp \ 1777c478bd9Sstevel@tonic-gate libsec \ 1787c478bd9Sstevel@tonic-gate libtnfprobe \ 1797c478bd9Sstevel@tonic-gate libtnf \ 1807c478bd9Sstevel@tonic-gate libtnfctl \ 1817c478bd9Sstevel@tonic-gate libdhcpagent \ 1827c478bd9Sstevel@tonic-gate libdhcputil \ 1835fbacb60SDan McDonald libxnet \ 184c0e7977aSJosef 'Jeff' Sipek libipsecutil \ 1857c478bd9Sstevel@tonic-gate nsswitch \ 1867c478bd9Sstevel@tonic-gate print \ 1877c478bd9Sstevel@tonic-gate libuutil \ 1887c478bd9Sstevel@tonic-gate libscf \ 1897c478bd9Sstevel@tonic-gate libinetsvc \ 1907c478bd9Sstevel@tonic-gate librestart \ 191df8bdeb3Sjohnz libsched \ 192df8bdeb3Sjohnz libelfsign \ 1937c478bd9Sstevel@tonic-gate pkcs11 .WAIT \ 1947c478bd9Sstevel@tonic-gate libpctx .WAIT \ 1957c478bd9Sstevel@tonic-gate libcpc \ 1960a1278f2SGary Mills getloginx \ 1977c478bd9Sstevel@tonic-gate watchmalloc \ 198a5f69788Scraigm extendedFILE \ 1997c478bd9Sstevel@tonic-gate madv \ 2007c478bd9Sstevel@tonic-gate mpss \ 201dc0093f4Seschrock libdisasm \ 2027c478bd9Sstevel@tonic-gate libwrap \ 2037c478bd9Sstevel@tonic-gate libxcurses \ 2047c478bd9Sstevel@tonic-gate libxcurses2 \ 2059acbbeafSnn35248 libbrand .WAIT \ 2067c478bd9Sstevel@tonic-gate libzonecfg \ 2077c478bd9Sstevel@tonic-gate libzoneinfo \ 208efd4c9b6SSteve Lawrence libzonestat \ 20945916cd2Sjpk libtsnet \ 21045916cd2Sjpk libtsol \ 2117c478bd9Sstevel@tonic-gate gss_mechs/mech_spnego \ 2127c478bd9Sstevel@tonic-gate gss_mechs/mech_dummy \ 2137c478bd9Sstevel@tonic-gate gss_mechs/mech_dh \ 2147c478bd9Sstevel@tonic-gate rpcsec_gss \ 215711890bcSjc156560 libraidcfg .WAIT \ 2167c478bd9Sstevel@tonic-gate librcm .WAIT \ 2177c478bd9Sstevel@tonic-gate libcfgadm .WAIT \ 2187c478bd9Sstevel@tonic-gate libpicl .WAIT \ 2197c478bd9Sstevel@tonic-gate libpicltree .WAIT \ 220711890bcSjc156560 raidcfg_plugins \ 2217c478bd9Sstevel@tonic-gate cfgadm_plugins \ 2227c478bd9Sstevel@tonic-gate libmail \ 2237c478bd9Sstevel@tonic-gate lvm \ 2247c478bd9Sstevel@tonic-gate libsmedia \ 2257c478bd9Sstevel@tonic-gate libipp \ 2267c478bd9Sstevel@tonic-gate libdiskmgt \ 2277c478bd9Sstevel@tonic-gate liblgrp \ 2287c478bd9Sstevel@tonic-gate libfsmgt \ 2297c478bd9Sstevel@tonic-gate fm \ 2307c478bd9Sstevel@tonic-gate libavl \ 2317c478bd9Sstevel@tonic-gate libcmdutils \ 2327c478bd9Sstevel@tonic-gate libcontract \ 2337c478bd9Sstevel@tonic-gate ../cmd/sendmail/libmilter \ 2347c478bd9Sstevel@tonic-gate sasl_plugins \ 2357c478bd9Sstevel@tonic-gate udapl \ 236fa9e4066Sahrens libzpool \ 2374445fffbSMatthew Ahrens libzfs_core \ 238fa9e4066Sahrens libzfs \ 239f169c0eaSGlenn Lagasse libbe \ 240f169c0eaSGlenn Lagasse pylibbe \ 241fa9e4066Sahrens libzfs_jni \ 24214843421SMatthew Ahrens pyzfs \ 243e4d060fbSSam Falkner pysolaris \ 2448200fe25Srmesta libmapid \ 2459acbbeafSnn35248 brand \ 24618c2aff7Sartem policykit \ 24718c2aff7Sartem hal \ 2486185db85Sdougm libshare \ 249c5c4113dSnw141292 libsqlite \ 250c5c4113dSnw141292 libidmap \ 251*b3700b07SGordon Ross libads \ 2522b4a7802SBaban Kenkre libadutils \ 2539113a79cSeschrock libipmi \ 254853de45fSdh155122 libexacct/demo \ 2551cb875aeSCathy Zhou libvrrpadm \ 256911106dfSjm199354 libvscan \ 257753a6d45SSherry Moore libgrubmgmt \ 258b819cea2SGordon Ross libfakekernel \ 259da6c28aaSamw smbsrv \ 260dbed73cbSSangeeta Misra libilb \ 261275c9da8Seschrock scsi \ 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= \ 273702941cdSRichard Lowe libfdisk \ 274702941cdSRichard Lowe libsaveargs 2757e7bd3dcSMark Logan 2767c478bd9Sstevel@tonic-gatesparc_SUBDIRS= .WAIT \ 2777c478bd9Sstevel@tonic-gate efcode \ 27830588217SMike Christensen libds \ 27925cf1a30Sjl139090 libdscp \ 28003831d35Sstevel libprtdiag .WAIT \ 28103831d35Sstevel libprtdiag_psr \ 282ef884685Srb144127 libpri \ 28303831d35Sstevel librsc \ 2847c478bd9Sstevel@tonic-gate storage \ 2854a6822d0Swillard libpcp \ 28682629e30SMike Christensen libtsalarm \ 28782629e30SMike Christensen libv12n 2887c478bd9Sstevel@tonic-gate 289ef884685Srb144127FM_sparc_DEPLIBS= libpri 290ef884685Srb144127 2912eeaed14Srobjfm: \ 2922eeaed14Srobj libexacct \ 2932eeaed14Srobj libipmi \ 294815b023eSStephen Hanson libzfs \ 295940d71d2Seschrock scsi \ 2962eeaed14Srobj $(FM_$(MACH)_DEPLIBS) 2977c478bd9Sstevel@tonic-gate 2987c478bd9Sstevel@tonic-gate# 2997c478bd9Sstevel@tonic-gate# Create a special version of $(SUBDIRS) with no .WAIT's, for use with the 3007c478bd9Sstevel@tonic-gate# clean and clobber targets (for more information, see those targets, below). 3017c478bd9Sstevel@tonic-gate# 3027c478bd9Sstevel@tonic-gateNOWAIT_SUBDIRS= $(SUBDIRS:.WAIT=) 3037c478bd9Sstevel@tonic-gate 3047c478bd9Sstevel@tonic-gateDCSUBDIRS = \ 3057c478bd9Sstevel@tonic-gate lvm 3067c478bd9Sstevel@tonic-gate 3077c478bd9Sstevel@tonic-gateMSGSUBDIRS= \ 3087c478bd9Sstevel@tonic-gate abi \ 3097c478bd9Sstevel@tonic-gate auditd_plugins \ 3109acbbeafSnn35248 brand \ 3117c478bd9Sstevel@tonic-gate cfgadm_plugins \ 3127c478bd9Sstevel@tonic-gate gss_mechs/mech_dh \ 3137c478bd9Sstevel@tonic-gate gss_mechs/mech_krb5 \ 3147c478bd9Sstevel@tonic-gate krb5 \ 315da2e3ebdSchin libast \ 3167c478bd9Sstevel@tonic-gate libbsm \ 3177c478bd9Sstevel@tonic-gate libc \ 3187c478bd9Sstevel@tonic-gate libcfgadm \ 319da2e3ebdSchin libcmd \ 3207c478bd9Sstevel@tonic-gate libcontract \ 3217c478bd9Sstevel@tonic-gate libcurses \ 3227c478bd9Sstevel@tonic-gate libdhcputil \ 323a7485808Smarkfen libipsecutil \ 324181c2f42Smmusante libdiskmgt \ 32533343a97Smeem libdladm \ 326da2e3ebdSchin libdll \ 327753a6d45SSherry Moore libgrubmgmt \ 3287c478bd9Sstevel@tonic-gate libgss \ 329c5c4113dSnw141292 libidmap \ 3307c478bd9Sstevel@tonic-gate libipmp \ 331dbed73cbSSangeeta Misra libilb \ 3328002d411SSowmini Varadhan libinetutil \ 3335c51f124SMoriah Waterland libinstzones \ 3346e91bba0SGirish Moodalbail libipadm \ 3357c478bd9Sstevel@tonic-gate libnsl \ 3366ba597c5SAnurag S. Maskey libnwam \ 3377c478bd9Sstevel@tonic-gate libpam \ 3387c478bd9Sstevel@tonic-gate libpicl \ 3397c478bd9Sstevel@tonic-gate libpool \ 3405c51f124SMoriah Waterland libpkg \ 341da2e3ebdSchin libpp \ 3427c478bd9Sstevel@tonic-gate libscf \ 3437c478bd9Sstevel@tonic-gate libsasl \ 3447c478bd9Sstevel@tonic-gate libldap5 \ 3457c478bd9Sstevel@tonic-gate libsecdb \ 3466185db85Sdougm libshare \ 347da2e3ebdSchin libshell \ 3487c478bd9Sstevel@tonic-gate libsldap \ 3497c478bd9Sstevel@tonic-gate libslp \ 3504bff34e3Sthurlow libsmbfs \ 3517c478bd9Sstevel@tonic-gate libsmedia \ 3527c2fbfb3SApril Chin libsum \ 35345916cd2Sjpk libtsol \ 3547c478bd9Sstevel@tonic-gate libuutil \ 3551cb875aeSCathy Zhou libvrrpadm \ 356911106dfSjm199354 libvscan \ 3577c478bd9Sstevel@tonic-gate libwanboot \ 3587c478bd9Sstevel@tonic-gate libwanbootutil \ 359c3aa2a37Sck153898 libzfs \ 3607c478bd9Sstevel@tonic-gate libzonecfg \ 3617c478bd9Sstevel@tonic-gate lvm \ 3627c478bd9Sstevel@tonic-gate madv \ 3637c478bd9Sstevel@tonic-gate mpss \ 3647c478bd9Sstevel@tonic-gate pam_modules \ 36514843421SMatthew Ahrens pyzfs \ 366e4d060fbSSam Falkner pysolaris \ 3677a286c47SDai Ngo rpcsec_gss \ 3687a286c47SDai Ngo libreparse 369fb9f9b97SkupferMSGSUBDIRS += \ 3707c478bd9Sstevel@tonic-gate $($(MACH)_MSGSUBDIRS) 3717c478bd9Sstevel@tonic-gate 37203831d35Sstevelsparc_MSGSUBDIRS= \ 37303831d35Sstevel libprtdiag \ 37403831d35Sstevel libprtdiag_psr 3757c478bd9Sstevel@tonic-gate 376aa1b14e7SSheshadri Vasudevani386_MSGSUBDIRS= libfdisk 377aa1b14e7SSheshadri Vasudevan 378f841f6adSrafHDRSUBDIRS= \ 3797c478bd9Sstevel@tonic-gate auditd_plugins \ 380*b3700b07SGordon Ross libads \ 381da2e3ebdSchin libast \ 3829acbbeafSnn35248 libbrand \ 3837c478bd9Sstevel@tonic-gate libbsm \ 3847c478bd9Sstevel@tonic-gate libc \ 385da2e3ebdSchin libcmd \ 3867c478bd9Sstevel@tonic-gate libcmdutils \ 3876e91bba0SGirish Moodalbail libcommputil \ 3887c478bd9Sstevel@tonic-gate libcontract \ 3897c478bd9Sstevel@tonic-gate libcpc \ 3907c478bd9Sstevel@tonic-gate libctf \ 3917c478bd9Sstevel@tonic-gate libcurses \ 3927c1d3545SGordon Ross libtermcap \ 3937c478bd9Sstevel@tonic-gate libcryptoutil \ 3947c478bd9Sstevel@tonic-gate libdevice \ 3957c478bd9Sstevel@tonic-gate libdevid \ 3967c478bd9Sstevel@tonic-gate libdevinfo \ 3973e1bd7a2Ssjelinek libdiskmgt \ 3987c478bd9Sstevel@tonic-gate libdladm \ 399da2e3ebdSchin libdll \ 4007c478bd9Sstevel@tonic-gate libdlpi \ 4017c478bd9Sstevel@tonic-gate libdhcpagent \ 4027c478bd9Sstevel@tonic-gate libdhcputil \ 403dc0093f4Seschrock libdisasm \ 4044b22b933Srs200217 libdns_sd \ 405fcf3ce44SJohn Forte libdscfg \ 4067c478bd9Sstevel@tonic-gate libdtrace \ 407fb3fb4f3Stomee libdtrace_jni \ 408df8bdeb3Sjohnz libelfsign \ 4097c478bd9Sstevel@tonic-gate libeti \ 410b819cea2SGordon Ross libfakekernel \ 411c69f580fSSundeep Panicker libfru \ 4120e42dee6Sartem libfstyp \ 4137c478bd9Sstevel@tonic-gate libgen \ 4146e91bba0SGirish Moodalbail libipadm \ 415fe77cc04SRobert Mustacchi libipd \ 4167c478bd9Sstevel@tonic-gate libipsecutil \ 4177c478bd9Sstevel@tonic-gate libinetsvc \ 4187c478bd9Sstevel@tonic-gate libinetutil \ 41922fb2eebSMoriah Waterland libinstzones \ 4209113a79cSeschrock libipmi \ 4217c478bd9Sstevel@tonic-gate libipmp \ 4227c478bd9Sstevel@tonic-gate libipp \ 423a6d42e7dSPeter Dunlap libiscsit \ 4247c478bd9Sstevel@tonic-gate libkstat \ 4257c478bd9Sstevel@tonic-gate libkvm \ 4267c478bd9Sstevel@tonic-gate libmail \ 427734b6a94Sdarrenm libmd \ 4287c478bd9Sstevel@tonic-gate libmtmalloc \ 4292654012fSReza Sabdar libndmp \ 4307c478bd9Sstevel@tonic-gate libnvpair \ 431fcf3ce44SJohn Forte libnsctl \ 43245916cd2Sjpk libnsl \ 433b00044a2SJames Carlson libnwam \ 4347c478bd9Sstevel@tonic-gate libpam \ 435abc79d9dSRobert Mustacchi libpcidb \ 4367c478bd9Sstevel@tonic-gate libpctx \ 4377c478bd9Sstevel@tonic-gate libpicl \ 4387c478bd9Sstevel@tonic-gate libpicltree \ 4397c478bd9Sstevel@tonic-gate libpool \ 440da2e3ebdSchin libpp \ 4417c478bd9Sstevel@tonic-gate libproc \ 4423e4f2897Sjc156560 libraidcfg \ 4437c478bd9Sstevel@tonic-gate librcm \ 444fcf3ce44SJohn Forte librdc \ 4457c478bd9Sstevel@tonic-gate libscf \ 44640cb5e5dSvi117747 libsip \ 44784ab085aSmws libsmbios \ 4487c478bd9Sstevel@tonic-gate librestart \ 4497c478bd9Sstevel@tonic-gate librpcsvc \ 4507c478bd9Sstevel@tonic-gate librsm \ 4514eaa4710SRishi Srivatsavai librstp \ 4527c478bd9Sstevel@tonic-gate libsasl \ 453fa9e4066Sahrens libsec \ 454da2e3ebdSchin libshell \ 4557c478bd9Sstevel@tonic-gate libslp \ 4567c478bd9Sstevel@tonic-gate libsmedia \ 4576e91bba0SGirish Moodalbail libsocket \ 458c5c4113dSnw141292 libsqlite \ 4592a8164dfSZhong Wang libfcoe \ 460c3a558e7SSue Gleeson libsrpt \ 461fcf3ce44SJohn Forte libstmf \ 46245039663SJohn Forte libstmfproxy \ 4637c2fbfb3SApril Chin libsum \ 4647c478bd9Sstevel@tonic-gate libsysevent \ 4657c478bd9Sstevel@tonic-gate libtecla \ 4667c478bd9Sstevel@tonic-gate libtnf \ 4677c478bd9Sstevel@tonic-gate libtnfctl \ 4687c478bd9Sstevel@tonic-gate libtnfprobe \ 46945916cd2Sjpk libtsnet \ 47045916cd2Sjpk libtsol \ 4711cb875aeSCathy Zhou libvrrpadm \ 4727c478bd9Sstevel@tonic-gate libvolmgt \ 4737c478bd9Sstevel@tonic-gate libumem \ 474fcf3ce44SJohn Forte libunistat \ 4757c478bd9Sstevel@tonic-gate libuutil \ 4766e91bba0SGirish Moodalbail libwanboot \ 4776e91bba0SGirish Moodalbail libwanbootutil \ 4787c478bd9Sstevel@tonic-gate libwrap \ 4797c478bd9Sstevel@tonic-gate libxcurses2 \ 480fa9e4066Sahrens libzfs \ 4814445fffbSMatthew Ahrens libzfs_core \ 482088e9d47Seschrock libzfs_jni \ 4837c478bd9Sstevel@tonic-gate libzoneinfo \ 484efd4c9b6SSteve Lawrence libzonestat \ 48518c2aff7Sartem hal \ 48618c2aff7Sartem policykit \ 4877c478bd9Sstevel@tonic-gate lvm \ 4887c478bd9Sstevel@tonic-gate pkcs11 \ 4897c478bd9Sstevel@tonic-gate passwdutil \ 4907c478bd9Sstevel@tonic-gate ../cmd/sendmail/libmilter \ 4917c478bd9Sstevel@tonic-gate fm \ 4927c478bd9Sstevel@tonic-gate udapl \ 4938200fe25Srmesta libmapid \ 49410db1377Sgtb libkrb5 \ 495613a2f6bSGordon Ross libsmbfs \ 4966185db85Sdougm libshare \ 497c5c4113dSnw141292 libidmap \ 498911106dfSjm199354 libvscan \ 499753a6d45SSherry Moore libgrubmgmt \ 500da6c28aaSamw smbsrv \ 501dbed73cbSSangeeta Misra libilb \ 502275c9da8Seschrock scsi \ 503fcf3ce44SJohn Forte hbaapi \ 5049e86db79SHyon Kim smhba \ 505fcf3ce44SJohn Forte libima \ 506fcf3ce44SJohn Forte libsun_ima \ 507fcf3ce44SJohn Forte mpapi \ 5087a286c47SDai Ngo libreparse \ 5097c478bd9Sstevel@tonic-gate $($(MACH)_HDRSUBDIRS) 5107c478bd9Sstevel@tonic-gate 511964db34dSMark Logani386_HDRSUBDIRS= \ 512702941cdSRichard Lowe libfdisk \ 513702941cdSRichard Lowe libsaveargs 514964db34dSMark Logan 5157c478bd9Sstevel@tonic-gatesparc_HDRSUBDIRS= \ 51630588217SMike Christensen libds \ 51725cf1a30Sjl139090 libdscp \ 518fcf3ce44SJohn Forte libpri \ 51982629e30SMike Christensen libv12n \ 520fcf3ce44SJohn Forte storage 5217c478bd9Sstevel@tonic-gate 5227c478bd9Sstevel@tonic-gateall := TARGET= all 5237c478bd9Sstevel@tonic-gatecheck := TARGET= check 5247c478bd9Sstevel@tonic-gateclean := TARGET= clean 5257c478bd9Sstevel@tonic-gateclobber := TARGET= clobber 5267c478bd9Sstevel@tonic-gateinstall := TARGET= install 5277c478bd9Sstevel@tonic-gateinstall_h := TARGET= install_h 5287c478bd9Sstevel@tonic-gatelint := TARGET= lint 5297c478bd9Sstevel@tonic-gate_dc := TARGET= _dc 5307c478bd9Sstevel@tonic-gate_msg := TARGET= _msg 5317c478bd9Sstevel@tonic-gate 5327c478bd9Sstevel@tonic-gate.KEEP_STATE: 5337c478bd9Sstevel@tonic-gate 5347c478bd9Sstevel@tonic-gate# 5357c478bd9Sstevel@tonic-gate# For the all and install targets, we clearly must respect library 5367c478bd9Sstevel@tonic-gate# dependencies so that the libraries link correctly. However, for 5377c478bd9Sstevel@tonic-gate# the remaining targets (check, clean, clobber, install_h, lint, _dc 5387c478bd9Sstevel@tonic-gate# and _msg), libraries do not have any dependencies on one another 5397c478bd9Sstevel@tonic-gate# and thus respecting dependencies just slows down the build. 5407c478bd9Sstevel@tonic-gate# As such, for these rules, we use pattern replacement to explicitly 5417c478bd9Sstevel@tonic-gate# avoid triggering the dependency information. Note that for clean, 5427c478bd9Sstevel@tonic-gate# clobber and lint, we must use $(NOWAIT_SUBDIRS) rather than 5437c478bd9Sstevel@tonic-gate# $(SUBDIRS), to prevent `.WAIT' from expanding to `.WAIT-nodepend'. 5447c478bd9Sstevel@tonic-gate# 5457c478bd9Sstevel@tonic-gate 5467c478bd9Sstevel@tonic-gateall: $(SUBDIRS) 5477c478bd9Sstevel@tonic-gate 5487c478bd9Sstevel@tonic-gateinstall: $(SUBDIRS) .WAIT install_extra 5497c478bd9Sstevel@tonic-gate 5507c478bd9Sstevel@tonic-gate# extra libraries kept in other source areas 5517c478bd9Sstevel@tonic-gateinstall_extra: 5527c478bd9Sstevel@tonic-gate @cd ../cmd/sgs; pwd; $(MAKE) install_lib 5537c478bd9Sstevel@tonic-gate @pwd 5547c478bd9Sstevel@tonic-gate 5557c478bd9Sstevel@tonic-gateclean clobber lint: $(NOWAIT_SUBDIRS:%=%-nodepend) 5567c478bd9Sstevel@tonic-gate 5577c478bd9Sstevel@tonic-gateinstall_h check: $(HDRSUBDIRS:%=%-nodepend) 5587c478bd9Sstevel@tonic-gate 5597c478bd9Sstevel@tonic-gate_msg: $(MSGSUBDIRS:%=%-nodepend) .WAIT _dc 5607c478bd9Sstevel@tonic-gate 5617c478bd9Sstevel@tonic-gate_dc: $(DCSUBDIRS:%=%-nodepend) 5627c478bd9Sstevel@tonic-gate 5637c478bd9Sstevel@tonic-gate# 5647c478bd9Sstevel@tonic-gate# Library interdependencies are called out explicitly here 5657c478bd9Sstevel@tonic-gate# 5667c478bd9Sstevel@tonic-gateauditd_plugins: libbsm libnsl libsecdb 567fca42680SGary Millskrb5: gss_mechs/mech_krb5 5687c478bd9Sstevel@tonic-gategss_mechs/mech_krb5: libgss libnsl libsocket libresolv pkcs11 569fca42680SGary Millsgss_mechs/mech_spnego: gss_mechs/mech_krb5 5707c478bd9Sstevel@tonic-gatelibadt_jni: libbsm 57125c28e83SPiotr Jasiukajtislibast: libsocket libm 5727a8a68f5SJulian Pullenlibadutils: libldap5 libresolv libsocket libnsl 5737a8a68f5SJulian Pullennsswitch: libadutils libidmap 574f169c0eaSGlenn Lagasselibbe: libzfs 575914d7362SJan Parcellibbsm: libtsol 5767c2fbfb3SApril Chinlibcmd: libsum libast libsocket libnsl 577fca42680SGary Millslibcmdutils: libavl libnvpair 5787c478bd9Sstevel@tonic-gatelibcontract: libnvpair 579fca42680SGary Millslibcpc: libdevinfo 5807c478bd9Sstevel@tonic-gatelibdevid: libdevinfo 581fa9e4066Sahrenslibdevinfo: libnvpair libsec 582a1196271SJames Carlsonlibdhcpagent: libsocket libdhcputil libuuid libdlpi libcontract 5834ee71a50Scarlsonjlibdhcputil: libnsl libgen libinetutil libdlpi 58482a2fc47SJames Carlsonlibdladm: libdevinfo libinetutil libsocket libscf librcm libnvpair \ 58582a2fc47SJames Carlson libexacct libnsl libkstat libcurses 586fca42680SGary Millslibdevice: libnvpair 587da2e3ebdSchinlibdll: libast 588d62bc4baSyz147064libdlpi: libinetutil libdladm 58982629e30SMike Christensenlibds: libsysevent 590fcf3ce44SJohn Fortelibdscfg: libnsctl libunistat libsocket libnsl 591fca42680SGary Millslibdtrace: libproc libgen libctf libmapmalloc 592fb3fb4f3Stomeelibdtrace_jni: libuutil libdtrace 5937c478bd9Sstevel@tonic-gatelibefi: libuuid 594fca42680SGary Millslibfcoe: libdladm 5950e42dee6Sartemlibfstyp: libnvpair 596df8bdeb3Sjohnzlibelfsign: libcryptoutil libkmf 597cb174861Sjoyce mcintoshlibidmap: libadutils libldap5 libavl libsldap libuutil 5986e91bba0SGirish Moodalbaillibipadm: libnsl libinetutil libsocket libdlpi libnvpair libdhcpagent \ 5996e91bba0SGirish Moodalbail libdladm libsecdb 600a6d42e7dSPeter Dunlaplibiscsit: libc libnvpair libstmf libuuid libnsl 601bda1f129SMark Phalanlibkmf: libcryptoutil pkcs11 60225c28e83SPiotr Jasiukajtislibm: libc 60325c28e83SPiotr Jasiukajtislibm1: libc libm 60425c28e83SPiotr Jasiukajtislibmvec: libc libm 6059c4a8948SAntonello Cruzlibnsl: libmd5 60606e1a714Sraflibmapid: libresolv 607fca42680SGary Millslibnisdb: libnsl libldap5 608fca42680SGary Millslibrcm: libnvpair 609fcf3ce44SJohn Fortelibrdc: libsocket libnsl libnsctl libunistat libdscfg 610d62bc4baSyz147064libuuid: libdlpi 6117c478bd9Sstevel@tonic-gatelibinetutil: libsocket 6125fbacb60SDan McDonaldlibipsecutil: libtecla libsocket 6135c51f124SMoriah Waterlandlibinstzones: libzonecfg libcontract 6145c51f124SMoriah Waterlandlibpkg: libwanboot libscf libadm 615fca42680SGary Millslibnwam: libscf libbsm libdladm 61606e1a714Sraflibsecdb: libnsl 617734b6a94Sdarrenmlibsasl: libgss libsocket pkcs11 libmd 6187c478bd9Sstevel@tonic-gatesasl_plugins: pkcs11 libgss libsocket libsasl 6197c478bd9Sstevel@tonic-gatelibsctp: libsocket 62025c28e83SPiotr Jasiukajtislibshell: libast libcmd libdll libsocket libsecdb libm 62140cb5e5dSvi117747libsip: libmd5 622fca42680SGary Millslibsmbfs: libcmdutils libsocket libnsl libkrb5 libsec libidmap 6237c478bd9Sstevel@tonic-gatelibsocket: libnsl 62445039663SJohn Fortelibstmfproxy: libstmf libsocket libnsl libpthread 6257c2fbfb3SApril Chinlibsum: libast 626fca42680SGary Millslibsysevent: libsecdb libnvpair 627734b6a94Sdarrenmlibldap5: libsasl libsocket libnsl libmd 628e1dd0a2fSth160488libsldap: libldap5 libtsol libnsl libc libscf libresolv 6297c478bd9Sstevel@tonic-gatelibpool: libnvpair libexacct 630da2e3ebdSchinlibpp: libast 6319acbbeafSnn35248libzonecfg: libc libsocket libnsl libuuid libnvpair libsysevent libsec \ 6320209230bSgjelinek libbrand libpool libscf 633702941cdSRichard Lowelibproc: ../cmd/sgs/librtld_db ../cmd/sgs/libelf libctf libsaveargs 6347c478bd9Sstevel@tonic-gatelibproject: libpool libproc libsecdb 6357c1d3545SGordon Rosslibtermcap: libcurses 63645916cd2Sjpklibtsnet: libnsl libtsol libsecdb 6377c478bd9Sstevel@tonic-gatelibwrap: libnsl libsocket 6387c478bd9Sstevel@tonic-gatelibwanboot: libnvpair libresolv libnsl libsocket libdevinfo libinetutil \ 639bda1f129SMark Phalan libdhcputil 6407c478bd9Sstevel@tonic-gatelibwanbootutil: libnsl 641fca42680SGary Millspam_modules: libproject passwdutil smbsrv libtsnet 642fca42680SGary Millslibscf: libuutil libmd libgen libsmbios libnsl libnvpair 6437c478bd9Sstevel@tonic-gatelibinetsvc: libscf 644fca42680SGary Millslibrestart: libuutil libscf libpool libproject libsecdb libnvpair 645702941cdSRichard Lowelibsaveargs: libdisasm 6467c478bd9Sstevel@tonic-gate../cmd/sgs/libdl: ../cmd/sgs/libconv 6477c478bd9Sstevel@tonic-gate../cmd/sgs/libelf: ../cmd/sgs/libconv 648fca42680SGary Millspasswdutil: libsldap 649fca42680SGary Millspkcs11: libcryptoutil libmd 650fca42680SGary Mills# Adding libuuid or libdladm results in a circular dependancy 6517c478bd9Sstevel@tonic-gateprint: libldap5 6527c478bd9Sstevel@tonic-gateudapl/udapl_tavor: udapl/libdat 653ab003da8SJim Dunhamlibzfs: libdevid libgen libnvpair libuutil \ 65425c28e83SPiotr Jasiukajtis libadm libavl libefi libidmap libmd libzfs_core libm 6554445fffbSMatthew Ahrenslibzfs_core: libnvpair 656fa9e4066Sahrenslibzfs_jni: libdiskmgt libnvpair libzfs 6573c112a2bSEric Taylorlibzpool: libavl libumem libnvpair libcmdutils 658a74dfeddSMark Shellenbaumlibsec: libavl libidmap 6599acbbeafSnn35248brand: libc libsocket 6604bff34e3Sthurlowlibshare: libscf libzfs libuuid libfsmgt libsecdb libumem libsmbfs 661853de45fSdh155122libexacct/demo: libexacct libproject libsocket libnsl 6624a6822d0Swillardlibtsalarm: libpcp 663da6c28aaSamwsmbsrv: libsocket libnsl libmd libxnet libpthread librt \ 6643c112a2bSEric Taylor libshare libidmap pkcs11 libsqlite libcryptoutil \ 66512b65585SGordon Ross libreparse libcmdutils libresolv libsmbfs libuuid \ 666*b3700b07SGordon Ross libfakekernel libads 66782629e30SMike Christensenlibv12n: libds libuuid 668c5e0ece0SCathy Zhoulibvrrpadm: libsocket libdladm libscf 669911106dfSjm199354libvscan: libscf 670ac88567aSHyon Kimlibfru: libfruutils 671ac88567aSHyon Kimscsi: libnvpair libfru 672fcf3ce44SJohn Fortempapi: libpthread libdevinfo libsysevent libnvpair 673f94d63efSHyon Kimsun_fc: libdevinfo libsysevent libnvpair 674f94d63efSHyon Kimlibsun_ima: libdevinfo libsysevent libnsl 675f94d63efSHyon Kimsun_sas: libdevinfo libsysevent libnvpair libkstat libdevid 676753a6d45SSherry Moorelibgrubmgmt: libdevinfo libzfs libfstyp 677f169c0eaSGlenn Lagassepylibbe: libbe libzfs 678e4d060fbSSam Falknerpyzfs: libnvpair libzfs 679e4d060fbSSam Falknerpysolaris: libsec libidmap 6807a286c47SDai Ngolibreparse: libnvpair 68126947304SEvan Yanlibhotplug: libnvpair 68226947304SEvan Yancfgadm_plugins: libhotplug 683dbed73cbSSangeeta Misralibilb: libsocket 68425c28e83SPiotr Jasiukajtislibipmi: libm 68525c28e83SPiotr Jasiukajtislibprtdiag: libm 68625c28e83SPiotr Jasiukajtislibsqlite: libm 68725c28e83SPiotr Jasiukajtislibstmf: libm 68825c28e83SPiotr Jasiukajtislibvscan: libm 68925c28e83SPiotr Jasiukajtis 69025c28e83SPiotr Jasiukajtis 6912174cb7bSVirginia Wray$(INTEL_BUILD)libdiskmgt:libfdisk 6927c478bd9Sstevel@tonic-gate 6937c478bd9Sstevel@tonic-gate# 6947c478bd9Sstevel@tonic-gate# The reason this rule checks for the existence of the 6957c478bd9Sstevel@tonic-gate# Makefile is that some of the directories do not exist 696fb9f9b97Skupfer# in certain situations (e.g., exportable source builds, 697fb9f9b97Skupfer# OpenSolaris). 6987c478bd9Sstevel@tonic-gate# 699f808c858Sraf$(SUBDIRS): FRC 7007c478bd9Sstevel@tonic-gate @if [ -f $@/Makefile ]; then \ 7017c478bd9Sstevel@tonic-gate cd $@; pwd; $(MAKE) $(TARGET); \ 7027c478bd9Sstevel@tonic-gate else \ 7037c478bd9Sstevel@tonic-gate true; \ 7047c478bd9Sstevel@tonic-gate fi 7057c478bd9Sstevel@tonic-gate 706f808c858Sraf$(SUBDIRS:%=%-nodepend): 7077c478bd9Sstevel@tonic-gate @if [ -f $(@:%-nodepend=%)/Makefile ]; then \ 7087c478bd9Sstevel@tonic-gate cd $(@:%-nodepend=%); pwd; $(MAKE) $(TARGET); \ 7097c478bd9Sstevel@tonic-gate else \ 7107c478bd9Sstevel@tonic-gate true; \ 7117c478bd9Sstevel@tonic-gate fi 7127c478bd9Sstevel@tonic-gate 7137c478bd9Sstevel@tonic-gateFRC: 714