Use PERL=../miniperl
[p5sagit/p5-mst-13.2.git] / os2 / diff.Makefile
1 *** Makefile.SH.orig    Mon Nov 20 12:56:12 1995
2 --- Makefile.SH Fri Dec 08 00:02:46 1995
3 ***************
4 *** 31,43 ****
5        *[0-9]) plibsuf=.$so.$patchlevel;;
6        *)           plibsuf=.$so;;
7       esac
8       case "$shrpdir" in
9        /usr/lib)        ;;
10        "")      ;;
11        *)               shrpenv="env LD_RUN_PATH=$shrpdir";;
12       esac
13       pldlflags="$cccdlflags";;
14 ! *)  plibsuf=.a
15       pldlflags="";;
16   esac
17   
18 --- 31,44 ----
19        *[0-9]) plibsuf=.$so.$patchlevel;;
20        *)           plibsuf=.$so;;
21       esac
22 +     if test "x$plibext" != "x" ; then  plibsuf=$plibext d_shrplib=custom ; fi
23       case "$shrpdir" in
24        /usr/lib)        ;;
25        "")      ;;
26        *)               shrpenv="env LD_RUN_PATH=$shrpdir";;
27       esac
28       pldlflags="$cccdlflags";;
29 ! *)  plibsuf=$lib_ext
30       pldlflags="";;
31   esac
32   
33 ***************
34 *** 53,59 ****
35   static_ai_list=' '
36   for f in $static_ext; do
37         base=`echo "$f" | sed 's/.*\///'`
38 !       static_list="$static_list lib/auto/$f/$base.a"
39         if test -f ext/$f/AutoInit.c; then
40             static_ai_list="$static_ai_list ext/$f/AutoInit.c"
41         fi
42 --- 54,60 ----
43   static_ai_list=' '
44   for f in $static_ext; do
45         base=`echo "$f" | sed 's/.*\///'`
46 !       static_list="$static_list lib/auto/$f/$base\$(LIB_EXT)"
47         if test -f ext/$f/AutoInit.c; then
48             static_ai_list="$static_ai_list ext/$f/AutoInit.c"
49         fi
50 ***************
51 *** 115,122 ****
52   static_ext = $static_list
53   ext = \$(dynamic_ext) \$(static_ext)
54   static_ext_autoinit = $static_ai_list
55 ! DYNALOADER = lib/auto/DynaLoader/DynaLoader.a
56
57   
58   libs = $libs $cryptlib
59   
60 --- 116,122 ----
61   static_ext = $static_list
62   ext = \$(dynamic_ext) \$(static_ext)
63   static_ext_autoinit = $static_ai_list
64 ! DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
65   
66   libs = $libs $cryptlib
67   
68 ***************
69 *** 140,145 ****
70 --- 140,147 ----
71   # Any special object files needed by this architecture, e.g. os2/os2.obj
72   ARCHOBJS = $archobjs
73   
74 + .SUFFIXES: .c \$(OBJ_EXT)
75
76   !GROK!THIS!
77   
78   ## In the following dollars and backticks do not need the extra backslash.
79 ***************
80 *** 180,190 ****
81   
82   c = $(c1) $(c2) $(c3) miniperlmain.c perlmain.c
83   
84 ! obj1 = $(mallocobj) gv.o toke.o perly.o op.o regcomp.o dump.o util.o mg.o
85 ! obj2 = hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o
86 ! obj3 = doop.o doio.o regexec.o taint.o deb.o globals.o
87
88
89   obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
90   
91   # Once perl has been Configure'd and built ok you build different
92 --- 182,191 ----
93   
94   c = $(c1) $(c2) $(c3) miniperlmain.c perlmain.c
95   
96 ! obj1 = $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) op$(OBJ_EXT) regcomp$(OBJ_EXT) dump$(OBJ_EXT) util$(OBJ_EXT) mg$(OBJ_EXT)
97 ! obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) run$(OBJ_EXT) pp_hot$(OBJ_EXT) sv$(OBJ_EXT) pp$(OBJ_EXT) scope$(OBJ_EXT) pp_ctl$(OBJ_EXT) pp_sys$(OBJ_EXT)
98 ! obj3 = doop$(OBJ_EXT) doio$(OBJ_EXT) regexec$(OBJ_EXT) taint$(OBJ_EXT) deb$(OBJ_EXT) globals$(OBJ_EXT)
99 !   
100   obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
101   
102   # Once perl has been Configure'd and built ok you build different
103 ***************
104 *** 203,209 ****
105   # grrr
106   SHELL = /bin/sh
107   
108 ! .c.o:
109         $(CCCMD) $(PLDLFLAGS) $*.c
110   
111   all: makefile miniperl $(private) $(plextract) $(public) $(dynamic_ext)
112 --- 204,210 ----
113   # grrr
114   SHELL = /bin/sh
115   
116 ! .c$(OBJ_EXT):
117         $(CCCMD) $(PLDLFLAGS) $*.c
118   
119   all: makefile miniperl $(private) $(plextract) $(public) $(dynamic_ext)
120 ***************
121 *** 220,236 ****
122   # The $& notation tells Sequent machines that it can do a parallel make,
123   # and is harmless otherwise.
124   
125 ! miniperl: $& miniperlmain.o $(perllib)
126 !       $(CC) $(LARGE) $(CLDFLAGS) -o miniperl miniperlmain.o $(perllib) $(libs)
127   
128 ! miniperlmain.o: miniperlmain.c
129         $(CCCMD) $(PLDLFLAGS) $*.c
130   
131   perlmain.c: miniperlmain.c config.sh makefile $(static_ext_autoinit)
132         sh writemain $(DYNALOADER) $(static_ext) > tmp
133         sh mv-if-diff tmp perlmain.c
134   
135 ! perlmain.o: perlmain.c
136         $(CCCMD) $(PLDLFLAGS) $*.c
137   
138   # The file ext.libs is a list of libraries that must be linked in
139 --- 221,237 ----
140   # The $& notation tells Sequent machines that it can do a parallel make,
141   # and is harmless otherwise.
142   
143 ! miniperl: $& miniperlmain$(OBJ_EXT) $(perllib)
144 !       $(CC) $(LARGE) $(CLDFLAGS) -o miniperl miniperlmain$(OBJ_EXT) $(perllib) $(libs)
145   
146 ! miniperlmain$(OBJ_EXT): miniperlmain.c
147         $(CCCMD) $(PLDLFLAGS) $*.c
148   
149   perlmain.c: miniperlmain.c config.sh makefile $(static_ext_autoinit)
150         sh writemain $(DYNALOADER) $(static_ext) > tmp
151         sh mv-if-diff tmp perlmain.c
152   
153 ! perlmain$(OBJ_EXT): perlmain.c
154         $(CCCMD) $(PLDLFLAGS) $*.c
155   
156   # The file ext.libs is a list of libraries that must be linked in
157 ***************
158 *** 239,266 ****
159   ext.libs: $(static_ext)
160         -@test -f ext.libs || touch ext.libs
161   
162 ! perl: $& perlmain.o $(perllib) $(DYNALOADER) $(static_ext) ext.libs
163 !       $(SHRPENV) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o perl perlmain.o $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
164   
165 ! pureperl: $& perlmain.o $(perllib) $(DYNALOADER) $(static_ext) ext.libs
166 !       purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain.o $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
167   
168 ! quantperl: $& perlmain.o $(perllib) $(DYNALOADER) $(static_ext) ext.libs
169 !       quantify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o quantperl perlmain.o $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
170   
171 ! $(perllib): $& perl.o $(obj)
172   !NO!SUBS!
173   
174   case "$d_shrplib" in
175   *define*)
176   $spitshell >>Makefile <<'!NO!SUBS!'
177 !       $(LD) $(LDDLFLAGS) -o $@ perl.o $(obj)
178   !NO!SUBS!
179   ;;
180   *)
181   $spitshell >>Makefile <<'!NO!SUBS!'
182         rm -f $(perllib)
183 !       $(AR) rcu $(perllib) perl.o $(obj)
184         @$(ranlib) $(perllib)
185   !NO!SUBS!
186   ;;
187 --- 240,279 ----
188   ext.libs: $(static_ext)
189         -@test -f ext.libs || touch ext.libs
190   
191 ! perl: $& perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) ext.libs
192 !       $(SHRPENV) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o perl perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
193   
194 ! pureperl: $& perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) ext.libs
195 !       purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
196   
197 ! quantperl: $& perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) ext.libs
198 !       quantify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o quantperl perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
199   
200 ! $(perllib): $& perl$(OBJ_EXT) $(obj)
201   !NO!SUBS!
202   
203   case "$d_shrplib" in
204   *define*)
205   $spitshell >>Makefile <<'!NO!SUBS!'
206 !       $(LD) $(LDDLFLAGS) -o $@ perl$(OBJ_EXT) $(obj)
207   !NO!SUBS!
208   ;;
209 + custom)
210 + if test -r $osname/Makefile.SHs ; then 
211 +   . $osname/Makefile.SHs
212 +   $spitshell >>Makefile <<!GROK!THIS!
213
214 + Makefile: $osname/Makefile.SHs
215
216 + !GROK!THIS!
217 + else
218 +   echo "Could not find $osname/Makefile.SH! Skipping target \$(perllib) in Makefile!"
219 + fi
220 + ;;
221   *)
222   $spitshell >>Makefile <<'!NO!SUBS!'
223         rm -f $(perllib)
224 !       $(AR) rcu $(perllib) perl$(OBJ_EXT) $(obj)
225         @$(ranlib) $(perllib)
226   !NO!SUBS!
227   ;;
228 ***************
229 *** 273,282 ****
230   # checks as well as the special code to validate that the script in question
231   # has been invoked correctly.
232   
233 ! suidperl: $& sperl.o perlmain.o $(perllib) $(DYNALOADER) $(static_ext) ext.libs
234 !       $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o suidperl perlmain.o sperl.o $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
235   
236 ! sperl.o: perl.c perly.h patchlevel.h $(h)
237         $(RMS) sperl.c
238         $(LNS) perl.c sperl.c
239         $(CCCMD) -DIAMSUID sperl.c
240 --- 286,295 ----
241   # checks as well as the special code to validate that the script in question
242   # has been invoked correctly.
243   
244 ! suidperl: $& sperl$(OBJ_EXT) perlmain$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) ext.libs
245 !       $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o suidperl perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(perllib) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
246   
247 ! sperl$(OBJ_EXT): perl.c perly.h patchlevel.h $(h)
248         $(RMS) sperl.c
249         $(LNS) perl.c sperl.c
250         $(CCCMD) -DIAMSUID sperl.c
251 ***************
252 *** 286,292 ****
253   #     test -d lib/auto || mkdir lib/auto
254   #
255   preplibrary: miniperl lib/Config.pm $(plextract)
256 !       @./makedir lib/auto
257         @echo " AutoSplitting perl library"
258         @./miniperl -Ilib -e 'use AutoSplit; \
259                 autosplit_lib_modules(@ARGV)' lib/*.pm lib/*/*.pm
260 --- 299,305 ----
261   #     test -d lib/auto || mkdir lib/auto
262   #
263   preplibrary: miniperl lib/Config.pm $(plextract)
264 !       @sh ./makedir lib/auto
265         @echo " AutoSplitting perl library"
266         @./miniperl -Ilib -e 'use AutoSplit; \
267                 autosplit_lib_modules(@ARGV)' lib/*.pm lib/*/*.pm
268 ***************
269 *** 304,317 ****
270   
271   install: all install.perl install.man
272   
273 ! install.perl: all
274         ./perl installperl
275   
276 ! install.man:  all
277         ./perl installman
278   
279   # Not implemented yet.
280 ! #install.html:        all
281   #     ./perl installhtml
282   
283   # I now supply perly.c with the kits, so the following section is
284 --- 317,330 ----
285   
286   install: all install.perl install.man
287   
288 ! install.perl: all installperl
289         ./perl installperl
290   
291 ! install.man:  all installman
292         ./perl installman
293   
294   # Not implemented yet.
295 ! #install.html:        all installhtml
296   #     ./perl installhtml
297   
298   # I now supply perly.c with the kits, so the following section is
299 ***************
300 *** 371,378 ****
301         @sh ext/util/make_ext static $@ LIBPERL_A=$(perllib)
302   
303   clean:
304 !       rm -f *.o *.a all perlmain.c
305         rm -f perl.exp ext.libs
306         -cd x2p; $(MAKE) clean
307         -cd pod; $(MAKE) clean
308         -@for x in $(DYNALOADER) $(dynamic_ext) $(static_ext) ; do \
309 --- 384,392 ----
310         @sh ext/util/make_ext static $@ LIBPERL_A=$(perllib)
311   
312   clean:
313 !       rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c
314         rm -f perl.exp ext.libs
315 +       -rm perl.export perl.dll perl.libexp perl.map perl.def
316         -cd x2p; $(MAKE) clean
317         -cd pod; $(MAKE) clean
318         -@for x in $(DYNALOADER) $(dynamic_ext) $(static_ext) ; do \
319 ***************
320 *** 389,395 ****
321         done
322         rm -f *.orig */*.orig *~ */*~ core t/core t/c t/perl
323         rm -rf $(addedbyconf)
324 !       rm -f makefile makefile.old
325         rm -f $(private)
326         rm -rf lib/auto
327         rm -f lib/.exists
328 --- 403,409 ----
329         done
330         rm -f *.orig */*.orig *~ */*~ core t/core t/c t/perl
331         rm -rf $(addedbyconf)
332 !       rm -f $(FIRSTMAKEFILE) $(FIRSTMAKEFILE).old
333         rm -f $(private)
334         rm -rf lib/auto
335         rm -f lib/.exists
336 ***************
337 *** 410,434 ****
338   lint: perly.c $(c)
339         lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz
340   
341 ! makefile:     Makefile
342 !       $(MAKE) depend
343   
344   config.h: config.sh
345         /bin/sh config_h.SH
346   
347   # When done, touch perlmain.c so that it doesn't get remade each time.
348   depend: makedepend
349 !       ./makedepend
350         - test -s perlmain.c && touch perlmain.c
351         cd x2p; $(MAKE) depend
352   
353   test: miniperl perl preplibrary $(dynamic_ext)
354         - cd t && chmod +x TEST */*.t
355 !       - cd t && (rm -f perl; $(LNS) ../perl perl) && ./perl TEST </dev/tty
356   
357   minitest: miniperl
358         - cd t && chmod +x TEST */*.t
359 !       - cd t && (rm -f perl; $(LNS) ../miniperl perl) \
360                 && ./perl TEST base/*.t comp/*.t cmd/*.t io/*.t op/*.t </dev/tty
361   
362   clist:        $(c)
363 --- 424,456 ----
364   lint: perly.c $(c)
365         lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz
366   
367 ! # Need to unset during recursion to go out of loop
368
369 ! MAKEDEPEND = makedepend
370
371 ! $(FIRSTMAKEFILE):     Makefile $(MAKEDEPEND)
372 !       $(MAKE) depend MAKEDEPEND=
373   
374   config.h: config.sh
375         /bin/sh config_h.SH
376   
377   # When done, touch perlmain.c so that it doesn't get remade each time.
378   depend: makedepend
379 !       sh ./makedepend
380         - test -s perlmain.c && touch perlmain.c
381         cd x2p; $(MAKE) depend
382   
383 + # Cannot postpone this until $firstmakefile is ready ;-)
384 + makedepend: makedepend.SH config.sh
385 +       sh ./makedepend.SH
386
387   test: miniperl perl preplibrary $(dynamic_ext)
388         - cd t && chmod +x TEST */*.t
389 !       - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../perl$(EXE_EXT) perl$(EXE_EXT)) && ./perl TEST </dev/tty
390   
391   minitest: miniperl
392         - cd t && chmod +x TEST */*.t
393 !       - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \
394                 && ./perl TEST base/*.t comp/*.t cmd/*.t io/*.t op/*.t </dev/tty
395   
396   clist:        $(c)
397 ***************
398 *** 451,457 ****
399   case `pwd` in
400   *SH)
401       $rm -f ../Makefile
402 !     ln Makefile ../Makefile
403       ;;
404   esac
405 ! rm -f makefile
406 --- 473,479 ----
407   case `pwd` in
408   *SH)
409       $rm -f ../Makefile
410 !     $ln Makefile ../Makefile
411       ;;
412   esac
413 ! $rm -f $firstmakefile