diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 208 |
1 files changed, 94 insertions, 114 deletions
@@ -1,44 +1,20 @@ -# Copyright (C) 1990-1999 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this software; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111, USA. -# -# As a special exception, the Free Software Foundation gives permission -# for additional uses of the text contained in its release of SCM. -# -# The exception is that, if you link the SCM library with other files -# to produce an executable, this does not by itself cause the -# resulting executable to be covered by the GNU General Public License. -# Your use of that executable is in no way restricted on account of -# linking the SCM library code into it. +# "Makefile" for scm Scheme Interpreter +# Copyright (C) 1990-2008 Free Software Foundation, Inc. # -# This exception does not however invalidate any other reasons why -# the executable file might be covered by the GNU General Public License. +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. # -# This exception applies only to the code released by the -# Free Software Foundation under the name SCM. If you copy -# code from other Free Software Foundation releases into a copy of -# SCM, as the General Public License permits, the exception does -# not apply to the code that you add in this way. To avoid misleading -# anyone as to the status of such modified files, you must delete -# this exception notice from them. +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. # -# If you write modifications of your own for SCM, it is your choice -# whether to permit this exception to apply to your modifications. -# If you do not wish that, delete this exception notice. +# You should have received a copy of the GNU Lesser General Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/>. -# "Makefile" for scm Scheme Interpreter # Author: Aubrey Jaffer SHELL = /bin/sh @@ -75,7 +51,7 @@ RELEASE = 1 intro: @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 @@ -124,8 +100,9 @@ xfiles = x.c x.h xgen.scm xevent.h inc2scm $(xafiles) all: require.scm $(MAKE) mydlls $(MAKE) dscm5 - $(MAKE) x.so + $(MAKE) differ.so $(MAKE) db.so + if [ -d /usr/X11R6/lib ]; then $(MAKE) x.so; fi require.scm: cp -p requires.scm require.scm @@ -266,7 +243,7 @@ libscm.opt: echo "-F engineering-notation" >> libscm.opt echo "-F dynamic-linking" >> libscm.opt mylib: libscm.a -libscm.a: libscm.opt +libscm.a: libscm.opt scm.h scmfig.h $(BUILD) -t lib -f libscm.opt libtest: libscm.a libtest.c $(LD) -o libtest libtest.c libscm.a -ldl -lm -lc @@ -293,18 +270,18 @@ mydlls: dlls.opt bytenumb.so 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 +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 Makefile +bytenumb.so: bytenumb.c scm.h scmfig.h $(BUILD) -t dll -f dlls.opt -F byte-number inexact bignums -differ.so: differ.c +differ.so: differ.c scm.h scmfig.h $(BUILD) -t dll -f dlls.opt -F differ -myturtle: dlls.opt +myturtle: dlls.opt scm.h scmfig.h $(BUILD) -t dll -f dlls.opt -F turtlegr -x.so: x.c x.h xevent.h dlls.opt +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 @@ -380,7 +357,7 @@ implcat: $(SHOBJS) mkimpcat.scm htmldir=../public_html/ dvi: scm.dvi Xlibscm.dvi hobbit.dvi -scm.dvi: version.txi scm.texi indexes.texi platform.txi features.txi Makefile +scm.dvi: $(texifiles) Makefile texi2dvi -b -c scm.texi Xlibscm.dvi: version.txi Xlibscm.texi Makefile texi2dvi -b -c Xlibscm.texi @@ -394,7 +371,7 @@ hobdvi: hobbit.dvi xdvi hobbit.dvi pdf: $(htmldir)scm.pdf $(htmldir)Xlibscm.pdf $(htmldir)hobbit.pdf -$(htmldir)scm.pdf: version.txi scm.texi indexes.texi platform.txi features.txi Makefile +$(htmldir)scm.pdf: $(texifiles) Makefile texi2pdf -b -c scm.texi mv scm.pdf $(htmldir) $(htmldir)Xlibscm.pdf: version.txi Xlibscm.texi Makefile @@ -414,25 +391,29 @@ PREVDOCS = prevdocs/ html: $(htmldir)scm_toc.html $(htmldir)Xlibscm_toc.html $(htmldir)hobbit_toc.html TEXI2HTML = /usr/local/bin/texi2html -split -verbose -scm_toc.html: version.txi scm.texi indexes.texi platform.txi features.txi - ${TEXI2HTML} scm.texi -Xlibscm_toc.html: version.txi Xlibscm.texi - ${TEXI2HTML} Xlibscm.texi -hobbit_toc.html: version.txi hobbit.texi - ${TEXI2HTML} hobbit.texi -$(htmldir)scm_toc.html: scm_toc.html Makefile +$(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: Xlibscm_toc.html Makefile +$(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: hobbit_toc.html Makefile +$(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 @@ -440,6 +421,7 @@ $(PREVDOCS)scm.info: Makefile 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 ################ @@ -452,8 +434,7 @@ bindir = $(exec_prefix)bin/ libdir = $(exec_prefix)lib/ libscmdir = $(libdir)scm/ # directory where `make install' will put manual page. -mandir = $(prefix)man/ -man1dir = $(mandir)man1/ +man1dir = $(prefix)man/man1/ infodir = $(prefix)info/ includedir = $(prefix)include/ @@ -465,12 +446,12 @@ platform.txi: build.scm > platform.txi features.txi: build build.scm $(SCMLIT) -l build -e"(make-features-txi)" -scm.info: version.txi scm.texi indexes.texi platform.txi features.txi +scm.info: $(texifiles) makeinfo scm.texi --no-split -o scm.info - mv scm.info scm$(VERSION).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 + 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 @@ -505,27 +486,25 @@ $(DESTDIR)$(infodir)Xlibscm.info.gz: $(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 - test -d $(DESTDIR)$(bindir) || mkdir $(DESTDIR)$(bindir) - test -d $(DESTDIR)$(mandir) || mkdir $(DESTDIR)$(mandir) - test -d $(DESTDIR)$(man1dir) || mkdir $(DESTDIR)$(man1dir) + mkdir -p $(DESTDIR)$(bindir) + mkdir -p $(DESTDIR)$(man1dir) -cp scm scmlit $(DESTDIR)$(bindir) -strip $(DESTDIR)$(bindir)scmlit -cp scm.1 $(DESTDIR)$(man1dir) - test -d $(DESTDIR)$(libdir) || mkdir $(DESTDIR)$(libdir) - test -d $(DESTDIR)$(libscmdir) || mkdir $(DESTDIR)$(libscmdir) - -cp $(ifiles) $(hobfiles) COPYING r4rstest.scm $(DESTDIR)$(libscmdir) + mkdir -p $(DESTDIR)$(libscmdir) test -f $(DESTDIR)$(libscmdir)require.scm || \ cp requires.scm $(DESTDIR)$(libscmdir)require.scm - -cp build build.scm mkimpcat.scm Iedline.scm $(SHOBJS) patchlvl.h\ - $(xafiles) $(DESTDIR)$(libscmdir) - -cp db.so wbtab.scm rwb-isam.scm $(DESTDIR)$(libscmdir) - -cp libscm.dylib $(DESTDIR)$(libdir) + -cp $(lsdfiles) $(DESTDIR)$(libscmdir) installlib: - test -d $(DESTDIR)$(includedir) || mkdir $(DESTDIR)$(includedir) + mkdir -p $(DESTDIR)$(includedir) cp scm.h scmfig.h scmflags.h $(DESTDIR)$(includedir) - test -d $(DESTDIR)$(libdir) || mkdir $(DESTDIR)$(libdir) + mkdir -p $(DESTDIR)$(libdir) cp libscm.a $(DESTDIR)$(libdir)libscm.a uninstall: @@ -533,10 +512,7 @@ uninstall: -rm $(DESTDIR)$(man1dir)scm.1 -rm $(DESTDIR)$(includedir)scm.h $(DESTDIR)$(includedir)scmfig.h $(DESTDIR)$(includedir)scmflags.h -rm $(DESTDIR)$(libdir)libscm.a - -(cd $(DESTDIR)$(libscmdir); rm $(ifiles) $(hobfiles) COPYING r4rstest.scm) - -(cd $(DESTDIR)$(libscmdir); rm build build.scm mkimpcat.scm \ - $(SHOBJS) patchlvl.h $(xafiles)) - -(cd $(DESTDIR)$(libscmdir); rm db.so wbtab.scm rwb-isam.scm require.scm) + -(cd $(DESTDIR)$(libscmdir); rm $(lsdfiles) require.scm) uninstallinfo: -rm $(DESTDIR)$(infodir)scm.info.gz $(DESTDIR)$(infodir)Xlibscm.info.gz\ @@ -562,7 +538,7 @@ scm.exe: gw32scmwb.sh hobbit.html: hobbit.texi makeinfo --html --no-split --no-warn hobbit.texi -scm.html: scm.texi +scm.html: $(texifiles) makeinfo --html --no-split --no-warn --force scm.texi ## to build a windows installer @@ -580,13 +556,15 @@ version.txi: patchlvl.h RM_R = rm -rf confiles = scmconfig.h.in mkinstalldirs acconfig-1.5.h install-sh \ - configure configure.in Makefile.in COPYING README.unix + 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 -dfiles = ANNOUNCE README COPYING scm.1 scm.doc QUICKREF \ - scm.info scm.texi indexes.texi Xlibscm.info Xlibscm.texi hobbit.info hobbit.texi \ - version.txi platform.txi features.txi ChangeLog +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 \ @@ -597,7 +575,7 @@ afiles = $(dfiles) $(cfiles) $(hfiles) $(ifiles) $(tfiles) $(mfiles) \ makedev = make -f $(HOME)/makefile.dev CHPAT=$(HOME)/bin/chpat -RSYNC=rsync --rsync-path=bin/rsync -bav +RSYNC=rsync -bav UPLOADEE=swissnet_upload dest = $(HOME)/dist/ DOSCM = /c/Voluntocracy/dist/ @@ -608,28 +586,28 @@ temp/scm: $(afiles) ln $(afiles) temp/scm release: dist pdf # rpm - cvs tag -F scm$(VERSION) + 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 \ + $(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/ +# upload $(dest)README $(dest)scm-$(VERSION).zip ftp.gnu.org:gnu/jacal/ upzip: $(HOME)/pub/scm.zip $(RSYNC) $(HOME)/pub/scm.zip $(UPLOADEE):pub/ $(RSYNC) r4rstest.scm $(HOME)/dist/ $(RSYNC) r4rstest.scm $(UPLOADEE):dist/ -dist: $(dest)scm$(VERSION).zip -$(dest)scm$(VERSION).zip: temp/scm - $(makedev) DEST=$(dest) PROD=scm ver=$(VERSION) zip +dist: $(dest)scm-$(VERSION).zip +$(dest)scm-$(VERSION).zip: temp/scm + $(makedev) DEST=$(dest) PROD=scm ver=-$(VERSION) zip rpm: pubzip -# $(dest)scm-$(VERSION)-$(RELEASE).i386.rpm: $(dest)scm$(VERSION).zip - cp -f $(HOME)/pub/scm.zip $(rpm_prefix)SOURCES/scm$(VERSION).zip +# $(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 - rm $(rpm_prefix)SOURCES/scm$(VERSION).zip + 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) @@ -643,13 +621,14 @@ scm.com: temp/scm 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.lnk scm.html hobbit.html - $(makedev) DEST=$(DOSCM) PROD=scm ver=$(VERSION) zip - -cd ..; zip -9ur $(DOSCM)scm$(VERSION).zip \ - scm/turtle scm/turtlegr.c scm/grtest.scm scm/SCM.lnk \ +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 \ + 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 + 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 @@ -660,19 +639,21 @@ pubdiffs: temp/scm distdiffs: temp/scm $(makedev) DEST=$(dest) PROD=scm ver=$(ver) distdiffs -CITERS = ANNOUNCE ../jacal/ANNOUNCE \ - ../wb/README ../wb/ANNOUNCE ../synch/ANNOUNCE \ - $(htmldir)README.html ../dist/README \ - $(htmldir)SLIB.html $(htmldir)JACAL.html \ - $(htmldir)SCM.html $(htmldir)SIMSYNCH.html \ - ../jacal/jacal.texi ../wb/wb.texi \ - $(DOSCM)install.bat $(DOSCM)makefile \ - $(DOSCM)mkdisk.bat hobbit.texi hobbit.scm +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 \ + $(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) scm$(VERSION) scm$(ver) $(CITERS) - $(CHPAT) scm-$(VERSION) scm-$(ver) $(CITERS) - $(CHPAT) $(VERSION) $(ver) ../wb/wb.spec $(htmldir)SCM.html scm.spec scm.nsi + $(CHPAT) slib-$(VERSION) slib-$(ver) $(CITERS) + $(CHPAT) $(VERSION) $(ver) $(CITES) + make README Init$(ver).scm: mv -f Init$(VERSION).scm Init$(ver).scm @@ -690,7 +671,7 @@ new: updates cvs commit -m 'Init$(VERSION).scm changed to Init$(ver).scm' \ Init$(VERSION).scm Init$(ver).scm cvs commit -m '(SCMVERSION): Bumped from $(VERSION) to $(ver).' - cvs tag -F scm$(ver) + cvs tag -F scm-$(ver) configtemp/scm: $(confiles) -$(RM_R) configtemp/scm @@ -734,9 +715,8 @@ ctagfiles = $(hfiles) $(cfiles) $(xfiles) ctags: $(ctagfiles) etags $(ctagfiles) -TAGFILES = $(hfiles) $(cfiles) $(ifiles) $(sfiles)\ - version.txi scm.texi indexes.texi Xlibscm.texi hobbit.texi build $(xfiles) $(mfiles)\ - hobbit.scm +TAGFILES = $(hfiles) $(cfiles) $(ifiles) $(sfiles) $(xfiles) $(mfiles)\ + $(txifiles) Xlibscm.texi hobbit.texi build hobbit.scm # # $(ufiles) ChangeLog TAGS: $(TAGFILES) etags $(TAGFILES) |