###########################################################################
##                                                                       ##
##                Centre for Speech Technology Research                  ##
##                     University of Edinburgh, UK                       ##
##                       Copyright (c) 1996,1997                         ##
##                        All Rights Reserved.                           ##
##                                                                       ##
##  Permission to use, copy, modify, distribute this software and its    ##
##  documentation for research, educational and individual use only, is  ##
##  hereby granted without fee, subject to the following conditions:     ##
##   1. The code must retain the above copyright notice, this list of    ##
##      conditions and the following disclaimer.                         ##
##   2. Any modifications must be clearly marked as such.                ##
##   3. Original authors' names are not deleted.                         ##
##  This software may not be used for commercial purposes without        ##
##  specific prior written permission from the authors.                  ##
##                                                                       ##
##  THE UNIVERSITY OF EDINBURGH AND THE CONTRIBUTORS TO THIS WORK        ##
##  DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING      ##
##  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT   ##
##  SHALL THE UNIVERSITY OF EDINBURGH NOR THE CONTRIBUTORS BE LIABLE     ##
##  FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES    ##
##  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN   ##
##  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,          ##
##  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF       ##
##  THIS SOFTWARE.                                                       ##
##                                                                       ##
###########################################################################
##                                                                       ##
##   Automatically constructs init_modules.cc with each modules own      ##
##   initialization routines                                             ##
##                                                                       ##
TOP=../..
DIRNAME=src/modules
CPPSRCS = find_subtypes.cc
BASE_DIRS = Lexicon base diphone Duration Intonation Text donovan parser \
	Database Selection Joining Imposition WaveSynthesis
## Add any other local modules
OTHER_DIRS = $(shell if [ -f OTHER_DIRS ]; then cat OTHER_DIRS; fi )

MODULE_DIRS = $(BASE_DIRS) $(OTHER_DIRS)
BUILD_DIRS = utilities $(MODULE_DIRS)
ALL_DIRS = $(BUILD_DIRS)

ABSTRACT_TYPES=DummyObject Unit UnitIndex UnitDatabase Join

OBJS = init_modules.o subtypes.o 

LOCAL_CLEAN = init_modules.cc subtypes.cc 

FILES = Makefile $(CPPSRCS) VCLocalRules

INLIB = $(TOP)/src/lib/libFestival.a

ALL = $(BUILD_DIRS) .buildlib

include $(TOP)/config/default_make_rules

#
#  Construct a .cc file that includes the sub-directory's initialization
#  files
#

init_modules.cc: utilities Makefile $(MODULE_DIRS) OTHER_DIRS
	@ echo "Making init_modules.cc"
	@ utilities/find_inits $(MODULE_DIRS) > init_modules.cc

# create the subtype lists for each abstract class

subtypes.cc: utilities $(BUILD_DIRS) Makefile 
	@ echo "Making subtypes.cc"
	@ utilities/find_subtypes . $(ABSTRACT_TYPES) >subtypes.cc

# If you don't have one we'll just create an emtpy one
OTHER_DIRS:
	touch OTHER_DIRS


