stk/Makefile.in

211 lines
6.7 KiB
Makefile

#
# Toplevel Makefile for STk
#
#
# Copyright © 1993-1998 Erick Gallesio - I3S-CNRS/ESSI <eg@unice.fr>
#
# Permission to use, copy, and/or distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
# that both the above copyright notice and this permission notice appear in
# all copies and derived works. Fees for distribution or use of this
# software or derived works may only be charged with express written
# permission of the copyright holder.
# This software is provided ``as is'' without express or implied warranty.
#
# Author: Erick Gallesio [eg@unice.fr]
# Creation date: ??-Sep-1993 ??:??
# Last file update: 27-Apr-1998 22:33
#
include VERSION
SHELL = /bin/sh
CP = /bin/cp
RANLIB = @RANLIB@
MACHINE = @MACHINE@
MP = @MP@.a
FLAVOR = unix
prefix = @prefix@
stkdir = $(prefix)/lib/stk
libdir = $(stkdir)/$(VERSION)
execdir = $(libdir)/$(MACHINE)
confdir = $(execdir)/Config
ardir = $(execdir)/Libs
mandir = $(libdir)/man
incdir = $(libdir)/include
bindir = $(prefix)/bin
all: start tcl tk mp stack src snow stklos ext stop
start:
@date > .start-date
@/bin/rm -f config.make
@echo "# Common startup for all Makefiles" > config.make
@echo "VERSION = $(VERSION)" >> config.make
@echo "FLAVOR = $(FLAVOR)" >> config.make
@echo "SHELL = $(SHELL)" >> config.make
@echo "prefix = $(prefix)" >> config.make
@echo "stkdir = $(stkdir)" >> config.make
@echo "libdir = $(libdir)" >> config.make
@echo "execdir = $(execdir)" >> config.make
@echo "confdir = $(confdir)" >> config.make
@echo "ardir = $(ardir)" >> config.make
@echo "incdir = $(incdir)" >> config.make
@echo "bindir = $(bindir)" >> config.make
@echo "mandir = $(mandir)" >> config.make
@echo "VERS-OPT = -DSTK_VERSION=\\\"$(VERSION)\\\"">> config.make
@echo "MACHINE = -DMACHINE=\\\"$(MACHINE)\\\"" >> config.make
@echo "CC = @CC@" >> config.make
@echo "STKCFLAGS = @STKCFLAGS@" >> config.make
@echo "STKLDFLAGS = @STKLDFLAGS@" >> config.make
@echo "CP = $(CP)" >> config.make
@echo "RANLIB = @RANLIB@" >> config.make
@echo "STRIP = @STRIP@" >> config.make
@echo "XINCLUDES = @XINCLUDES@" >> config.make
@echo "XLIBSW = @XLIBSW@" >> config.make
@echo "MP = @MP@" >> config.make
@echo "DFLGS = @DFLGS@" >> config.make
@echo "EOBJ = @EOBJ@" >> config.make
@echo "ETKOBJ = @ETKOBJ@" >> config.make
@echo "EXTRA_OBJ = @EXTRA_OBJ@" >> config.make
@echo "DYNLOAD = @DYNLOAD@" >> config.make
@echo "SH_CCFLAGS = @SH_CCFLAGS@" >> config.make
@echo "SH_LDFLAGS = @SH_LDFLAGS@" >> config.make
@echo "SH_LOADER = @SH_LOADER@" >> config.make
@echo "SH_SUFFIX = @SH_SUFFIX@" >> config.make
@echo "LIB_MALLOC = @LIB_MALLOC@" >> config.make
@echo "LIB_DLD = @LIB_DLD@" >> config.make
@echo "STK_LIBRARY = $(libdir)" >> config.make
stop:
@echo "Make started at `cat .start-date`"
@/bin/rm .start-date
@echo "Make completed at `date`"
tcl:
@(echo "make Tcl"; cd Tcl; $(MAKE) all)
tk:
@(echo "make Tk"; cd Tk; $(MAKE) libtk.a)
mp:
@(echo "make Mp"; cd Mp; $(MAKE) $(MP))
stack:
@(echo "make STack"; cd Stack; $(MAKE) all)
src:
@(echo "make Src"; cd Src; $(MAKE) stk TK="-DUSE_TK")
snow:
@(echo "make Snow"; cd Snow; $(MAKE) snow TK="-DNO_TK")
stklos:
@(echo "make STklos"; cd STklos; $(MAKE) stklos)
ext:
@(echo "Make Extensions"; cd Extensions; $(MAKE) all)
doc:
@(echo "Make Documentation"; cd Doc; $(MAKE) all)
dvi:
@(echo "Make Documentation(dvi)"; cd Doc; $(MAKE) dvi)
demos:
/bin/sh -c "(cd Demos; ../Src/test-stk -f S-scape README.html)"
install: clean-before
(cd Tcl; $(MAKE) install)
(cd Tk; $(MAKE) install)
(cd Mp; $(MAKE) install)
(cd Src; $(MAKE) install.stk)
(cd Snow; $(MAKE) install.snow)
(cd Lib; $(MAKE) install)
(cd STklos; $(MAKE) install)
(cd Extensions; $(MAKE) install)
(cd Demos; $(MAKE) install)
(cd Help; $(MAKE) install)
(cd Doc; $(MAKE) install)
@echo ""
@echo "Installation completed."
install.libs:
-if [ ! -d $(confdir) ] ; then mkdir -p $(confdir); fi
$(CP) config.make $(confdir)
-if [ ! -d $(incdir) ] ; then mkdir -p $(incdir); fi
/bin/rm -f $(stkdir)/include
(cd $(stkdir) ; ln -s $(VERSION)/include ./include)
(cd Tcl; $(MAKE) install.libs)
(cd Tk; $(MAKE) install.libs)
(cd Mp; $(MAKE) install.libs)
(cd Src; $(MAKE) install.stk.libs)
(cd Snow; $(MAKE) install.snow.libs)
chmod 0755 $(confdir) $(ardir) $(confdir)/* $(ardir)/*
@echo ""
@echo "Full installation completed."
binary-release: install install.man
(cd $(prefix)/lib; \
tar cvfz /tmp//STk-$(VERSION)-$(MACHINE).tar.gz stk/$(VERSION)/$(MACHINE))
@echo "The release is in the file /tmp/STk-$(VERSION)-$(MACHINE).tar.gz"
@echo "Don't forget to create the file STk-$(VERSION)-$(MACHINE).README"
@echo "to describe the content of your archive (a template is given in"
@echo "the file BINARY-DISTRIB"
common-release:
(cd $(prefix)/lib; \
tar cvfz /tmp/STk-$(VERSION)-common.tar.gz stk/$(VERSION)/Help \
stk/$(VERSION)/STk \
stk/$(VERSION)/demos \
stk/$(VERSION)/images \
stk/$(VERSION)/images \
stk/$(VERSION)/man \
stk/man)
@echo "Terminé. Le fichier est dans /tmp/STk-$(VERSION)-common.tar.gz"
clean-before:
@if [ -d $(prefix)/lib/stk ]; \
then \
echo "*** WARNING:"; \
echo "*** A previous version of STk has already been installed in"; \
echo "*** directory '$(stkdir)'. It is not a problem since"; \
echo "*** several versions can coexist now in this directory"; \
echo "*** However, if you are short in place, or if you don't use "; \
echo "*** a multi architecture file system, cleaning may be a good"; \
echo "*** thing to do."; \
echo "*** (Waiting 10s) " ; \
sleep 10;\
fi
@if [ -d $(prefix)/lib/stk/$(VERSION) ]; \
then \
echo "*** WARNING:"; \
echo "*** This STk version ($(VERSION)) has already been installed "; \
echo "*** on this machine. Should I clean this directory before "; \
echo "*** starting installation of STk-$(VERSION)? [no] " ; \
read a; \
case $$a in \
y*|Y*) echo "Deleting previous installation"; \
/bin/rm -rf $(stkdir)/$(VERSION);; \
*) echo "No cleaning!";; \
esac; \
fi
install.man:
(cd Doc; $(MAKE) install.man)
clean:
(cd Tcl; $(MAKE) clean)
(cd Tk; $(MAKE) clean)
(cd Mp; $(MAKE) clean)
(cd Stack; $(MAKE) clean)
(cd Src; $(MAKE) clean)
(cd Snow; $(MAKE) clean)
(cd STklos; $(MAKE) clean)
(cd Extensions; $(MAKE) clean)
(cd Help; $(MAKE) clean)
(cd Doc; $(MAKE) clean)
/bin/rm -f core *~ Makefile config.* Src/Makefile
checkin-n:
@(cat VERSION; prcs checkin -n)
checkin:
@(cat VERSION; prcs checkin)