1 |
# makefile for making pcl -- W. Schelter. |
# makefile for making pcl -- W. Schelter. |
2 |
|
|
3 |
# Directions: |
-include ../makedefs |
|
# make -f makefile.gcl compile |
|
|
# make -f makefile.gcl saved_pcl |
|
4 |
|
|
5 |
#LISP=../unixport/saved_gcl |
FILES:=$(shell ls -1 pcl_*.lisp | sed 's,\.lisp,,1') pcl_gcl_low |
6 |
|
|
7 |
|
GFILES1:= 0 1 2 3 4 5 6 7 |
8 |
|
GFILES:=$(addprefix pcl_gazonk,$(GFILES1)) |
9 |
|
|
10 |
|
AFILES:=$(FILES) $(GFILES) |
11 |
|
|
12 |
SETUP='(load "sys-package.lisp")' \ |
SETUP='(load "sys-package.lisp")' \ |
13 |
'(setq *features* (delete (quote kcl) *features*))'\ |
'(setq *features* (delete (quote kcl) *features*))'\ |
14 |
'(load "defsys.lisp")(push (quote kcl) *features*)' \ |
'(load "defsys.lisp")(push (quote kcl) *features*)' \ |
15 |
'(setq pcl::*default-pathname-extensions* (cons "lisp" "o"))' \ |
'(setq pcl::*default-pathname-extensions* (cons "lisp" "o"))' \ |
16 |
'(setq pcl::*pathname-extensions* (cons "lisp" "o"))' \ |
'(setq pcl::*pathname-extensions* (cons "lisp" "o"))' \ |
17 |
'(load "sys-proclaim.lisp")(compiler::emit-fn t)' |
'(load "sys-proclaim.lisp")' \ |
18 |
|
'(setq compiler::*default-h-file* t)'\ |
19 |
compile: |
'(setq compiler::*default-c-file* t)'\ |
20 |
echo ${SETUP} '(pcl::compile-pcl)' | $(LISP) |
'(setq compiler::*default-data-file* t)'\ |
21 |
|
'(setq compiler::*default-system-p* t)' \ |
22 |
saved_gcl_pcl: |
'(setq compiler::*keep-gaz* t)' |
23 |
echo ${SETUP} '(pcl::load-pcl)(si::save-system "saved_gcl_pcl")' | $(LISP) |
|
24 |
|
all: $(addsuffix .c,$(AFILES)) $(addsuffix .o,$(AFILES)) |
25 |
|
|
26 |
|
saved_gcl_pcl: ../unixport/saved_gcl |
27 |
|
cp ../h/cmpinclude.h . |
28 |
|
echo $(SETUP) '(pcl::compile-pcl)' | $< |
29 |
|
echo $(SETUP) '(pcl::load-pcl)(si::save-system "$@")' | $< |
30 |
|
|
31 |
|
$(addsuffix .c,$(AFILES)) $(addsuffix .data,$(AFILES))\ |
32 |
|
$(addsuffix .h,$(AFILES)) $(addsuffix .lsp,$(GFILES)): \ |
33 |
|
$(addsuffix .lisp,$(subst pcl_gcl_low,impl/gcl/pcl_gcl_low,$(FILES))) |
34 |
|
rm -f *.o *gazonk* |
35 |
|
cp ../h/cmpinclude.h . |
36 |
|
echo ${SETUP} '(pcl::compile-pcl)' | ../unixport/saved_gcl ../unixport/ |
37 |
|
# FIXME -- small compiler setjmp/volatile detection bug -- CM |
38 |
|
patch -p0 <pcl_methods.patch |
39 |
|
rm -f pcl_methods.o |
40 |
|
for i in gazonk* ; do j=$$(echo $$i | sed 's,\..*$$,,1');\ |
41 |
|
cat $$i | sed "s,$$j,pcl_$$j,g" >pcl_$$i && rm $$i; done |
42 |
|
|
43 |
|
%.o: %.c %.h %.data |
44 |
|
$(CC) $(CFLAGS) -c $< -o $@ |
45 |
|
../xbin/append $*.data $@ |
46 |
|
|
47 |
clean: |
clean: |
48 |
rm -f *.o *.fn *.exe *.dll saved_gcl_pcl |
rm -f *.o *.fn *.exe *.dll saved_gcl_pcl cmpinclude.h |
49 |
|
|
50 |
|
|
51 |
# remake the sys-package.lisp and sys-proclaim.lisp files |
# remake the sys-package.lisp and sys-proclaim.lisp files |
52 |
# Those files may be empty on a first build. |
# Those files may be empty on a first build. |
53 |
remake-sys-files: |
remake-sys-files: |
54 |
echo ${SETUP} '(pcl::load-pcl)(in-package "PCL")(renew-sys-files)' | $(LISP) |
rm -f *.o *gazonk* |
55 |
|
cp ../h/cmpinclude.h . |
56 |
|
echo ${SETUP} '(load "../cmpnew/collectfn.lsp")(compiler::emit-fn t)' \ |
57 |
|
'(pcl::compile-pcl)' | ../unixport/saved_gcl ../unixport/ |
58 |
|
echo ${SETUP} '(load "../cmpnew/collectfn.lsp") '\ |
59 |
|
'(pcl::load-pcl)(in-package "PCL")(renew-sys-files)' | \ |
60 |
|
../unixport/saved_gcl ../unixport/ |
61 |
cp sys-proclaim.lisp xxx |
cp sys-proclaim.lisp xxx |
62 |
cat xxx | sed -e "s/COMPILER::CMP-ANON//g" > sys-proclaim.lisp |
cat xxx | sed -e "s/COMPILER::CMP-ANON//g" > sys-proclaim.lisp |
63 |
rm xxx |
rm xxx |