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

this_includedir=${includedir}/${subdir}
this_include_HEADERS = \
    all.hpp \
    fdm2dblackscholesop.hpp \
    fdmbatesop.hpp \
    fdmblackscholesfwdop.hpp \
    fdmblackscholesop.hpp \
    fdmcevop.hpp \
    fdmcirop.hpp \
    fdmg2op.hpp \
    fdmhestonfwdop.hpp \
    fdmhestonhullwhiteop.hpp \
    fdmhestonop.hpp \
    fdmhullwhiteop.hpp \
    fdmlinearop.hpp \
    fdmlinearopcomposite.hpp \
    fdmlinearopiterator.hpp \
    fdmlinearoplayout.hpp \
    fdmlocalvolfwdop.hpp \
    fdmornsteinuhlenbeckop.hpp \
    fdmsabrop.hpp \
    fdmsquarerootfwdop.hpp \
    fdmwienerop.hpp \
    firstderivativeop.hpp \
    modtriplebandlinearop.hpp \
    ninepointlinearop.hpp \
    nthorderderivativeop.hpp \
    numericaldifferentiation.hpp \
    secondderivativeop.hpp \
    secondordermixedderivativeop.hpp \
    triplebandlinearop.hpp

cpp_files = \
    fdm2dblackscholesop.cpp \
    fdmbatesop.cpp \
    fdmblackscholesfwdop.cpp \
    fdmblackscholesop.cpp \
    fdmcevop.cpp \
    fdmcirop.cpp \
    fdmg2op.cpp \
    fdmhestonfwdop.cpp \
    fdmhestonhullwhiteop.cpp \
    fdmhestonop.cpp \
    fdmhullwhiteop.cpp \
    fdmlinearoplayout.cpp \
    fdmlocalvolfwdop.cpp \
    fdmornsteinuhlenbeckop.cpp \
    fdmsabrop.cpp \
    fdmsquarerootfwdop.cpp \
    fdmwienerop.cpp \
    firstderivativeop.cpp \
    ninepointlinearop.cpp \
    nthorderderivativeop.cpp \
    numericaldifferentiation.cpp \
    secondderivativeop.cpp \
    secondordermixedderivativeop.cpp \
    triplebandlinearop.cpp

if UNITY_BUILD

nodist_libFdmOperators_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

libFdmOperators_la_SOURCES = $(cpp_files)

endif

noinst_LTLIBRARIES = libFdmOperators.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, $(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

