Makefile revision 6ba597c56d749c61b4f783157f63196d7b2445f0
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews# CDDL HEADER START
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews# The contents of this file are subject to the terms of the
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# Common Development and Distribution License (the "License").
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews# You may not use this file except in compliance with the License.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington# or http://www.opensolaris.org/os/licensing.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# See the License for the specific language governing permissions
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington# and limitations under the License.
0756445a735e2df39bf798d8de42ae5dd030aa3bMark Andrews# When distributing Covered Code, include this CDDL HEADER in each
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# If applicable, add the following below this CDDL HEADER, with the
f8f37672a57524560fbdde52484e6ae3de1c3354Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
a02a0a8a7eb461619931f4a0e896afa247b52c54Mark Andrews# CDDL HEADER END
0756445a735e2df39bf798d8de42ae5dd030aa3bMark Andrews# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
a02a0a8a7eb461619931f4a0e896afa247b52c54Mark Andrews# Use is subject to license terms.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# Because seed repository construction requires a functioning repository, a
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# working svccfg(1) binary, and XML support, the following libraries must exist
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# on the build system or in the proto area: libscf, libuutil, and libxml2.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# We build and deliver 3 seed repositories:
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# global.db -- for a standalone Solaris (global zone)
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# nonglobal.db -- for a Solaris Zone
a0624cf8d5711cca4e3907859fbc8062a7e460faMark Andrews# miniroot.db -- for the install miniroot
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# COMMON_DESCRIPTIONS contains manifests needed by all 3 repositories.
a0624cf8d5711cca4e3907859fbc8062a7e460faMark Andrews# GLOBAL_ZONE_DESCRIPTIONS/NONGLOBAL_ZONE_DESCRIPTIONS/MINIROOT_DESCRIPTIONS
a0624cf8d5711cca4e3907859fbc8062a7e460faMark Andrews# contain additional manifests needed.
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews# Manifests needed by all seed repositories. If you change this, you
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# must test Solaris standalone, Solaris zone, and Install miniroot.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# Additional manifests for standalone Solaris
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson ../../cmd-inet/usr.lib/inetd/inetd-upgrade.xml \
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# Additional manifests for a Solaris zone
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews# Additional manifests for the install miniroot.
068a66979695c77359e7a9181bb3f831c965b21cMark AndrewsSEEDFILEMODE = 0444 # seeds are not intended for editing, but may
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews @cd ../milestone; pwd; $(MAKE) $(MFLAGS) console-login.xml
068a66979695c77359e7a9181bb3f831c965b21cMark Andrewscommon.db: $(COMMON_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/common.db \
068a66979695c77359e7a9181bb3f831c965b21cMark Andrewsglobal.db: common.db $(GLOBAL_ZONE_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/global.db \
068a66979695c77359e7a9181bb3f831c965b21cMark Andrewsnonglobal.db: common.db $(NONGLOBAL_ZONE_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/nonglobal.db \
068a66979695c77359e7a9181bb3f831c965b21cMark Andrewsminiroot.db: common.db $(MINIROOT_DESCRIPTIONS) $(CONFIGD) $(SVCCFG)
09344332cf7840e7e219215128fd52ea4c3d6942Mark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/miniroot.db \
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson # Make sure the miniroot's syslogd and rpcbind do not respond
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews # to packets from outside the machine. Since we cannot set property
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington # values by applying a profile yet, we need to set them explicitly
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews # with svccfg commands.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/miniroot.db \
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews SVCCFG_REPOSITORY=$(SRC)/cmd/svc/seed/miniroot.db \
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews $(SVCCFG) -s svc:/network/rpc/bind setprop config/local_only = true
068a66979695c77359e7a9181bb3f831c965b21cMark Andrewsinstall: install_global install_nonglobal install_miniroot
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews $(INS) -f $(LIBSVCSEED) -m $(SEEDFILEMODE) -s global.db
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson $(INS) -f $(LIBSVCSEED) -m $(SEEDFILEMODE) -s nonglobal.db
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafssoninstall_miniroot: $(INSTALLSEED) miniroot.db
75216e007570b8ea36b3ac9cca096bf70c0ca6f6Mark Andrews $(INS) -f $(INSTALLSEED) -m $(SEEDFILEMODE) -s miniroot.db