1 #
   2 # CDDL HEADER START
   3 #
   4 # The contents of this file are subject to the terms of the
   5 # Common Development and Distribution License (the "License").
   6 # You may not use this file except in compliance with the License.
   7 #
   8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9 # or http://www.opensolaris.org/os/licensing.
  10 # See the License for the specific language governing permissions
  11 # and limitations under the License.
  12 #
  13 # When distributing Covered Code, include this CDDL HEADER in each
  14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15 # If applicable, add the following below this CDDL HEADER, with the
  16 # fields enclosed by brackets "[]" replaced with your own identifying
  17 # information: Portions Copyright [yyyy] [name of copyright owner]
  18 #
  19 # CDDL HEADER END
  20 #
  21 
  22 #
  23 # Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
  24 # Copyright 2014 Garrett D'Amore <garrett@damore.org>
  25 # Copyright 2017 Nexenta Systems, Inc.
  26 #
  27 
  28 include ../Makefile.master
  29 
  30 #
  31 # Commands providing manifests must offer a check target.  A recursive check
  32 # target across all commands directories is not currently provided.
  33 #
  34 MANIFEST_TOPDIRS=                       \
  35         acctadm                         \
  36         aoesvc                          \
  37         auditd                          \
  38         bnu                             \
  39         consadm                         \
  40         coreadm                         \
  41         cron                            \
  42         cvcd                            \
  43         dispadmin                       \
  44         drd                             \
  45         dumpadm                         \
  46         fcinfo                          \
  47         fcoesvc                         \
  48         fm                              \
  49         ibd_upgrade                     \
  50         intrd                           \
  51         iscsid                          \
  52         iscsitsvc                       \
  53         kbd                             \
  54         keyserv                         \
  55         ldapcachemgr                    \
  56         ldmad                           \
  57         dlmgmtd                         \
  58         ndmpd                           \
  59         nscd                            \
  60         oplhpd                          \
  61         pools                           \
  62         power                           \
  63         rmvolmgr                        \
  64         rpcbind                         \
  65         rpcsvc                          \
  66         sa                              \
  67         saf                             \
  68         sckmd                           \
  69         sf880drd                        \
  70         smserverd                       \
  71         stmfproxy                       \
  72         stmfsvc                         \
  73         stmsboot                        \
  74         syseventd                       \
  75         syslogd                         \
  76         utmpd                           \
  77         vntsd                           \
  78         ypcmd                           \
  79         zoneadm                         \
  80         zoneadmd
  81 
  82 MANIFEST_SUBDIRS=                       \
  83         boot/scripts                    \
  84         cmd-crypto/scripts              \
  85         cmd-inet/usr.lib/ilbd           \
  86         cmd-inet/usr.lib/in.chargend    \
  87         cmd-inet/usr.lib/in.daytimed    \
  88         cmd-inet/usr.lib/in.discardd    \
  89         cmd-inet/usr.lib/in.echod       \
  90         cmd-inet/usr.lib/in.mpathd      \
  91         cmd-inet/usr.lib/in.ndpd        \
  92         cmd-inet/usr.lib/in.ripngd      \
  93         cmd-inet/usr.lib/in.timed       \
  94         cmd-inet/usr.lib/inetd          \
  95         cmd-inet/usr.lib/mdnsd          \
  96         cmd-inet/usr.lib/slpd           \
  97         cmd-inet/usr.lib/vrrpd          \
  98         cmd-inet/usr.lib/wpad           \
  99         cmd-inet/usr.sbin               \
 100         cmd-inet/usr.sbin/in.rdisc      \
 101         cmd-inet/usr.sbin/in.routed     \
 102         cmd-inet/usr.sbin/in.talkd      \
 103         cmd-inet/usr.sbin/ipsecutils    \
 104         cmd-inet/usr.sbin/kssl/ksslcfg  \
 105         cmd-inet/usr.sbin/routeadm      \
 106         dcs/sparc/sun4u                 \
 107         dfs.cmds/sharemgr               \
 108         fs.d/autofs                     \
 109         fs.d/nfs/svc                    \
 110         fs.d/smbclnt/svc                \
 111         gss/gssd                        \
 112         hal/addons/network-devices      \
 113         hal/hald/solaris                \
 114         halt/smf.$(MACH)                \
 115         hostid/smf                      \
 116         idmap/idmapd                    \
 117         ipf/svc                         \
 118         isns/isnsd                      \
 119         krb5/kadmin/server              \
 120         krb5/krb5kdc                    \
 121         krb5/kwarn                      \
 122         krb5/slave                      \
 123         lp/cmd/lpsched                  \
 124         picl/picld                      \
 125         pools/poold                     \
 126         print/bsd-sysv-commands         \
 127         print/ppdmgr                    \
 128         rcap/rcapd                      \
 129         rpcsvc/rpc.bootparamd           \
 130         sendmail/lib                    \
 131         smbsrv/smbd                     \
 132         ssh/etc                         \
 133         svc/milestone                   \
 134         tsol/labeld                     \
 135         tsol/tnctl                      \
 136         tsol/tnd                        \
 137         tsol/tsol-zones                 \
 138         vscan/vscand                    \
 139         xvm/ipagent                     \
 140         ypcmd/yppasswd                  \
 141         ypcmd/ypupdated                 \
 142         zonestat/zonestatd
 143 
 144 MISC_SUBDIRS=           \
 145         dtrace/test/tst \
 146         sgs
 147 
 148 .KEEP_STATE:
 149 
 150 # Manifests cannot be checked in parallel, because we are using the global
 151 # repository that is in $(SRC)/cmd/svc/seed/global.db.  This is a
 152 # repository that is built from the manifests in this workspace, whereas
 153 # the build machine's repository may be out of sync with these manifests.
 154 # Because we are using a private repository, svccfg-native must start up a
 155 # private copy of configd-native.  We cannot have multiple copies of
 156 # configd-native trying to access global.db simultaneously.
 157 
 158 .NO_PARALLEL:
 159 
 160 check: svccfg_check $(MANIFEST_TOPDIRS) $(MANIFEST_SUBDIRS) $(MISC_SUBDIRS)
 161 
 162 svccfg_check:
 163         @$(ECHO) "building requirements for svccfg check ..."; \
 164         (cd $(SRC)/cmd/svc/seed && pwd && $(MAKE) $(MFLAGS) global.db)
 165 
 166 $(MANIFEST_TOPDIRS) $(MANIFEST_SUBDIRS) $(MISC_SUBDIRS): FRC
 167         @cd $@; pwd; $(MAKE) check
 168 
 169 FRC: