include(CheckCXXCompilerFlag) set(SRCS src/AAFilter.cpp src/BPMDetect.cpp src/cpu_detect_x86.cpp src/FIFOSampleBuffer.cpp src/FIRFilter.cpp src/InterpolateCubic.cpp src/InterpolateLinear.cpp src/InterpolateShannon.cpp src/mmx_optimized.cpp src/PeakFinder.cpp src/RateTransposer.cpp src/SoundTouch.cpp src/sse_optimized.cpp src/TDStretch.cpp) if(NOT MSVC) check_cxx_compiler_flag(-mmmx SOUNDTOUCH_HAS_MMMX) check_cxx_compiler_flag(-msse SOUNDTOUCH_HAS_MSSE) if(SOUNDTOUCH_HAS_MMMX) set_source_files_properties(src/mmx_optimized.cpp PROPERTIES COMPILE_FLAGS "-mmmx") endif() if(SOUNDTOUCH_HAS_MSSE) set_source_files_properties(src/sse_optimized.cpp PROPERTIES COMPILE_FLAGS "-msse") endif() endif() add_library(SoundTouch STATIC ${SRCS}) target_include_directories(SoundTouch PUBLIC include PRIVATE src)