##############################################################
#
# Copyright (c) 1992      Technical Research Centre of Finland (VTT)
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted, provided
# that this notice and the reference to this notice appearing in each software
# module be retained unaltered, and that the name of any contributors shall not
# be used in advertising or publicity pertaining to distribution of the software
# without specific written prior permission.  No contributor makes any
# representations about the suitability of this software for any purpose.
# It is provided "as is" without any express or limited warranty.
#
#			NO WARRANTY
#
# ALL CONTRIBUTORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS.  IN NO
# EVENT SHALL ANY CONTRIBUTOR BE LIABLE FOR ANY SPECIAL, PUNITIVE, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA, OR PROFITS, WHETHER IN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH, THE USE OR PERFORMANCE
# OF THIS SOFTWARE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THIS
# SOFTWARE IS WITH YOU.  SHOULD THIS SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE
# COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
#
# As used above, "contributor" includes, but is not limited to :
#        The Technical Research Centre of Finland
#############################################################################


include ../Makefile.inc

PREPRO	=	./prepro
YACC	=	bison

all:		prepro
clean:;		-rm -f *.o *yy.c *tab.c y.output *tab.h prepro.cxx \
		prepro.inc $(CLEANSTRINGS)

# alloca.o needed on HPUX, not on Sun
OFILES	=	alloca.o cvopser.o otso.o ppqueue.o ppstring.o \
		prepro.o classdef.o 

prepro:		$(OFILES) 
		CC $(OFILES) -o prepro

inst-prepro:	prepro
		-@rm -f $(BINDIR)prepro
		-ln prepro $(BINDIR)prepro

################################################################
# source code
################################################################

classdef.o:	$(CLASSDEFH) $(HEAPH)
cvopser.o:	$(CLASSDEFH) $(PREPROH)
otso.o:		OTSO.hxx
ppqueue.o:	OTSO.hxx
ppstring.o:	OTSO.hxx
prepro.o:	$(PREPROH) prepro.inc prepro.cxx OTSO.hxx
		$(CCXX) -o prepro.o prepro.cxx
prepro.inc:	prepro.l
		$(LEX) prepro.l; sed -f lex.sed lex.yy.c > prepro.inc
prepro.cxx:	prepro.y OTSO.hxx classdef.hxx
		$(YACC) $(YFLAGS) prepro.y
		mv prepro.tab.c prepro.cxx
preprovrsn.c:	$(OFILES)
		@$(UTILDIR)version.sh prepro > $@

