Makefile revision 7c478bd95313f5f23a4c958a745db2134aa03244
70N/A#
70N/A# CDDL HEADER START
70N/A#
70N/A# The contents of this file are subject to the terms of the
371N/A# Common Development and Distribution License, Version 1.0 only
70N/A# (the "License"). You may not use this file except in compliance
70N/A# with the License.
70N/A#
70N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
70N/A# or http://www.opensolaris.org/os/licensing.
70N/A# See the License for the specific language governing permissions
70N/A# and limitations under the License.
70N/A#
70N/A# When distributing Covered Code, include this CDDL HEADER in each
70N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
70N/A# If applicable, add the following below this CDDL HEADER, with the
70N/A# fields enclosed by brackets "[]" replaced with your own identifying
70N/A# information: Portions Copyright [yyyy] [name of copyright owner]
70N/A#
70N/A# CDDL HEADER END
70N/A#
70N/A#
70N/A# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
70N/A# Use is subject to license terms.
70N/A#
70N/A#ident "%Z%%M% %I% %E% SMI"
70N/A
70N/Ainclude ../../Makefile.cmd
70N/A
70N/AETCSVC = $(ROOTETC)/svc
70N/ALIBSVCSEED = $(ROOT)/lib/svc/seed
70N/A
371N/A#
70N/A# Because seed repository construction requires a functioning repository, a
70N/A# working svccfg(1) binary, and XML support, the following libraries must exist
70N/A# on the build system or in the proto area: libscf, libuutil, and libxml2.
70N/A#
70N/A
70N/A#
371N/A# GLOBAL_ZONE_DESCRIPTIONS and NONGLOBAL_ZONE_DESCRIPTIONS contain the
70N/A# services used to define a 'seed repository' for a standalone Solaris
70N/A# instance or for a zone, respectively. A service needed for either one of
70N/A# these seeds must be added to the appropriate macro. The definition of a seed
70N/A# repository is a self-consistent set of services that can boot.
70N/A#
70N/AGLOBAL_ZONE_DESCRIPTIONS = \
70N/A ../milestone/boot-archive.xml \
70N/A ../milestone/console-login.xml \
70N/A ../milestone/datalink.xml \
70N/A ../milestone/datalink-init.xml \
70N/A ../milestone/devices-local.xml \
70N/A ../milestone/identity.xml \
70N/A ../milestone/local-fs.xml \
70N/A ../milestone/manifest-import.xml \
70N/A ../milestone/minimal-fs.xml \
70N/A ../milestone/multi-user-server.xml \
70N/A ../milestone/multi-user.xml \
70N/A ../milestone/name-services.xml \
70N/A ../milestone/aggregation.xml \
70N/A ../milestone/network-initial.xml \
../milestone/network-loopback.xml \
../milestone/network-physical.xml \
../milestone/restarter.xml \
../milestone/root-fs.xml \
../milestone/single-user.xml \
../milestone/usr-fs.xml \
../../rpcbind/bind.xml \
../../cmd-inet/usr.lib/inetd/inetd-upgrade.xml \
../../utmpd/utmp.xml \
../../lvm/util/metainit.xml \
../../ipf/svc/pfil.xml
NONGLOBAL_ZONE_DESCRIPTIONS = \
../milestone/boot-archive.xml \
../milestone/console-login.xml \
../milestone/datalink.xml \
../milestone/devices-local.xml \
../milestone/identity.xml \
../milestone/local-fs.xml \
../milestone/manifest-import.xml \
../milestone/minimal-fs.xml \
../milestone/multi-user-server.xml \
../milestone/multi-user.xml \
../milestone/name-services.xml \
../milestone/aggregation.xml \
../milestone/network-initial.xml \
../milestone/network-loopback.xml \
../milestone/network-physical.xml \
../milestone/restarter.xml \
../milestone/root-fs.xml \
../milestone/single-user.xml \
../milestone/usr-fs.xml \
../../rpcbind/bind.xml \
../../utmpd/utmp.xml
OWNER = root
GROUP = sys
FILEMODE = 0600
SEEDFILEMODE = 0444 # seeds are not intended for editing, but may
# be copied
CONFIGD = ../configd/svc.configd-native
SVCCFG = ../svccfg/svccfg-native
.KEEP_STATE:
all: global.db nonglobal.db
$(CONFIGD): FRC
@cd ../configd; pwd; $(MAKE) $(MFLAGS) native
$(SVCCFG): FRC
@cd ../svccfg; pwd; $(MAKE) $(MFLAGS) native
../milestone/console-login.xml:
@cd ../milestone; pwd; $(MAKE) $(MFLAGS) console-login.xml
global.db: $(GLOBAL_ZONE_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
$(RM) -f global.db global.db-journal
for m in $(GLOBAL_ZONE_DESCRIPTIONS); do \
echo $$m; \
SVCCFG_DTD=../dtd/service_bundle.dtd.1 \
SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/global.db \
SVCCFG_CONFIGD_PATH=$(CONFIGD) \
$(SVCCFG) import $$m; \
done
nonglobal.db: $(NONGLOBAL_ZONE_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
$(RM) -f nonglobal.db global.db-journal
for m in $(NONGLOBAL_ZONE_DESCRIPTIONS); do \
echo $$m; \
SVCCFG_DTD=../dtd/service_bundle.dtd.1 \
SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/nonglobal.db \
SVCCFG_CONFIGD_PATH=$(CONFIGD) \
$(SVCCFG) import $$m; \
done
install: install_global install_nonglobal
install_global: global.db
$(RM) $(LIBSVCSEED)/global.db
$(INS) -f $(LIBSVCSEED) -m $(SEEDFILEMODE) -s global.db
install_nonglobal: nonglobal.db
$(RM) $(LIBSVCSEED)/nonglobal.db
$(INS) -f $(LIBSVCSEED) -m $(SEEDFILEMODE) -s nonglobal.db
clean lint:
clobber:
$(RM) global.db nonglobal.db
FRC: