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 2008 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26 27.KEEP_STATE: 28.SUFFIXES: 29.SUFFIXES: .xml .xmlgen $(SUFFIXES) 30 31MODCLASS = maps 32 33include ../../../Makefile.lib 34include ../../../../Makefile.lib 35 36DTDSRC = $(DTDFILE:%=../common/%) 37DTDTARG = $(DTDFILE:%=%) 38ROOTDTDTARG = $(DTDTARG:%=$(ROOT)/usr/share/lib/xml/dtd/%) 39 40common_ROOTTOPOROOT = $(ROOT)/usr/lib/fm/topo/$(MODCLASS) 41arch_ROOTTOPOROOT = $(ROOT)/usr/platform/$(ARCH)/lib/fm/topo/$(MODCLASS) 42platform_ROOTTOPOROOT = \ 43 $(PLATFORMS:%=$(ROOT)/usr/platform/%/lib/fm/topo/$(MODCLASS)) 44ROOTTOPOROOT = $($(CLASS)_ROOTTOPOROOT) 45ROOTTOPOMAPS = $(TOPOFILE:%=$(ROOTTOPOROOT)/%) 46 47install:= FILEMODE = 0444 48 49# The .xmlgen perl file automatically generates a new xml file. This is done 50# to avoid having to deal with things like 48 platform specific internal 51# storage bays by hand. 52.xmlgen.xml: 53 $(RM) $@ 54 $(CAT) ../common/xmlgen-header.xml > $@ 55 $(PERL) $< >> $@ 56 57%.xml: ../common/%.xml 58 $(RM) $@ 59 $(CAT) $< > $@ 60 61include ../../Makefile.rootdirs 62 63all: $(TOPOFILE) 64 65clean: 66 $(RM) $(ROOTTOPOMAPS) 67 $(RM) $(TEMPTOPOFILE) 68 69clobber: clean 70 $(RM) $(CLOBBERFILES) 71 72check: $(CHECKHDRS) 73 74install_h _msg: 75 76lint: $(TOPOFILE:%=%.chk) 77 78%.xml.chk: %.xml 79 @echo xmllint $< 80 @xmllint --dropdtd $< | \ 81 xmllint --noout --dtdvalid $(DTDSRC) - 82 83$($(CLASS)_ROOTTOPOROOT)/%: % 84 $(INS.file) 85 86$(ROOTDTDTARG): $$(@D) 87 $(RM) $@; $(INS) -s -m 0444 -f $(@D) $(DTDSRC) 88 89install: all $(ROOTDTDTARG) $(ROOTTOPOROOT) $(ROOTTOPOMAPS) 90