# -----------------------------------------------------------------------
# $Id: Makedemo,v 1.2 1995/06/13 03:58:03 mjl Exp $
#
# Maurice LeBrun
# IFS, University of Texas at Austin
# 14-Jul-1994
#
# Basic make assignments for PLplot under Unix (driven by "configure").
# These are used in both the library and demo Makefiles.
# -----------------------------------------------------------------------

# Utilities

CC		= sc
LDC		= slink 
LIBC		= lib:sc.lib lib:amiga.lib
M4		= m4
LN		= copy

# Uncomment this for debugging
# DEBUG_FLAG_C	= dbg=symbol

# Uncomment this for optimization
# OPT_FLAG_C	= optimize

# Need to fill these in correctly if ever use f2c as a fortran compiler

F77		= f77
F77_FLAGS	= -c
LDF		= $(F77)
LDF_FLAGS	= 

# Flags and other miscellanea

LDC_FLAGS	= 
STARTUP 	= lib:c.o
TO		= to
O		= .o
E		=

# Install directories

LIB_DIR		= plplot:lib
DOC_DIR		= plplot:doc
BIN_DIR		= plplot:bin
INFO_DIR	= plplot:info
INCLUDE_DIR	= plplot:include
DEMOS_DIR	= plplot:demos

# Distribution directories

PLINC_DIR = /include
PLLIB_DIR = /lib
PLFNT_DIR = /lib
PLLIB_PATH = $(PLLIB_DIR)/
PLFNT_PATH = $(PLFNT_DIR)/

# -----------------------------------------------------------------------
# $Id: Makedemo,v 1.2 1995/06/13 03:58:03 mjl Exp $
#
# Maurice LeBrun
# IFS, University of Texas at Austin
# 24-Jul-1994
#
# Initializations for building PLplot demo programs.
# Only used in standalone demo Makefile.
# -----------------------------------------------------------------------

# Miscellaneous variables set by configure.

CC_FLAGS_DEMOS	= @CC_FLAGS@ -I$(INCLUDE_DIR) @INCS@

# This is intentionally NOT set.

PLLIBS		=

# These are what we link against.

PLLIB_LDC	= -L$(LIB_DIR) -lplplot$(LIB_TAG)
PLLIB_LDF	= -L$(LIB_DIR) -lplplot$(LIB_TAG)

# Default is to build every demo program.

everything: cdemos fdemos tkdemos

# Clear the suffix list to prevent problems.

.SUFFIXES:
.SUFFIXES: $O .cc .c .f .h

# Inference rules.

.c$O:
	$(CC) $(CC_FLAGS) $*.c

.f$O:
	$(F77) $(F77_FLAGS) $*.f

# -----------------------------------------------------------------------
# $Id: Makedemo,v 1.2 1995/06/13 03:58:03 mjl Exp $
#
# Maurice LeBrun
# IFS, University of Texas at Austin
# 22-Jul-1994
#
# PLplot demo file dependencies and targets.
# 
# Targets supported here include: 
#
#	cdemos		All the C demos
#	fdemos		All the Fortran demos
#	tkdemos		All the extended wish (TK) demos
#	x??[cf]		Demo number ??, C or fortran versions
#	xtk??		Demo number ??, extended wish versions
# -----------------------------------------------------------------------

# -----------------------------------------------------------------------
# Example programs, in C.

CDEMOS= x01c$E x02c$E x03c$E x04c$E x05c$E x06c$E x07c$E x08c$E x09c$E \
	x10c$E x11c$E x12c$E x13c$E x14c$E x15c$E x16c$E x17c$E x18c$E \
	x19c$E tutor$E

cdemos:	$(CDEMOS)

x01c$O:	$(CDEMO_HEADERS) x01c.c
	$(CC) $(CC_FLAGS_DEMOS) x01c.c

x01c$E:	$(PLLIBS) x01c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x01c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x02c$O:	$(CDEMO_HEADERS) x02c.c
	$(CC) $(CC_FLAGS_DEMOS) x02c.c

x02c$E:	$(PLLIBS) x02c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x02c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x03c$O:	$(CDEMO_HEADERS) x03c.c
	$(CC) $(CC_FLAGS_DEMOS) x03c.c

x03c$E:	$(PLLIBS) x03c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x03c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x04c$O:	$(CDEMO_HEADERS) x04c.c
	$(CC) $(CC_FLAGS_DEMOS) x04c.c

x04c$E:	$(PLLIBS) x04c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x04c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x05c$O:	$(CDEMO_HEADERS) x05c.c
	$(CC) $(CC_FLAGS_DEMOS) x05c.c

x05c$E:	$(PLLIBS) x05c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x05c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x06c$O:	$(CDEMO_HEADERS) x06c.c
	$(CC) $(CC_FLAGS_DEMOS) x06c.c

x06c$E:	$(PLLIBS) x06c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x06c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x07c$O:	$(CDEMO_HEADERS) x07c.c
	$(CC) $(CC_FLAGS_DEMOS) x07c.c

x07c$E:	$(PLLIBS) x07c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x07c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x08c$O:	$(CDEMO_HEADERS) x08c.c
	$(CC) $(CC_FLAGS_DEMOS) x08c.c

x08c$E:	$(PLLIBS) x08c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x08c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x09c$O:	$(CDEMO_HEADERS) x09c.c
	$(CC) $(CC_FLAGS_DEMOS) x09c.c

x09c$E:	$(PLLIBS) x09c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x09c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x10c$O:	$(CDEMO_HEADERS) x10c.c
	$(CC) $(CC_FLAGS_DEMOS) x10c.c

x10c$E:	$(PLLIBS) x10c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x10c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x11c$O:	$(CDEMO_HEADERS) x11c.c
	$(CC) $(CC_FLAGS_DEMOS) x11c.c

x11c$E:	$(PLLIBS) x11c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x11c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x12c$O:	$(CDEMO_HEADERS) x12c.c
	$(CC) $(CC_FLAGS_DEMOS) x12c.c

x12c$E:	$(PLLIBS) x12c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x12c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x13c$O:	$(CDEMO_HEADERS) x13c.c
	$(CC) $(CC_FLAGS_DEMOS) x13c.c

x13c$E:	$(PLLIBS) x13c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x13c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x14c$O:	$(CDEMO_HEADERS) x14c.c
	$(CC) $(CC_FLAGS_DEMOS) x14c.c

x14c$E:	$(PLLIBS) x14c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x14c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x15c$O:	$(CDEMO_HEADERS) x15c.c
	$(CC) $(CC_FLAGS_DEMOS) x15c.c

x15c$E:	$(PLLIBS) x15c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x15c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x16c$O:	$(CDEMO_HEADERS) x16c.c
	$(CC) $(CC_FLAGS_DEMOS) x16c.c

x16c$E:	$(PLLIBS) x16c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x16c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x17c$O:	$(CDEMO_HEADERS) x17c.c
	$(CC) $(CC_FLAGS_DEMOS) x17c.c

x17c$E:	$(PLLIBS) x17c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x17c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x18c$O:	$(CDEMO_HEADERS) x18c.c
	$(CC) $(CC_FLAGS_DEMOS) x18c.c

x18c$E:	$(PLLIBS) x18c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x18c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

x19c$O:	$(CDEMO_HEADERS) x19c.c
	$(CC) $(CC_FLAGS_DEMOS) x19c.c

x19c$E:	$(PLLIBS) x19c$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) x19c$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

tutor$O:	$(CDEMO_HEADERS) tutor.c
	$(CC) $(CC_FLAGS_DEMOS) tutor.c

tutor$E:	$(PLLIBS) tutor$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) tutor$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

bugc$O:	$(CDEMO_HEADERS) bugc.c
	$(CC) $(CC_FLAGS_DEMOS) bugc.c

bugc$E:	$(PLLIBS) bugc$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) bugc$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

# -----------------------------------------------------------------------
# Example programs, in Fortran.

FDEMOS= x01f$E x02f$E x03f$E x04f$E x05f$E x06f$E x07f$E x08f$E x09f$E \
	x10f$E x11f$E x12f$E x13f$E x16f$E

fdemos:	$(FDEMOS)

x01f$O:	x01f.f
	$(F77) $(F77_FLAGS) x01f.f

x01f$E:	$(PLLIBS) x01f$O
	$(LDF) $(LDF_FLAGS) x01f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x02f$O:	x02f.f
	$(F77) $(F77_FLAGS) x02f.f

x02f$E:	$(PLLIBS) x02f$O
	$(LDF) $(LDF_FLAGS) x02f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x03f$O:	x03f.f
	$(F77) $(F77_FLAGS) x03f.f

x03f$E:	$(PLLIBS) x03f$O
	$(LDF) $(LDF_FLAGS) x03f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x04f$O:	x04f.f
	$(F77) $(F77_FLAGS) x04f.f

x04f$E:	$(PLLIBS) x04f$O
	$(LDF) $(LDF_FLAGS) x04f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x05f$O:	x05f.f
	$(F77) $(F77_FLAGS) x05f.f

x05f$E:	$(PLLIBS) x05f$O
	$(LDF) $(LDF_FLAGS) x05f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x06f$O:	x06f.f
	$(F77) $(F77_FLAGS) x06f.f

x06f$E:	$(PLLIBS) x06f$O
	$(LDF) $(LDF_FLAGS) x06f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x07f$O:	x07f.f
	$(F77) $(F77_FLAGS) x07f.f

x07f$E:	$(PLLIBS) x07f$O
	$(LDF) $(LDF_FLAGS) x07f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x08f$O:	x08f.f
	$(F77) $(F77_FLAGS) x08f.f

x08f$E:	$(PLLIBS) x08f$O
	$(LDF) $(LDF_FLAGS) x08f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x09f$O:	x09f.f
	$(F77) $(F77_FLAGS) x09f.f

x09f$E:	$(PLLIBS) x09f$O
	$(LDF) $(LDF_FLAGS) x09f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x10f$O:	x10f.f
	$(F77) $(F77_FLAGS) x10f.f

x10f$E:	$(PLLIBS) x10f$O
	$(LDF) $(LDF_FLAGS) x10f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x11f$O:	x11f.f
	$(F77) $(F77_FLAGS) x11f.f

x11f$E:	$(PLLIBS) x11f$O
	$(LDF) $(LDF_FLAGS) x11f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x12f$O:	x12f.f
	$(F77) $(F77_FLAGS) x12f.f

x12f$E:	$(PLLIBS) x12f$O
	$(LDF) $(LDF_FLAGS) x12f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x13f$O:	x13f.f
	$(F77) $(F77_FLAGS) x13f.f

x13f$E:	$(PLLIBS) x13f$O
	$(LDF) $(LDF_FLAGS) x13f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

x16f$O:	x16f.f
	$(F77) $(F77_FLAGS) x16f.f

x16f$E:	$(PLLIBS) x16f$O
	$(LDF) $(LDF_FLAGS) x16f$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

bugf$O:	bugf.f
	$(F77) $(F77_FLAGS) bugf.f

bugf$E:	$(PLLIBS) bugf$O
	$(LDF) $(LDF_FLAGS) bugf$O \
	       $(PLLIB_LDF) $(TO) $@ $(LDF_PATH) $(LDF_LIBS)

# -----------------------------------------------------------------------
# TK example programs.

TKDEMOS = xtk01$E xtk02$E xtk04$E

tkdemos: $(TKDEMOS)

xtk01$O:	$(CDEMO_HEADERS) xtk01.c
	$(CC) $(CC_FLAGS_DEMOS) xtk01.c

xtk01$E:  $(PLLIBS) xtk01$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) xtk01$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

xtk02$O:	$(CDEMO_HEADERS) xtk02.c
	$(CC) $(CC_FLAGS_DEMOS) xtk02.c

xtk02$E:  $(PLLIBS) xtk02$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) xtk02$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

xtk04$O:	$(CDEMO_HEADERS) xtk04.c
	$(CC) $(CC_FLAGS_DEMOS) xtk04.c

xtk04$E:  $(PLLIBS) xtk04$O
	$(LDC) $(LDC_FLAGS) $(STARTUP) xtk04$O \
	       $(PLLIB_LDC) $(TO) $@ $(LDC_LIBS)

# -----------------------------------------------------------------------
# C++ example programs.

CXXDEMOS = x01cc$E

cxxdemos: $(CXXDEMOS)

x01cc$O: x01cc.cc
	$(CXX) $(CXX_FLAGS_DEMOS) x01cc.cc	

x01cc$E:  $(PLLIBS) x01cc$O
	$(LDCXX) $(LDCXX_FLAGS) $(STARTUP) x01cc$O \
	       	$(PLLIB_LDC) $(TO) $@ $(LDCXX_LIBS)
# -----------------------------------------------------------------------
# $Id: Makedemo,v 1.2 1995/06/13 03:58:03 mjl Exp $
#
# Maurice LeBrun
# IFS, University of Texas at Austin
# 24-Jul-1994
#
# Miscellaneous targets for demos.  Right now only cleanup.
# Only used in standalone demo Makefile.
# -----------------------------------------------------------------------

# Cleanup

clean:
	-$(RM) $(CDEMOS) $(FDEMOS) $(TKDEMOS) *$O *.ps *.plm

