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         auditd                          \
  37         bnu                             \
  38         consadm                         \
  39         coreadm                         \
  40         cron                            \
  41         cvcd                            \
  42         dispadmin                       \
  43         drd                             \
  44         dumpadm                         \
  45         fcinfo                          \
  46         fcoesvc                         \
  47         fm                              \
  48         ibd_upgrade                     \
  49         intrd                           \
  50         iscsid                          \
  51         iscsitsvc                       \
  52         kbd                             \
  53         keyserv                         \
  54         ldapcachemgr                    \
  55         ldmad                           \
  56         dlmgmtd                         \
  57         ndmpd                           \
  58         nscd                            \
  59         oplhpd                          \
  60         pools                           \
  61         power                           \
  62         rmvolmgr                        \
  63         rpcbind                         \
  64         rpcsvc                          \
  65         sa                              \
  66         saf                             \
  67         sckmd                           \
  68         sf880drd                        \
  69         smserverd                       \
  70         stmfproxy                       \
  71         stmfsvc                         \
  72         stmsboot                        \
  73         syseventd                       \
  74         syslogd                         \
  75         utmpd                           \
  76         vntsd                           \
  77         ypcmd                           \
  78         zoneadm                         \
  79         zoneadmd
  80 
  81 MANIFEST_SUBDIRS=                       \
  82         boot/scripts                    \
  83         cmd-crypto/scripts              \
  84         cmd-inet/usr.lib/ilbd           \
  85         cmd-inet/usr.lib/in.chargend    \
  86         cmd-inet/usr.lib/in.daytimed    \
  87         cmd-inet/usr.lib/in.discardd    \
  88         cmd-inet/usr.lib/in.echod       \
  89         cmd-inet/usr.lib/in.ndpd        \
  90         cmd-inet/usr.lib/in.ripngd      \
  91         cmd-inet/usr.lib/in.timed       \
  92         cmd-inet/usr.lib/inetd          \
  93         cmd-inet/usr.lib/mdnsd          \
  94         cmd-inet/usr.lib/slpd           \
  95         cmd-inet/usr.lib/vrrpd          \
  96         cmd-inet/usr.lib/wpad           \
  97         cmd-inet/usr.sbin               \
  98         cmd-inet/usr.sbin/in.rdisc      \
  99         cmd-inet/usr.sbin/in.routed     \
 100         cmd-inet/usr.sbin/in.talkd      \
 101         cmd-inet/usr.sbin/ipsecutils    \
 102         cmd-inet/usr.sbin/kssl/ksslcfg  \
 103         cmd-inet/usr.sbin/routeadm      \
 104         dcs/sparc/sun4u                 \
 105         dfs.cmds/sharemgr               \
 106         fs.d/autofs                     \
 107         fs.d/nfs/svc                    \
 108         fs.d/smbclnt/svc                \
 109         gss/gssd                        \
 110         hal/addons/network-devices      \
 111         hal/hald/solaris                \
 112         halt/smf.$(MACH)                \
 113         hostid/smf                      \
 114         idmap/idmapd                    \
 115         ipf/svc                         \
 116         isns/isnsd                      \
 117         krb5/kadmin/server              \
 118         krb5/krb5kdc                    \
 119         krb5/kwarn                      \
 120         krb5/slave                      \
 121         lp/cmd/lpsched                  \
 122         picl/picld                      \
 123         pools/poold                     \
 124         print/bsd-sysv-commands         \
 125         print/ppdmgr                    \
 126         rcap/rcapd                      \
 127         rpcsvc/rpc.bootparamd           \
 128         sendmail/lib                    \
 129         smbsrv/smbd                     \
 130         ssh/etc                         \
 131         svc/milestone                   \
 132         tsol/labeld                     \
 133         tsol/tnctl                      \
 134         tsol/tnd                        \
 135         tsol/tsol-zones                 \
 136         vscan/vscand                    \
 137         xvm/ipagent                     \
 138         ypcmd/yppasswd                  \
 139         ypcmd/ypupdated                 \
 140         zonestat/zonestatd
 141 
 142 MISC_SUBDIRS=           \
 143         dtrace/test/tst \
 144         sgs
 145 
 146 .KEEP_STATE:
 147 
 148 # Manifests cannot be checked in parallel, because we are using the global
 149 # repository that is in $(SRC)/cmd/svc/seed/global.db.  This is a
 150 # repository that is built from the manifests in this workspace, whereas
 151 # the build machine's repository may be out of sync with these manifests.
 152 # Because we are using a private repository, svccfg-native must start up a
 153 # private copy of configd-native.  We cannot have multiple copies of
 154 # configd-native trying to access global.db simultaneously.
 155 
 156 .NO_PARALLEL:
 157 
 158 check: svccfg_check $(MANIFEST_TOPDIRS) $(MANIFEST_SUBDIRS) $(MISC_SUBDIRS)
 159 
 160 svccfg_check:
 161         @$(ECHO) "building requirements for svccfg check ..."; \
 162         (cd $(SRC)/cmd/svc/seed && pwd && $(MAKE) $(MFLAGS) global.db)
 163 
 164 $(MANIFEST_TOPDIRS) $(MANIFEST_SUBDIRS) $(MISC_SUBDIRS): FRC
 165         @cd $@; pwd; $(MAKE) check
 166 
 167 FRC: