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# 26 27COMMONBASE = ../../common 28 29 30PROG = fcinfo 31ROOT_PROG_LINK = $(ROOTUSRSBIN)/fcadm 32MANIFEST = npiv_config.xml 33SVCMETHOD = npivconfig 34PRODUCT = $(PROG) 35 36$(ROOT_PROG_LINK) := FILEMODE = 0555 37 38LOCAL_OBJS = fcinfo.o fcinfo-list.o fcadm-list.o printAttrs.o fcoeadm.o 39COMMON_OBJS = cmdparse.o 40LOCAL_SRCS = $(LOCAL_OBJS:%.o=%.c) 41COMMON_SRCS = $(COMMON_OBJS:%.o=$(COMMONBASE)/cmdparse/%.c) 42OBJS = $(LOCAL_OBJS) $(COMMON_OBJS) 43SRCS = $(LOCAL_SRCS) $(COMMON_SRCS) 44 45include ../Makefile.cmd 46 47POFILE = fcinfo_cmd.po 48POFILES = fcinfo.po fcinfo-list.po fcadm-list.po printAttrs.po fcoeadm.po 49 50ROOTMANIFESTDIR= $(ROOTSVCNETWORK) 51 52LDLIBS += -lHBAAPI 53LDLIBS += -lfcoe 54LDLIBS += -lscf 55 56INCS += -I. 57INCS += -I$(SRC)/lib/hbaapi/common 58INCS += -I$(COMMONBASE)/cmdparse 59INCS += -I$(SRC)/lib/libfcoe/common 60 61CPPFLAGS += -D_LARGEFILE64_SOURCE=1 -D_REENTRANT $(INCS) 62$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 63 64LINTFLAGS += -erroff=E_SUSPICIOUS_COMPARISON 65LINTFLAGS += -erroff=E_SEC_SPRINTF_UNBOUNDED_COPY 66LINTFLAGS += -erroff=E_FUNC_RET_ALWAYS_IGNOR2 67LINTFLAGS += -erroff=E_BAD_PTR_CAST_ALIGN 68LINTFLAGS += -erroff=E_NAME_USED_NOT_DEF2 69LINTFLAGS += -erroff=E_FUNC_RET_MAYBE_IGNORED2 70LINTFLAGS += -erroff=E_STATIC_UNUSED 71 72.KEEP_STATE: 73 74all: $(PROG) 75 76$(PROG): $(OBJS) 77 $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 78 $(POST_PROCESS) 79 80$(ROOT_PROG_LINK): $(ROOTUSRSBIN)/$(PROG) 81 -$(RM) $@ 82 $(LN) $(ROOTUSRSBIN)/$(PROG) $@ 83 84install: all $(ROOTMANIFEST) $(ROOTSVCMETHOD) $(ROOTUSRSBINPROG) $(ROOT_PROG_LINK) 85 86cmdparse.o: $(COMMONBASE)/cmdparse/cmdparse.c 87 $(COMPILE.c) -o $@ $(COMMONBASE)/cmdparse/cmdparse.c 88 $(POST_PROCESS_O) 89$(POFILE): $(POFILES) 90 $(RM) $@ 91 $(CAT) $(POFILES) > $@ 92clean: 93 $(RM) $(OBJS) 94 95lint: lint_SRCS 96 97check: $(CHKMANIFEST) 98 99# Links from /usr/sbin to /sbin 100$(ROOTUSRSBINLINKS): 101 -$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@ 102 103include ../Makefile.targ 104