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