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 27 LIBRARY= sbd.a 28 VERS= .1 29 30 OBJECTS= ap.o ap_msg.o ap_rcm.o ap_sbd.o ap_seq.o cfga.o ap_err.o 31 32 # include library definitions 33 include ../../../Makefile.lib 34 35 USR_PLAT_DIR = $(ROOT)/usr/platform 36 USR_PSM_DIR = $(USR_PLAT_DIR)/$(PLATFORM) 37 USR_PSM_LIB_DIR = $(USR_PSM_DIR)/lib 38 USR_PSM_LIB_CFG_DIR = $(USR_PSM_LIB_DIR)/cfgadm 39 USR_PSM_LIB_CFG_DIR_64 = $(USR_PSM_LIB_CFG_DIR)/$(MACH64) 40 41 ROOTLIBDIR= $(USR_PSM_LIB_CFG_DIR) 42 ROOTLIBDIR64= $(USR_PSM_LIB_CFG_DIR_64) 43 44 SRCDIR = ../common 45 46 LIBS = $(DYNLIB) 47 48 CFLAGS += $(CCVERBOSE) 49 LDLIBS += -lc -lkstat -lnvpair 50 51 CERRWARN += -_gcc=-Wno-parentheses 52 CERRWARN += -_gcc=-Wno-char-subscripts 53 CERRWARN += -_gcc=-Wno-uninitialized 54 55 # not linted 56 SMATCH=off 57 58 CPPFLAGS += -I$(ROOT)/usr/platform/$(PLATFORM)/include -DSBD_DEBUG 59 # 60 # Generate the error messages form sbd_ioctl.h 61 # 62 GENERRDIR= $(SRC)/lib/cfgadm_plugins/sbd 63 GENERR= $(GENERRDIR)/sbdgenerr 64 ERRSRC= $(ROOT)/usr/platform/$(PLATFORM)/include/sys/sbd_ioctl.h 65 66 .KEEP_STATE: 67 68 all: $(LIBS) 69 70 lint: 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 91 CLOBBERFILES += ../common/ap_err.c sbdgenerr $(GENERR) 92 93 # include library targets 94 include ../../../Makefile.targ 95 96 pics/%.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 103 sbdgenerr: $(GENERRDIR)/sbdgenerr.pl 104 $(RM) $(GENERRDIR)/sbdgenerr 105 cat $(GENERRDIR)/sbdgenerr.pl > $(GENERRDIR)/sbdgenerr 106 $(CHMOD) +x $(GENERRDIR)/sbdgenerr