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.
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.
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]
22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
24 # Copyright (c) 2013 Andrew Stormont. All rights reserved.
32 include ..
/Makefile.cmd
34 ROOTMANIFESTDIR
= $(ROOTSVCSYSTEM
)
36 CERRWARN
+= -Wno-parentheses
37 CERRWARN
+= -Wno-uninitialized
47 sadc
:= LDLIBS
+= -lkstat
49 # Executables produced
53 LIBSHELL
= $(SA1
) $(SA2
)
56 PROGS
= $(BINPROG
) $(SBINPROG
) $(LIBPROG
)
59 ALL
= $(PROGS
) $(SHELLS
)
62 SADC_OBJECTS
= $(SADC
).o
63 srcs
= $(TIMEX
) $(SAR
) $(SADC
)
65 SHSRCS
= $(SHELLS
:%=%.sh
)
67 # Set of target install directories
68 LIBSAD
= $(ROOT
)/usr
/lib
/sa
69 CROND
= $(ROOT
)/var
/spool
/cron
70 CRONTABSD
= $(CROND
)/crontabs
72 # Set of target install files
73 SYSCRONTAB
= $(CRONTABSD
)/sys
74 ROOTPROG
= $(BINPROG
:%=$(ROOTBIN
)/%)
75 ROOTUSBINPROG
= $(SBINPROG
:%=$(ROOTUSRSBIN
)/%)
76 ROOTLIBPROG
= $(LIBPROG
:%=$(LIBSAD
)/%)
77 ROOTLIBSHELL
= $(LIBSHELL
:%=$(LIBSAD
)/%)
78 ROOTSYMLINKS
= $(SBINPROG
:%=$(ROOTBIN
)/%)
80 # Performance monitoring should not be enabled by default. Hence, these
81 # entries are comments.
82 ENTRY1
= '$(POUND_SIGN) 0 * * * 0-6 /usr/lib/sa/sa1'
83 ENTRY2
= '$(POUND_SIGN) 20,40 8-17 * * 1-5 /usr/lib/sa/sa1'
84 ENTRY3
= '$(POUND_SIGN) 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A'
86 CLOBBERFILES
= $(PROGS
) $(SHELLS
)
89 $(LIBSAD
)/$(SADC
) := FILEMODE
= 0555
95 $(SADC
): $(SADC_OBJECTS
)
96 $(LINK.c
) -o
$@
$(SADC_OBJECTS
) $(LDLIBS
)
99 # The edit of SYSCRONTAB must be done unconditionally because of the
100 # creation of this file by a different component (Adm) and the possible
102 install: all $(ROOTPROG
) $(ROOTUSBINPROG
) \
103 $(ROOTINITSHELL
) $(ROOTLIBSHELL
) $(ROOTSYMLINKS
) \
104 $(ROOTMANIFEST
) $(ROOTSVCMETHOD
) $(ROOTLIBPROG
)
105 @if
[ -f
$(SYSCRONTAB
) ]; \
107 if
$(GREP
) "sa1" $(SYSCRONTAB
) >/dev
/null
2>&1 ; then
:; \
109 echo
$(ENTRY1
) >> $(SYSCRONTAB
); \
110 echo
$(ENTRY2
) >> $(SYSCRONTAB
); \
111 echo
"$(SYSCRONTAB) modified"; \
113 if
$(GREP
) "sa2" $(SYSCRONTAB
) >/dev
/null
2>&1 ; then
:; \
115 echo
$(ENTRY3
) >> $(SYSCRONTAB
); \
123 -$(RM
) $@
; $(SYMLINK
) ..
/sbin
/`basename $@` $@
128 check: $(CHKMANIFEST
)
131 $(RM
) $(SADC_OBJECTS
) $(PROGS
) $(SHELLS
)
134 include ..
/Makefile.targ