- Added BUILD_RUNNABLE variable which has to point to a Scheme 48 0.53 executable

- Changed the rule for scsh/scsh.image to make ./go work and added
  install-scsh-image to set =scheme48 correctly in the installed version

- Added an additional run of ./configure to autogen to have a Makefile for the rest
This commit is contained in:
mainzelm 2001-05-30 12:13:07 +00:00
parent 8f02923726
commit 574cbd804e
2 changed files with 24 additions and 17 deletions

View File

@ -43,7 +43,11 @@ mandir = $(prefix)/man/man$(manext)
.c.o:
$(CC) -g -c $(CPPFLAGS) $(DEFS) -I$(srcdir)/c -I$(srcdir)/cig $(CFLAGS) -o $@ $<
RUNNABLE = scheme48
# BUILD_RUNNABLE has to be Scheme 48 0.53. This is used for builds directly
# out of the CVS repository.
# We cannot use Scsh here since -i is not understood.
BUILD_RUNNABLE = scheme48
RUNNABLE = scsh
MANPAGE = $(RUNNABLE).$(manext)
LIB = $(libdir)/$(RUNNABLE)
@ -82,8 +86,8 @@ BIG_HEAP = -h 5000000
# LINKER_RUNNABLE = $(LINKER_VM) -i $(IMAGE)
# therefor according to 2. but we cannot use scsh since -i is not understood
LINKER_VM = scheme48 $(BIG_HEAP)
LINKER_RUNNABLE = scheme48
LINKER_VM = $(BUILD_RUNNABLE) $(BIG_HEAP)
LINKER_RUNNABLE = $(BUILD_RUNNABLE)
LINKER_IMAGE = build/linker.image
LINKER = $(LINKER_VM) -i $(LINKER_IMAGE)
@ -324,10 +328,6 @@ install: enough dirs inst-script inst-vm inst-misc inst-man inst-inc \
inst-vm: $(VM)
$(INSTALL_PROGRAM) $(VM) $(LIB)
inst-image: $(IMAGE)
$(INSTALL_DATA) $(IMAGE) $(LIB)
inst-man:
if [ -d $(mandir) -a -w $(mandir) ]; then \
sed 's=LBIN=$(bindir)=g' doc/scsh.man | \
@ -368,7 +368,7 @@ inst-doc:
done
inst-script:
script=$(bindir)/$(RUNNABLE) && \
script=$(bindir)/$(BUILD_RUNNABLE) && \
echo '#!/bin/sh' >$$script && \
echo >>$$script && \
echo 'lib=$(LIB)' >>$$script && \
@ -529,7 +529,7 @@ PACKAGES=scheme/packages.scm scheme/rts-packages.scm scheme/alt-packages.scm \
build/filenames.scm
build/filenames.make: $(PACKAGES)
$(RUNNABLE) -a batch <build/filenames.scm
$(BUILD_RUNNABLE) -a batch <build/filenames.scm
# --------------------
# Static linker
@ -627,7 +627,7 @@ mini-heap.o: mini-heap.c
mini-heap.c: scheme/debug/mini1.image
(echo ,exec ,load misc/load-static.scm; \
echo \(do-it 150000 \"$(srcdir)/scheme/debug/mini1.image\" \"$@\"\)) \
| $(RUNNABLE) -h 3000000 -a batch
| $(BUILD_RUNNABLE) -h 3000000 -a batch
scheme/debug/mini1.image: $(VM) scheme/debug/mini.image
echo "(write-image \"scheme/debug/mini1.image\" \
@ -652,7 +652,7 @@ c/scheme48.h: c/scheme48.h.in scheme/vm/arch.scm scheme/vm/data.scm \
\"$(srcdir)/scheme/vm/arch.scm\" \
\"$(srcdir)/scheme/vm/data.scm\" \
\"$(srcdir)/scheme/rts/record.scm\")" \
) | $(RUNNABLE)
) | $(BUILD_RUNNABLE)
# An old version of the above for legacy code.
@ -666,7 +666,7 @@ c/old-scheme48.h: scheme/vm/arch.scm scheme/vm/data.scm \
echo "(make-c-header-file \"$@\" \
\"$(srcdir)/scheme/vm/arch.scm\" \
\"$(srcdir)/scheme/vm/data.scm\")" \
) | $(RUNNABLE)
) | $(BUILD_RUNNABLE)
# Generate vm (scheme48vm.c and scheme48heap.c) from VM sources.
# Never called automatically. Do not use unless you are sure you
@ -681,7 +681,7 @@ i-know-what-i-am-doing:
echo ',exec ,load compile-vm-no-gc.scm'; \
echo ',exec ,load compile-gc.scm'; \
echo ',exit' \
) | $(RUNNABLE) -h 5000000 && \
) | $(BUILD_RUNNABLE) -h 5000000 && \
mv ../scheme/vm/scheme48vm.c ../scheme/vm/scheme48heap.c ../c
cig: $(CIG) $(CIG).image $(LIBCIG)
@ -821,7 +821,6 @@ scsh/scsh.image: $(VM) $(SCHEME) $(CIG).image
echo ",load $(loads)"; \
echo ",load-package scsh"; \
echo ",load-package scsh-here-string-hax"; \
echo ",translate =scheme48/ $(LIB)/"; \
echo ",load-package list-lib"; \
echo ",load-package string-lib"; \
echo ",load-package ccp-lib"; \
@ -840,16 +839,23 @@ scsh/scsh.image: $(VM) $(SCHEME) $(CIG).image
scsh/regexp/libregex.a:
cd ./scsh/regexp; $(MAKE) lib
install-scsh: scsh
install-scsh: scsh install-scsh-image
$(RM) $(bindir)/$(RUNNABLE)
$(INSTALL_PROGRAM) $(srcdir)/scsh/scsh $(bindir)/$(RUNNABLE)
$(INSTALL_PROGRAM) $(srcdir)/scsh/scsh.image $(LIB)/scsh.image
$(INSTALL_PROGRAM) $(srcdir)/$(LIBSCSHVM) $(libdir)/$(LIBSCSHVM)
$(INSTALL_PROGRAM) $(srcdir)/$(LIBSCSH) $(libdir)/$(LIBSCSH)
$(RANLIB) $(libdir)/$(LIBSCSH)
for f in $(srcdir)/scsh/*.scm; \
do $(INSTALL_DATA) $$f $(LIB)/scsh/; done
install-scsh-image:
rm -f '/tmp/scsh.image' &&
( echo ',translate =scheme48 $(LIB)'; \
echo '(dump-scsh "/tmp/scsh.image")'; \
echo ',exit'; \
) | ./$(VM) -i scsh/scsh.image &&
$(INSTALL_DATA) /tmp/scsh.image $(LIB)/scsh.image
clean-scsh:
$(RM) scsh/*.o scsh/regexp/*.o scsh/rx/*.o scsh/machine/*.o
$(RM) scsh/*.image

View File

@ -1,8 +1,8 @@
#! /bin/sh
rm -f config.cache
autoheader
autoconf
./configure
touch scsh/*.c
touch build/filenames.scm
rm -f scheme48.image cig/cig.image scsh/scsh.image
@ -11,3 +11,4 @@ make build/filenames.make
make i-know-what-i-am-doing
make linker
make build/initial.image
make distclean