Use PERL=../miniperl
[p5sagit/p5-mst-13.2.git] / os2 / diff.Makefile
CommitLineData
3e01a666 1*** Makefile.SH.orig Mon Nov 20 12:56:12 1995
2--- Makefile.SH Fri Dec 08 00:02:46 1995
4633a7c4 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
3e01a666 18--- 31,44 ----
4633a7c4 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
3e01a666 42--- 54,60 ----
4633a7c4 43 static_ai_list=' '
44 for f in $static_ext; do
45 base=`echo "$f" | sed 's/.*\///'`
3e01a666 46! static_list="$static_list lib/auto/$f/$base\$(LIB_EXT)"
4633a7c4 47 if test -f ext/$f/AutoInit.c; then
48 static_ai_list="$static_ai_list ext/$f/AutoInit.c"
49 fi
50***************
3e01a666 51*** 115,122 ****
4633a7c4 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
3e01a666 60--- 116,122 ----
4633a7c4 61 static_ext = $static_list
62 ext = \$(dynamic_ext) \$(static_ext)
63 static_ext_autoinit = $static_ai_list
3e01a666 64! DYNALOADER = lib/auto/DynaLoader/DynaLoader\$(LIB_EXT)
4633a7c4 65
66 libs = $libs $cryptlib
4633a7c4 67
3e01a666 68***************
69*** 140,145 ****
70--- 140,147 ----
71 # Any special object files needed by this architecture, e.g. os2/os2.obj
72 ARCHOBJS = $archobjs
4633a7c4 73
3e01a666 74+ .SUFFIXES: .c \$(OBJ_EXT)
4633a7c4 75+
4633a7c4 76 !GROK!THIS!
3e01a666 77
78 ## In the following dollars and backticks do not need the extra backslash.
4633a7c4 79***************
3e01a666 80*** 180,190 ****
4633a7c4 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
3e01a666 87!
88!
89 obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
4633a7c4 90
91 # Once perl has been Configure'd and built ok you build different
3e01a666 92--- 182,191 ----
4633a7c4 93
94 c = $(c1) $(c2) $(c3) miniperlmain.c perlmain.c
95
3e01a666 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)
4633a7c4 101
102 # Once perl has been Configure'd and built ok you build different
4633a7c4 103***************
3e01a666 104*** 203,209 ****
4633a7c4 105 # grrr
106 SHELL = /bin/sh
107
108! .c.o:
109 $(CCCMD) $(PLDLFLAGS) $*.c
110
3e01a666 111 all: makefile miniperl $(private) $(plextract) $(public) $(dynamic_ext)
112--- 204,210 ----
4633a7c4 113 # grrr
114 SHELL = /bin/sh
115
3e01a666 116! .c$(OBJ_EXT):
4633a7c4 117 $(CCCMD) $(PLDLFLAGS) $*.c
118
3e01a666 119 all: makefile miniperl $(private) $(plextract) $(public) $(dynamic_ext)
4633a7c4 120***************
3e01a666 121*** 220,236 ****
4633a7c4 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
3e01a666 131 perlmain.c: miniperlmain.c config.sh makefile $(static_ext_autoinit)
4633a7c4 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
3e01a666 139--- 221,237 ----
4633a7c4 140 # The $& notation tells Sequent machines that it can do a parallel make,
141 # and is harmless otherwise.
142
3e01a666 143! miniperl: $& miniperlmain$(OBJ_EXT) $(perllib)
144! $(CC) $(LARGE) $(CLDFLAGS) -o miniperl miniperlmain$(OBJ_EXT) $(perllib) $(libs)
4633a7c4 145
3e01a666 146! miniperlmain$(OBJ_EXT): miniperlmain.c
4633a7c4 147 $(CCCMD) $(PLDLFLAGS) $*.c
148
3e01a666 149 perlmain.c: miniperlmain.c config.sh makefile $(static_ext_autoinit)
4633a7c4 150 sh writemain $(DYNALOADER) $(static_ext) > tmp
151 sh mv-if-diff tmp perlmain.c
152
3e01a666 153! perlmain$(OBJ_EXT): perlmain.c
4633a7c4 154 $(CCCMD) $(PLDLFLAGS) $*.c
155
156 # The file ext.libs is a list of libraries that must be linked in
157***************
3e01a666 158*** 239,266 ****
4633a7c4 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
3e01a666 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)
4633a7c4 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)
3e01a666 183! $(AR) rcu $(perllib) perl.o $(obj)
4633a7c4 184 @$(ranlib) $(perllib)
185 !NO!SUBS!
186 ;;
3e01a666 187--- 240,279 ----
4633a7c4 188 ext.libs: $(static_ext)
189 -@test -f ext.libs || touch ext.libs
190
3e01a666 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)
4633a7c4 193
3e01a666 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)
4633a7c4 196
3e01a666 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)
4633a7c4 199
3e01a666 200! $(perllib): $& perl$(OBJ_EXT) $(obj)
4633a7c4 201 !NO!SUBS!
4633a7c4 202
203 case "$d_shrplib" in
204 *define*)
205 $spitshell >>Makefile <<'!NO!SUBS!'
3e01a666 206! $(LD) $(LDDLFLAGS) -o $@ perl$(OBJ_EXT) $(obj)
4633a7c4 207 !NO!SUBS!
208 ;;
209+ custom)
3e01a666 210+ if test -r $osname/Makefile.SHs ; then
211+ . $osname/Makefile.SHs
4633a7c4 212+ $spitshell >>Makefile <<!GROK!THIS!
213+
3e01a666 214+ Makefile: $osname/Makefile.SHs
4633a7c4 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)
3e01a666 224! $(AR) rcu $(perllib) perl$(OBJ_EXT) $(obj)
4633a7c4 225 @$(ranlib) $(perllib)
226 !NO!SUBS!
227 ;;
228***************
3e01a666 229*** 273,282 ****
4633a7c4 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
3e01a666 240--- 286,295 ----
4633a7c4 241 # checks as well as the special code to validate that the script in question
242 # has been invoked correctly.
243
3e01a666 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)
4633a7c4 246
3e01a666 247! sperl$(OBJ_EXT): perl.c perly.h patchlevel.h $(h)
4633a7c4 248 $(RMS) sperl.c
249 $(LNS) perl.c sperl.c
250 $(CCCMD) -DIAMSUID sperl.c
251***************
3e01a666 252*** 286,292 ****
4633a7c4 253 # test -d lib/auto || mkdir lib/auto
254 #
3e01a666 255 preplibrary: miniperl lib/Config.pm $(plextract)
4633a7c4 256! @./makedir lib/auto
257 @echo " AutoSplitting perl library"
258 @./miniperl -Ilib -e 'use AutoSplit; \
259 autosplit_lib_modules(@ARGV)' lib/*.pm lib/*/*.pm
3e01a666 260--- 299,305 ----
4633a7c4 261 # test -d lib/auto || mkdir lib/auto
262 #
3e01a666 263 preplibrary: miniperl lib/Config.pm $(plextract)
4633a7c4 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***************
3e01a666 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 ****
4633a7c4 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 \
3e01a666 309--- 384,392 ----
4633a7c4 310 @sh ext/util/make_ext static $@ LIBPERL_A=$(perllib)
311
312 clean:
3e01a666 313! rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c
4633a7c4 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***************
3e01a666 320*** 389,395 ****
4633a7c4 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
3e01a666 328--- 403,409 ----
4633a7c4 329 done
330 rm -f *.orig */*.orig *~ */*~ core t/core t/c t/perl
331 rm -rf $(addedbyconf)
3e01a666 332! rm -f $(FIRSTMAKEFILE) $(FIRSTMAKEFILE).old
4633a7c4 333 rm -f $(private)
334 rm -rf lib/auto
335 rm -f lib/.exists
336***************
3e01a666 337*** 410,434 ****
4633a7c4 338 lint: perly.c $(c)
339 lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz
340
341! makefile: Makefile
3e01a666 342! $(MAKE) depend
4633a7c4 343
344 config.h: config.sh
3e01a666 345 /bin/sh config_h.SH
4633a7c4 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)
3e01a666 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
4633a7c4 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
3e01a666 383+ # Cannot postpone this until $firstmakefile is ready ;-)
384+ makedepend: makedepend.SH config.sh
385+ sh ./makedepend.SH
386+
4633a7c4 387 test: miniperl perl preplibrary $(dynamic_ext)
388 - cd t && chmod +x TEST */*.t
3e01a666 389! - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../perl$(EXE_EXT) perl$(EXE_EXT)) && ./perl TEST </dev/tty
4633a7c4 390
391 minitest: miniperl
392 - cd t && chmod +x TEST */*.t
3e01a666 393! - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \
4633a7c4 394 && ./perl TEST base/*.t comp/*.t cmd/*.t io/*.t op/*.t </dev/tty
395
396 clist: $(c)
397***************
3e01a666 398*** 451,457 ****
4633a7c4 399 case `pwd` in
400 *SH)
401 $rm -f ../Makefile
402! ln Makefile ../Makefile
403 ;;
404 esac
405! rm -f makefile
3e01a666 406--- 473,479 ----
4633a7c4 407 case `pwd` in
408 *SH)
409 $rm -f ../Makefile
410! $ln Makefile ../Makefile
411 ;;
412 esac
3e01a666 413! $rm -f $firstmakefile