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# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# Copyright (c) 2018, Joyent, Inc. 26 27LIBRARY= sbd.a 28VERS= .1 29 30OBJECTS= ap.o ap_msg.o ap_rcm.o ap_sbd.o ap_seq.o cfga.o ap_err.o 31 32# include library definitions 33include ../../../Makefile.lib 34 35USR_PLAT_DIR = $(ROOT)/usr/platform 36USR_PSM_DIR = $(USR_PLAT_DIR)/$(PLATFORM) 37USR_PSM_LIB_DIR = $(USR_PSM_DIR)/lib 38USR_PSM_LIB_CFG_DIR = $(USR_PSM_LIB_DIR)/cfgadm 39USR_PSM_LIB_CFG_DIR_64 = $(USR_PSM_LIB_CFG_DIR)/$(MACH64) 40 41ROOTLIBDIR= $(USR_PSM_LIB_CFG_DIR) 42ROOTLIBDIR64= $(USR_PSM_LIB_CFG_DIR_64) 43 44SRCDIR = ../common 45 46LIBS = $(DYNLIB) 47 48CFLAGS += $(CCVERBOSE) 49LDLIBS += -lc -lkstat -lnvpair 50 51CERRWARN += -_gcc=-Wno-parentheses 52CERRWARN += -_gcc=-Wno-char-subscripts 53CERRWARN += -_gcc=-Wno-uninitialized 54 55# not linted 56SMATCH=off 57 58CPPFLAGS += -I$(ROOT)/usr/platform/$(PLATFORM)/include -DSBD_DEBUG 59# 60# Generate the error messages form sbd_ioctl.h 61# 62GENERRDIR= $(SRC)/lib/cfgadm_plugins/sbd 63GENERR= $(GENERRDIR)/sbdgenerr 64ERRSRC= $(ROOT)/usr/platform/$(PLATFORM)/include/sys/sbd_ioctl.h 65 66.KEEP_STATE: 67 68all: $(LIBS) 69 70lint: lintcheck 71 72# Create target directories 73$(USR_PSM_DIR): 74 -$(INS.dir) 75 76$(USR_PSM_LIB_DIR): $(USR_PSM_DIR) 77 -$(INS.dir) 78 79$(USR_PSM_LIB_CFG_DIR): $(USR_PSM_LIB_DIR) 80 -$(INS.dir) 81 82$(USR_PSM_LIB_CFG_DIR_64): $(USR_PSM_LIB_CFG_DIR) 83 -$(INS.dir) 84 85$(USR_PSM_LIB_CFG_DIR)/%: % $(USR_PSM_LIB_CFG_DIR) 86 -$(INS.file) 87 88$(USR_PSM_LIB_CFG_DIR_64)/%: % $(USR_PSM_LIB_CFG_DIR_64) 89 -$(INS.file) 90 91CLOBBERFILES += ../common/ap_err.c sbdgenerr $(GENERR) 92 93# include library targets 94include ../../../Makefile.targ 95 96pics/%.o: ../common/%.c 97 $(COMPILE.c) -o $@ $< 98 $(POST_PROCESS_O) 99 100../common/ap_err.c: sbdgenerr $(ERRSRC) 101 $(GENERRDIR)/sbdgenerr < $(ERRSRC) > ../common/ap_err.c 102 103sbdgenerr: $(GENERRDIR)/sbdgenerr.pl 104 $(RM) $(GENERRDIR)/sbdgenerr 105 cat $(GENERRDIR)/sbdgenerr.pl > $(GENERRDIR)/sbdgenerr 106 $(CHMOD) +x $(GENERRDIR)/sbdgenerr 107