xref: /illumos-gate/usr/src/tools/scripts/Makefile (revision 3f9d6ad73e45c6823b409f93b0c8d4f62861d2d5)
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# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
23#
24
25SHELL=/usr/bin/ksh93
26
27SHFILES= \
28	Install \
29	bfu \
30	bindrop \
31	bldenv \
32	build_cscope \
33	bringovercheck \
34	checkpaths \
35	checkproto \
36	cryptodrop \
37	cstyle \
38	elfcmp \
39	flg.flp \
40	genoffsets \
41	hgsetup \
42	keywords \
43	makebfu \
44	mkbfu \
45	mkclosed \
46	nightly \
47	onu \
48	protocmp.terse \
49	sccscheck \
50	sccscp \
51	sccshist \
52	sccsmv \
53	sccsrm \
54	webrev \
55	which_scm \
56	ws \
57	wx \
58	wx2hg \
59	xref
60
61PERLFILES= \
62	check_rtime \
63	find_elf \
64	interface_check \
65	interface_cmp \
66	jstyle \
67	mkreadme_osol \
68	mktpl \
69	validate_flg \
70	validate_paths \
71	wdiff
72
73PERLMODULES= \
74	onbld_elfmod.pm
75
76
77PYFILES= \
78 	cddlchk \
79 	copyrightchk \
80 	hdrchk \
81 	hg-active \
82 	mapfilechk \
83 	rtichk \
84	validate_pkg \
85 	wsdiff
86
87MAN1FILES= \
88	Install.1 \
89	bldenv.1 \
90	bringovercheck.1 \
91	cddlchk.1 \
92	checkpaths.1 \
93	check_rtime.1 \
94	cstyle.1 \
95	find_elf.1 \
96	flg.flp.1 \
97	hdrchk.1 \
98	interface_check.1 \
99	interface_cmp.1 \
100	hgsetup.1 \
101	jstyle.1 \
102	mapfilechk.1 \
103	nightly.1 \
104	onu.1 \
105	sccscheck.1 \
106	sccscp.1 \
107	sccsmv.1 \
108	sccsrm.1 \
109	webrev.1 \
110	which_scm.1 \
111	ws.1 \
112	wsdiff.1 \
113	wx.1 \
114	wx2hg.1 \
115	xref.1
116
117MAKEFILES= \
118	xref.mk
119
120ETCFILES= \
121	hgstyle \
122	its.conf \
123	its.reg
124
125EXCEPTFILES= \
126	check_rtime \
127	interface_check \
128	interface_cmp
129
130CLEANFILES = $(SHFILES) $(PERLFILES) $(PYFILES) bldenv.1
131
132include ../Makefile.tools
133
134
135$(ROOTONBLDETCFILES)	:= FILEMODE=	644
136$(ROOTONBLDEXCEPTFILES)	:= FILEMODE=	644
137$(ROOTONBLDPERLMODULES)	:= FILEMODE=	644
138$(ROOTONBLDMAKEFILES)	:= FILEMODE=	644
139$(ROOTONBLDMAN1FILES)	:= FILEMODE=	644
140
141.KEEP_STATE:
142
143all:	$(SHFILES) $(PERLFILES) $(PERLMODULES) $(PYFILES) \
144	$(MAN1FILES) $(MAKEFILES)
145
146install: all .WAIT $(ROOTONBLDSHFILES) $(ROOTONBLDPERLFILES)	\
147		$(ROOTONBLDPERLMODULES) $(ROOTONBLDPYFILES)	\
148		$(ROOTONBLDMAN1FILES) $(ROOTONBLDMAKEFILES)	\
149		$(ROOTONBLDETCFILES) $(ROOTONBLDEXCEPTFILES)
150
151clean:
152	$(RM) $(CLEANFILES)
153
154bldenv: bldenv.sh stdenv.sh
155	$(RM) "$@"
156	sed -e '/# STDENV_START/ r stdenv.sh' bldenv.sh > "$@"
157	# Check for shell lint and fail if we hit warings
158	shlintout="$$( /usr/bin/ksh93 -n "$@" 2>&1 )" ; \
159		[[ "$${shlintout}" != "" ]] && \
160		{ print -r -- "$${shlintout}" ;	false ; } || true
161	$(CHMOD) +x "$@"
162
163bldenv.1: bldenv
164	$(RM) "$@"
165	(set +o errexit ; ksh93 $? --nroff ; true) 2>&1 | \
166	sed 's/\.DS/.nf/g;s/\.DE/.fi/' > "$@"
167
168nightly: nightly.sh stdenv.sh
169	$(RM) "$@"
170	sed -e '/# STDENV_START/ r stdenv.sh' nightly.sh > nightly
171	$(CHMOD) +x "$@"
172
173include ../Makefile.targ
174
175