xref: /illumos-gate/usr/src/tools/scripts/Makefile (revision 4ff15898b7da74f6c007b0fef82a27cb866afade)
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
578fe7221Sdduvall# Common Development and Distribution License (the "License").
678fe7221Sdduvall# 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#
22b83ec4edSjmcp# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
237c478bd9Sstevel@tonic-gate#
242f54b716SRichard Lowe# Copyright 2010, Richard Lowe
257c478bd9Sstevel@tonic-gate
2663df1173SpetedeSHELL=/usr/bin/ksh93
2763df1173Spetede
287c478bd9Sstevel@tonic-gateSHFILES= \
297c478bd9Sstevel@tonic-gate	Install \
307c478bd9Sstevel@tonic-gate	bldenv \
317c478bd9Sstevel@tonic-gate	build_cscope \
32733ed737Ssommerfe	bringovercheck \
337c478bd9Sstevel@tonic-gate	checkpaths \
347c478bd9Sstevel@tonic-gate	cstyle \
357c478bd9Sstevel@tonic-gate	elfcmp \
367c478bd9Sstevel@tonic-gate	flg.flp \
377c478bd9Sstevel@tonic-gate	genoffsets \
387c478bd9Sstevel@tonic-gate	nightly \
39ead1f93eSLiane Praza	onu \
407c478bd9Sstevel@tonic-gate	protocmp.terse \
41733ed737Ssommerfe	sccscheck \
427c478bd9Sstevel@tonic-gate	webrev \
43cdf0c1d5Smjnelson	which_scm \
447c478bd9Sstevel@tonic-gate	ws \
457c478bd9Sstevel@tonic-gate	xref
467c478bd9Sstevel@tonic-gate
477c478bd9Sstevel@tonic-gatePERLFILES= \
487c478bd9Sstevel@tonic-gate	check_rtime \
4975ce41a5SAli Bahrami	find_elf \
5075ce41a5SAli Bahrami	interface_check \
5175ce41a5SAli Bahrami	interface_cmp \
5278fe7221Sdduvall	jstyle \
537c478bd9Sstevel@tonic-gate	validate_flg \
547c478bd9Sstevel@tonic-gate	validate_paths \
557c478bd9Sstevel@tonic-gate	wdiff
567c478bd9Sstevel@tonic-gate
5775ce41a5SAli BahramiPERLMODULES= \
585253169eSAli Bahrami	onbld_elfmod.pm \
595253169eSAli Bahrami	onbld_elfmod_vertype.pm
6075ce41a5SAli Bahrami
6175ce41a5SAli Bahrami
6296ccc8cbSesaxePYFILES= \
63cdf0c1d5Smjnelson	cddlchk \
64cdf0c1d5Smjnelson	copyrightchk \
658bcea973SRichard Lowe	git-pbchk \
66cdf0c1d5Smjnelson	hdrchk \
67bfed486aSAli Bahrami	mapfilechk \
68ead1f93eSLiane Praza	validate_pkg \
69*4ff15898SGordon Ross	wscheck \
7096ccc8cbSesaxe	wsdiff
7196ccc8cbSesaxe
728bcea973SRichard LoweSCRIPTLINKS= \
738bcea973SRichard Lowe	git-nits
748bcea973SRichard Lowe
756cad8c54SRyan ZezeskiMAN1ONBLDFILES= \
766cad8c54SRyan Zezeski	Install.1onbld \
776cad8c54SRyan Zezeski	bldenv.1onbld \
786cad8c54SRyan Zezeski	bringovercheck.1onbld \
796cad8c54SRyan Zezeski	cddlchk.1onbld \
806cad8c54SRyan Zezeski	checkpaths.1onbld \
816cad8c54SRyan Zezeski	check_rtime.1onbld \
826cad8c54SRyan Zezeski	cstyle.1onbld \
836cad8c54SRyan Zezeski	find_elf.1onbld \
846cad8c54SRyan Zezeski	flg.flp.1onbld \
856cad8c54SRyan Zezeski	git-pbchk.1onbld \
866cad8c54SRyan Zezeski	hdrchk.1onbld \
876cad8c54SRyan Zezeski	interface_check.1onbld \
886cad8c54SRyan Zezeski	interface_cmp.1onbld \
896cad8c54SRyan Zezeski	jstyle.1onbld \
906cad8c54SRyan Zezeski	mapfilechk.1onbld \
916cad8c54SRyan Zezeski	nightly.1onbld \
926cad8c54SRyan Zezeski	onu.1onbld \
936cad8c54SRyan Zezeski	sccscheck.1onbld \
946cad8c54SRyan Zezeski	webrev.1onbld \
956cad8c54SRyan Zezeski	which_scm.1onbld \
966cad8c54SRyan Zezeski	ws.1onbld \
976cad8c54SRyan Zezeski	wsdiff.1onbld \
986cad8c54SRyan Zezeski	xref.1onbld
997c478bd9Sstevel@tonic-gate
1006cad8c54SRyan ZezeskiMAN1ONBLDLINKS= \
1016cad8c54SRyan Zezeski	git-nits.1onbld
1028bcea973SRichard Lowe
1037c478bd9Sstevel@tonic-gateMAKEFILES= \
1047c478bd9Sstevel@tonic-gate	xref.mk
1057c478bd9Sstevel@tonic-gate
10693af10a4SMark J. NelsonETCFILES= \
1070fd2682eSMark J. Nelson	its.conf \
1080fd2682eSMark J. Nelson	its.reg
10993af10a4SMark J. Nelson
11075ce41a5SAli BahramiEXCEPTFILES= \
11175ce41a5SAli Bahrami	check_rtime \
11275ce41a5SAli Bahrami	interface_check \
11375ce41a5SAli Bahrami	interface_cmp
11475ce41a5SAli Bahrami
1159f923083SAlexander PyhalovCLEANFILES = $(SHFILES) $(PERLFILES) $(PYFILES) bldenv.1onbld onu.sh
1169f923083SAlexander Pyhalov
1179f923083SAlexander Pyhalovonu.sh:	onu.sh.in
1189f923083SAlexander Pyhalov	$(SED) -e "s:@PYTHON_VERSION@:$(PYTHON_VERSION):g" < onu.sh.in > $@
1197c478bd9Sstevel@tonic-gate
1207c478bd9Sstevel@tonic-gateinclude ../Makefile.tools
1217c478bd9Sstevel@tonic-gate
1228bcea973SRichard LoweROOTONBLDSCRIPTLINKS = $(SCRIPTLINKS:%=$(ROOTONBLDBIN)/%)
1236cad8c54SRyan ZezeskiROOTONBLDMAN1ONBLDLINKS = $(MAN1ONBLDLINKS:%=$(ROOTONBLDMAN1ONBLD)/%)
12493af10a4SMark J. Nelson
12593af10a4SMark J. Nelson$(ROOTONBLDETCFILES)		:= FILEMODE=	644
12675ce41a5SAli Bahrami$(ROOTONBLDEXCEPTFILES)		:= FILEMODE=	644
12775ce41a5SAli Bahrami$(ROOTONBLDPERLMODULES)		:= FILEMODE=	644
1287c478bd9Sstevel@tonic-gate$(ROOTONBLDMAKEFILES)		:= FILEMODE=	644
1296cad8c54SRyan Zezeski$(ROOTONBLDMAN1ONBLDFILES)	:= FILEMODE=	644
1307c478bd9Sstevel@tonic-gate
1317c478bd9Sstevel@tonic-gate.KEEP_STATE:
1327c478bd9Sstevel@tonic-gate
13375ce41a5SAli Bahramiall:	$(SHFILES) $(PERLFILES) $(PERLMODULES) $(PYFILES) \
1346cad8c54SRyan Zezeski	$(MAN1ONBLDFILES) $(MAKEFILES)
1357c478bd9Sstevel@tonic-gate
1368bcea973SRichard Lowe$(ROOTONBLDBIN)/git-nits:
1378bcea973SRichard Lowe	$(RM) $(ROOTONBLDBIN)/git-nits
1388bcea973SRichard Lowe	$(SYMLINK) git-pbchk $(ROOTONBLDBIN)/git-nits
1398bcea973SRichard Lowe
1406cad8c54SRyan Zezeski$(ROOTONBLDMAN1ONBLD)/git-nits.1onbld:
1416cad8c54SRyan Zezeski	$(RM) $(ROOTONBLDMAN1ONBLD)/git-nits.1onbld
1426cad8c54SRyan Zezeski	$(SYMLINK) git-pbchk.1onbld $(ROOTONBLDMAN1ONBLD)/git-nits.1onbld
1438bcea973SRichard Lowe
1447c478bd9Sstevel@tonic-gateinstall: all .WAIT $(ROOTONBLDSHFILES) $(ROOTONBLDPERLFILES)		\
14575ce41a5SAli Bahrami		$(ROOTONBLDPERLMODULES) $(ROOTONBLDPYFILES)		\
1466cad8c54SRyan Zezeski		$(ROOTONBLDSCRIPTLINKS) $(ROOTONBLDMAN1ONBLDFILES)	\
1478bcea973SRichard Lowe		$(ROOTONBLDMAKEFILES) $(ROOTONBLDETCFILES)		\
1486cad8c54SRyan Zezeski		$(ROOTONBLDEXCEPTFILES) $(ROOTONBLDMAN1ONBLDLINKS)
1497c478bd9Sstevel@tonic-gate
1507c478bd9Sstevel@tonic-gateclean:
1517c478bd9Sstevel@tonic-gate	$(RM) $(CLEANFILES)
1527c478bd9Sstevel@tonic-gate
1531fe69678Skupferbldenv: bldenv.sh stdenv.sh
15463df1173Spetede	$(RM) "$@"
15563df1173Spetede	sed -e '/# STDENV_START/ r stdenv.sh' bldenv.sh > "$@"
1562f54b716SRichard Lowe	# Check for shell lint and fail if we hit warnings
15763df1173Spetede	shlintout="$$( /usr/bin/ksh93 -n "$@" 2>&1 )" ; \
15863df1173Spetede		[[ "$${shlintout}" != "" ]] && \
15963df1173Spetede		{ print -r -- "$${shlintout}" ;	false ; } || true
16063df1173Spetede	$(CHMOD) +x "$@"
16163df1173Spetede
1626cad8c54SRyan Zezeskibldenv.1onbld: bldenv
16363df1173Spetede	$(RM) "$@"
16463df1173Spetede	(set +o errexit ; ksh93 $? --nroff ; true) 2>&1 | \
1656cad8c54SRyan Zezeski	sed -e 's/\.DS/.nf/g;s/\.DE/.fi/' \
1666cad8c54SRyan Zezeski	-e 's/\.TH BLDENV 1/.TH BLDENV 1ONBLD/' \
1676cad8c54SRyan Zezeski	-e 's/(1)/(1ONBLD)/' > "$@"
1681fe69678Skupfer
1691fe69678Skupfernightly: nightly.sh stdenv.sh
17063df1173Spetede	$(RM) "$@"
1711fe69678Skupfer	sed -e '/# STDENV_START/ r stdenv.sh' nightly.sh > nightly
17263df1173Spetede	$(CHMOD) +x "$@"
1731fe69678Skupfer
1747c478bd9Sstevel@tonic-gateinclude ../Makefile.targ
1757c478bd9Sstevel@tonic-gate
176