
# make.000 - Colin Ramsay - 8 Dec 00
#
# Make file for ACE version 3.001.
# Intended for SunOS 5.5 boxes with `native' cc.
# Tested on "flute" :-
# 
# hardware name         sun4m 
# processor type        SPARC 
# operating system      SunOS 5.5 (ie, Solaris 2.x)  
# shell                 ksh (ie, /bin/ksh)
# compiler              cc (ie, /opt/SUNWspro/SC3.0.1/bin/cc)
# make                  SunOS (ie, /usr/ccs/bin/make)

# Compiler switches/flags (potentially)
#
# -xO1/2/3/4 : various optimisation levels
# -g         : for dbx(1)/debugger(1) debugger
# -p         : profiling info for prof
# -v         : more/stricter semantic checks
# -Xa        : ANSI C plus Sun C compatability

CC = cc -xO2 -v -Xa

# ACE Level 0, 1 & 2 switches 
#
# AL0_STAT   : If defined, include the statistics package.  Usually 
#            : defined.
# AL0_CC     : If defined, include "CC:" / "DD:" messages in the message
# AL0_DD     :   feature.  Usually both on.
# AL1_BINARY : If defined, use 1024 etc instead of 1000 etc for the
#                workspace multipliers.  Usually not defined.
# AL2_HINFO  : Prints host name etc at start of run.  Usually defined.

FLAGS = -DAL0_STAT -DAL0_CC -DAL0_DD -DAL2_HINFO

# Sources

SRC2  = ace.c parser.c postproc.c util2.c
SRC1  = control.c util1.c
SRC0  = coinc.c enum.c util0.c
SRC0A = enum00.c enum01.c enum02.c

# Note the setting of (THE)DATE, so that we can record the time/date of
# this build in the executable (usage: "fprint(fop, "%s\n", DATE);").  This
# may have to be changed for other shells/makes!

THEDATE :sh = date

# Build ACE

ace: al2.h $(SRC2) al1.h $(SRC1) al0.h $(SRC0) $(SRC0A)
	$(CC) $(FLAGS) -DDATE="\"$(THEDATE)\"" -o ace \
		$(SRC2) $(SRC1) $(SRC0)

