head	1.13;
access;
symbols
	V0_9_13:1.13
	V0_9_12:1.13
	V0_9_11:1.12
	V0_9_10:1.12
	V0_9_9:1.12
	V0_9_8:1.12
	V0_9_7:1.12
	V0_9_6:1.12
	V0_9_5:1.12
	V0_9_4:1.12
	V0_9_3:1.12
	V0_9_2:1.12
	V0_9_1:1.12
	V0_8_23:1.12
	V0_8_22:1.12
	V0_8_20:1.12
	V0_8_19:1.11
	V0_8_18:1.10
	V0_8_16:1.9
	V0_8_14:1.9
	V0_8_13:1.9
	V0_8_12:1.9
	V0_8_11:1.9
	V0_8_10:1.9
	V0_8_9:1.9
	V0_8_8:1.9
	V0_8_7:1.9
	V0_8_6:1.9
	V0_8_5:1.9
	V0_8_4:1.9
	V0_8_3:1.9
	V0_8_2:1.9
	V0_8_1:1.9
	V0_8_0:1.9
	V0_7_9:1.9
	V0_7_8:1.9
	V0_7_7:1.9
	V0_7_6:1.9
	V0_7_4:1.9
	V0_7_3:1.9
	V0_7_2:1.9
	V0_7_1:1.9
	V0_7_0:1.9
	V0_6_9:1.9
	V0_6_8:1.8
	V0_6_7:1.8
	V0_6_6:1.8
	V0_6_5:1.8
	V0_6_4:1.8
	V0_6_3:1.8
	V0_6_2:1.8
	V0_6_1:1.8
	V0_6_10:1.8
	v0_5_10:1.8
	V0_5_9:1.8
	V0_5_7:1.8
	V0_5_6:1.7
	V0_5_5:1.7
	V0_5_4:1.7
	V0_5_3:1.7
	V0_5_2:1.7
	V0_5_1:1.7
	V0_5_0:1.6
	V0_4_9:1.5
	V0_4_8:1.4
	V0_4_7:1.3
	V0_4_6:1.2;
locks; strict;
comment	@# @;


1.13
date	98.10.20.13.41.42;	author cthulhu;	state Exp;
branches;
next	1.12;

1.12
date	97.01.07.01.07.27;	author aml;	state Exp;
branches;
next	1.11;

1.11
date	97.01.02.16.15.26;	author aml;	state Exp;
branches;
next	1.10;

1.10
date	96.12.11.21.39.37;	author aml;	state Exp;
branches;
next	1.9;

1.9
date	96.03.29.21.45.26;	author aml;	state Exp;
branches;
next	1.8;

1.8
date	96.01.30.16.05.35;	author aml;	state Exp;
branches;
next	1.7;

1.7
date	96.01.05.23.05.49;	author aml;	state Exp;
branches;
next	1.6;

1.6
date	96.01.04.20.27.10;	author aml;	state Exp;
branches;
next	1.5;

1.5
date	96.01.03.23.06.59;	author aml;	state Exp;
branches;
next	1.4;

1.4
date	96.01.02.16.22.01;	author aml;	state Exp;
branches;
next	1.3;

1.3
date	95.12.30.16.40.18;	author aml;	state Exp;
branches;
next	1.2;

1.2
date	95.12.28.19.20.28;	author aml;	state Exp;
branches;
next	1.1;

1.1
date	95.12.28.18.28.27;	author aml;	state Exp;
branches;
next	;


desc
@@


1.13
log
@Makefiles now support centralized preferences via Makefile.options file.
@
text
@# $Id$

LIBCALC = libcalc.a
TARGET = $(LIBCALC)
TCLSOURCES = 
OBJECTS = gram.o scan.o eval.o calc.o rpn.o xxl_util.o \
  xxl_round.o xxl_sum.o xxl_max.o xxl_min.o xxl_count.o xxl_if.o xxl_upper.o \
  xxl_lower.o xxl_proper.o xxl_sumif.o xxl_time.o xxl_lookup.o
CCSOURCES = 
INCLUDES = calc.hh rpn.hh yydefines.h yydefines.hh wk1.hh xxl_defs.hh \
        xxl_util.hh
CSOURCES = eval.c 
CCSOURCES = calc.cc rpn.cc xxl_util.cc 
OTHERSOURCES = gram.y scan.l
SOURCES = $(CSOURCES) $(OTHERSOURCES)

include ../Makefile.options

$(TARGET): $(OBJECTS)
	ar $(AROPTIONS) $(LIBCALC) $(OBJECTS)
	ranlib $(LIBCALC)

clean:
	rm -f *.a *.o $(LIBCALC)  *~ scan.c gram.cc gram.h .depend

depend dep: 
	$(CPP) -M $(CCFLAGS) $(IFLAGS) $(CCSOURCES) $(CSOURCES) > .depend

.cc.o:
	$(CCC) $(CCFLAGS)  $(IFLAGS) -c $<

.c.o:
	$(CC) $(CCFLAGS)  $(IFLAGS) -c $<

scan.c: scan.l
	$(LEX) -oscan.c -i scan.l 

gram.o: gram.cc
	$(CCC) $(IFLAGS) -g gram.cc -o gram.o -c

gram.cc: gram.y scan.c
	$(YACC) -d gram.y 
	mv gram.tab.c gram.cc
	mv gram.tab.h gram.h

#
# include a dependency file if one exists
#
ifeq (.depend,$(wildcard .depend))
include .depend
endif

# $Log$
# Revision 1.13  1998/10/20 12:24:28  cthulhu
# Centralized makefile options in one single options file.
#
# Revision 1.12  1997/01/07 01:07:27  aml
# Error propagation for formulas fixed.
# Edit operations in place.
#
# Revision 1.11  1997/01/02  16:15:26  aml
# Fixed unsufficient range of colunm width.
# First cut of vlookup and hlookup functions.
# Fixed bug in display routines.
#
# Revision 1.10  1996/12/11 21:39:37  aml
# Sumif implemented.
# Diverse time functions implemented.
# Fixed needtoscroll2 to avoid out of control scroll.
#
# Revision 1.9  1996/03/29 21:45:26  aml
# Changed key based scrolls to be synchronous. Work fine, but are somewhat slow.
# Fixed abnormaly in state machine after range defition causing canvas scroll.
# Solid, working version.
#
# Revision 1.8  1996/01/30  16:05:35  aml
# User interface for cell and range copy created.
# Improved user interface state machine when entering and viewing cells.
# Fixed unaligned accesses during formula parsing and io operations.
#
# Revision 1.7  1996/01/05  23:05:49  aml
# Cell references evaluated.
# Spreadsheet is recalculated at every change, by an arbitrary order.
# Reformulated program structure. Evaluation and reverse parsing
# are member functions of Sheet.
#
# Revision 1.6  1996/01/04  20:27:10  aml
# Range references parsed and reverse parsed.
#
# Revision 1.5  1996/01/03  23:06:59  aml
# Absolute and relative references to cells introduced.
# They are parsed and reverse parsed, not yet evaluated.
#
# Revision 1.4  1996/01/02  16:22:01  aml
# Formula compilation, evaluation and decompilation now work.
# Cells can be of type label, numerical formula or numbers.
#
# Revision 1.3  1995/12/30  16:40:18  aml
# First cut of formula compilation.
#
# Revision 1.2  1995/12/28  19:20:28  aml
# Created skeleton to merge calculation engine
#
# Revision 1.1  1995/12/28  18:28:27  aml
# Initial revision
#
# Revision 1.14  1995/10/23  23:09:19  aml
# Version 2.0.1
#
# Revision 1.13  1995/09/18  09:25:21  aml
# Last working release with inline expressions.
# Move to wk1 format will start after this.
#
# Revision 1.12  1995/08/18 19:37:40  aml
# Modularized to allow for multiple spreadsheets.
# Introduced bindings for cursors in main canvas.
# Introduced range_opers. Copy redone, cut created.
# Automatic positioning of active cell.
#
# Revision 1.11  1995/08/09 21:13:13  aml
# Created modular toolbars
# Changes in mouse state machine
# Completed format toolbar
#
# Revision 1.10  1995/08/09 03:41:26  aml
# Changed to tk4.0
# Changed mouse state machine to use right button
# Created standard and format toolbars.
#
# Revision 1.9  1995/08/08 02:36:15  aml
# Removed scan.c from C source files.
#
# Revision 1.8  1995/08/08 02:26:36  aml
# Fixed evaluation for loop-free spreadsheets.
# Got first version of cursor state machine working.
#
# Revision 1.7  1995/06/26  22:53:43  aml
# Bug
#
# Revision 1.6  1995/06/26  22:52:19  aml
# Change to C++
#
# Revision 1.5  1995/06/26  22:51:08  aml
# Change to C++
#
# Revision 1.4  1995/06/25  09:49:22  aml
# Minor fixes
#
# Revision 1.3  1995/06/25  00:32:39  aml
# Fixed Includes
#
# Revision 1.2  1995/06/25  00:09:10  aml
# First version of copy.
#
# Revision 1.1  1995/06/23  15:39:16  aml
# Initial revision
#
@


1.12
log
@Error propagation for formulas fixed.
Edit operations in place.
@
text
@d1 1
a1 2

# $Id: Makefile,v 1.11 1997/01/02 16:15:26 aml Exp aml $
a3 1

a4 1

a5 2


a8 3



a14 2
DOCS = ToDo
OTHERDIRS = bitmaps RCS
a15 2
IDIR = ../include

d17 1
a17 11
LIBS = 

CC = gcc
CCC = g++
CPP=g++ -E
YACC = yacc
LEX = flex
CCFLAGS = -g -DDEBUG_PARSER
IFLAGS = -I$(IDIR)
LFLAGS = -L/usr/local/tcl/lib -L/usr/local/tk/lib -L. 
AROPTIONS = rc
d36 1
a36 1
	$(LEX) -i -t scan.l > scan.c
d43 2
a44 2
	mv y.tab.c gram.cc
	mv y.tab.h gram.h
d53 8
a60 1
# $Log: Makefile,v $
@


1.11
log
@Fixed unsufficient range of colunm width.
First cut of vlookup and hlookup functions.
Fixed bug in display routines.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.10 1996/12/11 21:39:37 aml Exp aml $
d21 1
a21 1
CCSOURCES = calc.cc rpn.cc xxl_util.cc xxl_funcs.cc
d76 5
@


1.10
log
@Sumif implemented.
Diverse time functions implemented.
Fixed needtoscroll2 to avoid out of control scroll.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.9 1996/03/29 21:45:26 aml Exp aml $
d13 1
a13 1
  xxl_lower.o xxl_proper.o xxl_sumif.o xxl_time.o
d76 5
@


1.9
log
@Changed key based scrolls to be synchronous. Work fine, but are somewhat slow.
Fixed abnormaly in state machine after range defition causing canvas scroll.
Solid, working version.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.8 1996/01/30 16:05:35 aml Exp aml $
d11 3
a13 1
OBJECTS = gram.o scan.o eval.o calc.o rpn.o xxl_util.o xxl_funcs.o
d15 2
d76 5
@


1.8
log
@User interface for cell and range copy created.
Improved user interface state machine when entering and viewing cells.
Fixed unaligned accesses during formula parsing and io operations.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.7 1996/01/05 23:05:49 aml Exp aml $
d42 1
a42 1
	rm -f *.a *.o $(LIBCALC)  *~ scan.c gram.c gram.h .depend
d72 5
@


1.7
log
@Cell references evaluated.
Spreadsheet is recalculated at every change, by an arbitrary order.
Reformulated program structure. Evaluation and reverse parsing
are member functions of Sheet.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.6 1996/01/04 20:27:10 aml Exp aml $
d35 1
a35 1

d38 2
a39 1
	ar rcs $(LIBCALC) $(OBJECTS)
d72 6
@


1.6
log
@Range references parsed and reverse parsed.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.5 1996/01/03 23:06:59 aml Exp aml $
d11 1
a11 1
OBJECTS = gram.o scan.o eval.o calc.o rpn.o xxl_util.o
d17 1
a17 1
CCSOURCES = calc.cc rpn.cc xxl_util.cc
d71 3
@


1.5
log
@Absolute and relative references to cells introduced.
They are parsed and reverse parsed, not yet evaluated.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.4 1996/01/02 16:22:01 aml Exp aml $
d41 1
a41 1
	rm -f *.a *.o  *~ scan.c gram.c gram.h .depend
d71 4
@


1.4
log
@Formula compilation, evaluation and decompilation now work.
Cells can be of type label, numerical formula or numbers.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.3 1995/12/30 16:40:18 aml Exp aml $
d11 1
a11 1
OBJECTS = gram.o scan.o eval.o calc.o rpn.o
d14 2
a15 1
INCLUDES = calc.hh rpn.hh yydefines.h yydefines.hh wk1.hh xxl_defs.hh
d17 1
a17 1
CCSOURCES = calc.cc rpn.cc
d41 1
a41 1
	rm -f *.a *.o  *~ scan.c gram.c gram.h
d71 4
@


1.3
log
@First cut of formula compilation.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.2 1995/12/28 19:20:28 aml Exp aml $
d14 1
a14 1
INCLUDES = calc.hh rpn.hh yydefines.h yydefines.hh wk1.hh
d70 3
@


1.2
log
@Created skeleton to merge calculation engine
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.1 1995/12/28 18:28:27 aml Exp aml $
d11 1
a11 1
OBJECTS = gram.o scan.o eval.o calc.o
d14 3
a16 3
INCLUDES = calc.hh
CCSOURCES = eval.c scan.c gram.c
CSOURCES = calc.cc
d29 1
a29 1
YACC = bison
d54 2
a55 2
gram.o: gram.c
	$(CC) $(IFLAGS) -g gram.c -o gram.o -c
d57 4
a60 2
gram.c: gram.y scan.c
	$(YACC) -d gram.y -o gram.c
d70 3
@


1.1
log
@Initial revision
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.14 1995/10/23 23:09:19 aml Exp $
d4 1
a4 1
TARGET = none
d6 2
d11 1
a11 1
OBJECTS = gram.o scan.o
d14 3
a16 2
INCLUDES = 
CSOURCES = 
d31 1
a31 1
CCFLAGS = -g 
d35 3
a37 1
$(TARGET) : $(OBJECTS) 
d40 1
a40 1
	rm -f *.o  *~ scan.c gram.c gram.h
d55 1
a55 1
	$(CCC) $(IFLAGS) -g -x c++ gram.c -o gram.o -c
d68 3
@
