
AM_CPPFLAGS = -I${top_builddir} -I${top_srcdir}

this_includedir=${includedir}/${subdir}
this_include_HEADERS = \
    all.hpp \
    analyticbsmhullwhiteengine.hpp \
    analyticdigitalamericanengine.hpp \
    analyticdividendeuropeanengine.hpp \
    analyticeuropeanengine.hpp \
    analyticeuropeanvasicekengine.hpp \
    analyticcevengine.hpp \
    analyticgjrgarchengine.hpp \
    analytich1hwengine.hpp \
    analytichestonengine.hpp \
    analytichestonhullwhiteengine.hpp \
    analyticpdfhestonengine.hpp \
    analyticptdhestonengine.hpp \
    baroneadesiwhaleyengine.hpp \
    batesengine.hpp \
    binomialengine.hpp \
    bjerksundstenslandengine.hpp \
    coshestonengine.hpp \
    discretizedvanillaoption.hpp \
    exponentialfittinghestonengine.hpp \
    hestonexpansionengine.hpp \
    integralengine.hpp \
    jumpdiffusionengine.hpp \
    juquadraticengine.hpp \
	fdbatesvanillaengine.hpp \
	fdblackscholesvanillaengine.hpp \
	fdblackscholesshoutengine.hpp \
	fdcevvanillaengine.hpp \
	fdhestonhullwhitevanillaengine.hpp \
	fdhestonvanillaengine.hpp \
	fdcirvanillaengine.hpp \
    fdmultiperiodengine.hpp \
    fdsabrvanillaengine.hpp \
	fdsimplebsswingengine.hpp \
	fdvanillaengine.hpp \
    mcamericanengine.hpp \
    mcdigitalengine.hpp \
    mceuropeanengine.hpp \
    mceuropeanhestonengine.hpp \
    mceuropeangjrgarchengine.hpp \
    mchestonhullwhiteengine.hpp \
    mcvanillaengine.hpp \
    qdfpamericanengine.hpp \
    qdplusamericanengine.hpp

cpp_files = \
    analyticbsmhullwhiteengine.cpp \
    analyticdigitalamericanengine.cpp \
    analyticdividendeuropeanengine.cpp \
    analyticeuropeanengine.cpp \
    analyticeuropeanvasicekengine.cpp \
    analyticcevengine.cpp \
    analyticgjrgarchengine.cpp \
    analytich1hwengine.cpp \
    analytichestonengine.cpp \
    analytichestonhullwhiteengine.cpp \
    analyticpdfhestonengine.cpp \
    analyticptdhestonengine.cpp \
    baroneadesiwhaleyengine.cpp \
    batesengine.cpp \
    bjerksundstenslandengine.cpp \
    coshestonengine.cpp \
    discretizedvanillaoption.cpp \
    exponentialfittinghestonengine.cpp \
    hestonexpansionengine.cpp \
    integralengine.cpp \
    jumpdiffusionengine.cpp \
    juquadraticengine.cpp \
	fdbatesvanillaengine.cpp \
	fdblackscholesvanillaengine.cpp \
	fdblackscholesshoutengine.cpp \
	fdcevvanillaengine.cpp \
	fdhestonhullwhitevanillaengine.cpp \
	fdhestonvanillaengine.cpp \
	fdcirvanillaengine.cpp \
	fdsabrvanillaengine.cpp \
	fdsimplebsswingengine.cpp \
    mcamericanengine.cpp \
    mcdigitalengine.cpp \
    mchestonhullwhiteengine.cpp \
    qdfpamericanengine.cpp \
    qdplusamericanengine.cpp

if UNITY_BUILD

nodist_libVanillaEngines_la_SOURCES = unity.cpp

unity.cpp: Makefile.am
	echo "/* This file is automatically generated; do not edit.     */" > $@
	echo "/* Add the files to be included into Makefile.am instead. */" >> $@
	echo >> $@
	for i in $(cpp_files); do \
		echo "#include \"${subdir}/$$i\"" >> $@; \
	done

EXTRA_DIST = $(cpp_files)

else

libVanillaEngines_la_SOURCES = $(cpp_files)

endif

noinst_LTLIBRARIES = libVanillaEngines.la

all.hpp: Makefile.am
	echo "/* This file is automatically generated; do not edit.     */" > ${srcdir}/$@
	echo "/* Add the files to be included into Makefile.am instead. */" >> ${srcdir}/$@
	echo >> ${srcdir}/$@
	for i in $(filter-out all.hpp fdmultiperiodengine.hpp fdvanillaengine.hpp, $(this_include_HEADERS)); do \
		echo "#include <${subdir}/$$i>" >> ${srcdir}/$@; \
	done
	echo >> ${srcdir}/$@
	subdirs='$(SUBDIRS)'; for i in $$subdirs; do \
		echo "#include <${subdir}/$$i/all.hpp>" >> ${srcdir}/$@; \
	done

