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 # Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
  23 #
  24 
  25 include ../../Makefile.cmd
  26 
  27 FILEMODE = 0444
  28 
  29 BUILTXML= \
  30         console-login.xml
  31 
  32 FSSVCS= \
  33         local-fs.xml \
  34         minimal-fs.xml \
  35         root-fs.xml \
  36         usr-fs.xml
  37 
  38 FSMANIFESTS= $(FSSVCS:%=$(ROOTSVCSYSTEMFILESYSTEM)/%)
  39 
  40 NETSVCS= \
  41         network-initial.xml \
  42         network-install.xml \
  43         network-iptun.xml \
  44         network-ipqos.xml \
  45         network-location.xml \
  46         network-loopback.xml \
  47         network-netcfg.xml \
  48         network-netmask.xml \
  49         network-netcfg.xml \
  50         network-physical.xml \
  51         network-routing-setup.xml \
  52         network-service.xml
  53 
  54 NETMANIFESTS= $(NETSVCS:%=$(ROOTSVCNETWORK)/%)
  55 
  56 MAINMILESTONES= \
  57         multi-user-server.xml \
  58         multi-user.xml \
  59         name-services.xml \
  60         network.xml \
  61         single-user.xml \
  62         sysconfig.xml
  63 
  64 MAINMANIFESTS= $(MAINMILESTONES:%=$(ROOTSVCMILESTONE)/%)
  65 
  66 SYSDEVSVCS= \
  67         devices-local.xml \
  68         devices-audio.xml
  69 
  70 SYSDEVMANIFESTS= $(SYSDEVSVCS:%=$(ROOTSVCSYSTEMDEVICE)/%)
  71 
  72 SYSTEMSVCS= \
  73         boot-archive.xml \
  74         console-login.xml \
  75         early-manifest-import.xml \
  76         identity.xml \
  77         manifest-import.xml \
  78         process-security.xml \
  79         rmtmpfiles.xml  \
  80         vtdaemon.xml
  81 
  82 SYSTEMMANIFESTS = $(SYSTEMSVCS:%=$(ROOTSVCSYSTEM)/%)
  83 
  84 SYSTEMSVCSVCS= \
  85         restarter.xml \
  86         global.xml
  87 
  88 SYSTEMSVCMANIFESTS= $(SYSTEMSVCSVCS:%=$(ROOTSVCSYSTEM)/svc/%)
  89 
  90 MISCFILES= \
  91         README.share
  92 
  93 SYSTEMMISCFILES = $(MISCFILES:%.share=$(ROOT)/lib/svc/share/%)
  94 
  95 #
  96 # MANIFEST is used solely in the construction of the check target.
  97 #
  98 MANIFEST= $(FSSVCS) $(NETSVCS) $(MAINMILESTONES) $(SYSTEMSVCS) \
  99         $(SYSDEVSVCS) $(SYSTEMSVCSVCS)
 100 
 101 SVCMETHOD=\
 102         boot-archive \
 103         console-login \
 104         devices-audio \
 105         devices-local \
 106         fs-local \
 107         fs-minimal \
 108         fs-root \
 109         fs-usr \
 110         identity-domain \
 111         identity-node \
 112         manifest-import \
 113         net-loc \
 114         net-loopback \
 115         net-init \
 116         net-install \
 117         net-iptun \
 118         net-ipqos \
 119         net-netmask \
 120         net-nwam \
 121         net-physical \
 122         net-routing-setup \
 123         net-svc \
 124         rmtmpfiles \
 125         vtdaemon
 126 
 127 $(ROOTSVCMETHOD) := FILEMODE = 0555
 128 
 129 all: $(BUILTXML)
 130 
 131 install: $(FSMANIFESTS) $(MAINMANIFESTS) $(NETMANIFESTS) $(SYSTEMMANIFESTS) \
 132         $(ROOTSVCMETHOD) $(SYSDEVMANIFESTS) $(SYSTEMSVCMANIFESTS) \
 133         $(SYSTEMMISCFILES)
 134 
 135 check:  $(CHKMANIFEST)
 136 
 137 console-login.xml: make-console-login-xml
 138         $(SH) ./make-console-login-xml
 139 
 140 clobber: clean
 141         -$(RM) $(BUILTXML)
 142 
 143 $(ROOTSVCMILESTONE)/%: %
 144         $(INS.file)
 145 
 146 $(ROOTSVCNETWORK)/%: %
 147         $(INS.file)
 148 
 149 $(ROOTSVCSYSTEM)/%: %
 150         $(INS.file)
 151 
 152 $(ROOTSVCSYSTEMDEVICE)/%: %
 153         $(INS.file)
 154 
 155 $(ROOTSVCSYSTEMFILESYSTEM)/%: %
 156         $(INS.file)
 157 
 158 $(ROOTSVCSYSTEM)/svc/%: %
 159         $(INS.file)
 160 
 161 $(ROOT)/lib/svc/share/%: %.share
 162         $(INS.rename)
 163 
 164 clean lint _msg: