1# CDDL HEADER START
2#
3# The contents of this file are subject to the terms of the
4# Common Development and Distribution License (the "License").
5# You may not use this file except in compliance with the License.
6#
7# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8# or http://www.opensolaris.org/os/licensing.
9# See the License for the specific language governing permissions
10# and limitations under the License.
11#
12# When distributing Covered Code, include this CDDL HEADER in each
13# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14# If applicable, add the following below this CDDL HEADER, with the
15# fields enclosed by brackets "[]" replaced with your own identifying
16# information: Portions Copyright [yyyy] [name of copyright owner]
17#
18# CDDL HEADER END
19#
20#
21# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
22# Use is subject to license terms.
23#
24#
25
26# must be before include of Makefile.cmd
27DYNPROG = scmadm \
28	sd_stats \
29	sd_diag
30
31include ../../Makefile.cmd
32include ../Makefile.com
33
34SUBDIRS=	etc
35
36PROG = $(DYNPROG)
37
38scmadm		:= POBJS = scmadm.o sdbc_ioctl.o
39sd_stats	:= POBJS = sd_stats.o sd_trace.o sdbc_ioctl.o rdc_ioctl.o
40sd_diag		:= POBJS = sd_diag.o
41sdbc_dynmem	:= POBJS = sdbc_dynmem.o
42
43OBJS=	scmadm.o\
44	sdbc_ioctl.o\
45	sd_diag.o\
46	sd_stats.o\
47	sd_trace.o\
48	sdbc_dynmem.o
49
50XTRA_OBJS= \
51	rdc_ioctl.o
52
53SRCS=	$(OBJS:%.o=%.c)
54
55POFILE =	scmadm.po
56
57scmadm		:= LDLIBS += -lnsctl -lunistat -ldscfg
58sd_stats	:= LDLIBS += -lunistat -lcurses
59sd_diag		:= LDLIBS += -lnsctl
60sdbc_dynmem	:= LDLIBS += -lkstat
61
62CFLAGS +=	-v -D_SCM_ -D_SD_8K_BLKSIZE -D_SYSCALL32
63CPPFLAGS +=	-DNSC_MULTI_TERABYTE
64LINTFLAGS +=	-Xa -n -s -x -m -u -Dlint -errhdr=%user
65LINTFLAGS +=	-D_SCM_ -D_SD_8K_BLKSIZE -D_SYSCALL32
66LINTFLAGS +=	-erroff=E_SEC_PRINTF_VAR_FMT
67LINTFLAGS +=	-erroff=E_SEC_SPRINTF_UNBOUNDED_COPY
68LINTFLAGS +=	-erroff=E_SEC_SCANF_UNBOUNDED_COPY
69LINTFLAGS +=	-erroff=E_SEC_FORBIDDEN_WARN_ASCFTIME
70LINTFLAGS +=	-DDEBUG
71ROOTLINK = $(ROOTUSRSBIN)/scmadm
72
73all	:=	TARGET= all
74install	:=	TARGET= install
75clean	:=	TARGET= clean
76clobber	:=	TARGET= clobber
77lint	:=	TARGET= lint
78
79.KEEP_STATE:
80
81.PARALLEL: $(OBJS) $(XTRA_OBJS)
82
83all:	$(SUBDIRS) $(PROG) $(POFILE)
84
85install: $(SUBDIRS) all $(ROOTPROG) $(ROOTLINK)
86
87lint:	$(SUBDIRS) lint_SRCS
88
89clean:	$(SUBDIRS)
90	$(RM) *.o
91
92rdc_ioctl.o: ../rdc/rdc_ioctl.c
93	$(COMPILE.c) ../rdc/rdc_ioctl.c
94
95$(PROG):	$$(POBJS)
96	$(LINK.c) $(POBJS) -o $@ $(LDLIBS)
97	$(POST_PROCESS)
98
99$(SUBDIRS):	FRC
100	@cd $@; pwd; $(MAKE) $(TARGET)
101
102$(ROOTLINK): $(ROOTUSRSBIN) $(ROOTBIN)/scmadm
103	-$(RM) $@; $(LN) $(ROOTBIN)/scmadm $@
104
105include ../../Makefile.targ
106
107FRC:
108