# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # Copyright 2020 Joyent, Inc. # .KEEP_STATE: .SUFFIXES: .SUFFIXES: .xml .xmlgen .xmlgenksh $(SUFFIXES) MODCLASS = maps include ../../../Makefile.lib include ../../../../Makefile.lib DTDSRC = $(DTDFILE:%=../common/%) DTDTARG = $(DTDFILE:%=%) ROOTDTDTARG = $(DTDTARG:%=$(ROOT)/usr/share/lib/xml/dtd/%) DIGRAPH_DTD = digraph-topology.dtd.1 DIGRAPH_DTD_SRC = ../common/$(DIGRAPH_DTD) ROOT_DTD_DIR=$(ROOT)/usr/share/lib/xml/dtd ROOT_DIGRAPH_DTD=$(ROOT_DTD_DIR)/$(DIGRAPH_DTD) common_ROOTTOPOROOT = $(ROOT)/usr/lib/fm/topo/$(MODCLASS) arch_ROOTTOPOROOT = $(ROOT)/usr/platform/$(ARCH)/lib/fm/topo/$(MODCLASS) platform_ROOTTOPOROOT = \ $(PLATFORMS:%=$(ROOT)/usr/platform/%/lib/fm/topo/$(MODCLASS)) ROOTTOPOROOT = $($(CLASS)_ROOTTOPOROOT) ROOTTOPOMAPS = $(TOPOFILE:%=$(ROOTTOPOROOT)/%) install:= FILEMODE = 0444 # The .xmlgen perl file automatically generates a new xml file. This is done # to avoid having to deal with things like 48 platform specific internal # storage bays by hand. .xmlgen.xml: $(RM) $@ $(CAT) ../common/xmlgen-header.xml > $@ $(PERL) $< >> $@ .xmlgenksh.xml: $(RM) $@ $(CAT) ../common/xmlgen-header-new.xml > $@ $(KSH93) $< >> $@ %.xml: ../common/%.xml $(RM) $@ $(CAT) $< > $@ include ../../Makefile.rootdirs all: $(TOPOFILE) clean: $(RM) $(ROOTTOPOMAPS) $(RM) $(TEMPTOPOFILE) clobber: clean $(RM) $(CLOBBERFILES) check: $(CHECKHDRS) $(TOPOFILE:%=%.chk) install_h _msg: %.xml.chk: %.xml @echo xmllint $< @xmllint --dropdtd $< | \ xmllint --noout --dtdvalid $(DTDSRC) - %.usbtopo.chk: %.usbtopo $($(CLASS)_ROOTTOPOROOT)/%: % $(INS.file) $(ROOTDTDTARG): $$(@D) $(RM) $@; $(INS) -s -m 0444 -f $(@D) $(DTDSRC) $(ROOT_DIGRAPH_DTD): $(DIGRAPH_DTD_SRC) $(RM) $@; $(INS) -s -m 0444 -f $(ROOT_DTD_DIR) $(DIGRAPH_DTD_SRC) install: all $(ROOTDTDTARG) $(ROOT_DIGRAPH_DTD) $(ROOTTOPOROOT) $(ROOTTOPOMAPS)