# Makefile for AMA
# --------------------

# Site configuration
# ------------------
INSTALLDIR  = $(QINSTALLDIR)
ARCHITECTURE_PATH = $(QARCHITECTURE_PATH)
INSTALLLIB  = $(INSTALLDIR)/lib
INSTALLLIBA = $(INSTALLLIB)/$(ARCHITECTURE_PATH)
INSTALLBIN  = $(INSTALLDIR)/bin
INSTALLBINA = $(INSTALLBIN)/$(ARCHITECTURE_PATH)

RELEASE_VERSION = 0.1
RELEASE_FILE = leonard-$(RELEASE_VERSION)

TARGETS = ama



all: error$(ERROR_OK) $(TARGETS)

# To add a new architecture, add architecture specific lines.
# The line prefix should be '#`architecture-path` ', see examples below.
port:
	-rm -rf $(ARCHITECTURE_PATH)
	mkdir $(ARCHITECTURE_PATH)
	cd $(ARCHITECTURE_PATH); csh -cf "ln -s ../*.{sc,c,h} ."
	$(MAKE) port-makefile

port-makefile:
	echo "# This file was generated automatically.  Do not edit." >\
		$(ARCHITECTURE_PATH)/makefile
	echo "# ----------------------------------------------------" >>\
		$(ARCHITECTURE_PATH)/makefile
	echo ARCHITECTURE_PATH = $(ARCHITECTURE_PATH) >>\
		$(ARCHITECTURE_PATH)/makefile
	echo ERROR_OK = _no_error >> $(ARCHITECTURE_PATH)/makefile
	grep "^#$(ARCHITECTURE_PATH)" makefile | \
		sed "s/#$(ARCHITECTURE_PATH) //" >>\
			$(ARCHITECTURE_PATH)/makefile
	echo include ../makefile >> $(ARCHITECTURE_PATH)/makefile

error:
	@echo "Do 'make port' to create an architecture specific directory."
	@exit 1

error_no_error:

# Architecture specific variables
# -------------------------------
#sun4-SunOS-4.1.3 CC = gcc
#sun4-SunOS-4.1.3 CFLAGS = -O2 -DSUN
#sun4-SunOS-4.1.3 SCCFLAGS = -O2
#sun4-SunOS-4.1.3 SCCLDFLAGS =
#sun4-SunOS-4.1.3 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#sun4-SunOS-4.1.3       -L/usr/openwin/lib -lX11 -lXext -lm\
#sun4-SunOS-4.1.3       -L$(INSTALLLIBA) -llpk

#sun4m-SunOS-5.4 CC = gcc
#sun4m-SunOS-5.4 CFLAGS = -O2 -DSUN
#sun4m-SunOS-5.4 SCCFLAGS = -O2
#sun4m-SunOS-5.4 SCCLDFLAGS =
#sun4m-SunOS-5.4 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#sun4m-SunOS-5.4       -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext\
#sun4m-SunOS-5.4       -L/usr/ucblib -R/usr/ucblib -lucb -lm\
#sun4m-SunOS-5.4       -L$(INSTALLLIBA) -llpk

#sun4m-SunOS-5.5 CC = gcc
#sun4m-SunOS-5.5 CFLAGS = -O2 -DSUN
#sun4m-SunOS-5.5 SCCFLAGS = -O2
#sun4m-SunOS-5.5 SCCLDFLAGS =
#sun4m-SunOS-5.5 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#sun4m-SunOS-5.5       -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext\
#sun4m-SunOS-5.5       -L/usr/ucblib -R/usr/ucblib -lucb -lm\
#sun4m-SunOS-5.5       -L$(INSTALLLIBA) -llpk

#sun4u-SunOS-5.6 CC = gcc
#sun4u-SunOS-5.6 CFLAGS = -O2 -DSUN
#sun4u-SunOS-5.6 SCCFLAGS = -O2
#sun4u-SunOS-5.6 SCCLDFLAGS =
#sun4u-SunOS-5.6 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#sun4u-SunOS-5.6       -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext\
#sun4u-SunOS-5.6       -L/usr/ucblib -R/usr/ucblib -lucb -lm\
#sun4u-SunOS-5.6       -L$(INSTALLLIBA) -llpk

#i586-Linux-2.0.0 CC = gcc
#i586-Linux-2.0.0 CFLAGS = -O2
#i586-Linux-2.0.0 SCCFLAGS = -O2
#i586-Linux-2.0.0 SCCLDFLAGS =
#i586-Linux-2.0.0 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i586-Linux-2.0.0       -L/usr/X11/lib -lX11 -lXext -lm\
#i586-Linux-2.0.0       -L$(INSTALLLIBA) -llpk

#i586-Linux-2.0.34 CC = egcs
#i586-Linux-2.0.34 CFLAGS = -O2
#i586-Linux-2.0.34 SCCFLAGS = -O2
#i586-Linux-2.0.34 SCCLDFLAGS =
#i586-Linux-2.0.34 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i586-Linux-2.0.34       -L/usr/X11/lib -lX11 -lXext -lm\
#i586-Linux-2.0.34       -L$(INSTALLLIBA) -llpk

#i586-Linux-2.0.35 CC = egcs
#i586-Linux-2.0.35 CFLAGS = -O2
#i586-Linux-2.0.35 SCCFLAGS = -O2
#i586-Linux-2.0.35 SCCLDFLAGS =
#i586-Linux-2.0.35 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i586-Linux-2.0.35       -L/usr/X11/lib -lX11 -lXext -lm\
#i586-Linux-2.0.35       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.18 CC = gcc
#i686-Linux-2.0.18 CFLAGS = -O2
#i686-Linux-2.0.18 SCCFLAGS = -O2
#i686-Linux-2.0.18 SCCLDFLAGS =
#i686-Linux-2.0.18 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.18       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.18       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.27 CC = gcc
#i686-Linux-2.0.27 CFLAGS = -O2
#i686-Linux-2.0.27 SCCFLAGS = -O2
#i686-Linux-2.0.27 SCCLDFLAGS =
#i686-Linux-2.0.27 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.27       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.27       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.30 CC = gcc
#i686-Linux-2.0.30 CFLAGS = -O2
#i686-Linux-2.0.30 SCCFLAGS = -O2
#i686-Linux-2.0.30 SCCLDFLAGS =
#i686-Linux-2.0.30 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.30       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.30       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.32 CC = gcc
#i686-Linux-2.0.32 CFLAGS = -O2
#i686-Linux-2.0.32 SCCFLAGS = -O2
#i686-Linux-2.0.32 SCCLDFLAGS =
#i686-Linux-2.0.32 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.32       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.32       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.33 CC = gcc
#i686-Linux-2.0.33 CFLAGS = -O2
#i686-Linux-2.0.33 SCCFLAGS = -O2
#i686-Linux-2.0.33 SCCLDFLAGS =
#i686-Linux-2.0.33 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.33       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.33       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.34 CC = egcs
#i686-Linux-2.0.34 CFLAGS = -O2
#i686-Linux-2.0.34 SCCFLAGS = -O2
#i686-Linux-2.0.34 SCCLDFLAGS =
#i686-Linux-2.0.34 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.34       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.34       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.0.35 CC = egcs
#i686-Linux-2.0.35 CFLAGS = -O2
#i686-Linux-2.0.35 SCCFLAGS = -O2
#i686-Linux-2.0.35 SCCLDFLAGS =
#i686-Linux-2.0.35 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.0.35       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.0.35       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.1 CC = egcs
#i686-Linux-2.2.1 CFLAGS = -O2
#i686-Linux-2.2.1 SCCFLAGS = -O2
#i686-Linux-2.2.1 SCCLDFLAGS =
#i686-Linux-2.2.1 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.1       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.2.1       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.5 CC = egcs
#i686-Linux-2.2.5 CFLAGS = -O2
#i686-Linux-2.2.5 SCCFLAGS = -O2
#i686-Linux-2.2.5 SCCLDFLAGS =
#i686-Linux-2.2.5 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.5       -L/usr/X11/lib -lX11 -lXext -lm\
#i686-Linux-2.2.5       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.5-15 CC = egcs
#i686-Linux-2.2.5-15 CFLAGS = -O2
#i686-Linux-2.2.5-15 SCCFLAGS = -O2
#i686-Linux-2.2.5-15 SCCLDFLAGS =
#i686-Linux-2.2.5-15 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.5-15       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.2.5-15       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.10 CC = egcs
#i686-Linux-2.2.10 CFLAGS = -O2
#i686-Linux-2.2.10 SCCFLAGS = -O2
#i686-Linux-2.2.10 SCCLDFLAGS =
#i686-Linux-2.2.10 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.10       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.2.10       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.12-20 CC = egcs
#i686-Linux-2.2.12-20 CFLAGS = -O2
#i686-Linux-2.2.12-20 SCCFLAGS = -O2
#i686-Linux-2.2.12-20 SCCLDFLAGS =
#i686-Linux-2.2.12-20 LRL = $(INSTALLLIBA)/QobiScheme.a\
#i686-Linux-2.2.12-20       $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.12-20       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.2.12-20       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.2.12-20smp CC = egcs
#i686-Linux-2.2.12-20smp CFLAGS = -O2
#i686-Linux-2.2.12-20smp SCCFLAGS = -O2
#i686-Linux-2.2.12-20smp SCCLDFLAGS =
#i686-Linux-2.2.12-20smp LRL = $(INSTALLLIBA)/QobiScheme.a\
#i686-Linux-2.2.12-20smp       $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.2.12-20smp       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.2.12-20smp       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.3.42 CC = egcs
#i686-Linux-2.3.42 CFLAGS = -O2
#i686-Linux-2.3.42 SCCFLAGS = -O2
#i686-Linux-2.3.42 SCCLDFLAGS =
#i686-Linux-2.3.42 LRL = $(INSTALLLIBA)/QobiScheme.a\
#i686-Linux-2.3.42       $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.3.42       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.3.42       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.4.7-10 CC = gcc
#i686-Linux-2.4.7-10 CFLAGS = -O2
#i686-Linux-2.4.7-10 SCCFLAGS = -O2
#i686-Linux-2.4.7-10 SCCLDFLAGS =
#i686-Linux-2.4.7-10 LRL = $(INSTALLLIBA)/QobiScheme.a\
#i686-Linux-2.4.7-10       $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.4.7-10       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.4.7-10       -L$(INSTALLLIBA) -llpk

#i686-Linux-2.4.17-0.13ecn0.9smp CC = gcc
#i686-Linux-2.4.17-0.13ecn0.9smp CFLAGS = -O2
#i686-Linux-2.4.17-0.13ecn0.9smp SCCFLAGS = -O2
#i686-Linux-2.4.17-0.13ecn0.9smp SCCLDFLAGS =
#i686-Linux-2.4.17-0.13ecn0.9smp LRL = $(INSTALLLIBA)/QobiScheme.a\
#i686-Linux-2.4.17-0.13ecn0.9smp       $(INSTALLLIBA)/scxl.a\
#i686-Linux-2.4.17-0.13ecn0.9smp       -L/usr/X11R6/lib -lX11 -lXext -lm\
#i686-Linux-2.4.17-0.13ecn0.9smp       -L$(INSTALLLIBA) -llpk

#alpha-OSF1-V3.2 CC = cc
#alpha-OSF1-V3.2 CFLAGS = -O4 -migrate -ieee_with_no_inexact -DAUX
#alpha-OSF1-V3.2 SCCFLAGS = -migrate -ieee_with_no_inexact
#alpha-OSF1-V3.2 SCCLDFLAGS = -migrate
#alpha-OSF1-V3.2 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#alpha-OSF1-V3.2       -lX11 -lXext -lm\
#alpha-OSF1-V3.2       -L$(INSTALLLIBA) -llpk

#alpha-OSF1-V4.0 CC = cc
#alpha-OSF1-V4.0 CFLAGS = -O4 -migrate -ieee_with_no_inexact -DAUX
#alpha-OSF1-V4.0 SCCFLAGS = -migrate -ieee_with_no_inexact
#alpha-OSF1-V4.0 SCCLDFLAGS = -migrate
#alpha-OSF1-V4.0 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#alpha-OSF1-V4.0       -lX11 -lXext -lm\
#alpha-OSF1-V4.0       -L$(INSTALLLIBA) -llpk

#IP7-IRIX-4.0.5 CC = gcc
#IP7-IRIX-4.0.5 CFLAGS = -O2
#IP7-IRIX-4.0.5 SCCFLAGS = -O2
#IP7-IRIX-4.0.5 SCCLDFLAGS =
#IP7-IRIX-4.0.5 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#IP7-IRIX-4.0.5       -lX11 -lXext -lm\
#IP7-IRIX-4.0.5       -L$(INSTALLLIBA) -llpk

#IP12-IRIX-4.0.5 CC = gcc
#IP12-IRIX-4.0.5 CFLAGS = -O2
#IP12-IRIX-4.0.5 SCCFLAGS = -O2
#IP12-IRIX-4.0.5 SCCLDFLAGS =
#IP12-IRIX-4.0.5 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#IP12-IRIX-4.0.5       -lX11 -lXext -lm\
#IP12-IRIX-4.0.5       -L$(INSTALLLIBA) -llpk

#IP22-IRIX-5.3 CC = cc
#IP22-IRIX-5.3 CFLAGS = -O2 -non_shared -DAUX
#IP22-IRIX-5.3 SCCFLAGS = -O2 -non_shared
#IP22-IRIX-5.3 SCCLDFLAGS = -non_shared
#IP22-IRIX-5.3 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#IP22-IRIX-5.3       $(INSTALLLIBA)/libX11.a -lm\
#IP22-IRIX-5.3       -L$(INSTALLLIBA) -llpk

#IP25-IRIX64-6.2 CC = cc
#IP25-IRIX64-6.2 CFLAGS = -O2 -non_shared -DAUX
#IP25-IRIX64-6.2 SCCFLAGS = -O2 -non_shared
#IP25-IRIX64-6.2 SCCLDFLAGS = -non_shared
#IP25-IRIX64-6.2 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#IP25-IRIX64-6.2       $(INSTALLLIBA)/libX11.a -lm\
#IP25-IRIX64-6.2       -L$(INSTALLLIBA) -llpk

#IP28-IRIX64-6.2 CC = cc
#IP28-IRIX64-6.2 CFLAGS = -O2 -non_shared -DAUX
#IP28-IRIX64-6.2 SCCFLAGS = -O2 -non_shared
#IP28-IRIX64-6.2 SCCLDFLAGS = -non_shared
#IP28-IRIX64-6.2 LRL = $(INSTALLLIBA)/QobiScheme.a $(INSTALLLIBA)/scxl.a\
#IP28-IRIX64-6.2       $(INSTALLLIBA)/libX11.a -lm\
#IP28-IRIX64-6.2       -L$(INSTALLLIBA) -llpk

arc:
	-csh -cf "rm -rf ../archive/`archive-date`"
	csh -cf "mkdir ../archive/`archive-date`"
	-csh -cf "cp ../README ../archive/`archive-date`/."
	-csh -cf "cp makefile *.{sc,c,h} ../archive/`archive-date`/."
	-csh -cf "cp ../maple/*.maple ../archive/`archive-date`/."
	-csh -cf "cp ../documentation/*.tex ../archive/`archive-date`/."
	-csh -cf "cp ../documentation/*.text ../archive/`archive-date`/."

clean:
	-rm -f *.o core a.out

real-clean: clean
	-rm -f $(TARGETS)

install: all
	cp $(TARGETS) $(INSTALLBINA)/.

uninstall:
	cd $(INSTALLBINA); rm -rf $(TARGETS)

release:
	-rm -rf $(RELEASE_FILE) $(RELEASE_FILE).tar*
	mkdir $(RELEASE_FILE)
	mkdir $(RELEASE_FILE)/source
	mkdir $(RELEASE_FILE)/documentation
	cp ../README $(RELEASE_FILE)/.
	cp makefile *.{sc,c,h} $(RELEASE_FILE)/source/.
	tar cvf $(RELEASE_FILE).tar ./$(RELEASE_FILE)
	compress $(RELEASE_FILE).tar
	-rm -rf $(RELEASE_FILE)
	mv $(RELEASE_FILE).tar.Z ../releases/.

# Compilation rules and dependencies
# ----------------------------------

ama.o: ama.sc 
	scc -cc $(CC) $(SCCFLAGS) -c ama.sc
	-rm -f ama.c

ama: ama.o 
	scc -cc $(CC) $(SCCLDFLAGS) -o ama ama.o $(LRL)
