aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rwxr-xr-x[-rw-r--r--]Makefile785
1 files changed, 435 insertions, 350 deletions
diff --git a/Makefile b/Makefile
index 1477c86..67487a9 100644..100755
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
# "Makefile" for scm Scheme Interpreter
-# Copyright (C) 1990-2008 Free Software Foundation, Inc.
+# Copyright (C) 1990-2008, 2010 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as
@@ -17,56 +17,69 @@
# Author: Aubrey Jaffer
+# These are normally set in "config.status"; defaults are here so that
+# "make" won't complain about target redefinitions.
+snapdir=$(HOME)/pub/
+infodir=$(HOME)/info/
+htmldir=$(HOME)/public_html/
+
SHELL = /bin/sh
-#CC = gcc
-#CFLAGS = -g
-#LIBS =
-#LD = $(CC) -g
-LD = $(CC)
+INSTALL = install
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_INFO = ginstall-info
+
SCMLIT = ./scmlit
SCMEXE = ./scm
-#SHOBJS = *.sl
-SHOBJS = *.so
-
-#BUILD = ./build -hsystem -p svr4-gcc-sun-ld
BUILD = ./build -hsystem
-# Workaround for unexec on Fedora Core 1 GNU/Linux i386
+TEXI2HTML = /usr/local/bin/texi2html -split -verbose
+TEXI2PDF = texi2pdf
+VIEWPDF = evince
+MAKEDEV = $(MAKE) -f $(HOME)/makefile.dev
+CHPAT = $(HOME)/bin/chpat
+RSYNC = rsync -av
+Uploadee = csail
+SCMOPTS = udscm[45].opt scm[45].opt
+
+# OS-X 10.6, but harmless for other OS.
+SETARCH = env DYLD_NO_PIE=1
+# Fedora-Core-1
#SETARCH = setarch i386
-# http://jamesthornton.com/writing/emacs-compile.html
-# [For FC3] combreloc has become the default for recent GNU ld, which
-# breaks the unexec/undump on all versions of both Emacs and
-# XEmacs...
-#
-# Add the following to udscm5.opt:
-#--linker-options="-z nocombreloc"
-
-# http://www.opensubscriber.com/message/emacs-devel@gnu.org/1007118.html
-# Kernels later than 2.6.11 must do (as root) before dumping:
-#echo 0 > /proc/sys/kernel/randomize_va_space
+#CC = gcc
+#CFLAGS = -g
+#LIBS =
+#LD = $(CC) -g
+LD = $(CC)
-#for RPMs
+# VERSION is defined in "patchlvl.h"
+# RELEASE is for RPMs
RELEASE = 1
-intro:
+intro: config.status
@echo
- @echo "This is the scm-$(VERSION) distribution. Read \"scm.info\""
+ @echo "This is the scm $(VERSION) distribution. Read \"scm.info\""
@echo "to learn how to build and install SCM. Or browse"
- @echo " http://swiss.csail.mit.edu/~jaffer/SCM"
+ @echo " http://people.csail.mit.edu/jaffer/SCM"
@echo
- $(MAKE) scm
-srcdir.mk: Makefile
- echo "CPROTO=`type cproto | sed 's%.* %%'`" > srcdir.mk
- echo "srcdir=`pwd`/" >> srcdir.mk
-#srcdir=$(HOME)/scm/
-#srcdir=/usr/local/src/scm/
-include srcdir.mk
+# ./configure --distdir=${HOME}/dist/ --snapdir=${HOME}/pub/ --htmldir=${HOME}/public_html/ --pdfdir=${HOME}/public_html/
+
+config.status:
+ ./configure
+Makefile: config.status
+include config.status
+
+libscmdir = $(libdir)scm/
+windistdir = /c/Voluntocracy/dist/
+rpm_prefix = $(HOME)/rpmbuild/
+prevdocsdir = prevdocs/
+
+# This should be moved to "config.status"
+x11incdir=/usr/include/
# directory where COPYING and InitXXX.scm reside.
-#IMPLPATH = /usr/local/src/scm/
-#this one is good for bootstrapping
#IMPLPATH = `pwd`/
IMPLPATH=$(srcdir)
include patchlvl.h
@@ -81,8 +94,9 @@ cfiles = scmmain.c scm.c time.c repl.c ioext.c scl.c sys.c eval.c \
subr.c sc2.c unif.c rgx.c crs.c dynl.c record.c posix.c socket.c\
unix.c rope.c ramap.c gsubr.c edline.c continue.c \
findexec.c script.c debug.c byte.c bytenumb.c differ.c
-ufiles = pre-crt0.c ecrt0.c gmalloc.c unexec.c unexelf.c unexhp9k800.c \
- unexsunos4.c unexalpha.c unexsgi.c
+ufiles = pre-crt0.c ecrt0.c gmalloc.c unexec.c unexelf.c unexhp9k800.c \
+ unexsunos4.c unexalpha.c unexsgi.c unexmacosx.c \
+ macosx-config.h lastfile.c
# cxux-crt0.s ecrt0.c gmalloc.c pre-crt0.c unexaix.c unexalpha.c \
# unexapollo.c unexconvex.c unexec.c unexelf.c unexelf1.c \
# unexencap.c unexenix.c unexfx2800.c unexhp9k800.c unexmips.c \
@@ -97,16 +111,244 @@ turfiles = turtlegr.c turtle grtest.scm
xafiles = xatoms.scm x11.scm xevent.scm keysymdef.scm
xfiles = x.c x.h xgen.scm xevent.h inc2scm $(xafiles)
-all: require.scm
- $(MAKE) mydlls
- $(MAKE) dscm5
- $(MAKE) differ.so
- $(MAKE) db.so
- if [ -d /usr/X11R6/lib ]; then $(MAKE) x.so; fi
+tfiles = r4rstest.scm example.scm pi.scm pi.c split.scm bench.scm \
+ syntest2.scm syntest1.scm
+texifiles = scm.texi fdl.texi indexes.texi platform.txi features.txi
+dfiles = ANNOUNCE README COPYING COPYING.LESSER scm.1 scm.doc QUICKREF \
+ $(texifiles) scm.info Xlibscm.info Xlibscm.texi \
+ hobbit.info hobbit.texi
+mfiles = configure Makefile build.scm build build.bat requires.scm \
+ .gdbinit mkimpcat.scm disarm.scm scm.spec scm.nsi
+sfiles = setjump.mar setjump.s ugsetjump.s continue-ia64.S \
+ get-contoffset-ia64.c
+wbfiles = wbtab.scm rwb-isam.scm
+catfiles = implcat slibcat
+afiles = $(dfiles) ChangeLog $(cfiles) $(hfiles) $(ifiles) $(tfiles) \
+ $(mfiles) $(hobfiles) $(sfiles) $(ufiles) $(xfiles) \
+ version.txi # $(wbfiles) $(turfiles)
+
+lsdfiles = $(ifiles) $(hobfiles) COPYING COPYING.LESSER r4rstest.scm \
+ build.scm mkimpcat.scm patchlvl.h
+#*.sl
+
+ctagfiles = $(hfiles) $(cfiles) $(xfiles)
+tagfiles = $(ctagfiles) $(ifiles) $(sfiles) $(mfiles) \
+ Xlibscm.texi hobbit.texi build hobbit.scm
+# # $(ufiles) ChangeLog $(dfiles)
+
+installdirs:
+ mkdir -p $(DESTDIR)$(includedir)
+ mkdir -p $(DESTDIR)$(bindir)
+ mkdir -p $(DESTDIR)$(libdir)
+ mkdir -p $(DESTDIR)$(libscmdir)
+ mkdir -p $(DESTDIR)$(mandir)man1/
+ mkdir -p $(DESTDIR)$(infodir)
+ mkdir -p $(DESTDIR)$(pdfdir)
+ mkdir -p $(DESTDIR)$(dvidir)
+
+platform.txi: build.scm
+ $(MAKE) $(SCMLIT)
+ $(SCMLIT) -r database-browse -l build.scm \
+ -e "(browse build 'platform)" > platform.txi
+features.txi: build build.scm
+ $(MAKE) $(SCMLIT)
+ $(SCMLIT) -l build -e"(make-features-txi)"
+
+scm.dvi: $(texifiles) Makefile
+ $(TEXI2DVI) -b -c $<
+Xlibscm.dvi: Xlibscm.texi version.txi
+ $(TEXI2DVI) -b -c $<
+hobbit.dvi: hobbit.texi version.txi
+ $(TEXI2DVI) -b -c $<
+dvi: scm.dvi Xlibscm.dvi hobbit.dvi
+xdvi: scm.dvi
+ xdvi $<
+Xdvi: Xlibscm.dvi
+ xdvi $<
+hobdvi: hobbit.dvi
+ xdvi $<
+install-dvi: scm.dvi Xlibscm.dvi hobbit.dvi
+ $(INSTALL_DATA) $< Xlibscm.dvi hobbit.dvi $(DESTDIR)$(dvidir)
+
+scm.pdf: $(texifiles)
+ $(TEXI2PDF) -b -c $<
+Xlibscm.pdf: Xlibscm.texi version.txi
+ $(TEXI2PDF) -b -c $<
+hobbit.pdf: hobbit.texi version.txi
+ $(TEXI2PDF) -b -c $<
+pdf: scm.pdf Xlibscm.pdf hobbit.pdf
+xpdf: scm.pdf
+ $(VIEWPDF) $<
+Xpdf: Xlibscm.pdf
+ $(VIEWPDF) $<
+hobpdf: hobbit.pdf
+ $(VIEWPDF) $<
+install-pdf: scm.pdf Xlibscm.pdf hobbit.pdf
+ $(INSTALL_DATA) $< Xlibscm.pdf hobbit.pdf $(DESTDIR)$(pdfdir)
+
+scm_toc.html: $(texifiles)
+ $(TEXI2HTML) $<
+$(DESTDIR)$(htmldir)scm_toc.html: scm_toc.html installdirs
+ -rm -f scm_stoc.html
+ if [ -f $(prevdocsdir)scm_toc.html ]; \
+ then hitch $(prevdocsdir)scm_\*.html scm_\*.html \
+ $(DESTDIR)$(htmldir); \
+ else $(INSTALL_DATA) scm_*.html $(DESTDIR)$(htmldir); fi
+
+Xlibscm_toc.html: Xlibscm.texi version.txi
+ $(TEXI2HTML) $<
+$(DESTDIR)$(htmldir)Xlibscm_toc.html: Xlibscm_toc.html installdirs
+ -rm -f Xlibscm_stoc.html
+ chpat '</HEAD>' '<LINK REL="icon" HREF="Logo/SCM.ico">\
+<LINK REL="shortcut icon" HREF="Logo/SCM.ico">\
+</HEAD>' Xlibscm_*.html
+ $(INSTALL_DATA) Xlibscm_*.html $(DESTDIR)$(htmldir)
+
+hobbit_toc.html: hobbit.texi version.txi
+ $(TEXI2HTML) $<
+$(DESTDIR)$(htmldir)hobbit_toc.html: hobbit_toc.html installdirs
+ -rm -f hobbit_stoc.html
+ chpat '</HEAD>' '<LINK REL="icon" HREF="Logo/SCM.ico">\
+<LINK REL="shortcut icon" HREF="Logo/SCM.ico">\
+</HEAD>' hobbit_*.html
+ $(INSTALL_DATA) hobbit_*.html $(DESTDIR)$(htmldir)
+
+# html: scm_toc.html Xlibscm_toc.html hobbit_toc.html
+
+# install-html: $(DESTDIR)$(htmldir)scm_toc.html \
+# $(DESTDIR)$(htmldir)Xlibscm_toc.html \
+# $(DESTDIR)$(htmldir)hobbit_toc.html
+
+html/scm: $(texifiles)
+ mkdir -p html
+ rm -rf html/scm
+ $(MAKEINFO) --html $< -o html/scm
+ if type icoize>/dev/null; then icoize ../Logo/SCM.ico html/scm/*.html; fi
+$(DESTDIR)$(htmldir)scm: html/scm
+ -rm -rf $(DESTDIR)$(htmldir)scm
+ mkdir -p $(DESTDIR)$(htmldir)scm
+ $(INSTALL_DATA) html/scm/*.html $(DESTDIR)$(htmldir)scm
+
+html/Xlibscm: Xlibscm.texi version.txi
+ mkdir -p html
+ rm -rf html/Xlibscm
+ $(MAKEINFO) --html $< -o html/Xlibscm
+ if type icoize>/dev/null; then icoize ../Logo/SCM.ico html/Xlibscm/*.html; fi
+$(DESTDIR)$(htmldir)Xlibscm: html/Xlibscm
+ -rm -rf $(DESTDIR)$(htmldir)Xlibscm
+ mkdir -p $(DESTDIR)$(htmldir)Xlibscm
+ $(INSTALL_DATA) html/Xlibscm/*.html $(DESTDIR)$(htmldir)Xlibscm
+
+html/hobbit: hobbit.texi version.txi
+ mkdir -p html
+ rm -rf html/hobbit
+ $(MAKEINFO) --html $< -o html/hobbit
+ if type icoize>/dev/null; then icoize ../Logo/SCM.ico html/hobbit/*.html; fi
+$(DESTDIR)$(htmldir)hobbit: html/hobbit
+ -rm -rf $(DESTDIR)$(htmldir)hobbit
+ mkdir -p $(DESTDIR)$(htmldir)hobbit
+ $(INSTALL_DATA) html/hobbit/*.html $(DESTDIR)$(htmldir)hobbit
+
+html: html/scm html/Xlibscm html/hobbit
+
+install-html: $(DESTDIR)$(htmldir)scm \
+ $(DESTDIR)$(htmldir)Xlibscm \
+ $(DESTDIR)$(htmldir)hobbit
+
+
+scm-$(VERSION).info: $(texifiles)
+ $(MAKEINFO) $< --no-split -o $@
+scm.info: scm-$(VERSION).info
+ if [ -f $(prevdocsdir)scm.info ]; \
+ then infobar $(prevdocsdir)scm.info $< $@; \
+ else cp $< $@; fi
+$(DESTDIR)$(infodir)scm.info: scm.info installdirs
+ $(INSTALL_DATA) -p $< $@
+ -rm $(DESTDIR)$(infodir)scm.info.gz
+ $(POST_INSTALL) # Post-install commands follow.
+ -$(INSTALL_INFO) $@ $(DESTDIR)$(infodir)dir
+
+Xlibscm.info: Xlibscm.texi version.txi
+ $(MAKEINFO) $< --no-split -o $@
+$(DESTDIR)$(infodir)Xlibscm.info: Xlibscm.info installdirs
+ $(INSTALL_DATA) $< $@
+ -rm $(DESTDIR)$(infodir)Xlibscm.info*.gz
+ $(POST_INSTALL) # Post-install commands follow.
+ -$(INSTALL_INFO) $@ $(DESTDIR)$(infodir)dir
+
+hobbit.info: hobbit.texi version.txi
+ $(MAKEINFO) $< --no-split -o hobbit.info
+$(DESTDIR)$(infodir)hobbit.info: hobbit.info installdirs
+ $(INSTALL_DATA) $< $@
+ -rm $(DESTDIR)$(infodir)hobbit.info*.gz
+ $(POST_INSTALL) # Post-install commands follow.
+ -$(INSTALL_INFO) $@ $(DESTDIR)$(infodir)dir
+
+install-info: $(DESTDIR)$(infodir)scm.info \
+ $(DESTDIR)$(infodir)Xlibscm.info \
+ $(DESTDIR)$(infodir)hobbit.info
+info: install-info
+
+$(DESTDIR)$(infodir)scm.info.gz: $(DESTDIR)$(infodir)scm.info
+ gzip -f $<
+$(DESTDIR)$(infodir)Xlibscm.info.gz: $(DESTDIR)$(infodir)Xlibscm.info
+ gzip -f $<
+$(DESTDIR)$(infodir)hobbit.info.gz: $(DESTDIR)$(infodir)hobbit.info
+ gzip -f $<
+install-infoz: $(DESTDIR)$(infodir)scm.info.gz \
+ $(DESTDIR)$(infodir)Xlibscm.info.gz \
+ $(DESTDIR)$(infodir)hobbit.info.gz
+infoz: install-infoz
+
+scm.doc: scm.1
+ nroff -man $< | ul -tunknown >$@
+
+# configure.usage: configure
+# $(srcdir)configure --help >$@ 2>&1
+
+README: build build.scm scm.info
+ $(SCMEXE) -l build -e"(make-readme)"
+
+docs: README scm.doc install-html install-pdf install-dvi install-infoz
+
+prevdocs: $(prevdocsdir)scm_toc.html $(prevdocsdir)scm.info
+$(prevdocsdir)scm_toc.html:
+$(prevdocsdir)scm.info:
+ cd $(prevdocsdir); unzip -a $(distdir)scm*.zip
+ rm $(prevdocsdir)scm/scm.info
+ cd $(prevdocsdir)scm; $(MAKE) scm.info; $(MAKE) scm_toc.html
+ cd $(prevdocsdir); mv -f scm/scm.info scm/*.html ./
+ rm -rf $(prevdocsdir)scm
+ -rm -f scm-$(VERSION).info
+
+alld5: udscm5.opt scmlit
+ if grep -ie dynamic-linking udscm5.opt>/dev/null && ! $(MAKE) dlls; \
+ then \
+ if sed "s/dynamic-linking//g" < udscm5.opt > tmp.opt; then \
+ mv -f tmp.opt udscm5.opt; fi; \
+ if sed "s/dynamic-linking//g" < scm5.opt > tmp.opt; then \
+ mv -f tmp.opt scm5.opt; fi \
+ fi
+ if ! $(MAKE) dscm5; then $(MAKE) scm5; fi
+
+all5: scm5.opt scmlit
+ if grep -ie dynamic-linking scm5.opt>/dev/null && ! $(MAKE) dlls; \
+ then \
+ if sed "s/dynamic-linking//g" < scm5.opt > tmp.opt; then \
+ mv -f tmp.opt scm5.opt; fi \
+ fi
+ $(MAKE) scm5; fi
+
+all:
+ if [ -f udscm5.opt -o ! -f scm5.opt ]; then $(MAKE) alld5; \
+ else $(MAKE) all5; fi
+
+# $(MAKE) wbscm.so
+
require.scm:
cp -p requires.scm require.scm
-# SCMLIT -- try making this first!
+# SCMLIT -- Make this first!
scmlit: $(ofiles) scmmain.o require.scm Makefile
$(LD) -o scmlit $(ofiles) scmmain.o $(LIBS)
$(MAKE) checklit
@@ -152,7 +394,7 @@ scm4.opt:
scm4: $(cfiles) $(hfiles) build.scm build scm4.opt
$(BUILD) -f scm4.opt -o scm -s $(IMPLPATH)
-rm $(ofiles) scmmain.o
- -$(MAKE) check
+ $(MAKE) check
# R5RS interpreter (not dumpable)
scm5.opt:
@@ -163,17 +405,22 @@ scm5.opt:
scm5: $(cfiles) $(hfiles) build.scm build scm5.opt
$(BUILD) -f scm5.opt -o scm -s $(IMPLPATH)
-rm $(ofiles) scmmain.o
- -$(MAKE) check
- -$(MAKE) checkmacro
+ $(MAKE) checkmacro
+
+# http://www.opensubscriber.com/message/emacs-devel@gnu.org/1007118.html
+# Kernels later than 2.6.11 must do (as root) before dumping:
+#echo 0 > /proc/sys/kernel/randomize_va_space
# dumpable R4RS interpreter
udscm4.opt:
- echo "-F cautious bignums arrays inexact" >> udscm4.opt
- echo "-F engineering-notation dump dynamic-linking" >> udscm4.opt
+ $(MAKE) scm4.opt
+ cat scm4.opt > udscm4.opt
+ echo "-F dump" >> udscm4.opt
# if type gcc; then echo "--compiler-options=\"-fno-guess-branch-probability\"" >> udscm4.opt; fi
udscm4: $(cfiles) $(hfiles) build.scm build udscm4.opt
$(BUILD) -f udscm4.opt -o udscm4 -s $(IMPLPATH)
-rm $(ofiles) scmmain.o
+ strip udscm4
dscm4: udscm4 $(ifiles) require.scm
if [ -f /proc/sys/kernel/randomize_va_space -a\
"`cat /proc/sys/kernel/randomize_va_space`" != "0" ]; then {\
@@ -190,9 +437,9 @@ dscm4: udscm4 $(ifiles) require.scm
# dumpable R5RS interpreter
udscm5.opt:
- $(MAKE) udscm4.opt
- cat udscm4.opt >> udscm5.opt
- echo "-F macro" >> udscm5.opt
+ $(MAKE) scm5.opt
+ cat scm5.opt > udscm5.opt
+ echo "-F dump" >> udscm5.opt
udscm5: $(cfiles) $(ufiles) $(hfiles) build.scm build udscm5.opt
$(BUILD) -f udscm5.opt -o udscm5 -s $(IMPLPATH)
-rm $(ofiles) scmmain.o
@@ -210,7 +457,6 @@ dscm5: udscm5 $(ifiles) require.scm
cat randomize_va_space.tmp > /proc/sys/kernel/randomize_va_space;\
rm randomize_va_space.tmp;\
} fi
- $(MAKE) check
$(MAKE) checkmacro
# R5RS interpreter for debugging with GDB.
@@ -242,7 +488,6 @@ libscm.opt:
echo "-F cautious bignums arrays inexact" >> libscm.opt
echo "-F engineering-notation" >> libscm.opt
echo "-F dynamic-linking" >> libscm.opt
-mylib: libscm.a
libscm.a: libscm.opt scm.h scmfig.h
$(BUILD) -t lib -f libscm.opt
libtest: libscm.a libtest.c
@@ -253,68 +498,69 @@ libtest: libscm.a libtest.c
dlls.opt:
echo "--compiler-options=-Wall" >> dlls.opt
echo "--linker-options=-Wall" >> dlls.opt
-mydlls: dlls.opt bytenumb.so
- $(BUILD) -t dll -f dlls.opt -c ramap.c
- $(BUILD) -t dll -f dlls.opt -c record.c
- $(BUILD) -t dll -f dlls.opt -c gsubr.c
- $(BUILD) -t dll -f dlls.opt -c byte.c
- $(BUILD) -t dll -f dlls.opt -c sc2.c
- $(BUILD) -t dll -f dlls.opt -c ioext.c
- $(BUILD) -t dll -f dlls.opt -c posix.c
- $(BUILD) -t dll -f dlls.opt -c socket.c
- $(BUILD) -t dll -f dlls.opt -c unix.c
- $(BUILD) -t dll -f dlls.opt -F curses
- $(BUILD) -t dll -f dlls.opt -c rgx.c
- if [ -f /usr/lib/libreadline.so ]; \
- then $(BUILD) -t dll -f dlls.opt -F edit-line; fi
+dlls: dlls.opt
+ $(BUILD) -t dll -f dlls.opt -F rev2-procedures #-c sc2.c
+ $(BUILD) -t dll -f dlls.opt -F byte #-c byte.c
+ $(BUILD) -t dll -f dlls.opt -F array-for-each #-c ramap.c
+ $(BUILD) -t dll -f dlls.opt -F differ #-c differ.c
+ $(BUILD) -t dll -f dlls.opt -F generalized-c-arguments #-c gsubr.c
+ $(BUILD) -t dll -f dlls.opt -F record #-c record.c
+ -$(BUILD) -t dll -f dlls.opt -F byte-number inexact bignums
+ -$(BUILD) -t dll -f dlls.opt -F i/o-extensions #-c ioext.c
+ -$(BUILD) -t dll -f dlls.opt -F posix #-c posix.c
+ -$(BUILD) -t dll -f dlls.opt -F socket #-c socket.c
+ -$(BUILD) -t dll -f dlls.opt -F unix #-c unix.c
+ -$(BUILD) -t dll -f dlls.opt -F regex #-c rgx.c
+ -$(BUILD) -t dll -f dlls.opt -F curses #-c crs.c
+ -$(BUILD) -t dll -f dlls.opt -F edit-line
+ -$(MAKE) x.so
+# -$(MAKE) turtlegr.so
+mydlls: dlls # legacy
rwb-isam.scm wbtab.scm: ../wb/rwb-isam.scm ../wb/wbtab.scm
- cp ../wb/rwb-isam.scm ../wb/wbtab.scm ./
-db.so: dlls.opt rwb-isam.scm wbtab.scm scm.h scmfig.h
- if [ -f ../wb/blink.c ]; then \
- $(BUILD) -t dll -f dlls.opt -F wb; fi
-
-bytenumb.so: bytenumb.c scm.h scmfig.h
- $(BUILD) -t dll -f dlls.opt -F byte-number inexact bignums
-differ.so: differ.c scm.h scmfig.h
- $(BUILD) -t dll -f dlls.opt -F differ
-myturtle: dlls.opt scm.h scmfig.h
+ -cp -f ../wb/rwb-isam.scm ../wb/wbtab.scm ./
+wbscm.so: dlls.opt build.scm scm.h scmfig.h ../wb/c/*.c $(wbfiles)
+ $(MAKE) $(SCMLIT)
+ $(BUILD) -t dll -f dlls.opt -F wb
+ $(SCMLIT) -lmkimpcat.scm
+
+turtlegr.so: dlls.opt scm.h scmfig.h
$(BUILD) -t dll -f dlls.opt -F turtlegr
x.so: x.c x.h xevent.h dlls.opt scm.h scmfig.h
$(BUILD) -t dll -f dlls.opt -F x
-
# Generate x11 include and Scheme files
-incdir=/usr/include/
-x11.scm: inc2scm
+x11.scm: inc2scm Makefile
rm -f x11.scm
- $(SCMLIT) -l inc2scm x11.scm x: $(DESTDIR)$(incdir) X11/X.h X11/cursorfont.h X11/Xlib.h \
- X11/Xutil.h
-keysymdef.scm: inc2scm
+ $(SCMLIT) -l inc2scm x11.scm x: $(x11incdir) \
+ X11/X.h X11/cursorfont.h X11/Xlib.h X11/Xutil.h
+keysymdef.scm: inc2scm Makefile
rm -f keysymdef.scm
- $(SCMLIT) -l inc2scm keysymdef.scm x: $(DESTDIR)$(incdir) X11/keysym.h X11/keysymdef.h
+ $(SCMLIT) -l inc2scm keysymdef.scm x: $(x11incdir) \
+ X11/keysym.h X11/keysymdef.h
xevent.h xevent.scm xatoms.scm: xgen.scm Makefile
- $(SCMLIT) -l xgen.scm $(DESTDIR)$(incdir)X11/Xlib.h
-x.h: x.c xevent.h
- if [ -x "$(CPROTO)" ]; then $(CPROTO) x.c > x.h; fi
+ $(SCMLIT) -l xgen.scm $(x11incdir)X11/Xlib.h
+# x.h: x.c xevent.h
+# if [ -x "$(CPROTO)" ]; then $(CPROTO) x.c > x.h; fi
-# Check SCM; SCMLIT function.
-checklit:
+# **************** Tests and Performance ****************
+# Check SCMLIT; SCM
+checklit: require.scm
$(SCMLIT) -fr4rstest.scm -e'(test-sc4)(test-delay)(gc)' \
- -e '(or (null? errs) (quit 1))'
-Checklit:
+ -e '(or (null? errs) (quit 1))' < /dev/null
+Checklit: require.scm
$(SCMLIT) --no-symbol-case-fold -fr4rstest.scm -e'(test-sc4)(test-delay)(gc)' \
- -e '(or (null? errs) (quit 1))'
-check: r4rstest.scm
+ -e '(or (null? errs) (quit 1))' < /dev/null
+check: r4rstest.scm require.scm
$(SCMEXE) -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \
- -e '(or (null? errs) (quit 1))'
-Check: r4rstest.scm
+ -e '(or (null? errs) (quit 1))' < /dev/null
+Check: r4rstest.scm require.scm
$(SCMEXE) --no-symbol-case-fold -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \
- -e '(or (null? errs) (quit 1))'
+ -e '(or (null? errs) (quit 1))' < /dev/null
checkmacro: syntest1.scm syntest2.scm r4rstest.scm
$(SCMEXE) -rmacro -fsyntest1.scm -fsyntest2.scm \
-fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)' -fsyntest1 \
- -e '(or (null? errs) (quit 1))'
+ -e '(or (null? errs) (quit 1))' < /dev/null
# Measuare running speed of SCM; SCMLIT. Results are appended to file
# "BenchLog"
@@ -352,194 +598,68 @@ report:
$(SCMLIT) -e"(slib:report #t)"
$(SCMEXE) -e"(slib:report #t)"
-implcat: $(SHOBJS) mkimpcat.scm
- $(SCMLIT) -lmkimpcat.scm
-
-htmldir=../public_html/
-dvi: scm.dvi Xlibscm.dvi hobbit.dvi
-scm.dvi: $(texifiles) Makefile
- texi2dvi -b -c scm.texi
-Xlibscm.dvi: version.txi Xlibscm.texi Makefile
- texi2dvi -b -c Xlibscm.texi
-hobbit.dvi: version.txi hobbit.texi Makefile
- texi2dvi -b -c hobbit.texi
-xdvi: scm.dvi
- xdvi scm.dvi
-Xdvi: Xlibscm.dvi
- xdvi Xlibscm.dvi
-hobdvi: hobbit.dvi
- xdvi hobbit.dvi
-
-pdf: $(htmldir)scm.pdf $(htmldir)Xlibscm.pdf $(htmldir)hobbit.pdf
-$(htmldir)scm.pdf: $(texifiles) Makefile
- texi2pdf -b -c scm.texi
- mv scm.pdf $(htmldir)
-$(htmldir)Xlibscm.pdf: version.txi Xlibscm.texi Makefile
- texi2pdf -b -c Xlibscm.texi
- mv Xlibscm.pdf $(htmldir)
-$(htmldir)hobbit.pdf: version.txi hobbit.texi Makefile
- texi2pdf -b -c hobbit.texi
- mv hobbit.pdf $(htmldir)
-xpdf: $(htmldir)scm.pdf
- xpdf $(htmldir)scm.pdf
-Xpdf: $(htmldir)Xlibscm.pdf
- xpdf $(htmldir)Xlibscm.pdf
-hobpdf: $(htmldir)hobbit.pdf
- xpdf $(htmldir)hobbit.pdf
-
-PREVDOCS = prevdocs/
-html: $(htmldir)scm_toc.html $(htmldir)Xlibscm_toc.html $(htmldir)hobbit_toc.html
-
-TEXI2HTML = /usr/local/bin/texi2html -split -verbose
-
-$(htmldir)scm_toc.html: Makefile $(texifiles)
- ${TEXI2HTML} scm.texi
- -rm -f scm_stoc.html
- if [ -f $(PREVDOCS)scm_toc.html ]; \
- then hitch $(PREVDOCS)scm_\*.html scm_\*.html $(htmldir); \
- else cp scm_*.html $(htmldir); fi
-$(htmldir)Xlibscm_toc.html: Makefile version.txi Xlibscm.texi
- ${TEXI2HTML} Xlibscm.texi
- -rm -f Xlibscm_stoc.html
- chpat '</HEAD>' '<LINK REL="icon" HREF="Logo/SCM.ico">\
-<LINK REL="shortcut icon" HREF="Logo/SCM.ico">\
-</HEAD>' Xlibscm_*.html
- cp Xlibscm_*.html $(htmldir)
-$(htmldir)hobbit_toc.html: Makefile version.txi hobbit.texi
- ${TEXI2HTML} hobbit.texi
- -rm -f hobbit_stoc.html
- chpat '</HEAD>' '<LINK REL="icon" HREF="Logo/SCM.ico">\
-<LINK REL="shortcut icon" HREF="Logo/SCM.ico">\
-</HEAD>' hobbit_*.html
- cp hobbit_*.html $(htmldir)
-
-prevdocs: $(PREVDOCS)scm_toc.html $(PREVDOCS)scm.info
-$(PREVDOCS)scm_toc.html:
-$(PREVDOCS)scm.info: Makefile
- cd $(PREVDOCS); unzip -a $(dest)scm*.zip
- rm $(PREVDOCS)scm/scm.info
- cd $(PREVDOCS)scm; make scm.info; make scm_toc.html
- cd $(PREVDOCS); mv -f scm/scm.info scm/*.html ./
- rm -rf $(PREVDOCS)scm
- -rm -f scm-$(VERSION).info
-
################ INSTALL DEFINITIONS ################
-rpm_prefix=$(HOME)/rpmbuild/
-
-prefix = /usr/local/
-exec_prefix = $(prefix)
-# directory where `make install' will put executable.
-bindir = $(exec_prefix)bin/
-libdir = $(exec_prefix)lib/
-libscmdir = $(libdir)scm/
-# directory where `make install' will put manual page.
-man1dir = $(prefix)man/man1/
-infodir = $(prefix)info/
-includedir = $(prefix)include/
-
-README: build build.scm scm.info
- $(SCMEXE) -l build -e"(make-readme)"
-
-platform.txi: build.scm
- $(SCMLIT) -r database-browse -l build.scm -e "(browse build 'platform)" \
- > platform.txi
-features.txi: build build.scm
- $(SCMLIT) -l build -e"(make-features-txi)"
-scm.info: $(texifiles)
- makeinfo scm.texi --no-split -o scm.info
- mv scm.info scm-$(VERSION).info
- if [ -f $(PREVDOCS)scm.info ]; \
- then infobar $(PREVDOCS)scm.info scm-$(VERSION).info scm.info; \
- else cp scm-$(VERSION).info scm.info; fi
-$(DESTDIR)$(infodir)scm.info: scm.info
- mkdir -p $(DESTDIR)$(infodir)
- cp -p scm.info $(DESTDIR)$(infodir)scm.info
- -install-info $(DESTDIR)$(infodir)scm.info $(DESTDIR)$(infodir)dir
- -rm $(DESTDIR)$(infodir)scm.info.gz
-
-Xlibscm.info: version.txi Xlibscm.texi
- makeinfo Xlibscm.texi --no-split -o Xlibscm.info
-$(DESTDIR)$(infodir)Xlibscm.info: Xlibscm.info
- mkdir -p $(DESTDIR)$(infodir)
- cp Xlibscm.info $(DESTDIR)$(infodir)Xlibscm.info
- -install-info $(DESTDIR)$(infodir)Xlibscm.info $(DESTDIR)$(infodir)dir
- -rm $(DESTDIR)$(infodir)Xlibscm.info*.gz
-
-hobbit.info: version.txi hobbit.texi
- makeinfo hobbit.texi --no-split -o hobbit.info
-$(DESTDIR)$(infodir)hobbit.info: hobbit.info
- mkdir -p $(DESTDIR)$(infodir)
- cp hobbit.info $(DESTDIR)$(infodir)hobbit.info
- -install-info $(DESTDIR)$(infodir)hobbit.info $(DESTDIR)$(infodir)dir
- -rm $(DESTDIR)$(infodir)hobbit.info*.gz
-
-info: installinfo
-installinfo: $(DESTDIR)$(infodir)scm.info $(DESTDIR)$(infodir)Xlibscm.info $(DESTDIR)$(infodir)hobbit.info
-
-infoz: installinfoz
-installinfoz: $(DESTDIR)$(infodir)scm.info.gz $(DESTDIR)$(infodir)Xlibscm.info.gz $(DESTDIR)$(infodir)hobbit.info.gz
-$(DESTDIR)$(infodir)scm.info.gz: $(DESTDIR)$(infodir)scm.info
- gzip -f $(DESTDIR)$(infodir)scm.info
-$(DESTDIR)$(infodir)Xlibscm.info.gz: $(DESTDIR)$(infodir)Xlibscm.info
- gzip -f $(DESTDIR)$(infodir)Xlibscm.info
-$(DESTDIR)$(infodir)hobbit.info.gz: $(DESTDIR)$(infodir)hobbit.info
- gzip -f $(DESTDIR)$(infodir)hobbit.info
-
-lsdfiles = $(ifiles) $(hobfiles) COPYING COPYING.LESSER r4rstest.scm \
- build build.scm mkimpcat.scm $(SHOBJS) patchlvl.h \
- Iedline.scm $(xafiles) db.so wbtab.scm rwb-isam.scm
-
-install: scm.1
- mkdir -p $(DESTDIR)$(bindir)
- mkdir -p $(DESTDIR)$(man1dir)
- -cp scm scmlit $(DESTDIR)$(bindir)
- -strip $(DESTDIR)$(bindir)scmlit
- -cp scm.1 $(DESTDIR)$(man1dir)
- mkdir -p $(DESTDIR)$(libscmdir)
+install-man: scm.1 installdirs
+ -$(INSTALL_DATA) $< $(DESTDIR)$(mandir)man1/
+
+install-lib: $(lsdfiles) installdirs
+ $(INSTALL_DATA) $(lsdfiles) $(DESTDIR)$(libscmdir)
+ $(INSTALL_PROGRAM) build $(DESTDIR)$(libscmdir)
+ if [ -f x.so ]; \
+ then $(INSTALL_DATA) $(xafiles) $(DESTDIR)$(libscmdir); fi
+ if [ -f byte.so ]; \
+ then $(INSTALL_DATA) *.so $(DESTDIR)$(libscmdir); fi
+ if [ -f wbscm.so ]; \
+ then $(INSTALL_DATA) $(wbfiles) $(DESTDIR)$(libscmdir); fi
test -f $(DESTDIR)$(libscmdir)require.scm || \
- cp requires.scm $(DESTDIR)$(libscmdir)require.scm
- -cp $(lsdfiles) $(DESTDIR)$(libscmdir)
+ $(INSTALL_DATA) requires.scm $(DESTDIR)$(libscmdir)require.scm
+ if [ -f libscm.a ]; \
+ then $(INSTALL_DATA) libscm.a $(DESTDIR)$(libdir)libscm.a; fi
-installlib:
- mkdir -p $(DESTDIR)$(includedir)
- cp scm.h scmfig.h scmflags.h $(DESTDIR)$(includedir)
- mkdir -p $(DESTDIR)$(libdir)
- cp libscm.a $(DESTDIR)$(libdir)libscm.a
+install: install-man install-lib install-infoz installdirs
+ $(INSTALL_PROGRAM) scm scmlit $(DESTDIR)$(bindir)
+ -strip $(DESTDIR)$(bindir)scmlit
+ $(INSTALL_DATA) scm.h scmfig.h scmflags.h $(DESTDIR)$(includedir)
+ $(DESTDIR)$(bindir)scm -br new-catalog
uninstall:
+ $(PRE_UNINSTALL) # Pre-uninstall commands follow.
+ -$(INSTALL_INFO) --delete $(DESTDIR)$(infodir)scm.info $(DESTDIR)$(infodir)dir
+ -$(INSTALL_INFO) --delete $(DESTDIR)$(infodir)Xlibscm.info $(DESTDIR)$(infodir)dir
+ -$(INSTALL_INFO) --delete $(DESTDIR)$(infodir)hobbit.info $(DESTDIR)$(infodir)dir
+ $(NORMAL_UNINSTALL) # Normal commands follow.
-rm $(DESTDIR)$(bindir)scm $(DESTDIR)$(bindir)scmlit
- -rm $(DESTDIR)$(man1dir)scm.1
- -rm $(DESTDIR)$(includedir)scm.h $(DESTDIR)$(includedir)scmfig.h $(DESTDIR)$(includedir)scmflags.h
+ -rm $(DESTDIR)$(mandir)man1/scm.1
+ -rm $(DESTDIR)$(includedir)scm.h \
+ $(DESTDIR)$(includedir)scmfig.h \
+ $(DESTDIR)$(includedir)scmflags.h
-rm $(DESTDIR)$(libdir)libscm.a
- -(cd $(DESTDIR)$(libscmdir); rm $(lsdfiles) require.scm)
-
-uninstallinfo:
- -rm $(DESTDIR)$(infodir)scm.info.gz $(DESTDIR)$(infodir)Xlibscm.info.gz\
+ -(cd $(DESTDIR)$(libscmdir); \
+ rm $(lsdfiles) build $(xafiles) *.so require.scm \
+ $(wbfiles) $(catfiles))
+ -rm $(DESTDIR)$(infodir)scm.info.gz \
+ $(DESTDIR)$(infodir)Xlibscm.info.gz \
$(DESTDIR)$(infodir)hobbit.info.gz
+ $(POST_UNINSTALL) # Post-uninstall commands follow.
+ -rmdir $(DESTDIR)$(libscmdir)
-scm.doc: scm.1
- nroff -man $< | ul -tunknown >$@
-
-docs: $(DESTDIR)$(infodir)scm.info.gz $(htmldir)scm_toc.html scm.doc \
- scm.dvi Xlibscm.dvi hobbit.dvi \
- $(htmldir)scm.pdf $(htmldir)Xlibscm.pdf $(htmldir)hobbit.pdf
- xdvi -s 4 scm.dvi
+################ WINDOWS INSTALLER DEFINITIONS ################
winscm5.opt:
echo "-F arrays array-for-each byte i/o-extensions" >> winscm5.opt
echo "-F bignums inexact engineering-notation" >> winscm5.opt
echo "-F cautious rev2-procedures macro" >> winscm5.opt
- echo "-F wb" >> winscm5.opt
-gw32scmwb.sh: winscm5.opt build.scm Makefile version.txi scmlit
+ echo "-F wb-no-threads" >> winscm5.opt
+gw32scmwb.sh: scmlit winscm5.opt build.scm Makefile version.txi
./build -p gnu-win32 -f winscm5.opt -w gw32scmwb.sh
scm.exe: gw32scmwb.sh
./gw32scmwb.sh
hobbit.html: hobbit.texi
- makeinfo --html --no-split --no-warn hobbit.texi
+ $(MAKEINFO) --html --no-split hobbit.texi
scm.html: $(texifiles)
- makeinfo --html --no-split --no-warn --force scm.texi
+ $(MAKEINFO) --html --no-split scm.texi
## to build a windows installer
## make sure makeinfo and NSIS are available on the commandline
@@ -549,117 +669,98 @@ w32install: scm.exe hobbit.html scm.html
#### Stuff for maintaining SCM below ####
ver = $(VERSION)
-version.txi: patchlvl.h
- echo @set SCMVERSION $(ver) > version.txi
- echo @set SCMDATE `date +"%B %Y"` >> version.txi
-
-RM_R = rm -rf
-
-confiles = scmconfig.h.in mkinstalldirs acconfig-1.5.h install-sh \
- configure configure.in Makefile.in COPYING COPYING.LESSER \
- README.unix
-
-tfiles = r4rstest.scm example.scm pi.scm pi.c split.scm bench.scm \
- syntest2.scm syntest1.scm
-texifiles = version.txi scm.texi fdl.texi indexes.texi platform.txi features.txi
-dfiles = ANNOUNCE README COPYING COPYING.LESSER scm.1 scm.doc QUICKREF \
- $(texifiles) scm.info Xlibscm.info Xlibscm.texi \
- hobbit.info hobbit.texi ChangeLog
-mfiles = Makefile build.scm build build.bat requires.scm \
- .gdbinit mkimpcat.scm disarm.scm scm.spec scm.nsi
-sfiles = setjump.mar setjump.s ugsetjump.s continue-ia64.S \
- get-contoffset-ia64.c
-wbfiles = wbtab.scm rwb-isam.scm
-afiles = $(dfiles) $(cfiles) $(hfiles) $(ifiles) $(tfiles) $(mfiles) \
- $(hobfiles) $(sfiles) $(ufiles) $(xfiles) $(turfiles) $(wbfiles)
-
-makedev = make -f $(HOME)/makefile.dev
-CHPAT=$(HOME)/bin/chpat
-RSYNC=rsync -bav
-UPLOADEE=swissnet_upload
-dest = $(HOME)/dist/
-DOSCM = /c/Voluntocracy/dist/
temp/scm: $(afiles)
- -$(RM_R) temp
+ -rm -rf temp
mkdir -p temp/scm
ln $(afiles) temp/scm
release: dist pdf # rpm
cvs tag -F scm-$(VERSION)
- cp ANNOUNCE $(htmldir)SCM_ANNOUNCE.txt
- $(RSYNC) $(htmldir)SCM.html $(htmldir)SCM_ANNOUNCE.txt $(UPLOADEE):public_html/
- $(RSYNC) $(dest)README $(dest)scm-$(VERSION).zip \
- $(dest)scm-$(VERSION)-$(RELEASE).src.rpm $(dest)scm-$(VERSION)-$(RELEASE).i386.rpm \
- $(htmldir)hobbit.pdf $(htmldir)Xlibscm.pdf $(UPLOADEE):dist/
-# upload $(dest)README $(dest)scm-$(VERSION).zip ftp.gnu.org:gnu/jacal/
-
-upzip: $(HOME)/pub/scm.zip
- $(RSYNC) $(HOME)/pub/scm.zip $(UPLOADEE):pub/
+ $(INSTALL_DATA) ANNOUNCE $(htmldir)SCM_ANNOUNCE.txt
+ $(RSYNC) $(htmldir)SCM.html $(htmldir)SCM_ANNOUNCE.txt \
+ $(htmldir)hobbit.pdf $(htmldir)Xlibscm.pdf \
+ $(Uploadee):public_html/
+ $(RSYNC) $(distdir)README $(distdir)scm-$(VERSION).zip \
+ $(distdir)scm-$(VERSION)-$(RELEASE).*.rpm $(Uploadee):dist/
+# upload $(distdir)README $(distdir)scm-$(VERSION).zip ftp.gnu.org:gnu/jacal/
+# $(distdir)scm-$(VERSION)-$(RELEASE).x86_64.rpm
+
+upzip: $(snapdir)scm.zip
+ $(RSYNC) $(snapdir)scm.zip $(Uploadee):pub/
$(RSYNC) r4rstest.scm $(HOME)/dist/
- $(RSYNC) r4rstest.scm $(UPLOADEE):dist/
+ $(RSYNC) r4rstest.scm $(Uploadee):dist/
+
+dist: $(distdir)scm-$(VERSION).zip
+$(distdir)scm-$(VERSION).zip: temp/scm
+ $(MAKEDEV) DEST=$(distdir) PROD=scm ver=-$(VERSION) zip
-dist: $(dest)scm-$(VERSION).zip
-$(dest)scm-$(VERSION).zip: temp/scm
- $(makedev) DEST=$(dest) PROD=scm ver=-$(VERSION) zip
+upgnu: $(distdir)scm-$(VERSION).tar.gz
+ cd $(distdir); gnupload --to ftp.gnu.org:scm scm-$(VERSION).tar.gz
+tar.gz: $(distdir)scm-$(VERSION).tar.gz
+$(distdir)scm-$(VERSION).tar.gz: temp/scm/
+ $(MAKEDEV) DEST=$(distdir) PROD=scm ver=-$(VERSION) tar.gz
rpm: pubzip
-# $(dest)scm-$(VERSION)-$(RELEASE).i386.rpm: $(dest)scm-$(VERSION).zip
- cp -f $(HOME)/pub/scm.zip $(rpm_prefix)SOURCES/scm-$(VERSION).zip
- rpmbuild -ba scm.spec # --clean
+ cp -f $(snapdir)scm.zip $(rpm_prefix)SOURCES/scm-$(VERSION).zip
+ rpmbuild -ba scm.spec # --clean --target i386
rm $(rpm_prefix)SOURCES/scm-$(VERSION).zip
- mv $(rpm_prefix)RPMS/i386/scm-$(VERSION)-$(RELEASE).i386.rpm \
- $(rpm_prefix)SRPMS/scm-$(VERSION)-$(RELEASE).src.rpm $(dest)
+ mv $(rpm_prefix)RPMS/*/scm-$(VERSION)-$(RELEASE).*.rpm \
+ $(rpm_prefix)SRPMS/scm-$(VERSION)-$(RELEASE).src.rpm \
+ $(distdir)
shar: scm.shar
scm.shar: temp/scm
- $(makedev) PROD=scm shar
+ $(MAKEDEV) PROD=scm shar
dclshar: scm.com
com: scm.com
scm.com: temp/scm
- $(makedev) PROD=scm com
+ $(MAKEDEV) PROD=scm com
zip: scm.zip
scm.zip: temp/scm
- $(makedev) PROD=scm zip
-doszip: $(DOSCM)scm-$(VERSION).zip
-$(DOSCM)scm-$(VERSION).zip: temp/scm turtle turtlegr.c grtest.scm SCM.ico scm.html hobbit.html
- $(makedev) DEST=$(DOSCM) PROD=scm ver=-$(VERSION) zip
- -cd ..; zip -9ur $(DOSCM)scm-$(VERSION).zip \
+ $(MAKEDEV) PROD=scm zip
+doszip: $(windistdir)scm-$(VERSION).zip
+$(windistdir)scm-$(VERSION).zip: temp/scm $(turfiles) SCM.ico scm.html hobbit.html
+ cp -f ../wb/wbtab.scm ../wb/rwb-isam.scm temp/scm/
+ $(MAKEDEV) DEST=$(windistdir) PROD=scm ver=-$(VERSION) zip
+ -cd ..; zip -9ur $(windistdir)scm-$(VERSION).zip \
scm/turtle scm/turtlegr.c scm/grtest.scm \
scm/SCM.ico \
scm/scm.html scm/hobbit.html
- zip -d $(DOSCM)scm-$(VERSION).zip scm/scm.info scm/Xlibscm.info scm/hobbit.info
-pubzip: $(HOME)/pub/scm.zip
-$(HOME)/pub/scm.zip: temp/scm
- $(makedev) DEST=$(HOME)/pub/ PROD=scm zip
+ zip -d $(windistdir)scm-$(VERSION).zip scm/scm.info scm/Xlibscm.info scm/hobbit.info
+pubzip: $(snapdir)scm.zip
+$(snapdir)scm.zip: temp/scm
+ $(MAKEDEV) DEST=$(snapdir) PROD=scm zip
diffs: pubdiffs
pubdiffs: temp/scm
- $(makedev) DEST=$(HOME)/pub/ PROD=scm pubdiffs
+ $(MAKEDEV) DEST=$(snapdir) PROD=scm pubdiffs
distdiffs: temp/scm
- $(makedev) DEST=$(dest) PROD=scm ver=$(ver) distdiffs
+ $(MAKEDEV) DEST=$(distdir) PROD=scm ver=$(ver) distdiffs
CITERS = ANNOUNCE hobbit.texi hobbit.scm \
../jacal/ANNOUNCE ../jacal/jacal.texi \
../wb/ANNOUNCE ../wb/README ../wb/wb.texi \
../synch/ANNOUNCE \
- ../dist/README \
- $(DOSCM)unzipall.bat $(DOSCM)buildall \
+ $(distdir)README \
+ $(windistdir)unzipall.bat $(windistdir)buildall \
$(htmldir)JACAL.html $(htmldir)README.html \
$(htmldir)SIMSYNCH.html $(htmldir)SLIB.html \
$(htmldir)FreeSnell/ANNOUNCE $(htmldir)FreeSnell/index.html
CITES = scm.spec scm.nsi ../wb/wb.spec $(htmldir)SCM.html
updates: Init$(ver).scm
- $(CHPAT) slib-$(VERSION) slib-$(ver) $(CITERS)
+ $(CHPAT) scm-$(VERSION) scm-$(ver) $(CITERS)
$(CHPAT) $(VERSION) $(ver) $(CITES)
- make README
+ $(MAKE) README
Init$(ver).scm:
mv -f Init$(VERSION).scm Init$(ver).scm
$(CHPAT) $(VERSION) $(ver) patchlvl.h Init$(ver).scm
new: updates
+ echo @set SCMVERSION $(ver) > version.txi
+ echo @set SCMDATE `date +"%B %Y"` >> version.txi
echo `date -I` \ Aubrey Jaffer \ \<`whoami`@`hostname`\>> change
echo>> change
echo \ \* patchlvl.h \(SCMVERSION\): Bumped from $(VERSION) to $(ver).>>change
@@ -673,18 +774,6 @@ new: updates
cvs commit -m '(SCMVERSION): Bumped from $(VERSION) to $(ver).'
cvs tag -F scm-$(ver)
-configtemp/scm: $(confiles)
- -$(RM_R) configtemp/scm
- -mkdir -p configtemp/scm
- ln $(confiles) configtemp/scm
-confdist: scmconfig.tar.gz
-scmconfig.tar.gz: configtemp/scm
- cd configtemp; tar cohf ../scmconfig.tar scm
- chmod 664 scmconfig.tar
- -rm -f scmconfig.tar.*z
- gzip scmconfig.tar
- chmod 664 scmconfig.tar.*z
-
lint: lints
lints: $(cfiles) $(hfiles)
lint $(CPPFLAGS) $(ALL_CFLAGS) $(cfiles) | tee lints
@@ -711,21 +800,17 @@ name8s: scmlit
l=$$1\
}END{exit stat}' -
-ctagfiles = $(hfiles) $(cfiles) $(xfiles)
ctags: $(ctagfiles)
etags $(ctagfiles)
-TAGFILES = $(hfiles) $(cfiles) $(ifiles) $(sfiles) $(xfiles) $(mfiles)\
- $(txifiles) Xlibscm.texi hobbit.texi build hobbit.scm
-# # $(ufiles) ChangeLog
-TAGS: $(TAGFILES)
- etags $(TAGFILES)
+TAGS: $(tagfiles)
+ etags $(tagfiles)
tags: TAGS
mostlyclean:
clean:
-rm -f core a.out ramap.o ramap.obj $(ofiles) scmmain.o lints
- -$(RM_R) *temp
+ -rm -rf *temp
distclean: clean
-rm -f $(EXECFILES) *.o *.obj a.out TAGS implcat slibcat gdbscm
realclean: distclean