2N/A#
2N/A# CDDL HEADER START
2N/A#
2N/A# The contents of this file are subject to the terms of the
2N/A# Common Development and Distribution License (the "License").
2N/A# You may not use this file except in compliance with the License.
2N/A#
2N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2N/A# or http://www.opensolaris.org/os/licensing.
2N/A# See the License for the specific language governing permissions
2N/A# and limitations under the License.
2N/A#
2N/A# When distributing Covered Code, include this CDDL HEADER in each
2N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2N/A# If applicable, add the following below this CDDL HEADER, with the
2N/A# fields enclosed by brackets "[]" replaced with your own identifying
2N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2N/A#
2N/A# CDDL HEADER END
2N/A#
2N/A#
2N/A# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
2N/A#
2N/A
2N/Ainclude ../Makefile.lib
2N/A
2N/ASUBDIRS = help $(MACH)
2N/A$(BUILD64)SUBDIRS += $(MACH64)
2N/A
2N/AMSGSUBDIRS= help
2N/A
2N/Aall:= TARGET= all
2N/Aclean:= TARGET= clean
2N/Aclobber:= TARGET= clobber
2N/Ainstall:= TARGET= install
2N/Alint:= TARGET= lint
2N/A_msg:= TARGET= _msg
2N/Astub:= TARGET= stub
2N/Astubinstall:= TARGET= stubinstall
2N/A
2N/A.KEEP_STATE:
2N/A
2N/AROOTETC = $(ROOT)/etc
2N/AROOTETCSECURITY = $(ROOTETC)/security
2N/A
2N/AEFILES = user_attr
2N/AEFILESRC = $(EFILES:%=%)
2N/AETCFILES = $(EFILES:%=$(ROOTETC)/%)
2N/AETCDFILES = $(EFILES:%=$(ROOTETC)/%.d/core-os)
2N/AETCDFILES += $(EFILES:%=$(ROOTETC)/%.d/local-entries)
2N/A
2N/AESDFILES = auth_attr exec_attr prof_attr
2N/AESFILES = $(ESDFILES) policy.conf
2N/AESSRC = $(ESFILES:%=%)
2N/AETCSECURITYFILES = $(ESFILES:%=$(ROOTETCSECURITY)/%)
2N/AETCSECURITYDFILES = $(ESDFILES:%=$(ROOTETCSECURITY)/%.d/core-os)
2N/AETCSECURITYDFILES += $(ESDFILES:%=$(ROOTETCSECURITY)/%.d/local-entries)
2N/A
2N/A
2N/AMFSTFILES = rbac.xml
2N/AMANIFESTDIR = $(ROOT)/lib/svc/manifest/system
2N/AMANIFEST = $(MFSTFILES:%=$(MANIFESTDIR)/%)
2N/A$(MANIFEST) := FILEMODE = 0444
2N/A
2N/AMETHODFILES = svc-rbac
2N/AMETHODDIR = $(ROOT)/lib/svc/method
2N/AMETHOD = $(METHODFILES:%=$(METHODDIR)/%)
2N/A$(METHOD) := FILEMODE = 0555
2N/A
2N/ASCRIPTS = i.rbac r.rbac
2N/ACLASS_SCR_SRC_DIR = common
2N/AINSTALL_DIR = $(ROOT)/usr/sadm/install
2N/A
2N/ACLASS_SCR_DIR = $(INSTALL_DIR)/scripts
2N/A
2N/ACLASS_SCR_FILES = $(SCRIPTS:%=$(CLASS_SCR_DIR)/%)
2N/A$(CLASS_SCR_FILES) := FILEMODE = 0555
2N/A
2N/Aall clean clobber delete install lint package stub stubinstall: $(SUBDIRS)
2N/A_msg: $(MSGSUBDIRS)
2N/A
2N/Ainstall: check_prof install_data
2N/A
2N/Ainstall_data: $(ETCSECURITYFILES) $(ETCSECURITYDFILES) $(ETCFILES) \
2N/A $(ETCDFILES) $(CLASS_SCR_FILES) $(MANIFESTDIR) $(MANIFEST) \
2N/A $(METHODDIR) $(METHOD)
2N/A
2N/AATTR_FILES = auth_attr exec_attr prof_attr user_attr
2N/A${ATTR_FILES}: $$@.txt ${CLASS_SCR_SRC_DIR}/i.rbac
2N/A > $@
2N/A $(ECHO) $@.txt $@ | $(SHELL) ${CLASS_SCR_SRC_DIR}/i.rbac
2N/A
2N/A$(ETCSECURITYDFILES) $(ETCDFILES): $$(@D)
2N/A
2N/A$(ETCSECURITYFILES) $(ETCFILES): $(ETCSECURITY) $(ROOTETCSECURITY)
2N/A
2N/A$(ROOTETCSECURITY)/%.d/local-entries:= INSLINKTARGET = ../$<
2N/A
2N/A$(ROOTETC)/%.d/local-entries:= INSLINKTARGET = ../$<
2N/A
2N/A$(ETCSECURITY)/%: %
2N/A $(INS.file)
2N/A
2N/A$(ROOTETCSECURITY):
2N/A $(INS.dir)
2N/A
2N/A$(ROOTETCSECURITY)/%: %
2N/A $(INS.file)
2N/A
2N/A$(ROOTETCSECURITY)/%.d/core-os: %.txt
2N/A $(INS.rename)
2N/A
2N/A$(ROOTETCSECURITY)/%.d/local-entries: %
2N/A $(INS.symlink)
2N/A
2N/A$(ROOTETC)/%.d/local-entries: %
2N/A $(INS.symlink)
2N/A
2N/A$(ROOTETC)/% : %
2N/A $(INS.file)
2N/A
2N/A$(ROOTETC)/%.d/core-os: %.txt
2N/A $(INS.rename)
2N/A
2N/A$(MANIFESTDIR):
2N/A $(INS.dir)
2N/A
2N/A$(MANIFESTDIR)/% : %
2N/A $(INS.file)
2N/A
2N/A$(METHODDIR):
2N/A $(INS.dir)
2N/A
2N/A$(METHODDIR)/% : %
2N/A $(INS.file)
2N/A
2N/A$(CLASS_SCR_FILES): $(INSTALL_DIR) $(CLASS_SCR_DIR)
2N/A
2N/A$(INSTALL_DIR):
2N/A $(INS.dir)
2N/A
2N/A$(CLASS_SCR_DIR):
2N/A $(INS.dir)
2N/A
2N/A$(CLASS_SCR_DIR)/%: $(CLASS_SCR_SRC_DIR)/%
2N/A $(INS.file)
2N/A
2N/Aclobber clean:
2N/A $(RM) $(ATTR_FILES)
2N/A
2N/A$(SUBDIRS): FRC
2N/A @cd $@; pwd; $(MAKE) $(TARGET)
2N/A
2N/ABSU="Basic Solaris User"
2N/A
2N/Acheck_prof: prof_attr.txt
2N/A @if $(PERL) -pe 's/\\\n//' prof_attr.txt | $(EGREP) -v $(BSU) \
2N/A | $(EGREP) -s '[=:,]All[,;]'; then\
2N/A echo 'The profile "All" should be listed only in $(BSU);'; \
2N/A echo 'it should not be listed in any other profile.'; \
2N/A exit 1;\
2N/A fi
2N/A
2N/AFRC: