xref: /titanic_41/usr/src/tools/Makefile (revision 2386db6850f3faeca05a34f5928b3eff8a4a87c6)
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#
212e02daeeSRainer Orth
227c478bd9Sstevel@tonic-gate#
2387ab3622SRichard Lowe# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
2432a712daSGarrett D'Amore# Copyright 2014 Garrett D'Amore <garrett@damore.org>
257c478bd9Sstevel@tonic-gate#
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	codereview \
3723259b79Srotondo	codesign \
387c478bd9Sstevel@tonic-gate	cscope-fast \
397c478bd9Sstevel@tonic-gate	ctf \
407c478bd9Sstevel@tonic-gate	depcheck \
417c478bd9Sstevel@tonic-gate	env \
427c478bd9Sstevel@tonic-gate	findunref \
437c478bd9Sstevel@tonic-gate	gk \
447c478bd9Sstevel@tonic-gate	install.bin \
4534c98957Smeem	lintdump \
463625efb1SRichard Lowe	make \
473625efb1SRichard Lowe	ndrgen \
483625efb1SRichard Lowe	onbld \
493625efb1SRichard Lowe	pmodes \
507c478bd9Sstevel@tonic-gate	protocmp \
517c478bd9Sstevel@tonic-gate	protolist \
527c478bd9Sstevel@tonic-gate	scripts
537c478bd9Sstevel@tonic-gate
547c478bd9Sstevel@tonic-gate#
557c478bd9Sstevel@tonic-gate#  special versions of commands for use only in build
567c478bd9Sstevel@tonic-gate#
57df8bdeb3SjohnzUNSHIPPED_SUBDIRS = \
5832a712daSGarrett D'Amore	elfsign \
59*2386db68SMarcel Telka	mandoc \
60*2386db68SMarcel Telka	zic
617c478bd9Sstevel@tonic-gate
627c478bd9Sstevel@tonic-gatesparc_SUBDIRS= \
63b31b5de1SJerry Gilliam	chk4ubin \
647c478bd9Sstevel@tonic-gate	stabs \
657c478bd9Sstevel@tonic-gate	tokenize
667c478bd9Sstevel@tonic-gate
677c478bd9Sstevel@tonic-gatei386_SUBDIRS=		\
68ae115bc7Smrj	aw		\
69ae115bc7Smrj	elfextract	\
70ae115bc7Smrj	mbh_patch
717c478bd9Sstevel@tonic-gate
727c478bd9Sstevel@tonic-gateLINTSUBDIRS= \
737c478bd9Sstevel@tonic-gate	codereview \
747c478bd9Sstevel@tonic-gate	ctf \
757c478bd9Sstevel@tonic-gate	cw \
767c478bd9Sstevel@tonic-gate	findunref \
7734c98957Smeem	lintdump \
78d0e51869Samw	ndrgen \
797c478bd9Sstevel@tonic-gate	protocmp \
807c478bd9Sstevel@tonic-gate	protolist
817c478bd9Sstevel@tonic-gate
82df8bdeb3SjohnzSUBDIRS= \
83df8bdeb3Sjohnz	$($(MACH)_SUBDIRS) \
84df8bdeb3Sjohnz	$(COMMON_SUBDIRS) \
85df8bdeb3Sjohnz	$(UNSHIPPED_SUBDIRS)
867c478bd9Sstevel@tonic-gate
877c478bd9Sstevel@tonic-gateinclude Makefile.tools
887c478bd9Sstevel@tonic-gate
897c478bd9Sstevel@tonic-gateROOTDIRS= \
902e02daeeSRainer Orth	$(ROOTOPT) \
917c478bd9Sstevel@tonic-gate	$(ROOTONBLD) \
927c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/bin \
937c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/bin/$(MACH) \
947c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/lib \
957c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/lib/$(MACH) \
963625efb1SRichard Lowe	$(ROOTONBLD)/lib/$(MACH)/64 \
9775ce41a5SAli Bahrami	$(ROOTONBLD)/lib/perl \
9887ab3622SRichard Lowe	$(ROOTONBLD)/lib/python2.6 \
9987ab3622SRichard Lowe	$(ROOTONBLD)/lib/python2.6/onbld \
10087ab3622SRichard Lowe	$(ROOTONBLD)/lib/python2.6/onbld/Checks \
10187ab3622SRichard Lowe	$(ROOTONBLD)/lib/python2.6/onbld/hgext \
10287ab3622SRichard Lowe	$(ROOTONBLD)/lib/python2.6/onbld/Scm \
1037c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/env \
1047c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/etc \
10575ce41a5SAli Bahrami	$(ROOTONBLD)/etc/exception_lists \
1063625efb1SRichard Lowe	$(ROOTONBLD)/share \
1077c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/gk \
1087c478bd9Sstevel@tonic-gate	$(ROOTONBLD)/man \
109a970c705SYuri Pankov	$(ROOTONBLD)/man/man1
1107c478bd9Sstevel@tonic-gate
1117c478bd9Sstevel@tonic-gateall :=		TARGET= install
1127c478bd9Sstevel@tonic-gateinstall :=	TARGET= install
1137c478bd9Sstevel@tonic-gateclean :=	TARGET= clean
1147c478bd9Sstevel@tonic-gateclobber :=	TARGET= clobber
1157c478bd9Sstevel@tonic-gatelint :=		TARGET= lint
1167c478bd9Sstevel@tonic-gate_msg :=		TARGET= _msg
1177c478bd9Sstevel@tonic-gate
1187c478bd9Sstevel@tonic-gate.KEEP_STATE:
1197c478bd9Sstevel@tonic-gate
120ead1f93eSLiane Praza#
121ead1f93eSLiane Praza# Only create directories in the tools proto area when doing an actual
122ead1f93eSLiane Praza# build, not a clean or clobber.
123ead1f93eSLiane Praza#
124ead1f93eSLiane PrazaDOROOTDIRS= $(ROOTDIRS)
125ead1f93eSLiane Prazaclobber:= DOROOTDIRS=
126ead1f93eSLiane Prazaclean:= DOROOTDIRS=
127ead1f93eSLiane Praza
12898157a70Sakolball install: $(SUBDIRS)
1297c478bd9Sstevel@tonic-gate
130df8bdeb3Sjohnzclean: $(SUBDIRS)
1317c478bd9Sstevel@tonic-gate
132df8bdeb3Sjohnzclobber: $(SUBDIRS)
1337c478bd9Sstevel@tonic-gate	$(RM) -rf $(TOOLS_PROTO)
1347c478bd9Sstevel@tonic-gate
1357c478bd9Sstevel@tonic-gatelint: $(LINTSUBDIRS)
1367c478bd9Sstevel@tonic-gate
1377c478bd9Sstevel@tonic-gate_msg: $(MSGSUBDIRS)
1387c478bd9Sstevel@tonic-gate
139ead1f93eSLiane Praza.PARALLEL: $(SUBDIRS) $(CLOSED_SUBDIRS)
14098157a70Sakolb
14103113b45Sakolb$(SUBDIRS) $(CLOSED_SUBDIRS): $(BOOT_SUBDIRS)
14203113b45Sakolb
14387ab3622SRichard Lowe$(BOOT_SUBDIRS) $(SUBDIRS): $$(DOROOTDIRS) $(ROOTONBLDLIBPY) FRC
1447c478bd9Sstevel@tonic-gate	@cd $@; pwd; $(MAKE) $(TARGET)
1457c478bd9Sstevel@tonic-gate
1467c478bd9Sstevel@tonic-gate$(ROOTDIRS):
1477c478bd9Sstevel@tonic-gate	$(INS.dir)
148ead1f93eSLiane Praza
14987ab3622SRichard Lowe$(ROOTONBLDLIBPY): $(ROOTDIRS)
1506066d16eSPiotr Jasiukajtis	$(RM) -r $@; $(SYMLINK) python2.6 $@
15187ab3622SRichard Lowe
1523625efb1SRichard Lowemake: ctf
1533625efb1SRichard Lowe
154ead1f93eSLiane PrazaFRC:
155