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 #
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
25 #
26
27
28 include ../Makefile.cmd
29
30 #
31 # Don't add new ptools here; these are legacy ptools which must be symlinked
32 # into /usr/proc/bin
33 #
34 LEGACY_SUBDIRS =\
35 pcred \
36 pfiles \
37 pflags \
38 pldd \
39 pmap \
40 prun \
41 psig \
42 pstack \
43 pstop \
44 ptime \
45 ptree \
46 pwait \
47 pwdx
48
49 #
50 # 'new' ptools are not symlinked into /usr/proc/bin
51 #
52 NEW_SUBDIRS = \
53 pargs \
54 plgrp \
55 pmadvise \
56 ppriv \
57 preap \
58 psecflags
59
60 SUBDIRS = $(LEGACY_SUBDIRS) $(NEW_SUBDIRS)
61
62 all := TARGET = all
63 install := TARGET = install
64 clean := TARGET = clean
65 clobber := TARGET = clobber
66 lint := TARGET = lint
67 _msg := TARGET = _msg
68
69
70 # pmadvise depends on pmap components
71 PMAP = $(SRC)/cmd/ptools/pmap
72 pmadvise/pmadvise.po := CPPFLAGS += -I$(PMAP)
73
74 #
75 # Commands with messages support
76 #
77 POFILES = plgrp/plgrp.po pmadvise/pmadvise.po psecflags/psecflags.po
78 POFILE = ptools.po
79
80 .KEEP_STATE:
81
82 .PARALLEL: $(SUBDIRS)
83
84 all install clean lint: $(SUBDIRS)
85 clobber: $(SUBDIRS) clobber_local
86 clobber_local:
87 $(RM) $(CLOBBERFILES)
88
89 $(NEW_SUBDIRS): FRC
90 @cd $@; pwd; $(MAKE) PTOOL_TYPE=NEW -f ../Makefile.ptool $(TARGET)
91
92 $(LEGACY_SUBDIRS): FRC
93 @cd $@; pwd; $(MAKE) PTOOL_TYPE=LEGACY -f ../Makefile.ptool $(TARGET)
94
95 #
96 # Combine all messages files into a single file and copy it to
97 # MSGDOMAIN directory
98 #
99 _msg: ${POFILES}
100 $(RM) $(POFILE)
101 $(CAT) $(POFILES) > $(POFILE)
102 $(RM) $(MSGDOMAIN)/$(POFILE)
103 $(CP) $(POFILE) $(MSGDOMAIN)
104
105 FRC: