xref: /illumos-gate/usr/src/tools/Makefile (revision ae115bc77f6fcde83175c75b4206dc2e50747966)
17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5fb9f9b97Skupfer# Common Development and Distribution License (the "License").
6fb9f9b97Skupfer# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
217c478bd9Sstevel@tonic-gate#
22*ae115bc7Smrj# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate# Use is subject to license terms.
247c478bd9Sstevel@tonic-gate#
257c478bd9Sstevel@tonic-gate#ident	"%Z%%M%	%I%	%E% SMI"
267c478bd9Sstevel@tonic-gate
277c478bd9Sstevel@tonic-gateinclude ../Makefile.master
287c478bd9Sstevel@tonic-gate
297c478bd9Sstevel@tonic-gate# Bootstrap problem --
307c478bd9Sstevel@tonic-gate# 'cw' must be built before anything else can be built.
317c478bd9Sstevel@tonic-gate
327c478bd9Sstevel@tonic-gateBOOT_SUBDIRS= \
337c478bd9Sstevel@tonic-gate	cw
347c478bd9Sstevel@tonic-gate
357c478bd9Sstevel@tonic-gateCOMMON_SUBDIRS= \
367c478bd9Sstevel@tonic-gate	abi \
377c478bd9Sstevel@tonic-gate	bfuld \
387c478bd9Sstevel@tonic-gate	codereview \
397c478bd9Sstevel@tonic-gate	cscope-fast \
407c478bd9Sstevel@tonic-gate	ctf \
417c478bd9Sstevel@tonic-gate	depcheck \
427c478bd9Sstevel@tonic-gate	env \
437c478bd9Sstevel@tonic-gate	fastfs \
447c478bd9Sstevel@tonic-gate	findunref \
457c478bd9Sstevel@tonic-gate	pmodes \
467c478bd9Sstevel@tonic-gate	gk \
477c478bd9Sstevel@tonic-gate	install.bin \
4834c98957Smeem	lintdump \
497c478bd9Sstevel@tonic-gate	protocmp \
507c478bd9Sstevel@tonic-gate	protolist \
517c478bd9Sstevel@tonic-gate	scripts
527c478bd9Sstevel@tonic-gate
537c478bd9Sstevel@tonic-gate#
547c478bd9Sstevel@tonic-gate#  special versions of commands for use only in build
557c478bd9Sstevel@tonic-gate#
56fb9f9b97SkupferCLOSED_UNSHIPPED_SUBDIRS = \
577c478bd9Sstevel@tonic-gate	elfsign
587c478bd9Sstevel@tonic-gate
597c478bd9Sstevel@tonic-gatesparc_SUBDIRS= \
607c478bd9Sstevel@tonic-gate	stabs \
617c478bd9Sstevel@tonic-gate	tokenize
627c478bd9Sstevel@tonic-gate
637c478bd9Sstevel@tonic-gatei386_SUBDIRS=		\
64*ae115bc7Smrj	aw		\
65*ae115bc7Smrj	elfextract	\
66*ae115bc7Smrj	mbh_patch
677c478bd9Sstevel@tonic-gate
687c478bd9Sstevel@tonic-gateLINTSUBDIRS= \
697c478bd9Sstevel@tonic-gate	codereview \
707c478bd9Sstevel@tonic-gate	ctf \
717c478bd9Sstevel@tonic-gate	cw \
727c478bd9Sstevel@tonic-gate	findunref \
7334c98957Smeem	lintdump \
747c478bd9Sstevel@tonic-gate	protocmp \
757c478bd9Sstevel@tonic-gate	protolist
767c478bd9Sstevel@tonic-gate
77fb9f9b97SkupferSUBDIRS= $(BOOT_SUBDIRS) $($(MACH)_SUBDIRS) $(COMMON_SUBDIRS)
78fb9f9b97Skupfer
79fb9f9b97Skupfer$(CLOSED_BUILD)CLOSED_SUBDIRS= $(CLOSED_UNSHIPPED_SUBDIRS)
807c478bd9Sstevel@tonic-gate
817c478bd9Sstevel@tonic-gate#
827c478bd9Sstevel@tonic-gate# Packages built here
837c478bd9Sstevel@tonic-gate#
847c478bd9Sstevel@tonic-gateCOMMON_PKG_SUBDIRS= \
857c478bd9Sstevel@tonic-gate	SUNWonbld
867c478bd9Sstevel@tonic-gate
877c478bd9Sstevel@tonic-gatesparc_PKG_SUBDIRS=
887c478bd9Sstevel@tonic-gate
897c478bd9Sstevel@tonic-gatei386_PKG_SUBDIRS= \
907c478bd9Sstevel@tonic-gate	SUNWmrtools
917c478bd9Sstevel@tonic-gate
927c478bd9Sstevel@tonic-gatePKG_SUBDIRS= $($(MACH)_PKG_SUBDIRS) $(COMMON_PKG_SUBDIRS)
937c478bd9Sstevel@tonic-gate
947c478bd9Sstevel@tonic-gateinclude Makefile.tools
957c478bd9Sstevel@tonic-gate
967c478bd9Sstevel@tonic-gateROOTDIRS= \
977c478bd9Sstevel@tonic-gate	$(ROOTONBLD) \
987c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/bin \
997c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/bin/$(MACH) \
1007c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/lib \
1017c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/lib/$(MACH) \
1027c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/env \
1037c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/etc \
1047c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/etc/abi \
1057c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/gk \
1067c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/man \
1077c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/man/man1
1087c478bd9Sstevel@tonic-gate
1097c478bd9Sstevel@tonic-gateall :=		TARGET= install
1107c478bd9Sstevel@tonic-gateinstall :=	TARGET= install
1117c478bd9Sstevel@tonic-gateclean :=	TARGET= clean
1127c478bd9Sstevel@tonic-gateclobber :=	TARGET= clobber
1137c478bd9Sstevel@tonic-gatelint :=		TARGET= lint
1147c478bd9Sstevel@tonic-gate_msg :=		TARGET= _msg
1157c478bd9Sstevel@tonic-gate
1167c478bd9Sstevel@tonic-gate.KEEP_STATE:
1177c478bd9Sstevel@tonic-gate
118fb9f9b97Skupferall install: $(ROOTDIRS) .WAIT $(SUBDIRS) $(CLOSED_SUBDIRS)
1197c478bd9Sstevel@tonic-gate
120fb9f9b97Skupferclean: $(SUBDIRS) $(CLOSED_SUBDIRS)
1217c478bd9Sstevel@tonic-gate
122fb9f9b97Skupferclobber: $(SUBDIRS) $(CLOSED_SUBDIRS)
1237c478bd9Sstevel@tonic-gate	$(RM) -rf $(TOOLS_PROTO)
1247c478bd9Sstevel@tonic-gate
1257c478bd9Sstevel@tonic-gatepkg: install .WAIT $(PKG_SUBDIRS)
1267c478bd9Sstevel@tonic-gate
1277c478bd9Sstevel@tonic-gatelint: $(LINTSUBDIRS)
1287c478bd9Sstevel@tonic-gate
1297c478bd9Sstevel@tonic-gate_msg: $(MSGSUBDIRS)
1307c478bd9Sstevel@tonic-gate
1317c478bd9Sstevel@tonic-gate$(SUBDIRS): FRC
1327c478bd9Sstevel@tonic-gate	@cd $@; pwd; $(MAKE) $(TARGET)
1337c478bd9Sstevel@tonic-gate
1347c478bd9Sstevel@tonic-gate$(PKG_SUBDIRS): FRC
1357c478bd9Sstevel@tonic-gate	@cd $@; pwd; $(MAKE) install
1367c478bd9Sstevel@tonic-gate
137fb9f9b97Skupfer$(CLOSED_SUBDIRS): FRC
138fb9f9b97Skupfer	cd $(CLOSED)/tools/$@; pwd; $(MAKE) $(TARGET)
139fb9f9b97Skupfer
1407c478bd9Sstevel@tonic-gateFRC:
1417c478bd9Sstevel@tonic-gate
1427c478bd9Sstevel@tonic-gate$(ROOTDIRS):
1437c478bd9Sstevel@tonic-gate	$(INS.dir)
144