xref: /illumos-gate/usr/src/cmd/ptools/Makefile (revision b3403853e80914bd0aade9b5b605da4878078173)
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
28include ../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#
34LEGACY_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#
52NEW_SUBDIRS =	\
53	pargs	\
54	plgrp	\
55	pmadvise \
56	ppriv	\
57	preap	\
58	psecflags
59
60SUBDIRS = $(LEGACY_SUBDIRS) $(NEW_SUBDIRS)
61
62all	:=	TARGET = all
63install	:=	TARGET = install
64clean	:=	TARGET = clean
65clobber	:=	TARGET = clobber
66lint	:=	TARGET = lint
67_msg	:=	TARGET = _msg
68
69
70# pmadvise depends on pmap components
71PMAP =			$(SRC)/cmd/ptools/pmap
72pmadvise/pmadvise.po :=	CPPFLAGS +=	-I$(PMAP)
73
74#
75# Commands with messages support
76#
77POFILES = plgrp/plgrp.po pmadvise/pmadvise.po psecflags/psecflags.po
78POFILE = ptools.po
79
80.KEEP_STATE:
81
82.PARALLEL: $(SUBDIRS)
83
84all install clean lint: $(SUBDIRS)
85clobber: $(SUBDIRS) clobber_local
86clobber_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: $(MSGDOMAIN) $(POFILES)
100	$(RM) $(POFILE)
101	$(CAT) $(POFILES) > $(POFILE)
102	$(RM)  $(MSGDOMAIN)/$(POFILE)
103	$(CP) $(POFILE) $(MSGDOMAIN)
104
105FRC:
106
107include $(SRC)/Makefile.msg.targ
108