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 2010 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26# include global definitions 27include ../../../Makefile.master 28 29HDRS= \ 30avintr.h \ 31bootconf.h \ 32dkmpio.h \ 33fdreg.h fdvar.h \ 34obpdefs.h \ 35promif.h promimpl.h \ 36ser_async.h ser_zscc.h \ 37socalio.h socalreg.h \ 38socal_cq_defs.h socalmap.h socalvar.h \ 39ttymux.h ttymuxuser.h \ 40zsdev.h 41 42SCSIADHDRS= \ 43fascmd.h fasdma.h \ 44fasreg.h fasvar.h ifpio.h sfvar.h 45 46CLOSED_SCSIAD = $(CLOSED)/uts/sun/sys/scsi/adapters 47 48CLOSED_SCSIADHDRS= \ 49ifpcmd.h ifpmail.h ifpreg.h ifpvar.h \ 50ispcmd.h ispmail.h ispreg.h ispvar.h 51 52SCSITARGHDRS= \ 53 54ROOTDIR= $(ROOT)/usr/include/sys 55ROOTDIRS= $(ROOTDIR) \ 56 $(ROOTDIR)/audio \ 57 $(ROOTDIR)/scsi/adapters \ 58 $(ROOTDIR)/scsi/targets 59 60ROOTHDRS= $(HDRS:%=$(ROOTDIR)/%) 61$(CLOSED_BUILD)ROOTHDRS += $(CLOSED_HDRS:%=$(ROOTDIR)/%) 62ROOTFCHDRS= $(FCHDRS:%=$(ROOTDIR)/fc4/%) 63ROOTSCSIADHDRS= $(SCSIADHDRS:%=$(ROOTDIR)/scsi/adapters/%) 64$(CLOSED_BUILD)ROOTSCSIADHDRS += \ 65 $(CLOSED_SCSIADHDRS:%=$(ROOTDIR)/scsi/adapters/%) 66ROOTSCSITARGHDRS= $(SCSITARGHDRS:%=$(ROOTDIR)/scsi/targets/%) 67 68 69# install rules 70$(ROOTDIR)/%: % 71 $(INS.file) 72 73$(ROOTDIR)/%: $(CLOSED)/uts/sun/sys/% 74 $(INS.file) 75 76$(ROOTDIR)/audio/%: audio/% 77 $(INS.file) 78 79$(ROOTDIR)/scsi/adapters/%: scsi/adapters/% 80 $(INS.file) 81 82$(ROOTDIR)/scsi/adapters/%: $(CLOSED_SCSIAD)/% 83 $(INS.file) 84 85$(ROOTDIR)/scsi/targets/%: scsi/targets/% 86 $(INS.file) 87 88# check files really don't exist 89 90audio/%.check: audio/%.h 91 $(DOT_H_CHECK) 92 93scsi/adapters/%.check: scsi/adapters/%.h 94 $(DOT_H_CHECK) 95 96scsi/targets/%.check: scsi/targets/%.h 97 $(DOT_H_CHECK) 98 99CHECKHDRS= \ 100 $(HDRS:%.h=%.check) \ 101 $(FCHDRS:%.h=fc4/%.check) \ 102 $(SCSIADHDRS:%.h=scsi/adapters/%.check) \ 103 $(SCSITARGHDRS:%.h=scsi/targets/%.check) 104 105$(CLOSED_BUILD)CHECKHDRS += \ 106 $(CLOSED_HDRS:%.h=$(CLOSED)/uts/sun/sys/%.check) \ 107 $(CLOSED_SCSIADHDRS:%.h=$(CLOSED_SCSIAD)/%.check) 108 109# headers which won't quite meet the standards... 110# 111# devops.h has a macro where the formal parameters to the macro are greater 112# than 80 characters. cpp (or the equivalent built into acomp) does not allow 113# continuation line breaks in the formal parameter list. This could be fixed 114# by giving shorter names to the formal parameters, but the right fix is to 115# fix cpp. (Also, /* CSTYLED */ doesn't seem to fix this. 116# 117devops.check := CSTYLE_TAIL = | grep -v "line > 80 characters" | true 118 119.KEEP_STATE: 120 121.PARALLEL: $(CHECKHDRS) $(ROOTHDRS) $(ROOTAUDHDRS) $(ROOTAUDIMPLHDRS) \ 122 $(ROOTSCSIADHDRS) $(ROOTSCSITARGHDRS) $(ROOTXHDRS) \ 123 $(ROOTFCHDRS) 124 125install_h: $(ROOTDIRS) .WAIT $(ROOTHDRS) \ 126 $(ROOTAUDHDRS) $(ROOTAUDIMPLHDRS) \ 127 $(ROOTSCSIADHDRS) $(ROOTSCSITARGHDRS) $(ROOTFCHDRS) 128 129$(ROOTDIRS): 130 $(INS.dir) 131 132check: $(CHECKHDRS) 133