cmake_minimum_required(VERSION 2.6) project(simpl) set(source_files src/simpl/base.cpp src/simpl/peak_detection.cpp src/simpl/partial_tracking.cpp src/simpl/synthesis.cpp src/simpl/residual.cpp ) FILE(GLOB sms_src src/sms/*.c) FILE(GLOB sndobj_src src/sndobj/*.cpp) FILE(GLOB loris_src src/loris/*.C) LIST(APPEND source_files ${source_files} ${sndobj_src} ${sms_src} ${loris_src}) set(include_files src/simpl/simpl.h src/simpl/base.h src/simpl/peak_detection.h src/simpl/partial_tracking.h src/simpl/synthesis.h src/simpl/residual.h src/sms/sms.h src/sndobj/SndObj.h src/loris/Analyzer.h ) add_definitions(-DHAVE_FFTW3_H) set(libs m fftw3 gsl gslcblas) include_directories(src/simpl src/sms src/sndobj src/sndobj/rfftw src/loris) add_library(simpl SHARED ${source_files}) target_link_libraries(simpl ${libs}) install(TARGETS simpl LIBRARY DESTINATION lib) install(FILES ${include_files} DESTINATION include/simpl) # tests set(test_base_src ${source_files} tests/test_base.cpp) set(test_peak_detection_src ${source_files} tests/test_peak_detection.cpp) set(test_partial_tracking_src ${source_files} tests/test_partial_tracking.cpp) LIST(APPEND libs cppunit sndfile) add_executable(test_base ${test_base_src}) add_executable(test_peak_detection ${test_peak_detection_src}) add_executable(test_partial_tracking ${test_partial_tracking_src}) target_link_libraries(test_base ${libs}) target_link_libraries(test_peak_detection ${libs}) target_link_libraries(test_partial_tracking ${libs})