add_definitions(-DFFTW3)

add_library(algo OBJECT
    avgmodule.c
#    dec_test.c
#    dec_timetest.c
 #       decimate.cc
    fftmodule.c
    gdsrand.c
    gdssigproc.c
    linewatch.c
#    lud.cc
#    ludtest.cc
    #preproc.c
    rtcor.c
#    sdettest.cc
    sineanalyze.c
#    sinetest.c
    upsample.c
    window.c
)

target_include_directories(algo PRIVATE
    ${CMAKE_SOURCE_DIR}/src/SignalProcessing/algo

    ${CMAKE_SOURCE_DIR}/src/Base/time
)

install(FILES
    avgmodule.h
   #     decimate.hh
    fftmodule.h
    gdsalgorithm.h
    gdsconst.h
    gdsrand.h
    gdssigproc.h
    gdstype.h
    linewatch.h
    lud.hh
    lud.cc
    preproc.h
    rtcor.h
    sineanalyze.h
    upsample.h
    window.h
    DESTINATION include/gds-sigp
)

add_executable(test_algo
        test_algo.c)


if(WIN32)
target_link_libraries(test_algo PUBLIC
        gds-sigp
)
else()
target_link_libraries(test_algo PUBLIC
        gds-sigp
        m
)
endif()


add_test(NAME TestAlgo
        COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_algo
        WORKING_DIRECTORY $<TARGET_FILE_DIR:gds-sigp>)
