# Create a library called "bdm" which includes sources from all subdirectories

SET(itpp_base base/bessel.cpp   base/converters.cpp  base/help_functions.cpp  base/mat.cpp        base/parser.cpp  base/specmat.cpp  base/vec.cpp
base/binary.cpp   base/fastmath.cpp    base/itassert.cpp        base/matfunc.cpp    base/random.cpp  base/svec.cpp
base/binfile.cpp  base/gf2mat.cpp      base/itfile.cpp          base/operators.cpp  base/smat.cpp    base/timing.cpp)

SET(itpp_algebra base/algebra/cholesky.cpp  base/algebra/eigen.cpp  base/algebra/ls_solve.cpp  base/algebra/qr.cpp     base/algebra/svd.cpp
base/algebra/det.cpp       base/algebra/inv.cpp    base/algebra/lu.cpp        base/algebra/schur.cpp )

SET(itpp_bessel base/bessel/airy.cpp    base/bessel/gamma.cpp   base/bessel/i0.cpp  base/bessel/iv.cpp  base/bessel/k0.cpp  base/bessel/kn.cpp      base/bessel/struve.cpp
base/bessel/chbevl.cpp  base/bessel/hyperg.cpp  base/bessel/i1.cpp  base/bessel/jv.cpp  base/bessel/k1.cpp  base/bessel/polevl.cpp)

SET(itpp_math base/math/elem_math.cpp  base/math/error.cpp  base/math/integration.cpp  base/math/misc.cpp)

SET(itpp_signal signal/fastica.cpp signal/filter.cpp signal/filter_design.cpp signal/freq_filt.cpp signal/poly.cpp signal/resampling.cpp signal/source.cpp signal/transforms.cpp signal/window.cpp)

SET(itpp_stat stat/misc_stat.cpp stat/mog_diag.cpp stat/mog_diag_em.cpp stat/mog_diag_kmeans.cpp stat/mog_generic.cpp)

# add BDMLIB compile flag
#ADD_DEFINITIONS(-DNDEBUG)

# Normal BDM library
add_library (itpp STATIC ${itpp_base} ${itpp_algebra} ${itpp_bessel} ${itpp_math} ${itpp_signal} ${itpp_stat})
