1 ### Makefile for preparing a progressive release.
3 ### This makefile is distinct from the makefile for three-staging for
4 ### several reasons. First, this version builds a "stage4" using src
5 ### directories that have no CVS directories. Second, the binaries
6 ### are build from independent copies of the source. That is, each
7 ### host release will have it's own copy of the src directory.
9 ### This file was written and is maintained by K. Richard Pixley
15 CVS
= $(PWD
)/cirdancvs
17 rooting
= /opt
/cygnus-sol2-
$(RELNO
)
18 cvs_module
= progressive-solaris
20 release_tag
= solaris-1-0
21 release_dir
= cygnus-sol2-1.0
25 host_release
= ${host}/cygnus-sol2-
$(RELNO
)
26 objdir
= ${host_release}/objdir
29 # prefixes are passed as arguments to configure, they have to start with -
30 prefixes
= -prefix=$(rooting
)
32 # inst_prefixes are passed as arguments to make, without the -
33 inst_prefixes
= prefix=$(PWD
)/$(host_release
)
35 ### What are these for?
40 ## which C compiler to use
41 #CC = $(rooting)/bin/gcc
42 CC
= /opt
/cygnus-sol2-1.0
/bin
/gcc
43 C_COMPILER
= "CC=$(CC) ${gccflags}"
45 all: .
${host}-done fluff
48 find
$(host
) -type d
-print | xargs chmod u
+w
50 testfile
: all blockit
${host}+.Z
52 (cd
${host} ; tar cf
- ${release_dir} \
57 .
${host}-done
: .
${host}-install .
${host}-install-info
61 .
${host}-install: .
${host}-all
62 ${MAKE} -C
${objdir} -w install-no-fixedincludes \
63 $(inst_prefixes
) $(C_COMPILER
)
66 .
${host}-install-info
: .
${host}-info
67 ${MAKE} -C
${objdir} -w install-info
$(inst_prefixes
) $(C_COMPILER
)
70 .
${host}-all: .
${host}-config
71 ${MAKE} -C
${objdir} -w
all $(C_COMPILER
)
74 .
${host}-info: .
${host}-config
75 ${MAKE} -C
${objdir} -w
info $(C_COMPILER
)
78 .
${host}-config
: .
${host}-src
80 ..
/src
/configure
${host} $(prefixes
)
83 .
${host}-src
: .
${release_tag}-co .
${host}-dirs
84 rm -rf
${host_release}/src
85 (tar cf
- ${release_dir} |
(cd
${host_release} ; tar xvf
-) ; true
)
86 (cd
${host_release}/${release_dir} ; find . \
( -name CVS
-o
-name CVS.adm \
) -depth
-exec
rm -rf
{} \
; )
87 mv
${host_release}/${release_dir} ${host_release}/src
91 [ -d
${host} ] || mkdir
${host}
92 [ -d
${host_release} ] || mkdir
${host_release}
93 [ -d
${objdir} ] || mkdir
${objdir}
96 .
${release_tag}-co: .
${release_tag}-tagged
97 ${CVS} co -r
${release_tag} ${cvs_module}
98 mv
${tree} ${release_dir}
101 .
${release_tag}-tagged
:
102 ${CVS} rtag
${release_tag} ${cvs_module}
105 fluff
: ${host_release}/src
/Build-A-Release.mk \
106 ${host_release}/src
/Pack-A-Progressive \
107 ${host_release}/lib
/fixincludes \
108 ${host_release}/src
/INSTALL \
109 ${host_release}/README \
111 ${host}/install.
dvi \
112 ${host_release}/CYGNUS
114 ${host}/install.
dvi: ${host_release}/src
/install.texinfo
115 cp
$< ${host}/install.texinfo
116 (cd
${host} ; tex install.texinfo
)
117 (cd
${host} ; tex install.texinfo
)
118 (cd
${host} ; tex install.texinfo
)
119 rm ${host}/install.texinfo
121 install-notes
: ${host}/install.
dvi
125 rm -f
${host_release}/src
/Build-A-Release.mk \
126 ${host_release}/src
/Pack-A-Progressive \
127 ${host_release}/lib
/fixincludes \
128 ${host_release}/Install \
129 ${host_release}/src
/install-texi.in \
130 ${host_release}/src
/install.texinfo \
131 ${host_release}/src
/Install.in \
133 ${host_release}/src
/Build-A-Release.mk
: ${release_dir}/Build-A-Release.mk
136 ${host_release}/src
/Pack-A-Progressive
: ${release_dir}/Pack-A-Progressive
139 ${host_release}/src
/Install.in
: ${release_dir}/Install.in
142 ${host_release}/src
/CYGNUS
: ${release_dir}/CYGNUS
145 ${host_release}/CYGNUS
: ${host_release}/src
/CYGNUS
148 ${host_release}/src
/install-texi.in
: ${release_dir}/sol-inst.texi
151 ${host_release}/lib
/fixincludes
: ${host_release}/src
/gcc
/fixincludes
155 ${host}/Install
: ${host_release}/Install
159 ${host_release}/Install
: ${host_release}/src
/Install
163 ${host_release}/src
/install.texinfo
: ${host_release}/src
/install-texi.in
164 $(MAKE
) process
-f Build-A-Release.mk IN
=$< OUT
=$@ relno
=`echo ${release_dir} | sed "/${tree}-/s///"`
166 ${host_release}/README
: ${host_release}/src
/README-bin
169 ${host_release}/src
/INSTALL
: ${host_release}/src
/install.texinfo
170 -makeinfo +no-headers
+no-split
$< -o
$@
171 ### remove tags table
172 sed
-e
'/^Tag Table/,$$d' $@ | sed
-e
'$$d' > $@.new
175 ${host_release}/src
/Install
: ${host_release}/src
/Install.in
176 $(MAKE
) process
-f Build-A-Release.mk IN
=$< OUT
=$@ relno
=`echo ${release_dir} | sed "/${tree}-/s///"`
179 process
: process-
${host}
180 @if grep
'||' ${OUT}.new
; then \
181 echo
$0 missed at least one of the triggers.
1>&2 ; \
186 mv
-f
${OUT}.new
${OUT}
189 sed
-e
"/^@clear HOSTsun4/s::@set HOSTsun4:" \
190 -e
"/^@set HOSTsun3/s::@clear HOSTsun3:" \
191 -e
"/^@set HOSTdecstation/s::@clear HOSTdecstation:" \
192 -e
"/^@set HOSTiris/s::@clear HOSTiris:" \
193 -e
"/^@set HOSTrs6000/s::@clear HOSTrs6000:" \
194 -e
"/^@set FIXMES/s::@clear FIXMES:" \
195 -e
"/\|\|RELNO\|\|/s::${relno}:g" \
196 -e
"/\|\|TAPdflt\|\|/s::QIC-24:g" \
197 -e
"/\|\|DEVdflt\|\|/s::/dev/nrst8:g" \
198 -e
"/\|\|BD\|\|/s::35:g" \
199 -e
"/\|\|SD\|\|/s::34:g" \
200 -e
"/\|\|DF\|\|/s::69:g" \
201 -e
"/\|\|HOST\|\|/s::Sun-4:g" \
202 -e
"/\|\|HOSTstr\|\|/s::sun4:g" \
203 -e
"/\|\|TARGET\|\|/s::sun4:g" \
204 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \
208 process-sparc-sun-solaris2
:
210 -e
"/^@set FIXMES/s::@clear FIXMES:" \
211 -e
"/^@clear CUSTOMER/s::@set CUSTOMER:" \
212 -e
"/^@set CDROMinst/s::@clear CDROMinst:" \
213 -e
"/^@clear TAPEinst/s::@set TAPEinst:" \
214 -e
"/^@set FTPsingle/s::@clear FTPsingle:" \
215 -e
"/^@set FTPsplit/s::@clear FTPsplit:" \
216 -e
"/\|\|MEDIUM\|\|/s::tape:g" \
217 -e
"/\|\|MEDstr\|\|/s::/dev/rmt/0ln:g" \
218 -e
"/\|\|DEVdflt\|\|/s::/dev/rmt/0ln:g" \
219 -e
"/\|\|MEDvar\|\|/s::/dev/@var{tape}:g" \
220 -e
"/\|\|TAPdflt\|\|/s::/dev/@var{tape}:g" \
221 -e
"/\|\|RELNO\|\|/s::1.0:g" \
222 -e
"/\|\|BD\|\|/s::20:g" \
223 -e
"/\|\|SD\|\|/s::28:g" \
224 -e
"/\|\|DF\|\|/s::48:g" \
225 -e
"/\|\|BUNDLE\|\|/s::comp:g" \
226 -e
"/\|\|HOST\|\|/s::SPARC computer:g" \
227 -e
"/\|\|HOSTstr\|\|/s::sparc-sun-solaris2:g" \
228 -e
"/\|\|TARGET\|\|/s::sparc-sun-solaris2:g" \
229 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \
233 sed
-e
"/^@set HOSTsun4/s::@clear HOSTsun4:" \
234 -e
"/^@clear HOSTsun3/s::@set HOSTsun3:" \
235 -e
"/^@set HOSTdecstation/s::@clear HOSTdecstation:" \
236 -e
"/^@set HOSTiris/s::@clear HOSTiris:" \
237 -e
"/^@set HOSTrs6000/s::@clear HOSTrs6000:" \
238 -e
"/^@set FIXMES/s::@clear FIXMES:" \
239 -e
"/\|\|RELNO\|\|/s::${relno}:g" \
240 -e
"/\|\|TAPdflt\|\|/s::QIC-24:g" \
241 -e
"/\|\|DEVdflt\|\|/s::/dev/nrst8:g" \
242 -e
"/\|\|BD\|\|/s::32:g" \
243 -e
"/\|\|SD\|\|/s::34:g" \
244 -e
"/\|\|DF\|\|/s::65:g" \
245 -e
"/\|\|HOST\|\|/s::Sun-3:g" \
246 -e
"/\|\|HOSTstr\|\|/s::sun3:g" \
247 -e
"/\|\|TARGET\|\|/s::sun3:g" \
248 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \
252 sed
-e
"/^@set HOSTsun4/s::@clear HOSTsun4:" \
253 -e
"/^@set HOSTsun3/s::@clear HOSTsun3:" \
254 -e
"/^@clear HOSTdecstation/s::@set HOSTdecstation:" \
255 -e
"/^@set HOSTiris/s::@clear HOSTiris:" \
256 -e
"/^@set HOSTrs6000/s::@clear HOSTrs6000:" \
257 -e
"/^@set FIXMES/s::@clear FIXMES:" \
258 -e
"/\|\|RELNO\|\|/s::${relno}:g" \
259 -e
"/\|\|TAPdflt\|\|/s::QIC-24:g" \
260 -e
"/\|\|DEVdflt\|\|/s::/dev/nrmt0:g" \
261 -e
"/\|\|BD\|\|/s::27:g" \
262 -e
"/\|\|SD\|\|/s::34:g" \
263 -e
"/\|\|DF\|\|/s::61:g" \
264 -e
"/\|\|HOST\|\|/s::Decstation:g" \
265 -e
"/\|\|HOSTstr\|\|/s::decstation:g" \
266 -e
"/\|\|TARGET\|\|/s::decstation:g" \
267 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \
272 sed
-e
"/^@set HOSTsun4/s::@clear HOSTsun4:" \
273 -e
"/^@set HOSTsun3/s::@clear HOSTsun3:" \
274 -e
"/^@set HOSTdecstation/s::@clear HOSTdecstation:" \
275 -e
"/^@clear HOSTiris/s::@set HOSTiris:" \
276 -e
"/^@set HOSTrs6000/s::@clear HOSTrs6000:" \
277 -e
"/^@set FIXMES/s::@clear FIXMES:" \
278 -e
"/\|\|RELNO\|\|/s::${relno}:g" \
279 -e
"/\|\|TAPdflt\|\|/s::QIC-24:g" \
280 -e
"/\|\|DEVdflt\|\|/s::/dev/mt/tps0d0nrns:g" \
281 -e
"/\|\|BD\|\|/s::25:g" \
282 -e
"/\|\|SD\|\|/s::34:g" \
283 -e
"/\|\|DF\|\|/s::59:g" \
284 -e
"/\|\|HOST\|\|/s::Iris:g" \
285 -e
"/\|\|HOSTstr\|\|/s::iris4:g" \
286 -e
"/\|\|TARGET\|\|/s::iris4:g" \
287 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \
291 sed
-e
"/^@set HOSTsun4/s::@clear HOSTsun4:" \
292 -e
"/^@set HOSTsun3/s::@clear HOSTsun3:" \
293 -e
"/^@set HOSTdecstation/s::@clear HOSTdecstation:" \
294 -e
"/^@set HOSTiris/s::@clear HOSTiris:" \
295 -e
"/^@clear HOSTrs6000/s::@set HOSTrs6000:" \
296 -e
"/^@set FIXMES/s::@clear FIXMES:" \
297 -e
"/\|\|RELNO\|\|/s::${relno}:g" \
298 -e
"/\|\|TAPdflt\|\|/s::QIC-24:g" \
299 -e
"/\|\|DEVdflt\|\|/s::/dev/rmt0.1:g" \
300 -e
"/\|\|BD\|\|/s::36:g" \
301 -e
"/\|\|SD\|\|/s::34:g" \
302 -e
"/\|\|DF\|\|/s::70:g" \
303 -e
"/\|\|HOST\|\|/s::RS/6000:g" \
304 -e
"/\|\|HOSTstr\|\|/s::rs6000:g" \
305 -e
"/\|\|TARGET\|\|/s::rs6000:g" \
306 -e
"/\|\|GCCvn\|\|/s::cygnus-2.0.2:g" \