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.
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.
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]
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 # Copyright (c) 2013, Joyent, Inc. All rights reserved.
30 .SUFFIXES: .xml .xmlgen .xmlgenksh $(SUFFIXES)
34 include ../../../Makefile.lib
35 include ../../../../Makefile.lib
37 DTDSRC = $(DTDFILE:%=../common/%)
38 DTDTARG = $(DTDFILE:%=%)
39 ROOTDTDTARG = $(DTDTARG:%=$(ROOT)/usr/share/lib/xml/dtd/%)
41 common_ROOTTOPOROOT = $(ROOT)/usr/lib/fm/topo/$(MODCLASS)
42 arch_ROOTTOPOROOT = $(ROOT)/usr/platform/$(ARCH)/lib/fm/topo/$(MODCLASS)
43 platform_ROOTTOPOROOT = \
44 $(PLATFORMS:%=$(ROOT)/usr/platform/%/lib/fm/topo/$(MODCLASS))
45 ROOTTOPOROOT = $($(CLASS)_ROOTTOPOROOT)
46 ROOTTOPOMAPS = $(TOPOFILE:%=$(ROOTTOPOROOT)/%)
48 install:= FILEMODE = 0444
50 # The .xmlgen perl file automatically generates a new xml file. This is done
51 # to avoid having to deal with things like 48 platform specific internal
52 # storage bays by hand.
55 $(CAT) ../common/xmlgen-header.xml > $@
60 $(CAT) ../common/xmlgen-header-new.xml > $@
63 %.xml: ../common/%.xml
67 include ../../Makefile.rootdirs
84 @xmllint --dropdtd $< | \
85 xmllint --noout --dtdvalid $(DTDSRC) -
87 $($(CLASS)_ROOTTOPOROOT)/%: %
90 $(ROOTDTDTARG): $$(@D)
91 $(INS) -m 0444 $(DTDSRC) $@
93 install: all $(ROOTDTDTARG) $(ROOTTOPOROOT) $(ROOTTOPOMAPS)