From 3587c62c73b29cb7b6556856949cb73035575273 Mon Sep 17 00:00:00 2001 From: Eric Coissac Date: Tue, 9 Sep 2025 21:15:53 +0200 Subject: [PATCH] Integre la library C libsoxr --- .DS_Store | Bin 6148 -> 6148 bytes .gitignore | 6 +- C/.DS_Store | Bin 0 -> 8196 bytes C/include/soxr-lsr.h | 78 + C/include/soxr.h | 344 +++ C/lib/pkgconfig/soxr-lsr.pc | 5 + C/lib/pkgconfig/soxr.pc | 5 + C/share/doc/libsoxr/LICENCE | 23 + C/share/doc/libsoxr/NEWS | 46 + C/share/doc/libsoxr/README | 53 + C/share/doc/libsoxr/examples/1-single-block.c | 50 + C/share/doc/libsoxr/examples/1a-lsr.c | 40 + C/share/doc/libsoxr/examples/2-stream.C | 78 + .../doc/libsoxr/examples/3-options-input-fn.c | 114 + .../doc/libsoxr/examples/4-split-channels.c | 161 ++ .../doc/libsoxr/examples/5-variable-rate.c | 93 + C/share/doc/libsoxr/examples/README | 20 + .../doc/libsoxr/examples/examples-common.h | 47 + C/src/soxr-0.1.3/AUTHORS | 1 + C/src/soxr-0.1.3/CMakeLists.txt | 335 +++ C/src/soxr-0.1.3/COPYING.LGPL | 502 ++++ C/src/soxr-0.1.3/INSTALL | 183 ++ C/src/soxr-0.1.3/LICENCE | 23 + C/src/soxr-0.1.3/NEWS | 46 + C/src/soxr-0.1.3/README | 53 + C/src/soxr-0.1.3/Release/CMakeCache.txt | 544 ++++ .../CMakeFiles/4.1.1/CMakeCCompiler.cmake | 84 + .../4.1.1/CMakeDetermineCompilerABI_C.bin | Bin 0 -> 33560 bytes .../CMakeFiles/4.1.1/CMakeSystem.cmake | 15 + .../4.1.1/CompilerIdC/CMakeCCompilerId.c | 934 +++++++ .../CMakeFiles/4.1.1/CompilerIdC/apple-sdk.c | 1 + .../Release/CMakeFiles/CMakeConfigureLog.yaml | 2378 +++++++++++++++++ .../CMakeDirectoryInformation.cmake | 16 + .../Release/CMakeFiles/CMakeRuleHashes.txt | 8 + .../CMakeFiles/FindOpenMP/ompver_C.bin | Bin 0 -> 33464 bytes .../Release/CMakeFiles/InstallScripts.json | 10 + .../Release/CMakeFiles/Makefile.cmake | 98 + C/src/soxr-0.1.3/Release/CMakeFiles/Makefile2 | 561 ++++ .../Release/CMakeFiles/TargetDirectories.txt | 48 + .../CMakeFiles/check.dir/DependInfo.cmake | 22 + .../Release/CMakeFiles/check.dir/build.make | 90 + .../CMakeFiles/check.dir/cmake_clean.cmake | 8 + .../CMakeFiles/check.dir/compiler_depend.make | 2 + .../CMakeFiles/check.dir/compiler_depend.ts | 2 + .../CMakeFiles/check.dir/progress.make | 1 + .../Release/CMakeFiles/cmake.check_cache | 1 + .../CMakeFiles/deinstall.dir/DependInfo.cmake | 22 + .../CMakeFiles/deinstall.dir/build.make | 90 + .../deinstall.dir/cmake_clean.cmake | 8 + .../deinstall.dir/compiler_depend.make | 2 + .../deinstall.dir/compiler_depend.ts | 2 + .../CMakeFiles/deinstall.dir/progress.make | 1 + .../CMakeFiles/distclean.dir/DependInfo.cmake | 22 + .../CMakeFiles/distclean.dir/build.make | 90 + .../distclean.dir/cmake_clean.cmake | 8 + .../distclean.dir/compiler_depend.make | 2 + .../distclean.dir/compiler_depend.ts | 2 + .../CMakeFiles/distclean.dir/progress.make | 1 + .../Release/CMakeFiles/progress.marks | 1 + C/src/soxr-0.1.3/Release/CPackConfig.cmake | 75 + .../Release/CPackSourceConfig.cmake | 82 + C/src/soxr-0.1.3/Release/CTestTestfile.cmake | 9 + C/src/soxr-0.1.3/Release/Makefile | 390 +++ .../Testing/Temporary/CTestCostData.txt | 11 + C/src/soxr-0.1.3/Release/cmake_install.cmake | 85 + C/src/soxr-0.1.3/Release/deinstall.cmake | 25 + C/src/soxr-0.1.3/Release/examples/1a-lsr | Bin 0 -> 207768 bytes .../Release/examples/3-options-input-fn | Bin 0 -> 207120 bytes .../CMakeFiles/1a-lsr.dir/DependInfo.cmake | 23 + .../examples/CMakeFiles/1a-lsr.dir/build.make | 116 + .../CMakeFiles/1a-lsr.dir/cmake_clean.cmake | 11 + .../1a-lsr.dir/compiler_depend.internal | 121 + .../1a-lsr.dir/compiler_depend.make | 352 +++ .../CMakeFiles/1a-lsr.dir/compiler_depend.ts | 2 + .../CMakeFiles/1a-lsr.dir/depend.make | 2 + .../examples/CMakeFiles/1a-lsr.dir/flags.make | 12 + .../examples/CMakeFiles/1a-lsr.dir/link.txt | 1 + .../CMakeFiles/1a-lsr.dir/progress.make | 3 + .../3-options-input-fn.dir/DependInfo.cmake | 23 + .../3-options-input-fn.dir/build.make | 114 + .../3-options-input-fn.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 121 + .../compiler_depend.make | 352 +++ .../3-options-input-fn.dir/compiler_depend.ts | 2 + .../3-options-input-fn.dir/depend.make | 2 + .../3-options-input-fn.dir/flags.make | 12 + .../3-options-input-fn.dir/link.txt | 1 + .../3-options-input-fn.dir/progress.make | 3 + .../CMakeDirectoryInformation.cmake | 16 + .../examples/CMakeFiles/progress.marks | 1 + .../Release/examples/CTestTestfile.cmake | 8 + C/src/soxr-0.1.3/Release/examples/Makefile | 306 +++ .../Release/examples/cmake_install.cmake | 66 + C/src/soxr-0.1.3/Release/install_manifest.txt | 17 + C/src/soxr-0.1.3/Release/soxr-config.h | 27 + .../CMakeDirectoryInformation.cmake | 16 + .../Release/src/CMakeFiles/progress.marks | 1 + .../CMakeFiles/soxr-lsr.dir/DependInfo.cmake | 23 + .../src/CMakeFiles/soxr-lsr.dir/build.make | 114 + .../CMakeFiles/soxr-lsr.dir/cmake_clean.cmake | 11 + .../soxr-lsr.dir/cmake_clean_target.cmake | 3 + .../soxr-lsr.dir/compiler_depend.internal | 104 + .../soxr-lsr.dir/compiler_depend.make | 301 +++ .../soxr-lsr.dir/compiler_depend.ts | 2 + .../src/CMakeFiles/soxr-lsr.dir/depend.make | 2 + .../src/CMakeFiles/soxr-lsr.dir/flags.make | 12 + .../src/CMakeFiles/soxr-lsr.dir/link.txt | 2 + .../src/CMakeFiles/soxr-lsr.dir/progress.make | 3 + .../src/CMakeFiles/soxr.dir/DependInfo.cmake | 32 + .../src/CMakeFiles/soxr.dir/build.make | 258 ++ .../src/CMakeFiles/soxr.dir/cmake_clean.cmake | 29 + .../soxr.dir/cmake_clean_target.cmake | 3 + .../soxr.dir/compiler_depend.internal | 954 +++++++ .../CMakeFiles/soxr.dir/compiler_depend.make | 1260 +++++++++ .../CMakeFiles/soxr.dir/compiler_depend.ts | 2 + .../src/CMakeFiles/soxr.dir/depend.make | 2 + .../src/CMakeFiles/soxr.dir/flags.make | 12 + .../Release/src/CMakeFiles/soxr.dir/link.txt | 2 + .../src/CMakeFiles/soxr.dir/progress.make | 12 + .../Release/src/CTestTestfile.cmake | 6 + C/src/soxr-0.1.3/Release/src/Makefile | 549 ++++ .../Release/src/cmake_install.cmake | 125 + C/src/soxr-0.1.3/Release/src/soxr-lsr.pc | 5 + C/src/soxr-0.1.3/Release/src/soxr.pc | 5 + C/src/soxr-0.1.3/Release/tests/1-delay-clear | Bin 0 -> 206992 bytes .../1-delay-clear.dir/DependInfo.cmake | 23 + .../CMakeFiles/1-delay-clear.dir/build.make | 114 + .../1-delay-clear.dir/cmake_clean.cmake | 11 + .../compiler_depend.internal | 122 + .../1-delay-clear.dir/compiler_depend.make | 355 +++ .../1-delay-clear.dir/compiler_depend.ts | 2 + .../CMakeFiles/1-delay-clear.dir/depend.make | 2 + .../CMakeFiles/1-delay-clear.dir/flags.make | 12 + .../CMakeFiles/1-delay-clear.dir/link.txt | 1 + .../1-delay-clear.dir/progress.make | 3 + .../CMakeDirectoryInformation.cmake | 16 + .../Release/tests/CMakeFiles/progress.marks | 1 + .../test-vectors.dir/DependInfo.cmake | 22 + .../CMakeFiles/test-vectors.dir/build.make | 122 + .../test-vectors.dir/cmake_clean.cmake | 11 + .../test-vectors.dir/compiler_depend.make | 2 + .../test-vectors.dir/compiler_depend.ts | 2 + .../CMakeFiles/test-vectors.dir/progress.make | 4 + .../throughput.dir/DependInfo.cmake | 23 + .../CMakeFiles/throughput.dir/build.make | 114 + .../throughput.dir/cmake_clean.cmake | 11 + .../throughput.dir/compiler_depend.internal | 141 + .../throughput.dir/compiler_depend.make | 412 +++ .../throughput.dir/compiler_depend.ts | 2 + .../CMakeFiles/throughput.dir/depend.make | 2 + .../CMakeFiles/throughput.dir/flags.make | 12 + .../tests/CMakeFiles/throughput.dir/link.txt | 1 + .../CMakeFiles/throughput.dir/progress.make | 3 + .../vector-cmp.dir/DependInfo.cmake | 23 + .../CMakeFiles/vector-cmp.dir/build.make | 114 + .../vector-cmp.dir/cmake_clean.cmake | 11 + .../vector-cmp.dir/compiler_depend.internal | 124 + .../vector-cmp.dir/compiler_depend.make | 361 +++ .../vector-cmp.dir/compiler_depend.ts | 2 + .../CMakeFiles/vector-cmp.dir/depend.make | 2 + .../CMakeFiles/vector-cmp.dir/flags.make | 12 + .../tests/CMakeFiles/vector-cmp.dir/link.txt | 1 + .../CMakeFiles/vector-cmp.dir/progress.make | 3 + .../vector-gen.dir/DependInfo.cmake | 23 + .../CMakeFiles/vector-gen.dir/build.make | 114 + .../vector-gen.dir/cmake_clean.cmake | 11 + .../vector-gen.dir/compiler_depend.internal | 103 + .../vector-gen.dir/compiler_depend.make | 298 +++ .../vector-gen.dir/compiler_depend.ts | 2 + .../CMakeFiles/vector-gen.dir/depend.make | 2 + .../CMakeFiles/vector-gen.dir/flags.make | 12 + .../tests/CMakeFiles/vector-gen.dir/link.txt | 1 + .../CMakeFiles/vector-gen.dir/progress.make | 3 + .../Release/tests/CTestTestfile.cmake | 24 + C/src/soxr-0.1.3/Release/tests/Makefile | 405 +++ .../Release/tests/cmake_install.cmake | 45 + C/src/soxr-0.1.3/Release/tests/throughput | Bin 0 -> 207048 bytes C/src/soxr-0.1.3/Release/tests/vector-cmp | Bin 0 -> 33720 bytes C/src/soxr-0.1.3/Release/tests/vector-gen | Bin 0 -> 33592 bytes C/src/soxr-0.1.3/TODO | 3 + .../soxr-0.1.3/cmake/Modules/FindCFlags.cmake | 35 + .../cmake/Modules/FindLibAVCodec.cmake | 23 + .../cmake/Modules/FindLibAVUtil.cmake | 23 + .../soxr-0.1.3/cmake/Modules/FindSIMD32.cmake | 54 + .../soxr-0.1.3/cmake/Modules/FindSIMD64.cmake | 29 + .../cmake/Modules/SetSystemProcessor.cmake | 37 + C/src/soxr-0.1.3/deinstall.cmake.in | 25 + C/src/soxr-0.1.3/examples/1-single-block.c | 50 + C/src/soxr-0.1.3/examples/1a-lsr.c | 40 + C/src/soxr-0.1.3/examples/2-stream.C | 78 + .../soxr-0.1.3/examples/3-options-input-fn.c | 114 + C/src/soxr-0.1.3/examples/4-split-channels.c | 161 ++ C/src/soxr-0.1.3/examples/5-variable-rate.c | 93 + C/src/soxr-0.1.3/examples/CMakeLists.txt | 36 + C/src/soxr-0.1.3/examples/README | 20 + C/src/soxr-0.1.3/examples/examples-common.h | 47 + C/src/soxr-0.1.3/go | 21 + C/src/soxr-0.1.3/go.bat | 27 + C/src/soxr-0.1.3/inst-check | 25 + C/src/soxr-0.1.3/inst-check-soxr | 52 + C/src/soxr-0.1.3/inst-check-soxr-lsr | 1 + C/src/soxr-0.1.3/msvc/README | 22 + C/src/soxr-0.1.3/msvc/example1.vcproj | 82 + C/src/soxr-0.1.3/msvc/libsoxr.sln | 29 + C/src/soxr-0.1.3/msvc/libsoxr.vcproj | 97 + C/src/soxr-0.1.3/msvc/soxr-config.h | 30 + C/src/soxr-0.1.3/multi-arch | 31 + C/src/soxr-0.1.3/soxr-config.h.in | 27 + C/src/soxr-0.1.3/src/CMakeLists.txt | 129 + C/src/soxr-0.1.3/src/aliases.h | 39 + C/src/soxr-0.1.3/src/avfft32.c | 33 + C/src/soxr-0.1.3/src/avfft32s.c | 32 + C/src/soxr-0.1.3/src/ccrw2.h | 75 + C/src/soxr-0.1.3/src/cr-core.c | 314 +++ C/src/soxr-0.1.3/src/cr.c | 588 ++++ C/src/soxr-0.1.3/src/cr.h | 178 ++ C/src/soxr-0.1.3/src/cr32.c | 8 + C/src/soxr-0.1.3/src/cr32s.c | 8 + C/src/soxr-0.1.3/src/cr64.c | 8 + C/src/soxr-0.1.3/src/cr64s.c | 8 + C/src/soxr-0.1.3/src/data-io.c | 223 ++ C/src/soxr-0.1.3/src/data-io.h | 39 + C/src/soxr-0.1.3/src/dbesi0.c | 149 ++ C/src/soxr-0.1.3/src/dev32s.h | 54 + C/src/soxr-0.1.3/src/dev64s.h | 42 + C/src/soxr-0.1.3/src/fft4g.c | 1346 ++++++++++ C/src/soxr-0.1.3/src/fft4g.h | 23 + C/src/soxr-0.1.3/src/fft4g32.c | 36 + C/src/soxr-0.1.3/src/fft4g32s.c | 31 + C/src/soxr-0.1.3/src/fft4g64.c | 35 + C/src/soxr-0.1.3/src/fft4g_cache.h | 92 + C/src/soxr-0.1.3/src/fifo.h | 125 + C/src/soxr-0.1.3/src/filter.c | 277 ++ C/src/soxr-0.1.3/src/filter.h | 44 + C/src/soxr-0.1.3/src/half-coefs.h | 75 + C/src/soxr-0.1.3/src/half-fir.h | 61 + C/src/soxr-0.1.3/src/internal.h | 84 + C/src/soxr-0.1.3/src/math-wrap.h | 31 + C/src/soxr-0.1.3/src/pffft-avx.h | 40 + C/src/soxr-0.1.3/src/pffft-wrap.c | 110 + C/src/soxr-0.1.3/src/pffft.c | 1946 ++++++++++++++ C/src/soxr-0.1.3/src/pffft.h | 197 ++ C/src/soxr-0.1.3/src/pffft32.c | 39 + C/src/soxr-0.1.3/src/pffft32s.c | 34 + C/src/soxr-0.1.3/src/pffft64s.c | 34 + C/src/soxr-0.1.3/src/poly-fir.h | 150 ++ C/src/soxr-0.1.3/src/poly-fir0.h | 56 + C/src/soxr-0.1.3/src/rdft.h | 31 + C/src/soxr-0.1.3/src/rdft_t.h | 24 + C/src/soxr-0.1.3/src/rint-clip.h | 158 ++ C/src/soxr-0.1.3/src/rint.h | 102 + C/src/soxr-0.1.3/src/samplerate.h | 1 + C/src/soxr-0.1.3/src/soxr-lsr.c | 198 ++ C/src/soxr-0.1.3/src/soxr-lsr.h | 78 + C/src/soxr-0.1.3/src/soxr-lsr.pc.in | 5 + C/src/soxr-0.1.3/src/soxr.c | 842 ++++++ C/src/soxr-0.1.3/src/soxr.h | 344 +++ C/src/soxr-0.1.3/src/soxr.pc.in | 5 + C/src/soxr-0.1.3/src/std-types.h | 48 + C/src/soxr-0.1.3/src/util-simd.c | 89 + C/src/soxr-0.1.3/src/util32s.c | 8 + C/src/soxr-0.1.3/src/util32s.h | 23 + C/src/soxr-0.1.3/src/util64s.c | 8 + C/src/soxr-0.1.3/src/util64s.h | 23 + C/src/soxr-0.1.3/src/vr-coefs.c | 115 + C/src/soxr-0.1.3/src/vr-coefs.h | 94 + C/src/soxr-0.1.3/src/vr32.c | 651 +++++ C/src/soxr-0.1.3/tests/1-delay-clear.c | 64 + C/src/soxr-0.1.3/tests/CMakeLists.txt | 62 + C/src/soxr-0.1.3/tests/README | 1 + C/src/soxr-0.1.3/tests/bandwidth-test | 41 + C/src/soxr-0.1.3/tests/cmp-test.cmake | 30 + C/src/soxr-0.1.3/tests/eg-test | 48 + C/src/soxr-0.1.3/tests/io-test | 65 + C/src/soxr-0.1.3/tests/large-ratio-test | 22 + C/src/soxr-0.1.3/tests/phase-test | 39 + C/src/soxr-0.1.3/tests/q-test | 73 + C/src/soxr-0.1.3/tests/scripts | 14 + C/src/soxr-0.1.3/tests/throughput-test | 11 + C/src/soxr-0.1.3/tests/throughput-test.bat | 5 + C/src/soxr-0.1.3/tests/throughput.c | 141 + C/src/soxr-0.1.3/tests/time-test | 36 + C/src/soxr-0.1.3/tests/vector-cmp.c | 56 + C/src/soxr-0.1.3/tests/vector-gen.c | 61 + Makefile | 34 +- all.txt | 1580 ++++++++--- go.mod | 11 +- go.sum | 83 + pmoconfig/config.go | 2 +- pmosoxr/concurency_test.go | 90 + pmosoxr/quality.go | 34 + pmosoxr/soxr.go | 124 + pmosoxr_test/pmo_soxr_test.go | 94 + pmosoxr_test/pmosoxr_test.go | 69 + pmostream/.DS_Store | Bin 0 -> 6148 bytes pmostream/audio.go | 60 + pmostream/buffer.go | 139 + pmostream/conversion.go | 88 + pmostream/core.go | 271 ++ pmostream/fork.go | 208 ++ pmostream/fork_eq_test.go | 47 + pmostream/parameq.go | 93 + pmostream/streamer.go | 150 ++ pmostream_test/pmostream_test.go | 131 + pmoupnp/devices/services/actions/action.go | 3 +- tools/build_prompt | 26 + xx | 806 ++++++ 307 files changed, 32396 insertions(+), 342 deletions(-) create mode 100644 C/.DS_Store create mode 100644 C/include/soxr-lsr.h create mode 100644 C/include/soxr.h create mode 100644 C/lib/pkgconfig/soxr-lsr.pc create mode 100644 C/lib/pkgconfig/soxr.pc create mode 100644 C/share/doc/libsoxr/LICENCE create mode 100644 C/share/doc/libsoxr/NEWS create mode 100644 C/share/doc/libsoxr/README create mode 100644 C/share/doc/libsoxr/examples/1-single-block.c create mode 100644 C/share/doc/libsoxr/examples/1a-lsr.c create mode 100644 C/share/doc/libsoxr/examples/2-stream.C create mode 100644 C/share/doc/libsoxr/examples/3-options-input-fn.c create mode 100644 C/share/doc/libsoxr/examples/4-split-channels.c create mode 100644 C/share/doc/libsoxr/examples/5-variable-rate.c create mode 100644 C/share/doc/libsoxr/examples/README create mode 100644 C/share/doc/libsoxr/examples/examples-common.h create mode 100644 C/src/soxr-0.1.3/AUTHORS create mode 100644 C/src/soxr-0.1.3/CMakeLists.txt create mode 100644 C/src/soxr-0.1.3/COPYING.LGPL create mode 100644 C/src/soxr-0.1.3/INSTALL create mode 100644 C/src/soxr-0.1.3/LICENCE create mode 100644 C/src/soxr-0.1.3/NEWS create mode 100644 C/src/soxr-0.1.3/README create mode 100644 C/src/soxr-0.1.3/Release/CMakeCache.txt create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeCCompiler.cmake create mode 100755 C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeDetermineCompilerABI_C.bin create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeSystem.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/CMakeCCompilerId.c create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/apple-sdk.c create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/CMakeConfigureLog.yaml create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/CMakeRuleHashes.txt create mode 100755 C/src/soxr-0.1.3/Release/CMakeFiles/FindOpenMP/ompver_C.bin create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/InstallScripts.json create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/Makefile.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/Makefile2 create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/TargetDirectories.txt create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/cmake.check_cache create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/CMakeFiles/progress.marks create mode 100644 C/src/soxr-0.1.3/Release/CPackConfig.cmake create mode 100644 C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake create mode 100644 C/src/soxr-0.1.3/Release/CTestTestfile.cmake create mode 100644 C/src/soxr-0.1.3/Release/Makefile create mode 100644 C/src/soxr-0.1.3/Release/Testing/Temporary/CTestCostData.txt create mode 100644 C/src/soxr-0.1.3/Release/cmake_install.cmake create mode 100644 C/src/soxr-0.1.3/Release/deinstall.cmake create mode 100755 C/src/soxr-0.1.3/Release/examples/1a-lsr create mode 100755 C/src/soxr-0.1.3/Release/examples/3-options-input-fn create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/CMakeFiles/progress.marks create mode 100644 C/src/soxr-0.1.3/Release/examples/CTestTestfile.cmake create mode 100644 C/src/soxr-0.1.3/Release/examples/Makefile create mode 100644 C/src/soxr-0.1.3/Release/examples/cmake_install.cmake create mode 100644 C/src/soxr-0.1.3/Release/install_manifest.txt create mode 100644 C/src/soxr-0.1.3/Release/soxr-config.h create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/progress.marks create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean_target.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean_target.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/src/CTestTestfile.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/Makefile create mode 100644 C/src/soxr-0.1.3/Release/src/cmake_install.cmake create mode 100644 C/src/soxr-0.1.3/Release/src/soxr-lsr.pc create mode 100644 C/src/soxr-0.1.3/Release/src/soxr.pc create mode 100755 C/src/soxr-0.1.3/Release/tests/1-delay-clear create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/progress.marks create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/DependInfo.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/build.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/cmake_clean.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.internal create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.ts create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/depend.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/flags.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/link.txt create mode 100644 C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/progress.make create mode 100644 C/src/soxr-0.1.3/Release/tests/CTestTestfile.cmake create mode 100644 C/src/soxr-0.1.3/Release/tests/Makefile create mode 100644 C/src/soxr-0.1.3/Release/tests/cmake_install.cmake create mode 100755 C/src/soxr-0.1.3/Release/tests/throughput create mode 100755 C/src/soxr-0.1.3/Release/tests/vector-cmp create mode 100755 C/src/soxr-0.1.3/Release/tests/vector-gen create mode 100644 C/src/soxr-0.1.3/TODO create mode 100644 C/src/soxr-0.1.3/cmake/Modules/FindCFlags.cmake create mode 100644 C/src/soxr-0.1.3/cmake/Modules/FindLibAVCodec.cmake create mode 100644 C/src/soxr-0.1.3/cmake/Modules/FindLibAVUtil.cmake create mode 100644 C/src/soxr-0.1.3/cmake/Modules/FindSIMD32.cmake create mode 100644 C/src/soxr-0.1.3/cmake/Modules/FindSIMD64.cmake create mode 100644 C/src/soxr-0.1.3/cmake/Modules/SetSystemProcessor.cmake create mode 100644 C/src/soxr-0.1.3/deinstall.cmake.in create mode 100644 C/src/soxr-0.1.3/examples/1-single-block.c create mode 100644 C/src/soxr-0.1.3/examples/1a-lsr.c create mode 100644 C/src/soxr-0.1.3/examples/2-stream.C create mode 100644 C/src/soxr-0.1.3/examples/3-options-input-fn.c create mode 100644 C/src/soxr-0.1.3/examples/4-split-channels.c create mode 100644 C/src/soxr-0.1.3/examples/5-variable-rate.c create mode 100644 C/src/soxr-0.1.3/examples/CMakeLists.txt create mode 100644 C/src/soxr-0.1.3/examples/README create mode 100644 C/src/soxr-0.1.3/examples/examples-common.h create mode 100755 C/src/soxr-0.1.3/go create mode 100644 C/src/soxr-0.1.3/go.bat create mode 100755 C/src/soxr-0.1.3/inst-check create mode 100755 C/src/soxr-0.1.3/inst-check-soxr create mode 120000 C/src/soxr-0.1.3/inst-check-soxr-lsr create mode 100644 C/src/soxr-0.1.3/msvc/README create mode 100644 C/src/soxr-0.1.3/msvc/example1.vcproj create mode 100644 C/src/soxr-0.1.3/msvc/libsoxr.sln create mode 100644 C/src/soxr-0.1.3/msvc/libsoxr.vcproj create mode 100644 C/src/soxr-0.1.3/msvc/soxr-config.h create mode 100755 C/src/soxr-0.1.3/multi-arch create mode 100644 C/src/soxr-0.1.3/soxr-config.h.in create mode 100644 C/src/soxr-0.1.3/src/CMakeLists.txt create mode 100644 C/src/soxr-0.1.3/src/aliases.h create mode 100644 C/src/soxr-0.1.3/src/avfft32.c create mode 100644 C/src/soxr-0.1.3/src/avfft32s.c create mode 100644 C/src/soxr-0.1.3/src/ccrw2.h create mode 100644 C/src/soxr-0.1.3/src/cr-core.c create mode 100644 C/src/soxr-0.1.3/src/cr.c create mode 100644 C/src/soxr-0.1.3/src/cr.h create mode 100644 C/src/soxr-0.1.3/src/cr32.c create mode 100644 C/src/soxr-0.1.3/src/cr32s.c create mode 100644 C/src/soxr-0.1.3/src/cr64.c create mode 100644 C/src/soxr-0.1.3/src/cr64s.c create mode 100644 C/src/soxr-0.1.3/src/data-io.c create mode 100644 C/src/soxr-0.1.3/src/data-io.h create mode 100644 C/src/soxr-0.1.3/src/dbesi0.c create mode 100644 C/src/soxr-0.1.3/src/dev32s.h create mode 100644 C/src/soxr-0.1.3/src/dev64s.h create mode 100644 C/src/soxr-0.1.3/src/fft4g.c create mode 100644 C/src/soxr-0.1.3/src/fft4g.h create mode 100644 C/src/soxr-0.1.3/src/fft4g32.c create mode 100644 C/src/soxr-0.1.3/src/fft4g32s.c create mode 100644 C/src/soxr-0.1.3/src/fft4g64.c create mode 100644 C/src/soxr-0.1.3/src/fft4g_cache.h create mode 100644 C/src/soxr-0.1.3/src/fifo.h create mode 100644 C/src/soxr-0.1.3/src/filter.c create mode 100644 C/src/soxr-0.1.3/src/filter.h create mode 100644 C/src/soxr-0.1.3/src/half-coefs.h create mode 100644 C/src/soxr-0.1.3/src/half-fir.h create mode 100644 C/src/soxr-0.1.3/src/internal.h create mode 100644 C/src/soxr-0.1.3/src/math-wrap.h create mode 100644 C/src/soxr-0.1.3/src/pffft-avx.h create mode 100644 C/src/soxr-0.1.3/src/pffft-wrap.c create mode 100644 C/src/soxr-0.1.3/src/pffft.c create mode 100644 C/src/soxr-0.1.3/src/pffft.h create mode 100644 C/src/soxr-0.1.3/src/pffft32.c create mode 100644 C/src/soxr-0.1.3/src/pffft32s.c create mode 100644 C/src/soxr-0.1.3/src/pffft64s.c create mode 100644 C/src/soxr-0.1.3/src/poly-fir.h create mode 100644 C/src/soxr-0.1.3/src/poly-fir0.h create mode 100644 C/src/soxr-0.1.3/src/rdft.h create mode 100644 C/src/soxr-0.1.3/src/rdft_t.h create mode 100644 C/src/soxr-0.1.3/src/rint-clip.h create mode 100644 C/src/soxr-0.1.3/src/rint.h create mode 100644 C/src/soxr-0.1.3/src/samplerate.h create mode 100644 C/src/soxr-0.1.3/src/soxr-lsr.c create mode 100644 C/src/soxr-0.1.3/src/soxr-lsr.h create mode 100644 C/src/soxr-0.1.3/src/soxr-lsr.pc.in create mode 100644 C/src/soxr-0.1.3/src/soxr.c create mode 100644 C/src/soxr-0.1.3/src/soxr.h create mode 100644 C/src/soxr-0.1.3/src/soxr.pc.in create mode 100644 C/src/soxr-0.1.3/src/std-types.h create mode 100644 C/src/soxr-0.1.3/src/util-simd.c create mode 100644 C/src/soxr-0.1.3/src/util32s.c create mode 100644 C/src/soxr-0.1.3/src/util32s.h create mode 100644 C/src/soxr-0.1.3/src/util64s.c create mode 100644 C/src/soxr-0.1.3/src/util64s.h create mode 100644 C/src/soxr-0.1.3/src/vr-coefs.c create mode 100644 C/src/soxr-0.1.3/src/vr-coefs.h create mode 100644 C/src/soxr-0.1.3/src/vr32.c create mode 100644 C/src/soxr-0.1.3/tests/1-delay-clear.c create mode 100644 C/src/soxr-0.1.3/tests/CMakeLists.txt create mode 100644 C/src/soxr-0.1.3/tests/README create mode 100755 C/src/soxr-0.1.3/tests/bandwidth-test create mode 100644 C/src/soxr-0.1.3/tests/cmp-test.cmake create mode 100755 C/src/soxr-0.1.3/tests/eg-test create mode 100755 C/src/soxr-0.1.3/tests/io-test create mode 100755 C/src/soxr-0.1.3/tests/large-ratio-test create mode 100755 C/src/soxr-0.1.3/tests/phase-test create mode 100755 C/src/soxr-0.1.3/tests/q-test create mode 100755 C/src/soxr-0.1.3/tests/scripts create mode 100755 C/src/soxr-0.1.3/tests/throughput-test create mode 100644 C/src/soxr-0.1.3/tests/throughput-test.bat create mode 100644 C/src/soxr-0.1.3/tests/throughput.c create mode 100755 C/src/soxr-0.1.3/tests/time-test create mode 100644 C/src/soxr-0.1.3/tests/vector-cmp.c create mode 100644 C/src/soxr-0.1.3/tests/vector-gen.c create mode 100644 pmosoxr/concurency_test.go create mode 100644 pmosoxr/quality.go create mode 100644 pmosoxr/soxr.go create mode 100644 pmosoxr_test/pmo_soxr_test.go create mode 100644 pmosoxr_test/pmosoxr_test.go create mode 100644 pmostream/.DS_Store create mode 100644 pmostream/audio.go create mode 100644 pmostream/buffer.go create mode 100644 pmostream/conversion.go create mode 100644 pmostream/core.go create mode 100644 pmostream/fork.go create mode 100644 pmostream/fork_eq_test.go create mode 100644 pmostream/parameq.go create mode 100644 pmostream/streamer.go create mode 100644 pmostream_test/pmostream_test.go create mode 100755 tools/build_prompt create mode 100644 xx diff --git a/.DS_Store b/.DS_Store index a726a307dc60f7db789ac4d9cd6732b96b7565b8..e89066b7386f4f878153ced95f6e69c5735ef047 100644 GIT binary patch literal 6148 zcmeHK-EPw`6h7VpO_-2!0ce+&xUHb2-O$8M)QuNdCb$4plBR-))UJ|ry@)F164?7p zJPFUk=bwpf-QWUgLY0qn{MkO|I60pkJ0>DFT4a5qkcfP!Lhk{J8${WauF00|QAVc6 zn9+hN%4tI5HE-A97;p^yZw#1^{~66`MiTn_`<eJSN|)6 zpKNQ}yLZ3S2|7ES5AkQYjO(OcRHLMPr&=dc7U@MjN#Eqtp$X$+g^k?9zg2J->nyDza))q?j{B zSYVe!1&0zY3C%7Maen7Z;7QXA2VK7R@(&B(t9o(F*=-Bp8;m#Pb&VDe$5%xe%`elT z2j0NKQswV#U~VoY$ADwt-xyH)1BWV%EVc&q)`3D_0e~L5wV z{r_r^YdHoS0~^Hv^N!-95mK^e>soT^tmV*;P$kN*HK;>S*yC7N)KR<()dCw=6<}ns THHaRF`w`GIxWX}Trwsf8Mh4eu delta 75 zcmZoMXfc=|#>CJ*u~2NHo+2aj!~knX=E*!PDw8Ex`6n~8$xfDHf4fQWU~Qqa1>{d|e<-5m_qOy8xZHbpr7PRra(C~& zK&|PMF@n)VCB~meHK^giM1w{XqmlUF3j~RZ@kJku4?daj;)7>)wm=JgF+@q&NoLNR zGw00iIrE*J%q(LJ9R*`8V|9!%nJTB+JZkPx_&Be(6)BXI69w5bZ!BxOS>i5a$8OV( z1W^Q{2t*NxA`nF&iom@P0ot>9k!RWW#c0$<5r`siUq*m`AL3LwO@?$*(BRWSO>hJt z%8vj+p}xjDMB^b%hICR;8leJVN>rF4JYqnYlRO^kB||zXs4!;;4<87hjPQhl;OR7f zJWyvy3L3Rh1fmGs9s!;{Wz1uFmdloIJ-^$Q=QlTBg;Z8PXKqD>QZcXMP-?_2rTmOv z@H#U2Vb1lsuAQCgXR-$@vy|3qI$g)lSdN(w3@pPWm4p43W4NUbx8N9FV4D&HiXtm% zt!{jLZR^^`cbNfm2M~S)*!&p|oxbUf z?G-!4ZA979?3nQ8htL~YQRnIX1M1L#m2;hxb;?X@3p{dXC$W3;W|7?J&$)JC)bY|< zRW4)a3ULUa7B8)wudIzNf9R3sb(^+z?cBBR%KQfwXlk`u(_geaD{Gs5CCl(f1~XpHbPUTm zIz;hueCsL8%qvysQF@)ssCh+Ow771`QeB^^JvGZfA!{8kSpG>ZA zpqJd`8hl107}4wXm9jj{<(+wxS|L_f=?#jOk$XLISxnKSu2D2k={-h^Dok6{Hd!;2 zK0A{&Z6VsAZj`krmHwjeTnM+QkI7YNR0eYH=qUN)330pLDQlm}hxxO6GM>L@%yg#S zs#||t*1na8ypc@a+*2Z437c-cN0x(?BRMzPZdksX4??oLUe^ctWbKAw8svH1qQ#n? z()(oXGTCUBQ?v-lv>*b|aw6Fv)+Gq5QZoZte1BTPma{gth3#d7%wQ#UhP}qlvUk{d z_6hr(U1XQoW%fP0%C52B*dOdK_BZCB0x}d-V2njTz39GRQo#;Y0cAy7+IDi2R z;xLY41W)4_j^h-@F@b0C9A3i9cm=QGZM=*3a1QU|Q+$Q5@eMBG5`Mxp{ER+N}rMavUa%`x5<8bLFW840VlhpkR1@s#H8E8yqeM~y+tvnR5i%PdRaLE=Qc8?% z*-9+qSuXhY4w{K4i2Uz?dX9a>F0e1zcLda5*stt&b{!0JQAxmDhB$$91y&L`o6&++ zv|%f@p&cCr)gJ7|UhKnu4C4^eID!lT)y60slyH*3`V7JKIXsWkID;2)7O&$Cyot90 z*nWTyXTb1@=`h3>H(^*z?Ubx<*pn(ZB(=GytzwyJ6`f*a_Hp!4q3Q7_x|M^9L P5$*rc{vSZ^zHa^jmpu(N literal 0 HcmV?d00001 diff --git a/C/include/soxr-lsr.h b/C/include/soxr-lsr.h new file mode 100644 index 00000000..b1cc2470 --- /dev/null +++ b/C/include/soxr-lsr.h @@ -0,0 +1,78 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or (at + * your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser + * General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* Wrapper compatible with `libsamplerate' (constant-rate). + * (Libsoxr's native API can be found in soxr.h). */ + +#if !defined SAMPLERATE_H +#define SAMPLERATE_H +#if defined __cplusplus + extern "C" { +#endif + +#if defined SOXR_DLL + #if defined soxr_lsr_EXPORTS + #define SOXR __declspec(dllexport) + #else + #define SOXR __declspec(dllimport) + #endif +#elif defined SOXR_VISIBILITY && defined __GNUC__ && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1) + #define SOXR __attribute__ ((visibility("default"))) +#else + #define SOXR +#endif + +typedef float SRC_SAMPLE; +enum SRC_SRCTYPE_e {SRC_SINC_BEST_QUALITY, SRC_SINC_MEDIUM_QUALITY, + SRC_SINC_FASTEST, SRC_ZERO_ORDER_HOLD, SRC_LINEAR}; +typedef int SRC_SRCTYPE; +typedef int SRC_ERROR; +typedef long (* src_callback_t)(void *, SRC_SAMPLE * *); +typedef struct soxr SRC_STATE; +typedef struct SRC_DATA { + SRC_SAMPLE * data_in, * data_out; + long input_frames, output_frames; + long input_frames_used, output_frames_gen; + int end_of_input; + double src_ratio; +} SRC_DATA; +SOXR SRC_STATE * src_new(SRC_SRCTYPE, int num_channels, SRC_ERROR *); +SOXR SRC_ERROR src_process (SRC_STATE *, SRC_DATA *); +SOXR SRC_ERROR src_set_ratio(SRC_STATE *, double); +SOXR SRC_ERROR src_reset (SRC_STATE *); +SOXR SRC_ERROR src_error (SRC_STATE *); +SOXR SRC_STATE * src_delete (SRC_STATE *); +SOXR SRC_STATE * src_callback_new( + src_callback_t, SRC_SRCTYPE, int, SRC_ERROR *, void *); +SOXR long src_callback_read( + SRC_STATE *, double src_ratio, long, SRC_SAMPLE *); +SOXR SRC_ERROR src_simple(SRC_DATA *, SRC_SRCTYPE, int); +SOXR char const * src_get_name(SRC_SRCTYPE); +SOXR char const * src_get_description(SRC_SRCTYPE); +SOXR char const * src_get_version(void); +SOXR char const * src_strerror(SRC_ERROR); +SOXR int src_is_valid_ratio(double); +SOXR void src_short_to_float_array(short const *, float *, int); +SOXR void src_float_to_short_array(float const *, short *, int); +SOXR void src_int_to_float_array(int const *, float *, int); +SOXR void src_float_to_int_array(float const *, int *, int); + +#undef SOXR +#if defined __cplusplus + } +#endif +#endif diff --git a/C/include/soxr.h b/C/include/soxr.h new file mode 100644 index 00000000..09ec7c46 --- /dev/null +++ b/C/include/soxr.h @@ -0,0 +1,344 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or (at + * your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser + * General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + + + +/* -------------------------------- Gubbins --------------------------------- */ + +#if !defined soxr_included +#define soxr_included + + +#if defined __cplusplus + #include + extern "C" { +#else + #include +#endif + +#if defined SOXR_DLL + #if defined soxr_EXPORTS + #define SOXR __declspec(dllexport) + #else + #define SOXR __declspec(dllimport) + #endif +#elif defined SOXR_VISIBILITY && defined __GNUC__ && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1) + #define SOXR __attribute__ ((visibility("default"))) +#else + #define SOXR +#endif + +typedef struct soxr_io_spec soxr_io_spec_t; +typedef struct soxr_quality_spec soxr_quality_spec_t; +typedef struct soxr_runtime_spec soxr_runtime_spec_t; + + + +/* ---------------------------- API conventions -------------------------------- + +Buffer lengths (and occupancies) are expressed as the number of contained +samples per channel. + +Parameter names for buffer lengths have the suffix `len'. + +A single-character `i' or 'o' is often used in names to give context as +input or output (e.g. ilen, olen). */ + + + +/* --------------------------- Version management --------------------------- */ + +/* E.g. #if SOXR_THIS_VERSION >= SOXR_VERSION(0,1,1) ... */ + +#define SOXR_VERSION(x,y,z) (((x)<<16)|((y)<<8)|(z)) +#define SOXR_THIS_VERSION SOXR_VERSION(0,1,3) +#define SOXR_THIS_VERSION_STR "0.1.3" + + + +/* --------------------------- Type declarations ---------------------------- */ + +typedef struct soxr * soxr_t; /* A resampler for 1 or more channels. */ +typedef char const * soxr_error_t; /* 0:no-error; non-0:error. */ + +typedef void * soxr_buf_t; /* 1 buffer of channel-interleaved samples. */ +typedef void const * soxr_cbuf_t; /* Ditto; read-only. */ + +typedef soxr_buf_t const * soxr_bufs_t;/* Or, a separate buffer for each ch. */ +typedef soxr_cbuf_t const * soxr_cbufs_t; /* Ditto; read-only. */ + +typedef void const * soxr_in_t; /* Either a soxr_cbuf_t or soxr_cbufs_t, + depending on itype in soxr_io_spec_t. */ +typedef void * soxr_out_t; /* Either a soxr_buf_t or soxr_bufs_t, + depending on otype in soxr_io_spec_t. */ + + + +/* --------------------------- API main functions --------------------------- */ + +SOXR char const * soxr_version(void); /* Query library version: "libsoxr-x.y.z" */ + +#define soxr_strerror(e) /* Soxr counterpart to strerror. */ \ + ((e)?(e):"no error") + + +/* Create a stream resampler: */ + +SOXR soxr_t soxr_create( + double input_rate, /* Input sample-rate. */ + double output_rate, /* Output sample-rate. */ + unsigned num_channels, /* Number of channels to be used. */ + /* All following arguments are optional (may be set to NULL). */ + soxr_error_t *, /* To report any error during creation. */ + soxr_io_spec_t const *, /* To specify non-default I/O formats. */ + soxr_quality_spec_t const *, /* To specify non-default resampling quality.*/ + soxr_runtime_spec_t const *);/* To specify non-default runtime resources. + + Default io_spec is per soxr_io_spec(SOXR_FLOAT32_I, SOXR_FLOAT32_I) + Default quality_spec is per soxr_quality_spec(SOXR_HQ, 0) + Default runtime_spec is per soxr_runtime_spec(1) */ + + + +/* If not using an app-supplied input function, after creating a stream + * resampler, repeatedly call: */ + +SOXR soxr_error_t soxr_process( + soxr_t resampler, /* As returned by soxr_create. */ + /* Input (to be resampled): */ + soxr_in_t in, /* Input buffer(s); may be NULL (see below). */ + size_t ilen, /* Input buf. length (samples per channel). */ + size_t * idone, /* To return actual # samples used (<= ilen). */ + /* Output (resampled): */ + soxr_out_t out, /* Output buffer(s).*/ + size_t olen, /* Output buf. length (samples per channel). */ + size_t * odone); /* To return actual # samples out (<= olen). + + Note that no special meaning is associated with ilen or olen equal to + zero. End-of-input (i.e. no data is available nor shall be available) + may be indicated by seting `in' to NULL. */ + + + +/* If using an app-supplied input function, it must look and behave like this:*/ + +typedef size_t /* data_len */ + (* soxr_input_fn_t)( /* Supply data to be resampled. */ + void * input_fn_state, /* As given to soxr_set_input_fn (below). */ + soxr_in_t * data, /* Returned data; see below. N.B. ptr to ptr(s)*/ + size_t requested_len); /* Samples per channel, >= returned data_len. + + data_len *data Indicates Meaning + ------- ------- ------------ ------------------------- + !=0 !=0 Success *data contains data to be + input to the resampler. + 0 !=0 (or End-of-input No data is available nor + not set) shall be available. + 0 0 Failure An error occurred whilst trying to + source data to be input to the resampler. */ + +/* and be registered with a previously created stream resampler using: */ + +SOXR soxr_error_t soxr_set_input_fn(/* Set (or reset) an input function.*/ + soxr_t resampler, /* As returned by soxr_create. */ + soxr_input_fn_t, /* Function to supply data to be resampled.*/ + void * input_fn_state, /* If needed by the input function. */ + size_t max_ilen); /* Maximum value for input fn. requested_len.*/ + +/* then repeatedly call: */ + +SOXR size_t /*odone*/ soxr_output(/* Resample and output a block of data.*/ + soxr_t resampler, /* As returned by soxr_create. */ + soxr_out_t data, /* App-supplied buffer(s) for resampled data.*/ + size_t olen); /* Amount of data to output; >= odone. */ + + + +/* Common stream resampler operations: */ + +SOXR soxr_error_t soxr_error(soxr_t); /* Query error status. */ +SOXR size_t * soxr_num_clips(soxr_t); /* Query int. clip counter (for R/W). */ +SOXR double soxr_delay(soxr_t); /* Query current delay in output samples.*/ +SOXR char const * soxr_engine(soxr_t); /* Query resampling engine name. */ + +SOXR soxr_error_t soxr_clear(soxr_t); /* Ready for fresh signal, same config. */ +SOXR void soxr_delete(soxr_t); /* Free resources. */ + + + +/* `Short-cut', single call to resample a (probably short) signal held entirely + * in memory. See soxr_create and soxr_process above for parameter details. + * Note that unlike soxr_create however, the default quality spec. for + * soxr_oneshot is per soxr_quality_spec(SOXR_LQ, 0). */ + +SOXR soxr_error_t soxr_oneshot( + double input_rate, + double output_rate, + unsigned num_channels, + soxr_in_t in , size_t ilen, size_t * idone, + soxr_out_t out, size_t olen, size_t * odone, + soxr_io_spec_t const *, + soxr_quality_spec_t const *, + soxr_runtime_spec_t const *); + + + +/* For variable-rate resampling. See example # 5 for how to create a + * variable-rate resampler and how to use this function. */ + +SOXR soxr_error_t soxr_set_io_ratio(soxr_t, double io_ratio, size_t slew_len); + + + +/* -------------------------- API type definitions -------------------------- */ + +typedef enum { /* Datatypes supported for I/O to/from the resampler: */ + /* Internal; do not use: */ + SOXR_FLOAT32, SOXR_FLOAT64, SOXR_INT32, SOXR_INT16, SOXR_SPLIT = 4, + + /* Use for interleaved channels: */ + SOXR_FLOAT32_I = SOXR_FLOAT32, SOXR_FLOAT64_I, SOXR_INT32_I, SOXR_INT16_I, + + /* Use for split channels: */ + SOXR_FLOAT32_S = SOXR_SPLIT , SOXR_FLOAT64_S, SOXR_INT32_S, SOXR_INT16_S + +} soxr_datatype_t; + +#define soxr_datatype_size(x) /* Returns `sizeof' a soxr_datatype_t sample. */\ + ((unsigned char *)"\4\10\4\2")[(x)&3] + + + +struct soxr_io_spec { /* Typically */ + soxr_datatype_t itype; /* Input datatype. SOXR_FLOAT32_I */ + soxr_datatype_t otype; /* Output datatype. SOXR_FLOAT32_I */ + double scale; /* Linear gain to apply during resampling. 1 */ + void * e; /* Reserved for internal use 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + +#define SOXR_TPDF 0 /* Applicable only if otype is INT16. */ +#define SOXR_NO_DITHER 8u /* Disable the above. */ + + + +struct soxr_quality_spec { /* Typically */ + double precision; /* Conversion precision (in bits). 20 */ + double phase_response; /* 0=minimum, ... 50=linear, ... 100=maximum 50 */ + double passband_end; /* 0dB pt. bandwidth to preserve; nyquist=1 0.913*/ + double stopband_begin; /* Aliasing/imaging control; > passband_end 1 */ + void * e; /* Reserved for internal use. 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + +#define SOXR_ROLLOFF_SMALL 0u /* <= 0.01 dB */ +#define SOXR_ROLLOFF_MEDIUM 1u /* <= 0.35 dB */ +#define SOXR_ROLLOFF_NONE 2u /* For Chebyshev bandwidth. */ + +#define SOXR_HI_PREC_CLOCK 8u /* Increase `irrational' ratio accuracy. */ +#define SOXR_DOUBLE_PRECISION 16u /* Use D.P. calcs even if precision <= 20. */ +#define SOXR_VR 32u /* Variable-rate resampling. */ + + + +struct soxr_runtime_spec { /* Typically */ + unsigned log2_min_dft_size; /* For DFT efficiency. [8,15] 10 */ + unsigned log2_large_dft_size; /* For DFT efficiency. [8,20] 17 */ + unsigned coef_size_kbytes; /* For SOXR_COEF_INTERP_AUTO (below). 400 */ + unsigned num_threads; /* 0: per OMP_NUM_THREADS; 1: 1 thread. 1 */ + void * e; /* Reserved for internal use. 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + /* For `irrational' ratios only: */ +#define SOXR_COEF_INTERP_AUTO 0u /* Auto select coef. interpolation. */ +#define SOXR_COEF_INTERP_LOW 2u /* Man. select: less CPU, more memory. */ +#define SOXR_COEF_INTERP_HIGH 3u /* Man. select: more CPU, less memory. */ + + + +/* -------------------------- API type constructors ------------------------- */ + +/* These functions allow setting of the most commonly-used structure + * parameters, with other parameters being given default values. The default + * values may then be overridden, directly in the structure, if needed. */ + +SOXR soxr_quality_spec_t soxr_quality_spec( + unsigned long recipe, /* Per the #defines immediately below. */ + unsigned long flags); /* As soxr_quality_spec_t.flags. */ + + /* The 5 standard qualities found in SoX: */ +#define SOXR_QQ 0 /* 'Quick' cubic interpolation. */ +#define SOXR_LQ 1 /* 'Low' 16-bit with larger rolloff. */ +#define SOXR_MQ 2 /* 'Medium' 16-bit with medium rolloff. */ +#define SOXR_HQ SOXR_20_BITQ /* 'High quality'. */ +#define SOXR_VHQ SOXR_28_BITQ /* 'Very high quality'. */ + +#define SOXR_16_BITQ 3 +#define SOXR_20_BITQ 4 +#define SOXR_24_BITQ 5 +#define SOXR_28_BITQ 6 +#define SOXR_32_BITQ 7 + /* Reserved for internal use (to be removed): */ +#define SOXR_LSR0Q 8 /* 'Best sinc'. */ +#define SOXR_LSR1Q 9 /* 'Medium sinc'. */ +#define SOXR_LSR2Q 10 /* 'Fast sinc'. */ + +#define SOXR_LINEAR_PHASE 0x00 +#define SOXR_INTERMEDIATE_PHASE 0x10 +#define SOXR_MINIMUM_PHASE 0x30 + +#define SOXR_STEEP_FILTER 0x40 + + + +SOXR soxr_runtime_spec_t soxr_runtime_spec( + unsigned num_threads); + + + +SOXR soxr_io_spec_t soxr_io_spec( + soxr_datatype_t itype, + soxr_datatype_t otype); + + + +/* --------------------------- Advanced use only ---------------------------- */ + +/* For new designs, the following functions/usage will probably not be needed. + * They might be useful when adding soxr into an existing design where values + * for the resampling-rate and/or number-of-channels parameters to soxr_create + * are not available when that function will be called. In such cases, the + * relevant soxr_create parameter(s) can be given as 0, then one or both of the + * following (as appropriate) later invoked (but prior to calling soxr_process + * or soxr_output): + * + * soxr_set_error(soxr, soxr_set_io_ratio(soxr, io_ratio, 0)); + * soxr_set_error(soxr, soxr_set_num_channels(soxr, num_channels)); + */ + +SOXR soxr_error_t soxr_set_error(soxr_t, soxr_error_t); +SOXR soxr_error_t soxr_set_num_channels(soxr_t, unsigned); + + + +#undef SOXR + +#if defined __cplusplus +} +#endif + +#endif diff --git a/C/lib/pkgconfig/soxr-lsr.pc b/C/lib/pkgconfig/soxr-lsr.pc new file mode 100644 index 00000000..bcd8a44b --- /dev/null +++ b/C/lib/pkgconfig/soxr-lsr.pc @@ -0,0 +1,5 @@ +Name: soxr-lsr +Description: High quality, one-dimensional sample-rate conversion library (with libsamplerate-like bindings) +Version: 0.1.3 +Libs: -L/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib -lsoxr-lsr +Cflags: -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include diff --git a/C/lib/pkgconfig/soxr.pc b/C/lib/pkgconfig/soxr.pc new file mode 100644 index 00000000..e54e1436 --- /dev/null +++ b/C/lib/pkgconfig/soxr.pc @@ -0,0 +1,5 @@ +Name: soxr +Description: High quality, one-dimensional sample-rate conversion library +Version: 0.1.3 +Libs: -L/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib -lsoxr +Cflags: -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include diff --git a/C/share/doc/libsoxr/LICENCE b/C/share/doc/libsoxr/LICENCE new file mode 100644 index 00000000..43e5a716 --- /dev/null +++ b/C/share/doc/libsoxr/LICENCE @@ -0,0 +1,23 @@ +SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + +This library is free software; you can redistribute it and/or modify it +under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 of the License, or (at +your option) any later version. + +This library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this library; if not, see . + + +Notes + +1. Re software in the `examples' directory: works that are not resampling +examples but are based on the given examples -- for example, applications using +the library -- shall not be considered to be derivative works of the examples. + +2. If building with pffft.c, see the licence embedded in that file. diff --git a/C/share/doc/libsoxr/NEWS b/C/share/doc/libsoxr/NEWS new file mode 100644 index 00000000..9e7c298f --- /dev/null +++ b/C/share/doc/libsoxr/NEWS @@ -0,0 +1,46 @@ +Version 0.1.3 (2018-02-24) + * SIMD enhancements: SSE, AVX, Neon. + * Improve support for clang, ARM, and cross-compilation. + * Provide env. var. override of runtime parameters. + * Build fix re cmake variables AVCODEC_INCLUDE_DIRS & AVUTIL_INCLUDE_DIRS. + * Build options WITH_SINGLE_PRECISION, WITH_DOUBLE_PRECISION & WITH_SIMD have + been removed; replacement options are detailed in INSTALL, `Resampling + engines'. + +Version 0.1.2 (2015-09-05) + * Fix conversion failure when I/O types differ but I/O rates don't. + * Fix #defines for interpolation order selection. + * Fix ineffectual SOXR_MINIMUM_PHASE and SOXR_INTERMEDIATE_PHASE in + soxr_quality_spec recipe. + * Fix soxr_delay() returning a negative number after end-of-input has been + indicated. + * Fix crash when using soxr_process() after calling soxr_clear(). + * Be more POSIX compliant w.r.t. errno in the examples; fixes erroneous + reporting of errors on FreeBSD. + * Quality improvement for variable-rate. + * Various fixes/improvements to build/tests/documentation. + +Version 0.1.1 (2013-03-03) + * Minor fixes/improvements to build/tests. + * Fix crash (e.g. with k3b) when null error pointer passed to src_create (lsr + bindings only). + * Fix broken resampling in many cases with SIMD and anti_aliasing_pc < 100. + * For clarity, renamed and slightly changed usage of three parameters in + soxr_quality_spec_t (ABI compatible, API incompatible). An application not + setting these parameters directly need make no change; otherwise, changes + should be made per the following example (as shown, compatibility with both + old/new APIs is maintained). See also the comments on these parameters in + soxr.h. N.B. ABI compatibility with the 0.1.0 API may be removed in a + future release. + #if !defined SOXR_VERSION /* Deprecated, 0.1.0 API */ + q_spec.phase = minimum_phase? 0 : 50; + q_spec.bw_pc = cutoff * 100; + q_spec.anti_aliasing_pc = anti_aliasing * 100; + #else /* 0.1.1 API */ Explanation: + q_spec.phase_response = minimum_phase? 0 : 50; Renamed. + q_spec.passband_end = cutoff; Renamed, no longer %. + q_spec.stopband_begin = 2 - anti_aliasing; Renamed, no longer %, no + #endif longer mirrored in Fs. + +Version 0.1.0 (2013-01-19) + * First public release. diff --git a/C/share/doc/libsoxr/README b/C/share/doc/libsoxr/README new file mode 100644 index 00000000..7f9a7afb --- /dev/null +++ b/C/share/doc/libsoxr/README @@ -0,0 +1,53 @@ +SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + +The SoX Resampler library `libsoxr' performs one-dimensional sample-rate +conversion -- it may be used, for example, to resample PCM-encoded audio. +For higher-dimensional resampling, such as for visual-image processing, you +should look elsewhere. + +It aims to give fast¹ and very high quality² results for any constant +(rational or irrational) resampling ratio. Phase-response, preserved +bandwidth, aliasing, and rejection level parameters are all configurable; +alternatively, simple `preset' configurations may be selected. A +variable-rate resampling mode of operation is also included. + +The resampler is currently available either as part of `libsox' (the audio +file-format and effect library), or stand-alone as `libsoxr' (this package). +The interfaces to libsox and libsoxr are slightly different, with that of +libsoxr designed specifically for resampling. An application requiring +support for other effects, or for reading-from or writing-to audio files or +devices, should use libsox (or other libraries such as libsndfile or +libavformat). + +Libsoxr provides a simple API that allows interfacing using the most +commonly-used sample formats and buffering schemes: sample-formats may be +either floating-point or integer, and multiple channels either interleaved +or split in separate buffers. The API is documented in the header file +`soxr.h', together with sample code found in the 'examples' directory. + +For compatibility with the popular `libsamplerate' library, the header file +`soxr-lsr.h' is provided and may be used as an alternative API.³ Note +however, that libsoxr does not provide a full emulation of libsamplerate +and that using this approach, only a sub-set of libsoxr's features are +available. + +The design was inspired by Laurent De Soras' paper `The Quest For The +Perfect Resampler', http://ldesoras.free.fr/doc/articles/resampler-en.pdf; +in essence, it combines Julius O. Smith's `Bandlimited Interpolation' +technique (https://ccrma.stanford.edu/~jos/resample/resample.pdf) with FFT- +based over-sampling. + +Note that for real-time resampling, libsoxr may have a higher latency +than non-FFT based resamplers. For example, when using the `High Quality' +configuration to resample between 44100Hz and 48000Hz, the latency is +around 1000 output samples, i.e. roughly 20ms (though passband and FFT- +size configuration parameters may be used to reduce this figure). + +For build and installation instructions, see the file `INSTALL'; for +copyright and licensing information, see the file `LICENCE'. + +For support and new versions, see https://soxr.sourceforge.net +________ +¹ For example, multi-channel resampling can utilise multiple CPU-cores. +² Bit-perfect within practical occupied-bandwidth limits. +³ For details of that API, see http://www.mega-nerd.com/SRC/api.html. diff --git a/C/share/doc/libsoxr/examples/1-single-block.c b/C/share/doc/libsoxr/examples/1-single-block.c new file mode 100644 index 00000000..3b919b45 --- /dev/null +++ b/C/share/doc/libsoxr/examples/1-single-block.c @@ -0,0 +1,50 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 1: `One-shot' resample a single block of data in memory. + * + * N.B. See example 2 for how to resample a stream (of blocks). + * + * Optional arguments are: INPUT-RATE OUTPUT-RATE + * + * With the default arguments, the output should produce lines similar to the + * following: + * + * 0.00 0.71 1.00 0.71 -0.00 -0.71 -1.00 -0.71 + * + * Gibbs effect may be seen at the ends of the resampled signal; this is because + * unlike a `real-world' signal, the synthetic input signal is not band-limited. + */ + +#include +#include "examples-common.h" + +const float in[] = { /* Input: 12 cycles of a sine wave with freq. = irate/4 */ + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1}; + +int main(int argc, char const * arg[]) +{ + double irate = argc > 1? atof(arg[1]) : 1; /* Default to interpolation */ + double orate = argc > 2? atof(arg[2]) : 2; /* by a factor of 2. */ + + size_t olen = (size_t)(AL(in) * orate / irate + .5); /* Assay output len. */ + float * out = malloc(sizeof(*out) * olen); /* Allocate output buffer. */ + size_t odone; + + soxr_error_t error = soxr_oneshot(irate, orate, 1, /* Rates and # of chans. */ + in, AL(in), NULL, /* Input. */ + out, olen, &odone, /* Output. */ + NULL, NULL, NULL); /* Default configuration.*/ + + unsigned i = 0; /* Print out the resampled data, */ + while (i++ < odone) + printf("%5.2f%c", out[i-1], " \n"[!(i&7) || i == odone]); + printf("%-26s %s\n", arg[0], soxr_strerror(error)); /* and reported result. */ + + if (argc > 3) /* Library version check: */ + printf("runtime=%s API="SOXR_THIS_VERSION_STR"\n", soxr_version()); + + free(out); /* Tidy up. */ + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/1a-lsr.c b/C/share/doc/libsoxr/examples/1a-lsr.c new file mode 100644 index 00000000..6b50a8f5 --- /dev/null +++ b/C/share/doc/libsoxr/examples/1a-lsr.c @@ -0,0 +1,40 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 1a: Variant of example 1 using libsamplerate-like bindings. */ + +#include +#include "examples-common.h" + +float in[] = { /* Input: 12 cycles of a sine wave with freq. = irate/4 */ + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1}; + +int main(int argc, char const * arg[]) +{ + double irate = argc > 1? atof(arg[1]) : 1; /* Default to interpolation */ + double orate = argc > 2? atof(arg[2]) : 2; /* by a factor of 2. */ + + size_t olen = (size_t)(AL(in) * orate / irate + .5); /* Assay output len. */ + float * out = (float *)malloc(sizeof(*out) * olen); /* Allocate output buf. */ + + int error, i = 0; + SRC_DATA data; + + data.data_in = in; + data.data_out = out; + data.input_frames = AL(in); + data.output_frames = (int)olen; + data.src_ratio = orate / irate; + error = src_simple(&data, SRC_SINC_FASTEST, 1); + + while (i++ < data.output_frames_gen) /* Print out the resampled data, */ + printf("%5.2f%c", out[i-1], " \n"[!(i&7) || i == data.output_frames_gen]); + printf("%-26s %s\n", arg[0], src_strerror(error)); /* and reported result. */ + + if (argc > 3) /* Library version check: */ + printf("runtime=%s\n", src_get_version()); + + free(out); /* Tidy up. */ + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/2-stream.C b/C/share/doc/libsoxr/examples/2-stream.C new file mode 100644 index 00000000..29c1bf62 --- /dev/null +++ b/C/share/doc/libsoxr/examples/2-stream.C @@ -0,0 +1,78 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 2: resample a raw, single-channel, floating-point data stream from + * stdin to stdout. + * + * The application uses the single function `soxr_process' for both input and + * output to/from the resampler; compared to the `input function' approach + * (illustrated in example 3) this requires that the application implements + * more logic, but one less function. + * + * Arguments are: INPUT-RATE OUTPUT-RATE + */ + +#include +#include "examples-common.h" + +int main(int argc, char const * arg[]) +{ + double const irate = argc > 1? atof(arg[1]) : 96000.; + double const orate = argc > 2? atof(arg[2]) : 44100.; + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples. */ + size_t const olen = (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const ilen = buf_total_len - olen; + size_t const osize = sizeof(float), isize = osize; + void * obuf = malloc(osize * olen); + void * ibuf = malloc(isize * ilen); + + size_t odone, written, need_input = 1; + soxr_error_t error; + + /* Create a stream resampler: */ + soxr_t soxr = soxr_create( + irate, orate, 1, /* Input rate, output rate, # of channels. */ + &error, /* To report any error during creation. */ + NULL, NULL, NULL); /* Use configuration defaults.*/ + + if (!error) { /* If all is well, run the resampler: */ + USE_STD_STDIO; + /* Resample in blocks: */ + do { + size_t ilen1 = 0; + + if (need_input) { + + /* Read one block into the buffer, ready to be resampled: */ + ilen1 = fread(ibuf, isize, ilen, stdin); + + if (!ilen1) { /* If the is no (more) input data available, */ + free(ibuf); /* set ibuf to NULL, to indicate end-of-input */ + ibuf = NULL; /* to the resampler. */ + } + } + + /* Copy data from the input buffer into the resampler, and resample + * to produce as much output as is possible to the given output buffer: */ + error = soxr_process(soxr, ibuf, ilen1, NULL, obuf, olen, &odone); + + written = fwrite(obuf, osize, odone, stdout); /* Consume output.*/ + + /* If the actual amount of data output is less than that requested, and + * we have not already reached the end of the input data, then supply some + * more input next time round the loop: */ + need_input = odone < olen && ibuf; + + } while (!error && (need_input || written)); + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; I/O: %s\n", arg[0], soxr_strerror(error), + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/3-options-input-fn.c b/C/share/doc/libsoxr/examples/3-options-input-fn.c new file mode 100644 index 00000000..afd43b9f --- /dev/null +++ b/C/share/doc/libsoxr/examples/3-options-input-fn.c @@ -0,0 +1,114 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 3: extends example 2 with multiple channels, multiple datatypes, + * and other options. + * + * The application provides an input function, called on demand by libsoxr, in + * response to calls to soxr_output(); compared to the `process' approach + * (illustrated in example 2) this requires that the application implements + * less logic, but one more function. + * + * The 11 arguments (which are optional, from last to first) are: + * INPUT-RATE As example 2 + * OUTPUT-RATE Ditto + * NUM-CHANNELS Number of interleaved channels + * IN-DATATYPE# 0:float32 1:float64 2:int32 3:int16 + * OUT-DATATYPE# Ditto; or 11 for un-dithered int16 + * Q-RECIPE Quality recipe (in hex) See soxr.h + * Q-FLAGS Quality flags (in hex) See soxr.h + * PASSBAND-END % + * STOPBAND-BEGIN % + * PHASE-RESPONSE [0,100] + * USE-THREADS 1 to use multi-threading (where available) + */ + +#include +#include "examples-common.h" + +typedef struct {void * ibuf; size_t isize;} input_context_t; + +static size_t input_fn(input_context_t * p, soxr_cbuf_t * buf, size_t len) +{ + /* Read one block into the buffer, ready to be input to the resampler: */ + len = fread(p->ibuf, p->isize, len, stdin); /* Actual len read may be less. */ + + /* Inform the resampler of the data's whereabouts (which could be anywhere, in + * a freshly malloc'd buffer, for example): */ + *buf = (!len && ferror(stdin))? NULL : p->ibuf; /* NULL if error occurred. */ + + return len; /* # of samples per channel to input. */ +} + +int main(int n, char const * arg[]) +{ + char const * const arg0 = n? --n, *arg++ : "", * engine = ""; + double const irate = n? --n, atof(*arg++) : 96000.; + double const orate = n? --n, atof(*arg++) : 44100.; + unsigned const chans = n? --n, (unsigned)atoi(*arg++) : 1; + soxr_datatype_t const itype = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned const ospec = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned long const q_recipe= n? --n, strtoul(*arg++, 0, 16) : SOXR_HQ; + unsigned long const q_flags = n? --n, strtoul(*arg++, 0, 16) : 0; + double const passband_end = n? --n, atof(*arg++) : 0; + double const stopband_begin = n? --n, atof(*arg++) : 0; + double const phase_response = n? --n, atof(*arg++) : -1; + int const use_threads = n? --n, atoi(*arg++) : 1; + soxr_datatype_t const otype = ospec & 3; + + soxr_quality_spec_t q_spec = soxr_quality_spec(q_recipe, q_flags); + soxr_io_spec_t io_spec = soxr_io_spec(itype, otype); + soxr_runtime_spec_t const runtime_spec = soxr_runtime_spec(!use_threads); + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples per channel. */ + size_t const osize = soxr_datatype_size(otype) * chans; + size_t const isize = soxr_datatype_size(itype) * chans; + size_t const olen0= (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const olen = min(max(olen0, 1), buf_total_len - 1); + size_t const ilen = buf_total_len - olen; + void * const obuf = malloc(osize * olen); + void * const ibuf = malloc(isize * ilen); + + input_context_t icontext; + size_t odone, clips = 0; + soxr_error_t error; + soxr_t soxr; + + /* Overrides (if given): */ + if (passband_end > 0) q_spec.passband_end = passband_end / 100; + if (stopband_begin > 0) q_spec.stopband_begin = stopband_begin / 100; + if (phase_response >=0) q_spec.phase_response = phase_response; + io_spec.flags = ospec & ~7u; + + /* Create a stream resampler: */ + soxr = soxr_create( + irate, orate, chans, /* Input rate, output rate, # of channels. */ + &error, /* To report any error during creation. */ + &io_spec, &q_spec, &runtime_spec); + + if (!error) { /* Register input_fn with the resampler: */ + icontext.ibuf = ibuf, icontext.isize = isize; + error = soxr_set_input_fn(soxr, (soxr_input_fn_t)input_fn, &icontext, ilen); + } + + if (!error) { /* If all is well, run the resampler: */ + engine = soxr_engine(soxr); + USE_STD_STDIO; + /* Resample in blocks: */ + do odone = soxr_output(soxr, obuf, olen); + while (fwrite(obuf, osize, odone, stdout)); /* Consume output. */ + + error = soxr_error(soxr); /* Check if any soxr error occurred. */ + clips = *soxr_num_clips(soxr); /* Can occur only with integer output. */ + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; %lu clips; I/O: %s (%s)\n", + arg0, soxr_strerror(error), (long unsigned)clips, + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error", engine); + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/4-split-channels.c b/C/share/doc/libsoxr/examples/4-split-channels.c new file mode 100644 index 00000000..a9022ce0 --- /dev/null +++ b/C/share/doc/libsoxr/examples/4-split-channels.c @@ -0,0 +1,161 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 4: variant of examples 2 & 3, demonstrating I/O with split channels. + * + * Note that, for convenience of the demonstration, split-channel data is + * made available by deinterleaving data sourced from and sent to + * interleaved file-streams; this adds a lot of code to the example that, + * for purposes of understanding how to use split-channels, may safely be + * ignored. In a real application, the channel-data might never be + * interleaved; for example, the split-channel data output from the + * resampler might be sent directly to digital-to-analogue converters. + * + * Note also (not shown in the examples) that split/interleaved channels may + * be used for input and output independently. + * + * Arguments are as example 3. + */ + +#include +#include "examples-common.h" + + + +#define DEINTERLEAVE(T) do { \ + unsigned i; \ + size_t j; \ + T * const * dest = (T * const *)dest0; \ + T const * src = src0; \ + if (ch == 1) memcpy(dest[0], src, n * sizeof(dest[0][0])); \ + else for (j = 0; j < n; ++j) for (i = 0; i < ch; ++i) dest[i][j] = *src++; \ + return; \ +} while (0) + +static void deinterleave(soxr_datatype_t data_type, + void * const * dest0, + void const * src0, + size_t n, unsigned ch) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: DEINTERLEAVE(float); + case SOXR_FLOAT64: DEINTERLEAVE(double); + case SOXR_INT32 : DEINTERLEAVE(int32_t); + case SOXR_INT16 : DEINTERLEAVE(int16_t); + default: break; + } +} + +#define INTERLEAVE(T) do { \ + unsigned i; \ + size_t j; \ + T * dest = dest0; \ + T const * const * src = (T const * const *)src0; \ + if (ch == 1) memcpy(dest, src[0], n * sizeof(dest[0])); \ + else for (j = 0; j < n; ++j) for (i = 0; i < ch; ++i) *dest++ = src[i][j]; \ + return; \ +} while (0) + +static void interleave(soxr_datatype_t data_type, void * dest0, + void * const * src0, size_t n, unsigned ch) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: INTERLEAVE(float); + case SOXR_FLOAT64: INTERLEAVE(double); + case SOXR_INT32 : INTERLEAVE(int32_t); + case SOXR_INT16 : INTERLEAVE(int16_t); + default: break; + } +} + +int main(int n, char const * arg[]) +{ + char const * const arg0 = n? --n, *arg++ : ""; + double const irate = n? --n, atof(*arg++) : 96000.; + double const orate = n? --n, atof(*arg++) : 44100.; + unsigned const chans = n? --n, (unsigned)atoi(*arg++) : 1; + soxr_datatype_t const itype = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned const ospec = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned long const q_recipe= n? --n, strtoul(*arg++, 0, 16) : SOXR_HQ; + unsigned long const q_flags = n? --n, strtoul(*arg++, 0, 16) : 0; + double const passband_end = n? --n, atof(*arg++) : 0; + double const stopband_begin = n? --n, atof(*arg++) : 0; + double const phase_response = n? --n, atof(*arg++) : -1; + int const use_threads = n? --n, atoi(*arg++) : 1; + soxr_datatype_t const otype = ospec & 3; + + soxr_quality_spec_t q_spec = soxr_quality_spec(q_recipe, q_flags); + soxr_io_spec_t io_spec=soxr_io_spec(itype|SOXR_SPLIT, otype|SOXR_SPLIT); + soxr_runtime_spec_t const runtime_spec = soxr_runtime_spec(!use_threads); + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples per channel. */ + size_t const osize = soxr_datatype_size(otype) * chans; + size_t const isize = soxr_datatype_size(itype) * chans; + size_t const olen = (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const ilen = buf_total_len - olen; + + /* For split channels: */ + void * * const obuf_ptrs = malloc(sizeof(void *) * chans); + void * * ibuf_ptrs = malloc(sizeof(void *) * chans); + char * const obufs = malloc(osize * olen), * optr = obufs; + char * const ibufs = malloc(isize * ilen), * iptr = ibufs; + + /* For interleaved channels: */ + char * const obuf = malloc(osize * olen); + char * const ibuf = malloc(isize * ilen); + + size_t odone, written, need_input = 1, clips = 0; + soxr_error_t error; + soxr_t soxr; + unsigned i; + + /* Overrides (if given): */ + if (passband_end > 0) q_spec.passband_end = passband_end / 100; + if (stopband_begin > 0) q_spec.stopband_begin = stopband_begin / 100; + if (phase_response >=0) q_spec.phase_response = phase_response; + io_spec.flags = ospec & ~7u; + + soxr = soxr_create( + irate, orate, chans, &error, &io_spec, &q_spec, &runtime_spec); + + for (i = 0; i < chans; ++i) { + ibuf_ptrs[i] = iptr; + obuf_ptrs[i] = optr; + iptr += ilen * soxr_datatype_size(itype); + optr += olen * soxr_datatype_size(otype); + } + + if (!error) { + USE_STD_STDIO; + + do { + size_t ilen1 = 0; + + if (need_input) { + if (!(ilen1 = fread(ibuf, isize, ilen, stdin))) + free(ibuf_ptrs), ibuf_ptrs = 0; /* If none available, don't retry. */ + else deinterleave(itype, ibuf_ptrs, ibuf, ilen1, chans); + } + + error = soxr_process(soxr, ibuf_ptrs, ilen1, NULL, obuf_ptrs, olen, &odone); + interleave(otype, obuf, obuf_ptrs, odone, chans); /* Consume output... */ + written = fwrite(obuf, osize, odone, stdout); + + need_input = odone < olen && ibuf_ptrs; + + } while (!error && (need_input || written)); + + clips = *soxr_num_clips(soxr); /* Can occur only with integer output. */ + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf), free(obufs), free(ibufs); + free(obuf_ptrs), free(ibuf_ptrs); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; %lu clips; I/O: %s\n", + arg0, soxr_strerror(error), (long unsigned)clips, + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/5-variable-rate.c b/C/share/doc/libsoxr/examples/5-variable-rate.c new file mode 100644 index 00000000..1a1c63f5 --- /dev/null +++ b/C/share/doc/libsoxr/examples/5-variable-rate.c @@ -0,0 +1,93 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 5: Variable-rate resampling. A test signal (held in a buffer) is + * resampled over a wide range of octaves. Resampled data is sent to stdout as + * raw, float32 samples. Choices of 2 test-signals and of 2 ways of varying + * the sample-rate are combined in a command-line option: + * + * Usage: ./5-variable-rate [0|1|2|3] + */ + +#include +#include "examples-common.h" + +#define OCTAVES 5 /* Resampling range. ± */ +#define OLEN 16 /* Output length in seconds. */ +#define FS 44100 /* Output sampling rate in Hz. */ + +/* For output pos in [0,1], returns an ioratio in the 2^±OCTAVES range: */ +static double ioratio(double pos, int fm) +{ + if (fm) /* fm: non-0 for a fast-changing ioratio, 0 for a slow sweep. */ + pos = .5 - cos(pos * 2 * M_PI) * .4 + sin(pos * OLEN * 20 * M_PI) * .05; + return pow(2, 2 * OCTAVES * pos - OCTAVES); +} + +int main(int argc, char *arg[]) +{ + int opt = argc <= 1? 2 : (atoi(arg[1]) & 3), saw = opt & 1, fm = opt & 2; + float ibuf[10 << OCTAVES], obuf[AL(ibuf)]; + int i, wl = 2 << OCTAVES; + size_t ilen = AL(ibuf), need_input = 1, written; + size_t odone, total_odone, total_olen = OLEN * FS; + size_t olen1 = fm? 10 : AL(obuf); /* Small block-len if fast-changing ratio */ + soxr_error_t error; + + /* When creating a var-rate resampler, q_spec must be set as follows: */ + soxr_quality_spec_t q_spec = soxr_quality_spec(SOXR_HQ, SOXR_VR); + + /* The ratio of the given input rate and output rates must equate to the + * maximum I/O ratio that will be used: */ + soxr_t soxr = soxr_create(1 << OCTAVES, 1, 1, &error, NULL, &q_spec, NULL); + + if (!error) { + USE_STD_STDIO; + + /* Generate input signal, sine or saw, with wave-length = wl: */ + for (i = 0; i < (int)ilen; ++i) + ibuf[i] = (float)(saw? (i%wl)/(wl-1.)-.5 : .9 * sin(2 * M_PI * i / wl)); + + /* Set the initial resampling ratio (N.B. 3rd parameter = 0): */ + soxr_set_io_ratio(soxr, ioratio(0, fm), 0); + + /* Resample in blocks of size olen1: */ + for (total_odone = 0; !error && total_odone < total_olen;) { + + /* The last block might be shorter: */ + size_t block_len = min(olen1, total_olen - total_odone); + + /* Determine the position in [0,1] of the end of the current block: */ + double pos = (double)(total_odone + block_len) / (double)total_olen; + + /* Calculate an ioratio for this position and instruct the resampler to + * move smoothly to the new value, over the course of outputting the next + * 'block_len' samples (or give 0 for an instant change instead): */ + soxr_set_io_ratio(soxr, ioratio(pos, fm), block_len); + + /* Output the block of samples, supplying input samples as needed: */ + do { + size_t len = need_input? ilen : 0; + error = soxr_process(soxr, ibuf, len, NULL, obuf, block_len, &odone); + written = fwrite(obuf, sizeof(float), odone, stdout); + + /* Update counters for the current block and for the total length: */ + block_len -= odone; + total_odone += odone; + + /* If soxr_process did not provide the complete block, we must call it + * again, supplying more input samples: */ + need_input = block_len != 0; + + } while (need_input && !error && written == odone); + + /* Now that the block for the current ioratio is complete, go back + * round the main `for' loop in order to process the next block. */ + } + soxr_delete(soxr); + } + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; I/O: %s\n", arg[0], soxr_strerror(error), + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/share/doc/libsoxr/examples/README b/C/share/doc/libsoxr/examples/README new file mode 100644 index 00000000..a58939be --- /dev/null +++ b/C/share/doc/libsoxr/examples/README @@ -0,0 +1,20 @@ +SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + +These simple examples show the different ways that an application may +interface with soxr. Note that real-world applications may also have to +deal with file-formats, codecs, (more sophisticated) dithering, etc., which +are not covered here. + +With the library installed, the examples may be built using commands similar +to the following. On unix-like systems: + + cc 1-single-block.c -lsoxr + cc 1a-lsr.c -lsoxr-lsr + +or, with MSVC on MS-Windows: + + cl 1-single-block.c -I"C:/Program Files/soxr/include" "C:/Program Files/soxr/lib/soxr.lib" + cl 1a-lsr.c -I"C:/Program Files/soxr/include" "C:/Program Files/soxr/lib/soxr-lsr.lib" + +IDEs may hide such commands behind configuration screens and build menus -- +where applicable, consult your IDE's user-manual. diff --git a/C/share/doc/libsoxr/examples/examples-common.h b/C/share/doc/libsoxr/examples/examples-common.h new file mode 100644 index 00000000..fc8ed82e --- /dev/null +++ b/C/share/doc/libsoxr/examples/examples-common.h @@ -0,0 +1,47 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Common includes etc. for the examples. */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 + /* Work-around for broken file-I/O on MS-Windows: */ + #include + #include + #define USE_STD_STDIO _setmode(_fileno(stdout), _O_BINARY), \ + _setmode(_fileno(stdin ), _O_BINARY) +#else + #define USE_STD_STDIO +#endif + +#undef int16_t +#define int16_t short + +#undef int32_t +#if LONG_MAX > 2147483647L + #define int32_t int +#elif LONG_MAX < 2147483647L + #error this programme requires that 'long int' has at least 32-bits +#else + #define int32_t long +#endif + +#undef min +#define min(x,y) ((x)<(y)?(x):(y)) + +#undef max +#define max(x,y) ((x)>(y)?(x):(y)) + +#undef AL +#define AL(a) (sizeof(a)/sizeof((a)[0])) /* Array Length */ + +#undef M_PI /* Sometimes missing, so ensure that it is defined: */ +#define M_PI 3.14159265358979323846 diff --git a/C/src/soxr-0.1.3/AUTHORS b/C/src/soxr-0.1.3/AUTHORS new file mode 100644 index 00000000..2ba76d3a --- /dev/null +++ b/C/src/soxr-0.1.3/AUTHORS @@ -0,0 +1 @@ +Rob Sykes diff --git a/C/src/soxr-0.1.3/CMakeLists.txt b/C/src/soxr-0.1.3/CMakeLists.txt new file mode 100644 index 00000000..ee48f6c2 --- /dev/null +++ b/C/src/soxr-0.1.3/CMakeLists.txt @@ -0,0 +1,335 @@ +# SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +cmake_minimum_required (VERSION 3.1 FATAL_ERROR) + +project (soxr C) +set (DESCRIPTION_SUMMARY + "High quality, one-dimensional sample-rate conversion library") + + + +# Release versioning: + +set (PROJECT_VERSION_MAJOR 0) +set (PROJECT_VERSION_MINOR 1) +set (PROJECT_VERSION_PATCH 3) + +# For shared-object; if, since the last public release: +# 1) library code changed at all: ++revision +# 2) interfaces changed at all: ++current, revision = 0 +# 3) interfaces added: ++age +# 4) interfaces removed: age = 0 + +set (SO_VERSION_CURRENT 1) +set (SO_VERSION_REVISION 2) +set (SO_VERSION_AGE 1) + +math (EXPR SO_VERSION_MAJOR "${SO_VERSION_CURRENT} - ${SO_VERSION_AGE}") +math (EXPR SO_VERSION_MINOR "${SO_VERSION_AGE}") +math (EXPR SO_VERSION_PATCH "${SO_VERSION_REVISION}") + + + +# Main options: + +include (CMakeDependentOption) + +if (NOT CMAKE_BUILD_TYPE) + set (CMAKE_BUILD_TYPE Release CACHE STRING + "Build type, one of: None Debug Release RelWithDebInfo MinSizeRel." FORCE) +endif () + +option (BUILD_TESTS "Build sanity-tests." ON) +option (BUILD_EXAMPLES "Build examples." OFF) +option (WITH_OPENMP "Include OpenMP threading." ON) +option (WITH_LSR_BINDINGS "Include a `libsamplerate'-like interface." ON) + +cmake_dependent_option (BUILD_SHARED_LIBS + "Build shared (dynamic) soxr libraries." ON + "NOT WITH_DEV_GPROF" OFF) +cmake_dependent_option (WITH_VR32 + "Include HQ variable-rate resampling engine." ON + "WITH_CR32 OR WITH_CR64 OR WITH_CR32S OR WITH_CR64S OR NOT DEFINED WITH_VR32" ON) +cmake_dependent_option (WITH_CR32 + "Include HQ constant-rate resampling engine." ON + "WITH_VR32 OR WITH_CR64 OR WITH_CR32S OR WITH_CR64S" ON) +cmake_dependent_option (WITH_CR64 + "Include VHQ constant-rate resampling engine." ON + "WITH_VR32 OR WITH_CR32 OR WITH_CR32S OR WITH_CR64S" ON) +cmake_dependent_option (WITH_CR64S + "Include VHQ SIMD constant-rate resampling engine." ON + "WITH_VR32 OR WITH_CR32 OR WITH_CR32S OR WITH_CR64" ON) +cmake_dependent_option (WITH_CR32S + "Include HQ SIMD constant-rate resampling engine." ON + "WITH_VR32 OR WITH_CR64 OR WITH_CR32 OR WITH_CR64S" ON) +cmake_dependent_option (WITH_PFFFT + "Use PFFFT (BSD-like licence) for HQ SIMD DFT." ON + "WITH_CR32S;NOT WITH_AVFFT" OFF) +cmake_dependent_option (WITH_AVFFT + "Use libavcodec (LGPL) for HQ SIMD DFT." OFF + "WITH_CR32S;NOT WITH_PFFFT" OFF) +cmake_dependent_option (BUILD_LSR_TESTS "Build LSR tests." OFF + "UNIX;NOT CMAKE_CROSSCOMPILING;EXISTS ${PROJECT_SOURCE_DIR}/lsr-tests;WITH_LSR_BINDINGS" OFF) + +option (WITH_HI_PREC_CLOCK "Enable high-precision time-base." ON) +option (WITH_FLOAT_STD_PREC_CLOCK + "Use floating-point for standard-precision time-base." OFF) +option (WITH_DEV_TRACE "Enable developer trace capability." ON) +option (WITH_DEV_GPROF "Enable developer grpof output." OFF) +mark_as_advanced (WITH_HI_PREC_CLOCK WITH_FLOAT_STD_PREC_CLOCK + WITH_DEV_TRACE WITH_DEV_GPROF) + + + +# Introspection: + +list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules) + +include (CheckFunctionExists) +include (CheckIncludeFiles) +include (CheckLibraryExists) +include (SetSystemProcessor) +include (TestBigEndian) + +set_system_processor () + +check_library_exists (m pow "" NEED_LIBM) +if (NEED_LIBM) + set (CMAKE_REQUIRED_LIBRARIES "m;${CMAKE_REQUIRED_LIBRARIES}") + set (LIBM_LIBRARIES m) +endif () + +if (${BUILD_EXAMPLES}) + project (${PROJECT_NAME}) # Adds c++ compiler +endif () + +if (WITH_OPENMP) + find_package (OpenMP) + if (OPENMP_FOUND) + set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") + if (MINGW) # Is this still needed? + set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_C_FLAGS}") + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${OpenMP_C_FLAGS}") + endif () + endif() +endif () + +if (WITH_CR32S) + find_package (SIMD32) + set (WITH_CR32S ${SIMD32_FOUND}) +endif () + +if (WITH_CR64S) + find_package (SIMD64) + set (WITH_CR64S ${SIMD64_FOUND}) +endif () + +if (WITH_AVFFT) + find_package (LibAVCodec REQUIRED) + if (AVCODEC_FOUND) + include_directories (${AVCODEC_INCLUDE_DIRS}) + set (LIBS ${LIBS} ${AVCODEC_LIBRARIES}) + endif () +endif () + +if (WITH_AVFFT OR (CMAKE_SYSTEM_PROCESSOR MATCHES "^arm" AND SIMD32_FOUND AND WITH_CR32)) + find_package (LibAVUtil) + if (AVUTIL_FOUND) + include_directories (${AVUTIL_INCLUDE_DIRS}) + set (LIBS ${LIBS} ${AVUTIL_LIBRARIES}) + endif () +endif () + +check_function_exists (lrint HAVE_LRINT) +check_include_files (fenv.h HAVE_FENV_H) +check_include_files (stdbool.h HAVE_STDBOOL_H) +check_include_files (stdint.h HAVE_STDINT_H) +test_big_endian (HAVE_BIGENDIAN) + + + +# Compiler configuration: + +if (CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID STREQUAL "Clang") + set (PROJECT_CXX_FLAGS "${PROJECT_CXX_FLAGS} -Wconversion -Wall -Wextra \ + -pedantic -Wundef -Wpointer-arith -Wno-long-long") + if (CMAKE_C_COMPILER_ID STREQUAL "Clang") + set (PROJECT_CXX_FLAGS "${PROJECT_CXX_FLAGS} -Wno-keyword-macro") + endif () + if (WITH_DEV_GPROF) + set (PROJECT_CXX_FLAGS "${PROJECT_CXX_FLAGS} -pg") + endif () + # Can use std=c89, but gnu89 should give faster sinf, cosf, etc.: + set (PROJECT_C_FLAGS "${PROJECT_CXX_FLAGS} \ + -std=gnu89 -Wnested-externs -Wmissing-prototypes -Wstrict-prototypes") + if (CMAKE_BUILD_TYPE STREQUAL "Release") + set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -s") # strip + endif () + cmake_dependent_option (VISIBILITY_HIDDEN + "Build shared libraries with -fvisibility=hidden." ON + "BUILD_SHARED_LIBS" OFF) + mark_as_advanced (VISIBILITY_HIDDEN) + if (VISIBILITY_HIDDEN) + add_definitions (-fvisibility=hidden -DSOXR_VISIBILITY) + endif () +endif () + +if (MSVC) + add_definitions (-D_USE_MATH_DEFINES -D_CRT_SECURE_NO_WARNINGS) + option (BUILD_SHARED_RUNTIME "MSVC, link with runtime dynamically." ON) + if (NOT BUILD_SHARED_RUNTIME) + foreach (flag_var + CMAKE_C_FLAGS CMAKE_CXX_FLAGS + CMAKE_C_FLAGS_DEBUG CMAKE_CXX_FLAGS_DEBUG + CMAKE_C_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELEASE + CMAKE_C_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_MINSIZEREL + CMAKE_C_FLAGS_RELWITHDEBINFO CMAKE_CXX_FLAGS_RELWITHDEBINFO) + string (REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") + endforeach () + endif () + # By default, do not warn when built on machines using only VS Express: + if (NOT DEFINED CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS) + set (CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_NO_WARNINGS ON) + endif () +endif () + + + +# Build configuration: + +if (${BUILD_SHARED_LIBS} AND ${CMAKE_SYSTEM_NAME} STREQUAL Windows) + # Allow exes to find dlls: + set (BIN ${PROJECT_BINARY_DIR}/bin/) + set (EXAMPLES_BIN ${BIN}) + set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${BIN}) + set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${BIN}) +else () + set (BIN ./) + set (EXAMPLES_BIN ../examples/) +endif () + +set (LIB_TYPE STATIC) +if (BUILD_SHARED_LIBS) + set (LIB_TYPE SHARED) + if (MSVC) + add_definitions (-DSOXR_DLL) + endif () +endif () + +if (CMAKE_BUILD_TYPE STREQUAL "None") # As used by some distros. + add_definitions (-DNDEBUG) +endif () + + + +# Installation configuration: + +if (NOT DEFINED BIN_INSTALL_DIR) + set (BIN_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/bin") +endif () +if (NOT DEFINED LIB_INSTALL_DIR) + set (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") +endif () +if (NOT DEFINED INCLUDE_INSTALL_DIR) + set (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include") +endif () +if (NOT DEFINED DOC_INSTALL_DIR) + if (UNIX) + set (DOC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/doc/lib${PROJECT_NAME}") + else () + set (DOC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/doc") + endif () +endif () + +if (APPLE) + option (BUILD_FRAMEWORK "Build an OS X framework." OFF) + set (FRAMEWORK_INSTALL_DIR + "/Library/Frameworks" CACHE STRING "Directory to install frameworks to.") +endif () + + + +# Top-level: + +set (PROJECT_VERSION + ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}) +set (SO_VERSION ${SO_VERSION_MAJOR}.${SO_VERSION_MINOR}.${SO_VERSION_PATCH}) + +configure_file ( + ${PROJECT_SOURCE_DIR}/${PROJECT_NAME}-config.h.in + ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config.h) +include_directories (${PROJECT_BINARY_DIR}) + +if (NOT CMAKE_CROSSCOMPILING AND (BUILD_TESTS OR BUILD_LSR_TESTS)) + enable_testing () +endif () + +install (FILES + ${CMAKE_CURRENT_SOURCE_DIR}/README + ${CMAKE_CURRENT_SOURCE_DIR}/LICENCE + ${CMAKE_CURRENT_SOURCE_DIR}/NEWS + DESTINATION ${DOC_INSTALL_DIR}) + + + +# Subdirectories: + +include_directories (${PROJECT_SOURCE_DIR}/src) + +add_subdirectory (src) +if (BUILD_TESTS) + add_subdirectory (tests) +endif () +if (BUILD_LSR_TESTS) + add_subdirectory (lsr-tests) +endif () +if (BUILD_EXAMPLES OR BUILD_TESTS) + add_subdirectory (examples) +endif () + + + +# GNU Autotools compatibility; 'make check': + +add_custom_target (check COMMAND ${CMAKE_CTEST_COMMAND}) + + + +# GNU Autotools compatibility; 'make distclean': + +if (UNIX) + add_custom_target (distclean COMMAND make clean && find . + \\! -path \\*/Modules/\\* \\! -name cmp-test.cmake -a -name \\*.cmake + -o -name CMakeFiles -o -name Makefile -o -name CMakeCache.txt -o -name + Testing -o -name cmake_install.cmake -o -name install_manifest.txt -o + -path ./soxr-config.h -o -name config.h -o -name \\*.pc -o -name \\*.s32 + | xargs rm -rf) +endif () + + + +# Deinstallation: + +configure_file ( + "${CMAKE_CURRENT_SOURCE_DIR}/deinstall.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/deinstall.cmake" + IMMEDIATE @ONLY) + +add_custom_target (deinstall + COMMAND ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/deinstall.cmake") + + + +# Packaging: + +if (UNIX) + set (CPACK_PACKAGE_VERSION_MAJOR "${PROJECT_VERSION_MAJOR}") + set (CPACK_PACKAGE_VERSION_MINOR "${PROJECT_VERSION_MINOR}") + set (CPACK_PACKAGE_VERSION_PATCH "${PROJECT_VERSION_PATCH}") + set (CPACK_SOURCE_GENERATOR "TXZ") + set (CPACK_SOURCE_IGNORE_FILES + "dist;/lsr-tests/;/Debug.*/;/Release.*/;\\\\.swp$;\\\\.git.*;/\\\\.git/") + include (CPack) +endif () diff --git a/C/src/soxr-0.1.3/COPYING.LGPL b/C/src/soxr-0.1.3/COPYING.LGPL new file mode 100644 index 00000000..551cb4ac --- /dev/null +++ b/C/src/soxr-0.1.3/COPYING.LGPL @@ -0,0 +1,502 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff --git a/C/src/soxr-0.1.3/INSTALL b/C/src/soxr-0.1.3/INSTALL new file mode 100644 index 00000000..5599870a --- /dev/null +++ b/C/src/soxr-0.1.3/INSTALL @@ -0,0 +1,183 @@ +SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + +INSTALLATION GUIDE CONTENTS + +* Standard build +* Build customisation +* Cross-compilation +* Integration with other build systems +* Run-time configuration + + + +STANDARD BUILD + +1. Prerequisites: + + Before you can build this library, you need to have available on your + system: + + * A C-compiler with 64-bit integer support and, optionally, OpenMP, SIMD. + + * A 'make' utility (most compiler installations already have one of these). + + * CMake v3.0 or newer: https://cmake.org/download/ + + +2. Build: + + At a command prompt, change directory (`cd') to the one containing this + file, then enter: + + go (on MS-Windows with nmake) + or + ./go (on Unix-like systems) + + This should build the library and run a few sanity tests. + + +3. Installation: + + Note that this step may need to be performed by a system + administrator. Enter: + + nmake install (on MS-Windows) + or + cd Release; make install (on Unix-like) + + +4. Preparation for use: + + To use the library you may need to set up appropriate paths to the + library and its header file in your development environment. + + +5. Installation test + + To test the installation, build and run some of the example programmes + (see examples/README). + + + +BUILD CUSTOMISATION + +If it is necessary to customise the build, then steps 2 and 3 above should be +substituted as follows: change directory to the one containing this file, then +enter commands along the lines: + + mkdir build + cd build + cmake -Wno-dev -DCMAKE_BUILD_TYPE=Release [OPTIONS] .. + make + make test + sudo make install + +N.B. The CMAKE_BUILD_TYPE to use for library deployment is Release. + +To list help on the available options, enter: + + cmake -LH .. + +Options, if given, should be preceded with '-D', e.g. + + -DBUILD_SHARED_LIBS:BOOL=OFF + + + +Resampling engines + +As available on a given system, options for including up-to five resampling +‘engines’ are available (per above) as follows: + + WITH_CR32: for constant-rate HQ resampling, + WITH_CR32S: SIMD variant of previous, + WITH_CR64: for constant-rate VHQ resampling, + WITH_CR64S: SIMD variant of previous, + WITH_VR32: for variable-rate HQ resampling. + +By default, these options are all set to ON. + +When both SIMD and non-SIMD engine variants are included, run-time selection +is automatic (based on CPU capability) for x86 CPUs, and can be automatic for +ARM CPUs if the 3rd-party library `libavutil' is available at libsoxr +build-time. Which engine has been selected for a specific configuration and +invocation of the library can be checked using example #3, which reports it. +See also Run-time Configuration, below. + + + +CROSS-COMPILATION + +E.g. targeting a Linux ARM system: + + mkdir build + cd build + cmake -DCMAKE_SYSTEM_NAME=Linux \ + -DCMAKE_C_COMPILER=arm-linux-gnueabi-gcc \ + .. +or, also building the examples (one of which uses C++): + + cmake -DCMAKE_SYSTEM_NAME=Linux \ + -DCMAKE_C_COMPILER=arm-linux-gnueabi-gcc \ + -DCMAKE_CXX_COMPILER=arm-linux-gnueabi-g++ \ + -DBUILD_EXAMPLES=1 \ + .. + +E.g. with Mingw (Linux host), using a tool-chain file: + + mkdir build + cd build + cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain-x86_64-mingw-w64-mingw32.cmake \ + -DCMAKE_INSTALL_PREFIX=install \ + .. + make + +where ~/Toolchain-x86_64-mingw-w64-mingw32.cmake might contain: + + SET(CMAKE_SYSTEM_NAME Windows) + SET(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32-gcc) + SET(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32-g++) + SET(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32-windres) + SET(CMAKE_Fortran_COMPILER /usr/bin/x86_64-w64-mingw32-gfortran) + SET(CMAKE_AR:FILEPATH /usr/bin/x86_64-w64-mingw32-ar) + SET(CMAKE_RANLIB:FILEPATH /usr/bin/x86_64-w64-mingw32-ranlib) + SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32) + SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) + SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) + SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + SET(QT_BINARY_DIR /usr/x86_64-w64-mingw32/bin /usr/bin) + SET(Boost_COMPILER -gcc47) + + + +INTEGRATION WITH OTHER BUILD SYSTEMS + +Autotools-based systems might find it useful to create a file called +`configure' in the directory containing this file, consisting of the line: + cmake -DBUILD_SHARED_LIBS=OFF . +(or with other build options as required). + +For MS Visual Studio, see msvc/README. + + + +RUN-TIME CONFIGURATION + +The libsoxr API structure ‘soxr_runtime_spec_t’ allows application developers +to optimise some aspects of libsoxr’s operation for a particular application. +Optimal performance however, might depend on an individual end-user’s run- +time system and the end-user’s preferences. Hence environment variables are +available to set (override) run-time parameters as follows: + + Env. variable Equivalent soxr_runtime_spec_t item (see soxr.h) + ------------------ ----------------------------------- + SOXR_COEFS_SIZE coef_size_kbytes + SOXR_COEF_INTERP SOXR_COEF_INTERP_xxx + SOXR_LARGE_DFT_SIZE log2_large_dft_size + SOXR_MIN_DFT_SIZE log2_min_dft_size + SOXR_NUM_THREADS num_threads + +Additionally, the SOXR_USE_SIMD32 and SOXR_USE_SIMD64 boolean environment +variables can be used to override automatic selection (or to provide manual +selection where automatic selection is not available) between SIMD and +non-SIMD engine variants. diff --git a/C/src/soxr-0.1.3/LICENCE b/C/src/soxr-0.1.3/LICENCE new file mode 100644 index 00000000..43e5a716 --- /dev/null +++ b/C/src/soxr-0.1.3/LICENCE @@ -0,0 +1,23 @@ +SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + +This library is free software; you can redistribute it and/or modify it +under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 of the License, or (at +your option) any later version. + +This library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +General Public License for more details. + +You should have received a copy of the GNU Lesser General Public License +along with this library; if not, see . + + +Notes + +1. Re software in the `examples' directory: works that are not resampling +examples but are based on the given examples -- for example, applications using +the library -- shall not be considered to be derivative works of the examples. + +2. If building with pffft.c, see the licence embedded in that file. diff --git a/C/src/soxr-0.1.3/NEWS b/C/src/soxr-0.1.3/NEWS new file mode 100644 index 00000000..9e7c298f --- /dev/null +++ b/C/src/soxr-0.1.3/NEWS @@ -0,0 +1,46 @@ +Version 0.1.3 (2018-02-24) + * SIMD enhancements: SSE, AVX, Neon. + * Improve support for clang, ARM, and cross-compilation. + * Provide env. var. override of runtime parameters. + * Build fix re cmake variables AVCODEC_INCLUDE_DIRS & AVUTIL_INCLUDE_DIRS. + * Build options WITH_SINGLE_PRECISION, WITH_DOUBLE_PRECISION & WITH_SIMD have + been removed; replacement options are detailed in INSTALL, `Resampling + engines'. + +Version 0.1.2 (2015-09-05) + * Fix conversion failure when I/O types differ but I/O rates don't. + * Fix #defines for interpolation order selection. + * Fix ineffectual SOXR_MINIMUM_PHASE and SOXR_INTERMEDIATE_PHASE in + soxr_quality_spec recipe. + * Fix soxr_delay() returning a negative number after end-of-input has been + indicated. + * Fix crash when using soxr_process() after calling soxr_clear(). + * Be more POSIX compliant w.r.t. errno in the examples; fixes erroneous + reporting of errors on FreeBSD. + * Quality improvement for variable-rate. + * Various fixes/improvements to build/tests/documentation. + +Version 0.1.1 (2013-03-03) + * Minor fixes/improvements to build/tests. + * Fix crash (e.g. with k3b) when null error pointer passed to src_create (lsr + bindings only). + * Fix broken resampling in many cases with SIMD and anti_aliasing_pc < 100. + * For clarity, renamed and slightly changed usage of three parameters in + soxr_quality_spec_t (ABI compatible, API incompatible). An application not + setting these parameters directly need make no change; otherwise, changes + should be made per the following example (as shown, compatibility with both + old/new APIs is maintained). See also the comments on these parameters in + soxr.h. N.B. ABI compatibility with the 0.1.0 API may be removed in a + future release. + #if !defined SOXR_VERSION /* Deprecated, 0.1.0 API */ + q_spec.phase = minimum_phase? 0 : 50; + q_spec.bw_pc = cutoff * 100; + q_spec.anti_aliasing_pc = anti_aliasing * 100; + #else /* 0.1.1 API */ Explanation: + q_spec.phase_response = minimum_phase? 0 : 50; Renamed. + q_spec.passband_end = cutoff; Renamed, no longer %. + q_spec.stopband_begin = 2 - anti_aliasing; Renamed, no longer %, no + #endif longer mirrored in Fs. + +Version 0.1.0 (2013-01-19) + * First public release. diff --git a/C/src/soxr-0.1.3/README b/C/src/soxr-0.1.3/README new file mode 100644 index 00000000..7f9a7afb --- /dev/null +++ b/C/src/soxr-0.1.3/README @@ -0,0 +1,53 @@ +SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + +The SoX Resampler library `libsoxr' performs one-dimensional sample-rate +conversion -- it may be used, for example, to resample PCM-encoded audio. +For higher-dimensional resampling, such as for visual-image processing, you +should look elsewhere. + +It aims to give fast¹ and very high quality² results for any constant +(rational or irrational) resampling ratio. Phase-response, preserved +bandwidth, aliasing, and rejection level parameters are all configurable; +alternatively, simple `preset' configurations may be selected. A +variable-rate resampling mode of operation is also included. + +The resampler is currently available either as part of `libsox' (the audio +file-format and effect library), or stand-alone as `libsoxr' (this package). +The interfaces to libsox and libsoxr are slightly different, with that of +libsoxr designed specifically for resampling. An application requiring +support for other effects, or for reading-from or writing-to audio files or +devices, should use libsox (or other libraries such as libsndfile or +libavformat). + +Libsoxr provides a simple API that allows interfacing using the most +commonly-used sample formats and buffering schemes: sample-formats may be +either floating-point or integer, and multiple channels either interleaved +or split in separate buffers. The API is documented in the header file +`soxr.h', together with sample code found in the 'examples' directory. + +For compatibility with the popular `libsamplerate' library, the header file +`soxr-lsr.h' is provided and may be used as an alternative API.³ Note +however, that libsoxr does not provide a full emulation of libsamplerate +and that using this approach, only a sub-set of libsoxr's features are +available. + +The design was inspired by Laurent De Soras' paper `The Quest For The +Perfect Resampler', http://ldesoras.free.fr/doc/articles/resampler-en.pdf; +in essence, it combines Julius O. Smith's `Bandlimited Interpolation' +technique (https://ccrma.stanford.edu/~jos/resample/resample.pdf) with FFT- +based over-sampling. + +Note that for real-time resampling, libsoxr may have a higher latency +than non-FFT based resamplers. For example, when using the `High Quality' +configuration to resample between 44100Hz and 48000Hz, the latency is +around 1000 output samples, i.e. roughly 20ms (though passband and FFT- +size configuration parameters may be used to reduce this figure). + +For build and installation instructions, see the file `INSTALL'; for +copyright and licensing information, see the file `LICENCE'. + +For support and new versions, see https://soxr.sourceforge.net +________ +¹ For example, multi-channel resampling can utilise multiple CPU-cores. +² Bit-perfect within practical occupied-bandwidth limits. +³ For details of that API, see http://www.mega-nerd.com/SRC/api.html. diff --git a/C/src/soxr-0.1.3/Release/CMakeCache.txt b/C/src/soxr-0.1.3/Release/CMakeCache.txt new file mode 100644 index 00000000..ca47a670 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeCache.txt @@ -0,0 +1,544 @@ +# This is the CMakeCache file. +# For build in directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release +# It was generated by CMake: /opt/homebrew/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Build examples. +BUILD_EXAMPLES:BOOL=OFF + +//Build an OS X framework. +BUILD_FRAMEWORK:BOOL=OFF + +//Build shared (dynamic) soxr libraries. +BUILD_SHARED_LIBS:BOOL=OFF + +//Build sanity-tests. +BUILD_TESTS:BOOL=ON + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=CMAKE_ADDR2LINE-NOTFOUND + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING=Release + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//C compiler +CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING= + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=-g + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Value Computed by CMake. +CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/pkgRedirects + +//Path to a program. +CMAKE_INSTALL_NAME_TOOL:FILEPATH=/usr/bin/install_name_tool + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=CMAKE_OBJCOPY-NOTFOUND + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Build architectures for OSX +CMAKE_OSX_ARCHITECTURES:STRING= + +//Minimum OS X version to target for deployment (at runtime); newer +// APIs weak linked. Set to empty string for default value. +CMAKE_OSX_DEPLOYMENT_TARGET:STRING= + +//The product will be built against the headers and libraries located +// inside the indicated SDK. +CMAKE_OSX_SYSROOT:STRING= + +//No help, variable specified on the command line. +CMAKE_POLICY_VERSION_MINIMUM:UNINITIALIZED=3.5 + +//Value Computed by CMake +CMAKE_PROJECT_COMPAT_VERSION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=soxr + +//Value Computed by CMake +CMAKE_PROJECT_VERSION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MAJOR:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MINOR:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_PATCH:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_TWEAK:STATIC= + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=CMAKE_READELF-NOTFOUND + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the archiver during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the archiver during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the archiver during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the archiver during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the archiver during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//Path to a program. +CMAKE_TAPI:FILEPATH=/Library/Developer/CommandLineTools/usr/bin/tapi + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//Enable to build OSX bundles +CPACK_BINARY_BUNDLE:BOOL=OFF + +//Enable to build Debian packages +CPACK_BINARY_DEB:BOOL=OFF + +//Enable to build OSX Drag And Drop package +CPACK_BINARY_DRAGNDROP:BOOL=OFF + +//Enable to build FreeBSD packages +CPACK_BINARY_FREEBSD:BOOL=OFF + +//Enable to build IFW packages +CPACK_BINARY_IFW:BOOL=OFF + +//Enable to build NSIS packages +CPACK_BINARY_NSIS:BOOL=OFF + +//Enable to build productbuild packages +CPACK_BINARY_PRODUCTBUILD:BOOL=OFF + +//Enable to build RPM packages +CPACK_BINARY_RPM:BOOL=OFF + +//Enable to build STGZ packages +CPACK_BINARY_STGZ:BOOL=ON + +//Enable to build TBZ2 packages +CPACK_BINARY_TBZ2:BOOL=OFF + +//Enable to build TGZ packages +CPACK_BINARY_TGZ:BOOL=ON + +//Enable to build TXZ packages +CPACK_BINARY_TXZ:BOOL=OFF + +//Directory to install frameworks to. +FRAMEWORK_INSTALL_DIR:STRING=/Library/Frameworks + +//C compiler flags for OpenMP parallelization +OpenMP_C_FLAGS:STRING=-Xclang -fopenmp + +//C compiler libraries for OpenMP parallelization +OpenMP_C_LIB_NAMES:STRING=libomp + +//Path to a library. +OpenMP_libomp_LIBRARY:FILEPATH=/usr/local/lib/libomp.dylib + +//C compiler flags for FLOAT-32 (single-precision) SIMD vectorization +SIMD32_C_FLAGS:STRING= + +//C compiler flags for FLOAT-64 (double-precision) SIMD vectorization +SIMD64_C_FLAGS:STRING= + +//Include HQ constant-rate resampling engine. +WITH_CR32:BOOL=ON + +//Include HQ SIMD constant-rate resampling engine. +WITH_CR32S:BOOL=ON + +//Include VHQ constant-rate resampling engine. +WITH_CR64:BOOL=ON + +//Include VHQ SIMD constant-rate resampling engine. +WITH_CR64S:BOOL=ON + +//Enable developer grpof output. +WITH_DEV_GPROF:BOOL=OFF + +//Enable developer trace capability. +WITH_DEV_TRACE:BOOL=ON + +//Use floating-point for standard-precision time-base. +WITH_FLOAT_STD_PREC_CLOCK:BOOL=OFF + +//Enable high-precision time-base. +WITH_HI_PREC_CLOCK:BOOL=ON + +//Include a `libsamplerate'-like interface. +WITH_LSR_BINDINGS:BOOL=ON + +//Include OpenMP threading. +WITH_OPENMP:BOOL=OFF + +//Use PFFFT (BSD-like licence) for HQ SIMD DFT. +WITH_PFFFT:BOOL=ON + +//Include HQ variable-rate resampling engine. +WITH_VR32:BOOL=ON + +//Dependencies for the target +soxr-lsr_LIB_DEPENDS:STATIC=general;soxr; + +//Value Computed by CMake +soxr_BINARY_DIR:STATIC=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +//Value Computed by CMake +soxr_IS_TOP_LEVEL:STATIC=ON + +//Dependencies for the target +soxr_LIB_DEPENDS:STATIC=general;m; + +//Value Computed by CMake +soxr_SOURCE_DIR:STATIC=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=4 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=1 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/opt/homebrew/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/opt/homebrew/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/opt/homebrew/bin/ctest +//ADVANCED property for variable: CMAKE_C_COMPILER +CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Path to cache edit program executable. +CMAKE_EDIT_COMMAND:INTERNAL=/opt/homebrew/bin/ccmake +//Whether to issue deprecation errors for macros and functions. +CMAKE_ERROR_DEPRECATED:INTERNAL=FALSE +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=MACHO +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 +//ADVANCED property for variable: CMAKE_INSTALL_NAME_TOOL +CMAKE_INSTALL_NAME_TOOL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//Name of CMakeLists files to read +CMAKE_LIST_FILE_NAME:INTERNAL=CMakeLists.txt +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=4 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/opt/homebrew/share/cmake +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//Suppress errors that are meant for the author of the CMakeLists.txt +// files. +CMAKE_SUPPRESS_DEVELOPER_ERRORS:INTERNAL=TRUE +//Suppress Warnings that are meant for the author of the CMakeLists.txt +// files. +CMAKE_SUPPRESS_DEVELOPER_WARNINGS:INTERNAL=TRUE +//ADVANCED property for variable: CMAKE_TAPI +CMAKE_TAPI-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Whether to issue warnings for deprecated functionality. +CMAKE_WARN_DEPRECATED:INTERNAL=FALSE +//ADVANCED property for variable: CPACK_BINARY_BUNDLE +CPACK_BINARY_BUNDLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_DEB +CPACK_BINARY_DEB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_DRAGNDROP +CPACK_BINARY_DRAGNDROP-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_FREEBSD +CPACK_BINARY_FREEBSD-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_IFW +CPACK_BINARY_IFW-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_NSIS +CPACK_BINARY_NSIS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_PRODUCTBUILD +CPACK_BINARY_PRODUCTBUILD-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_RPM +CPACK_BINARY_RPM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_STGZ +CPACK_BINARY_STGZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_TBZ2 +CPACK_BINARY_TBZ2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_TGZ +CPACK_BINARY_TGZ-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_BINARY_TXZ +CPACK_BINARY_TXZ-ADVANCED:INTERNAL=1 +//Test DETECT_SIMD32_C_FLAGS +DETECT_SIMD32_C_FLAGS:INTERNAL= +//Details about finding OpenMP +FIND_PACKAGE_MESSAGE_DETAILS_OpenMP:INTERNAL=[TRUE][ ][v5.1()] +//Details about finding OpenMP_C +FIND_PACKAGE_MESSAGE_DETAILS_OpenMP_C:INTERNAL=[-Xclang -fopenmp][/usr/local/lib/libomp.dylib][v5.1()] +//Have include fenv.h +HAVE_FENV_H:INTERNAL=1 +//Have function lrint +HAVE_LRINT:INTERNAL=1 +//Have include stdbool.h +HAVE_STDBOOL_H:INTERNAL=1 +//Have include stdint.h +HAVE_STDINT_H:INTERNAL=1 +//Have library m +NEED_LIBM:INTERNAL=1 +//Result of TRY_COMPILE +OpenMP_COMPILE_RESULT_C_Xclang fopenmp:INTERNAL=TRUE +//ADVANCED property for variable: OpenMP_C_FLAGS +OpenMP_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: OpenMP_C_LIB_NAMES +OpenMP_C_LIB_NAMES-ADVANCED:INTERNAL=1 +//C compiler's OpenMP specification date +OpenMP_C_SPEC_DATE:INTERNAL=202011 +//Result of TRY_COMPILE +OpenMP_SPECTEST_C_:INTERNAL=TRUE +//ADVANCED property for variable: OpenMP_libomp_LIBRARY +OpenMP_libomp_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: SIMD32_C_FLAGS +SIMD32_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: SIMD64_C_FLAGS +SIMD64_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: WITH_DEV_GPROF +WITH_DEV_GPROF-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: WITH_DEV_TRACE +WITH_DEV_TRACE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: WITH_FLOAT_STD_PREC_CLOCK +WITH_FLOAT_STD_PREC_CLOCK-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: WITH_HI_PREC_CLOCK +WITH_HI_PREC_CLOCK-ADVANCED:INTERNAL=1 + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeCCompiler.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeCCompiler.cmake new file mode 100644 index 00000000..6dcc5d7a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeCCompiler.cmake @@ -0,0 +1,84 @@ +set(CMAKE_C_COMPILER "/usr/bin/cc") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "AppleClang") +set(CMAKE_C_COMPILER_VERSION "17.0.0.17000013") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_C_STANDARD_LATEST "23") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "c_std_23") + +set(CMAKE_C_PLATFORM_ID "Darwin") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU") +set(CMAKE_C_COMPILER_APPLE_SYSROOT "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk") +set(CMAKE_C_SIMULATE_VERSION "") +set(CMAKE_C_COMPILER_ARCHITECTURE_ID "arm64") + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_C_COMPILER_AR "") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_C_COMPILER_RANLIB "") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_LINKER_LINK "") +set(CMAKE_LINKER_LLD "") +set(CMAKE_C_COMPILER_LINKER "/Library/Developer/CommandLineTools/usr/bin/ld") +set(CMAKE_C_COMPILER_LINKER_ID "AppleClang") +set(CMAKE_C_COMPILER_LINKER_VERSION 1167.5) +set(CMAKE_C_COMPILER_LINKER_FRONTEND_VARIANT GNU) +set(CMAKE_MT "") +set(CMAKE_TAPI "/Library/Developer/CommandLineTools/usr/bin/tapi") +set(CMAKE_COMPILER_IS_GNUCC ) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) +set(CMAKE_C_LINKER_DEPFILE_SUPPORTED ) +set(CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED ) +set(CMAKE_C_LINKER_PUSHPOP_STATE_SUPPORTED ) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/local/include;/Library/Developer/CommandLineTools/usr/lib/clang/17/include;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include;/Library/Developer/CommandLineTools/usr/include") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks") diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeDetermineCompilerABI_C.bin b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeDetermineCompilerABI_C.bin new file mode 100755 index 0000000000000000000000000000000000000000..c1bf803c1d323ee3a3a7e7caf62da15742092249 GIT binary patch literal 33560 zcmeI5Uuau(6vux_Q%PuDTJg`cQzH&pMOx7^YZ;QvWNEgL7R^IgCqMG%roF65G`XeC zsF*Paif+r;gL6;9irs@EP7(9a8Nok$5Z2il=lt%?nxsX+J^0}F zz`4KQIp_Y)J-^Sr`O%kh&RzZGdZ!RJL1HKECiOUkI4C?c6XI^tVNxkaeZj!)z%wK4 zZ5Fk-*|o;vJg?A=Qbq%@XmePt_cr^4Ww(=?l}b_~rJ>CjmO(>nKCjcvm&~#yRCH7OjM3P?GX zoz}A{sb|wUWjFI1wDQHQBy6|lXw1*=;ke4<_eFgT5wGO9zy2xhP$iJ(os^D`d)eDd;X1VphX^1`fZ8+sY1SgQcv`!ijyg_ zS$ashj;~#z6JPzd?Z~m-bC*v(5gdMud>&GBPj347-DJI>buNEh@`Br3#%LWvB1Kqb_}U@QT}8aoSuR zR~ln)Qmm-YtQ+gzye3BHT-j;!u5j+woEIrS)p4}iCNG2{J4S{I`aUg}mZ|5B{Me&| z&j}F;jqFGa8AYk(b6RRFAKEU1kwC~F@d=8mHHo63$y`3A<;TLIXfzy;-KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l00jOU0v>uS_daK3X>9B5FkR}(y~OLH=3eTK?yY;8*9n^x zcX5cj+O~#R~mZ_t#>V!54sRH^NNuoHc| z+DelAF%=bpcD%pjv8&edmg{eavK6%@GtsAIG8s=jDc=4pyywf6+Kcnw|IvHwlWk{% zXD)^J9$q=W=e_CIe;7X-fA^(#PRDXzET^lEZ76_Z|Fp;kDscADO?| z`1!>%pTB=kdV22HPkR{__q<=?q!dG_TCi-!iPC;iuMHvd1ZpZk659lQO9hyJvG c{PW!9%zagD^rO@1pI-Rj+5^S%{8NX-U%7gnr~m)} literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeSystem.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeSystem.cmake new file mode 100644 index 00000000..0473afc4 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Darwin-24.6.0") +set(CMAKE_HOST_SYSTEM_NAME "Darwin") +set(CMAKE_HOST_SYSTEM_VERSION "24.6.0") +set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64") + + + +set(CMAKE_SYSTEM "Darwin-24.6.0") +set(CMAKE_SYSTEM_NAME "Darwin") +set(CMAKE_SYSTEM_VERSION "24.6.0") +set(CMAKE_SYSTEM_PROCESSOR "arm64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/CMakeCCompilerId.c b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/CMakeCCompilerId.c new file mode 100644 index 00000000..ab3c3593 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/CMakeCCompilerId.c @@ -0,0 +1,934 @@ +#ifdef __cplusplus +# error "A C++ compiler has been selected for C." +#endif + +#if defined(__18CXX) +# define ID_VOID_MAIN +#endif +#if defined(__CLASSIC_C__) +/* cv-qualifiers did not exist in K&R C */ +# define const +# define volatile +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(__clang__) && defined(__cray__) +# define COMPILER_ID "CrayClang" +# define COMPILER_VERSION_MAJOR DEC(__cray_major__) +# define COMPILER_VERSION_MINOR DEC(__cray_minor__) +# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TASKING__) +# define COMPILER_ID "Tasking" + # define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000) + # define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100) +# define COMPILER_VERSION_INTERNAL DEC(__VERSION__) + +#elif defined(__ORANGEC__) +# define COMPILER_ID "OrangeC" +# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__) + +#elif defined(__RENESAS__) +# define COMPILER_ID "Renesas" +/* __RENESAS_VERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__RENESAS_VERSION__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR HEX(__RENESAS_VERSION__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__RENESAS_VERSION__ >> 8 & 0xFF) + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) && defined(__ti__) +# define COMPILER_ID "TIClang" + # define COMPILER_VERSION_MAJOR DEC(__ti_major__) + # define COMPILER_VERSION_MINOR DEC(__ti_minor__) + # define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__) +# define COMPILER_VERSION_INTERNAL DEC(__ti_version__) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100) +# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100) +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(_ADI_COMPILER) +# define COMPILER_ID "ADSP" +#if defined(__VERSIONNUM__) + /* __VERSIONNUM__ = 0xVVRRPPTT */ +# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF) +# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF) +# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF) +# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__DCC__) && defined(_DIAB_TOOL) +# define COMPILER_ID "Diab" + # define COMPILER_VERSION_MAJOR DEC(__VERSION_MAJOR_NUMBER__) + # define COMPILER_VERSION_MINOR DEC(__VERSION_MINOR_NUMBER__) + # define COMPILER_VERSION_PATCH DEC(__VERSION_ARCH_FEATURE_NUMBER__) + # define COMPILER_VERSION_TWEAK DEC(__VERSION_BUG_FIX_NUMBER__) + + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +# elif defined(_ADI_COMPILER) +# define PLATFORM_ID "ADSP" + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__clang__) && defined(__ti__) +# if defined(__ARM_ARCH) +# define ARCHITECTURE_ID "ARM" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +# elif defined(__ADSPSHARC__) +# define ARCHITECTURE_ID "SHARC" + +# elif defined(__ADSPBLACKFIN__) +# define ARCHITECTURE_ID "Blackfin" + +#elif defined(__TASKING__) + +# if defined(__CTC__) || defined(__CPTC__) +# define ARCHITECTURE_ID "TriCore" + +# elif defined(__CMCS__) +# define ARCHITECTURE_ID "MCS" + +# elif defined(__CARM__) || defined(__CPARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__CARC__) +# define ARCHITECTURE_ID "ARC" + +# elif defined(__C51__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__CPCP__) +# define ARCHITECTURE_ID "PCP" + +# else +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__RENESAS__) +# if defined(__CCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__CCRL__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__CCRH__) +# define ARCHITECTURE_ID "RH850" + +# else +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#define C_STD_99 199901L +#define C_STD_11 201112L +#define C_STD_17 201710L +#define C_STD_23 202311L + +#ifdef __STDC_VERSION__ +# define C_STD __STDC_VERSION__ +#endif + +#if !defined(__STDC__) && !defined(__clang__) && !defined(__RENESAS__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif C_STD > C_STD_17 +# define C_VERSION "23" +#elif C_STD > C_STD_11 +# define C_VERSION "17" +#elif C_STD > C_STD_99 +# define C_VERSION "11" +#elif C_STD >= C_STD_99 +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__) || defined(__RENESAS__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#if defined(COMPILER_VERSION_INTERNAL) || defined(COMPILER_VERSION_INTERNAL_STR) + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/apple-sdk.c b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/apple-sdk.c new file mode 100644 index 00000000..db846b4f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/apple-sdk.c @@ -0,0 +1 @@ +#include diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeConfigureLog.yaml b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeConfigureLog.yaml new file mode 100644 index 00000000..3bd0125f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeConfigureLog.yaml @@ -0,0 +1,2378 @@ + +--- +events: + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineSystem.cmake:12 (find_program)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_UNAME" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "uname" + candidate_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/uname" + - "/opt/homebrew/opt/ruby/bin/uname" + - "/Users/coissac/go/bin/uname" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/uname" + - "/Applications/quarto/bin/uname" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/uname" + - "/opt/homebrew/bin/uname" + - "/opt/homebrew/sbin/uname" + - "/usr/local/bin/uname" + - "/System/Cryptexes/App/usr/bin/uname" + found: "/usr/bin/uname" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineSystem.cmake:212 (message)" + - "CMakeLists.txt:6 (project)" + message: | + The system is: Darwin - 24.6.0 - arm64 + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeUnixFindMake.cmake:5 (find_program)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_MAKE_PROGRAM" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "gmake" + - "make" + - "smake" + candidate_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/gmake" + - "/opt/homebrew/opt/ruby/bin/gmake" + - "/Users/coissac/go/bin/gmake" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/gmake" + - "/Applications/quarto/bin/gmake" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/gmake" + - "/opt/homebrew/bin/gmake" + - "/opt/homebrew/sbin/gmake" + - "/usr/local/bin/gmake" + - "/System/Cryptexes/App/usr/bin/gmake" + - "/usr/bin/gmake" + - "/bin/gmake" + - "/usr/sbin/gmake" + - "/sbin/gmake" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/gmake" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/gmake" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/gmake" + - "/opt/X11/bin/gmake" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/gmake" + - "/usr/local/go/bin/gmake" + - "/usr/local/src/last-main/bin/gmake" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/gmake" + - "/opt/podman/bin/gmake" + - "/Applications/iTerm.app/Contents/Resources/utilities/gmake" + - "/Users/coissac/.orbstack/bin/gmake" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/gmake" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/make" + - "/opt/homebrew/opt/ruby/bin/make" + - "/Users/coissac/go/bin/make" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/make" + - "/Applications/quarto/bin/make" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/make" + - "/opt/homebrew/bin/make" + - "/opt/homebrew/sbin/make" + - "/usr/local/bin/make" + - "/System/Cryptexes/App/usr/bin/make" + found: "/usr/bin/make" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompiler.cmake:73 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:64 (_cmake_find_compiler)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_C_COMPILER" + description: "C compiler" + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "cc" + - "gcc" + - "cl" + - "bcc" + - "xlc" + - "icx" + - "clang" + candidate_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/cc" + - "/opt/homebrew/opt/ruby/bin/cc" + - "/Users/coissac/go/bin/cc" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/cc" + - "/Applications/quarto/bin/cc" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/cc" + - "/opt/homebrew/bin/cc" + - "/opt/homebrew/sbin/cc" + - "/usr/local/bin/cc" + - "/System/Cryptexes/App/usr/bin/cc" + found: "/usr/bin/cc" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:462 (find_file)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:500 (CMAKE_DETERMINE_COMPILER_ID_WRITE)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:8 (CMAKE_DETERMINE_COMPILER_ID_BUILD)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:122 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:6 (project)" + mode: "file" + variable: "src_in" + description: "Path to a file." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "CMakeCCompilerId.c.in" + candidate_directories: + - "/opt/homebrew/share/cmake/Modules/" + found: "/opt/homebrew/share/cmake/Modules/CMakeCCompilerId.c.in" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:17 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:64 (__determine_compiler_id_test)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:122 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:6 (project)" + message: | + Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. + Compiler: /usr/bin/cc + Build flags: + Id flags: + + The output was: + 0 + + + Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" + + The C compiler identification is AppleClang, found in: + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/4.1.1/CompilerIdC/a.out + + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerId.cmake:290 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:122 (CMAKE_DETERMINE_COMPILER_ID)" + - "CMakeLists.txt:6 (project)" + message: | + Detecting C compiler apple sysroot: "/usr/bin/cc" "-E" "apple-sdk.c" + # 1 "apple-sdk.c" + # 1 "" 1 + # 1 "" 3 + # 465 "" 3 + # 1 "" 1 + # 1 "" 2 + # 1 "apple-sdk.c" 2 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 1 3 4 + # 89 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h" 1 3 4 + # 90 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 2 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/TargetConditionals.h" 1 3 4 + # 91 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 2 3 4 + # 207 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h" 1 3 4 + # 196 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h" 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h" 1 3 4 + # 197 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h" 2 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h" 1 3 4 + # 33 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h" 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h" 1 3 4 + # 34 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h" 2 3 4 + # 198 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h" 2 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h" 1 3 4 + # 34 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h" 3 4 + # 1 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h" 1 3 4 + # 35 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h" 2 3 4 + # 199 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h" 2 3 4 + # 208 "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h" 2 3 4 + # 2 "apple-sdk.c" 2 + + + Found apple sysroot: /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_AR" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "ar" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/ar" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_RANLIB" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "ranlib" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/ranlib" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_STRIP" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "strip" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/strip" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_LINKER" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "ld" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/ld" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_NM" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "nm" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/nm" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_OBJDUMP" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "objdump" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + found: "/usr/bin/objdump" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_OBJCOPY" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "objcopy" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/usr/bin/objcopy" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/objcopy" + - "/opt/homebrew/opt/ruby/bin/objcopy" + - "/Users/coissac/go/bin/objcopy" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/objcopy" + - "/Applications/quarto/bin/objcopy" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/objcopy" + - "/opt/homebrew/bin/objcopy" + - "/opt/homebrew/sbin/objcopy" + - "/usr/local/bin/objcopy" + - "/System/Cryptexes/App/usr/bin/objcopy" + - "/bin/objcopy" + - "/usr/sbin/objcopy" + - "/sbin/objcopy" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/objcopy" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/objcopy" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/objcopy" + - "/opt/X11/bin/objcopy" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/objcopy" + - "/usr/local/go/bin/objcopy" + - "/usr/local/src/last-main/bin/objcopy" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/objcopy" + - "/opt/podman/bin/objcopy" + - "/Applications/iTerm.app/Contents/Resources/utilities/objcopy" + - "/Users/coissac/.orbstack/bin/objcopy" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/objcopy" + found: false + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_READELF" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "readelf" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/usr/bin/readelf" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/readelf" + - "/opt/homebrew/opt/ruby/bin/readelf" + - "/Users/coissac/go/bin/readelf" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/readelf" + - "/Applications/quarto/bin/readelf" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/readelf" + - "/opt/homebrew/bin/readelf" + - "/opt/homebrew/sbin/readelf" + - "/usr/local/bin/readelf" + - "/System/Cryptexes/App/usr/bin/readelf" + - "/bin/readelf" + - "/usr/sbin/readelf" + - "/sbin/readelf" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/readelf" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/readelf" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/readelf" + - "/opt/X11/bin/readelf" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/readelf" + - "/usr/local/go/bin/readelf" + - "/usr/local/src/last-main/bin/readelf" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/readelf" + - "/opt/podman/bin/readelf" + - "/Applications/iTerm.app/Contents/Resources/utilities/readelf" + - "/Users/coissac/.orbstack/bin/readelf" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/readelf" + found: false + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_DLLTOOL" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "dlltool" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/usr/bin/dlltool" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/dlltool" + - "/opt/homebrew/opt/ruby/bin/dlltool" + - "/Users/coissac/go/bin/dlltool" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/dlltool" + - "/Applications/quarto/bin/dlltool" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/dlltool" + - "/opt/homebrew/bin/dlltool" + - "/opt/homebrew/sbin/dlltool" + - "/usr/local/bin/dlltool" + - "/System/Cryptexes/App/usr/bin/dlltool" + - "/bin/dlltool" + - "/usr/sbin/dlltool" + - "/sbin/dlltool" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/dlltool" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/dlltool" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/dlltool" + - "/opt/X11/bin/dlltool" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/dlltool" + - "/usr/local/go/bin/dlltool" + - "/usr/local/src/last-main/bin/dlltool" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/dlltool" + - "/opt/podman/bin/dlltool" + - "/Applications/iTerm.app/Contents/Resources/utilities/dlltool" + - "/Users/coissac/.orbstack/bin/dlltool" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/dlltool" + found: false + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_ADDR2LINE" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "addr2line" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/usr/bin/addr2line" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/addr2line" + - "/opt/homebrew/opt/ruby/bin/addr2line" + - "/Users/coissac/go/bin/addr2line" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/addr2line" + - "/Applications/quarto/bin/addr2line" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/addr2line" + - "/opt/homebrew/bin/addr2line" + - "/opt/homebrew/sbin/addr2line" + - "/usr/local/bin/addr2line" + - "/System/Cryptexes/App/usr/bin/addr2line" + - "/bin/addr2line" + - "/usr/sbin/addr2line" + - "/sbin/addr2line" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/addr2line" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/addr2line" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/addr2line" + - "/opt/X11/bin/addr2line" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/addr2line" + - "/usr/local/go/bin/addr2line" + - "/usr/local/src/last-main/bin/addr2line" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/addr2line" + - "/opt/podman/bin/addr2line" + - "/Applications/iTerm.app/Contents/Resources/utilities/addr2line" + - "/Users/coissac/.orbstack/bin/addr2line" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/addr2line" + found: false + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeFindBinUtils.cmake:238 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCCompiler.cmake:200 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_TAPI" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: false + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: false + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "tapi" + candidate_directories: + - "/usr/bin/" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/usr/bin/tapi" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/tapi" + - "/opt/homebrew/opt/ruby/bin/tapi" + - "/Users/coissac/go/bin/tapi" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/tapi" + - "/Applications/quarto/bin/tapi" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/tapi" + - "/opt/homebrew/bin/tapi" + - "/opt/homebrew/sbin/tapi" + - "/usr/local/bin/tapi" + - "/System/Cryptexes/App/usr/bin/tapi" + - "/bin/tapi" + - "/usr/sbin/tapi" + - "/sbin/tapi" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/tapi" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/tapi" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/tapi" + - "/opt/X11/bin/tapi" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/tapi" + - "/usr/local/go/bin/tapi" + - "/usr/local/src/last-main/bin/tapi" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/tapi" + - "/opt/podman/bin/tapi" + - "/Applications/iTerm.app/Contents/Resources/utilities/tapi" + - "/Users/coissac/.orbstack/bin/tapi" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/tapi" + found: false + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Platform/Darwin.cmake:76 (find_program)" + - "/opt/homebrew/share/cmake/Modules/CMakeSystemSpecificInformation.cmake:32 (include)" + - "CMakeLists.txt:6 (project)" + mode: "program" + variable: "CMAKE_INSTALL_NAME_TOOL" + description: "Path to a program." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "install_name_tool" + candidate_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts/" + searched_directories: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin/install_name_tool" + - "/opt/homebrew/opt/ruby/bin/install_name_tool" + - "/Users/coissac/go/bin/install_name_tool" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/install_name_tool" + - "/Applications/quarto/bin/install_name_tool" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/install_name_tool" + - "/opt/homebrew/bin/install_name_tool" + - "/opt/homebrew/sbin/install_name_tool" + - "/usr/local/bin/install_name_tool" + - "/System/Cryptexes/App/usr/bin/install_name_tool" + found: "/usr/bin/install_name_tool" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + CMAKE_INSTALL_PREFIX: "/usr/local" + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:83 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:6 (project)" + checks: + - "Detecting C compiler ABI info" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "CMAKE_C_ABI_COMPILED" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_ccad9/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_ccad9.dir/build.make CMakeFiles/cmTC_ccad9.dir/build + Building C object CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o + /usr/bin/cc -arch arm64 -v -Wl,-v -MD -MT CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -c /opt/homebrew/share/cmake/Modules/CMakeCCompilerABI.c + Apple clang version 17.0.0 (clang-1700.0.13.5) + Target: arm64-apple-darwin24.6.0 + Thread model: posix + InstalledDir: /Library/Developer/CommandLineTools/usr/bin + clang: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument] + "/Library/Developer/CommandLineTools/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.5 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL -target-linker-version 1167.5 -v -fcoverage-compilation-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL -resource-dir /Library/Developer/CommandLineTools/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -I/usr/local/include -internal-isystem /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/local/include -internal-isystem /Library/Developer/CommandLineTools/usr/lib/clang/17/include -internal-externc-isystem /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -internal-externc-isystem /Library/Developer/CommandLineTools/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fmax-type-align=16 -fcommon -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -x c /opt/homebrew/share/cmake/Modules/CMakeCCompilerABI.c + clang -cc1 version 17.0.0 (clang-1700.0.13.5) default target arm64-apple-darwin24.6.0 + ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/local/include" + ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/SubFrameworks" + ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/Library/Frameworks" + #include "..." search starts here: + #include <...> search starts here: + /usr/local/include + /Library/Developer/CommandLineTools/usr/lib/clang/17/include + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include + /Library/Developer/CommandLineTools/usr/include + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks (framework directory) + End of search list. + Linking C executable cmTC_ccad9 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ccad9.dir/link.txt --verbose=1 + Apple clang version 17.0.0 (clang-1700.0.13.5) + Target: arm64-apple-darwin24.6.0 + Thread model: posix + InstalledDir: /Library/Developer/CommandLineTools/usr/bin + "/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.0.0 15.5 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_ccad9 -L/usr/local/lib -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a + @(#)PROGRAM:ld PROJECT:ld-1167.5 + BUILD 01:45:05 Apr 30 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5) + Library search paths: + /usr/local/lib + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift + Framework search paths: + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks + /usr/bin/cc -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -o cmTC_ccad9 + + exitCode: 0 + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:122 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:6 (project)" + message: | + Effective list of requested architectures (possibly empty) : "" + Effective list of architectures found in the ABI info binary: "arm64" + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:217 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:6 (project)" + message: | + Parsed C implicit include dir info: rv=done + found start of include info + found start of implicit include info + add: [/usr/local/include] + add: [/Library/Developer/CommandLineTools/usr/lib/clang/17/include] + add: [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include] + add: [/Library/Developer/CommandLineTools/usr/include] + end of search list found + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/Library/Developer/CommandLineTools/usr/lib/clang/17/include] ==> [/Library/Developer/CommandLineTools/usr/lib/clang/17/include] + collapse include dir [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include] + collapse include dir [/Library/Developer/CommandLineTools/usr/include] ==> [/Library/Developer/CommandLineTools/usr/include] + implicit include dirs: [/usr/local/include;/Library/Developer/CommandLineTools/usr/lib/clang/17/include;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include;/Library/Developer/CommandLineTools/usr/include] + + + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:253 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:6 (project)" + message: | + Parsed C implicit link information: + link line regex: [^( *|.*[/\\])(ld[0-9]*(|\\.[a-rt-z][a-z]*|\\.s[a-np-z][a-z]*|\\.so[a-z]+)|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\\]+-)?ld|collect2)[^/\\]*( |$)] + linker tool regex: [^[ ]*(->|")?[ ]*(([^"]*[/\\])?(ld[0-9]*(|\\.[a-rt-z][a-z]*|\\.s[a-np-z][a-z]*|\\.so[a-z]+)))("|,| |$)] + ignore line: [Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL'] + ignore line: [] + ignore line: [Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_ccad9/fast] + ignore line: [/Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_ccad9.dir/build.make CMakeFiles/cmTC_ccad9.dir/build] + ignore line: [Building C object CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o] + ignore line: [/usr/bin/cc -arch arm64 -v -Wl -v -MD -MT CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -c /opt/homebrew/share/cmake/Modules/CMakeCCompilerABI.c] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.5)] + ignore line: [Target: arm64-apple-darwin24.6.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Library/Developer/CommandLineTools/usr/bin] + ignore line: [clang: warning: -Wl -v: 'linker' input unused [-Wunused-command-line-argument]] + ignore line: [ "/Library/Developer/CommandLineTools/usr/bin/clang" -cc1 -triple arm64-apple-macosx15.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -ffp-contract=on -fno-rounding-math -funwind-tables=1 -fobjc-msgsend-selector-stubs -target-sdk-version=15.5 -fvisibility-inlines-hidden-static-local-var -fdefine-target-os-macros -fno-assume-unique-vtables -fno-modulemap-allow-subdirectory-search -target-cpu apple-m1 -target-feature +zcm -target-feature +zcz -target-feature +v8.5a -target-feature +aes -target-feature +altnzcv -target-feature +ccdp -target-feature +complxnum -target-feature +crc -target-feature +dotprod -target-feature +fp-armv8 -target-feature +fp16fml -target-feature +fptoint -target-feature +fullfp16 -target-feature +jsconv -target-feature +lse -target-feature +neon -target-feature +pauth -target-feature +perfmon -target-feature +predres -target-feature +ras -target-feature +rcpc -target-feature +rdm -target-feature +sb -target-feature +sha2 -target-feature +sha3 -target-feature +specrestrict -target-feature +ssbs -target-abi darwinpcs -debugger-tuning=lldb -fdebug-compilation-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL -target-linker-version 1167.5 -v -fcoverage-compilation-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-S8ikxL -resource-dir /Library/Developer/CommandLineTools/usr/lib/clang/17 -dependency-file CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -I/usr/local/include -internal-isystem /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/local/include -internal-isystem /Library/Developer/CommandLineTools/usr/lib/clang/17/include -internal-externc-isystem /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -internal-externc-isystem /Library/Developer/CommandLineTools/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fmax-type-align=16 -fcommon -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -clang-vendor-feature=+disableAtImportPrivateFrameworkInImplementationError -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -x c /opt/homebrew/share/cmake/Modules/CMakeCCompilerABI.c] + ignore line: [clang -cc1 version 17.0.0 (clang-1700.0.13.5) default target arm64-apple-darwin24.6.0] + ignore line: [ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/local/include"] + ignore line: [ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/SubFrameworks"] + ignore line: [ignoring nonexistent directory "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/Library/Frameworks"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/local/include] + ignore line: [ /Library/Developer/CommandLineTools/usr/lib/clang/17/include] + ignore line: [ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include] + ignore line: [ /Library/Developer/CommandLineTools/usr/include] + ignore line: [ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks (framework directory)] + ignore line: [End of search list.] + ignore line: [Linking C executable cmTC_ccad9] + ignore line: [/opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ccad9.dir/link.txt --verbose=1] + ignore line: [Apple clang version 17.0.0 (clang-1700.0.13.5)] + ignore line: [Target: arm64-apple-darwin24.6.0] + ignore line: [Thread model: posix] + ignore line: [InstalledDir: /Library/Developer/CommandLineTools/usr/bin] + link line: [ "/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.0.0 15.5 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_ccad9 -L/usr/local/lib -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + arg [/Library/Developer/CommandLineTools/usr/bin/ld] ==> ignore + arg [-demangle] ==> ignore + arg [-lto_library] ==> ignore, skip following value + arg [/Library/Developer/CommandLineTools/usr/lib/libLTO.dylib] ==> skip value of -lto_library + arg [-dynamic] ==> ignore + arg [-arch] ==> ignore + arg [arm64] ==> ignore + arg [-platform_version] ==> ignore + arg [macos] ==> ignore + arg [15.0.0] ==> ignore + arg [15.5] ==> ignore + arg [-syslibroot] ==> ignore + arg [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk] ==> ignore + arg [-mllvm] ==> ignore + arg [-enable-linkonceodr-outlining] ==> ignore + arg [-o] ==> ignore + arg [cmTC_ccad9] ==> ignore + arg [-L/usr/local/lib] ==> dir [/usr/local/lib] + arg [-search_paths_first] ==> ignore + arg [-headerpad_max_install_names] ==> ignore + arg [-v] ==> ignore + arg [CMakeFiles/cmTC_ccad9.dir/CMakeCCompilerABI.c.o] ==> ignore + arg [-lSystem] ==> lib [System] + arg [/Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] ==> lib [/Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + linker tool for 'C': /Library/Developer/CommandLineTools/usr/bin/ld + Library search paths: [;/usr/local/lib;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift] + Framework search paths: [;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks] + remove lib [System] + remove lib [/Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a] + collapse library dir [/usr/local/lib] ==> [/usr/local/lib] + collapse library dir [/usr/local/lib] ==> [/usr/local/lib] + collapse library dir [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib] + collapse library dir [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift] + collapse framework dir [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks] + implicit libs: [] + implicit objs: [] + implicit dirs: [/usr/local/lib;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift] + implicit fwks: [/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks] + + + - + kind: "message-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Internal/CMakeDetermineLinkerId.cmake:36 (message)" + - "/opt/homebrew/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:299 (cmake_determine_linker_id)" + - "/opt/homebrew/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)" + - "CMakeLists.txt:6 (project)" + message: | + Running the C compiler's linker: "/Library/Developer/CommandLineTools/usr/bin/ld" "-v" + @(#)PROGRAM:ld PROJECT:ld-1167.5 + BUILD 01:45:05 Apr 30 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5) + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CheckLibraryExists.cmake:154 (try_compile)" + - "CMakeLists.txt:97 (check_library_exists)" + checks: + - "Looking for pow in m" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "NEED_LIBM" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_83fe8/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_83fe8.dir/build.make CMakeFiles/cmTC_83fe8.dir/build + Building C object CMakeFiles/cmTC_83fe8.dir/CheckFunctionExists.c.o + /usr/bin/cc -DCHECK_FUNCTION_EXISTS=pow -arch arm64 -MD -MT CMakeFiles/cmTC_83fe8.dir/CheckFunctionExists.c.o -MF CMakeFiles/cmTC_83fe8.dir/CheckFunctionExists.c.o.d -o CMakeFiles/cmTC_83fe8.dir/CheckFunctionExists.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC/CheckFunctionExists.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC/CheckFunctionExists.c:7:3: warning: incompatible redeclaration of library function 'pow' [-Wincompatible-library-redeclaration] + 7 | CHECK_FUNCTION_EXISTS(void); + | ^ + :1:31: note: expanded from macro 'CHECK_FUNCTION_EXISTS' + 1 | #define CHECK_FUNCTION_EXISTS pow + | ^ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-xkEOdC/CheckFunctionExists.c:7:3: note: 'pow' is a builtin with type 'double (double, double)' + :1:31: note: expanded from macro 'CHECK_FUNCTION_EXISTS' + 1 | #define CHECK_FUNCTION_EXISTS pow + | ^ + 1 warning generated. + Linking C executable cmTC_83fe8 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_83fe8.dir/link.txt --verbose=1 + /usr/bin/cc -DCHECK_FUNCTION_EXISTS=pow -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_83fe8.dir/CheckFunctionExists.c.o -o cmTC_83fe8 -lm + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:251 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:558 (_OPENMP_GET_FLAGS)" + - "CMakeLists.txt:108 (find_package)" + description: "Detecting C OpenMP compiler info" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-RDwhSb" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-RDwhSb" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "OpenMP_COMPILE_RESULT_C_Xclang fopenmp" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-RDwhSb' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_1668c/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_1668c.dir/build.make CMakeFiles/cmTC_1668c.dir/build + Building C object CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o + /usr/bin/cc -Xclang -fopenmp -arch arm64 -MD -MT CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o -MF CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o.d -o CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-RDwhSb/OpenMPTryFlag.c + Linking C executable cmTC_1668c + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1668c.dir/link.txt --verbose=1 + Apple clang version 17.0.0 (clang-1700.0.13.5) + Target: arm64-apple-darwin24.6.0 + Thread model: posix + InstalledDir: /Library/Developer/CommandLineTools/usr/bin + "/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 15.0.0 15.5 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -mllvm -enable-linkonceodr-outlining -o cmTC_1668c -L/usr/local/lib -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/17/lib/darwin/libclang_rt.osx.a + @(#)PROGRAM:ld PROJECT:ld-1167.5 + BUILD 01:45:05 Apr 30 2025 + configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em + will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em + LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) + TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5) + Library search paths: + /usr/local/lib + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift + Framework search paths: + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks + Undefined symbols for architecture arm64: + "_omp_get_max_threads", referenced from: + _main in OpenMPTryFlag.c.o + ld: symbol(s) not found for architecture arm64 + clang: error: linker command failed with exit code 1 (use -v to see invocation) + /usr/bin/cc -Xclang -fopenmp -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_1668c.dir/OpenMPTryFlag.c.o -o cmTC_1668c + make[2]: *** [cmTC_1668c] Error 1 + make[1]: *** [cmTC_1668c/fast] Error 2 + + exitCode: 2 + - + kind: "find-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:343 (find_library)" + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:558 (_OPENMP_GET_FLAGS)" + - "CMakeLists.txt:108 (find_package)" + mode: "library" + variable: "OpenMP_libomp_LIBRARY" + description: "Path to a library." + settings: + SearchFramework: "FIRST" + SearchAppBundle: "FIRST" + CMAKE_FIND_USE_CMAKE_PATH: true + CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH: true + CMAKE_FIND_USE_CMAKE_SYSTEM_PATH: true + CMAKE_FIND_USE_INSTALL_PREFIX: true + names: + - "omp" + - "gomp" + - "iomp5" + candidate_directories: + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/" + - "/opt/homebrew/lib/" + - "/opt/homebrew/" + - "/usr/local/lib/" + - "/usr/local/" + - "/usr/lib/" + - "/usr/" + - "/usr/X11R6/lib/" + - "/usr/X11R6/" + - "/opt/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/" + - "/Library/Developer/CommandLineTools/Library/Frameworks/" + - "/Library/Frameworks/" + - "/System/Library/Frameworks/" + searched_directories: + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/swift/" + - "/opt/homebrew/opt/ruby/bin/" + - "/Users/coissac/go/bin/" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin/" + - "/Applications/quarto/bin/" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin/" + - "/opt/homebrew/bin/" + - "/opt/homebrew/sbin/" + - "/usr/local/bin/" + - "/System/Cryptexes/App/usr/bin/" + - "/usr/bin/" + - "/bin/" + - "/usr/sbin/" + - "/sbin/" + - "/opt/X11/bin/" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin/" + - "/usr/local/go/bin/" + - "/usr/local/src/last-main/bin/" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build/" + - "/opt/podman/bin/" + - "/Applications/iTerm.app/Contents/Resources/utilities/" + - "/Users/coissac/.orbstack/bin/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib/" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/" + - "/opt/homebrew/lib/" + - "/opt/homebrew/" + found: "/usr/local/lib/libomp.dylib" + search_context: + ENV{PATH}: + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Applications/quarto/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/opt/homebrew/bin" + - "/opt/homebrew/sbin" + - "/usr/local/bin" + - "/System/Cryptexes/App/usr/bin" + - "/usr/bin" + - "/bin" + - "/usr/sbin" + - "/sbin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin" + - "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin" + - "/opt/X11/bin" + - "/usr/local/dorado/dorado-0.9.5-osx-arm64/bin" + - "/usr/local/go/bin" + - "/usr/local/src/last-main/bin" + - "/Users/coissac/travail/__MOI__/GO/obitools4/build" + - "/opt/podman/bin" + - "/Applications/quarto/bin" + - "/opt/homebrew/lib/ruby/gems/3.4.0/bin" + - "/opt/homebrew/opt/ruby/bin" + - "/Users/coissac/go/bin" + - "/Users/coissac/.modular/pkg/packages.modular.com_mojo/bin" + - "/Library/Frameworks/Python.framework/Versions/3.12/bin" + - "/Applications/iTerm.app/Contents/Resources/utilities" + - "/Users/coissac/.orbstack/bin" + - "/Users/coissac/.vscode-oss/extensions/ms-python.debugpy-2025.6.0-darwin-arm64/bundled/scripts/noConfigScripts" + - "/Users/coissac/.orbstack/bin" + CMAKE_INSTALL_PREFIX: "/usr/local" + CMAKE_SYSTEM_PREFIX_PATH: + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr" + - "/opt/homebrew" + - "/usr/local" + - "/usr" + - "/" + - "/opt/homebrew" + - "/usr/local" + - "/usr/X11R6" + - "/usr/pkg" + - "/opt" + - "/sw" + - "/opt/local" + CMAKE_SYSTEM_LIBRARY_PATH: + - "/usr/lib/X11" + CMAKE_SYSTEM_FRAMEWORK_PATH: + - "~/Library/Frameworks" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/Library/Frameworks" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/Network/Library/Frameworks" + - "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks" + - "/Library/Developer/CommandLineTools/Library/Frameworks" + - "/Library/Developer/CommandLineTools/Library/Frameworks" + - "/Library/Frameworks" + - "/Network/Library/Frameworks" + - "/System/Library/Frameworks" + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:353 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:558 (_OPENMP_GET_FLAGS)" + - "CMakeLists.txt:108 (find_package)" + description: "Trying C OpenMP compiler with '/usr/local/lib/libomp.dylib'" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-aueTrG" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-aueTrG" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "OpenMP_COMPILE_RESULT_C_Xclang fopenmp" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-aueTrG' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_01b47/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_01b47.dir/build.make CMakeFiles/cmTC_01b47.dir/build + Building C object CMakeFiles/cmTC_01b47.dir/OpenMPTryFlag.c.o + /usr/bin/cc -arch arm64 -Xclang -fopenmp -MD -MT CMakeFiles/cmTC_01b47.dir/OpenMPTryFlag.c.o -MF CMakeFiles/cmTC_01b47.dir/OpenMPTryFlag.c.o.d -o CMakeFiles/cmTC_01b47.dir/OpenMPTryFlag.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-aueTrG/OpenMPTryFlag.c + Linking C executable cmTC_01b47 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_01b47.dir/link.txt --verbose=1 + /usr/bin/cc -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_01b47.dir/OpenMPTryFlag.c.o -o cmTC_01b47 /usr/local/lib/libomp.dylib + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:492 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/FindOpenMP.cmake:632 (_OPENMP_GET_SPEC_DATE)" + - "CMakeLists.txt:108 (find_package)" + description: "Detecting C OpenMP version" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-N6DBCp" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-N6DBCp" + cmakeVariables: + CMAKE_C_FLAGS: "" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "OpenMP_SPECTEST_C_" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-N6DBCp' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_62734/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_62734.dir/build.make CMakeFiles/cmTC_62734.dir/build + Building C object CMakeFiles/cmTC_62734.dir/OpenMPCheckVersion.c.o + /usr/bin/cc -Xclang -fopenmp -arch arm64 -MD -MT CMakeFiles/cmTC_62734.dir/OpenMPCheckVersion.c.o -MF CMakeFiles/cmTC_62734.dir/OpenMPCheckVersion.c.o.d -o CMakeFiles/cmTC_62734.dir/OpenMPCheckVersion.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-N6DBCp/OpenMPCheckVersion.c + Linking C executable cmTC_62734 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_62734.dir/link.txt --verbose=1 + /usr/bin/cc -Xclang -fopenmp -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_62734.dir/OpenMPCheckVersion.c.o -o cmTC_62734 + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:104 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/CheckCSourceCompiles.cmake:103 (cmake_check_source_compiles)" + - "cmake/Modules/FindCFlags.cmake:17 (check_c_source_compiles)" + - "cmake/Modules/FindSIMD32.cmake:53 (FindCFlags)" + - "CMakeLists.txt:120 (find_package)" + checks: + - "Performing Test DETECT_SIMD32_C_FLAGS" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-5QEy5J" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-5QEy5J" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "DETECT_SIMD32_C_FLAGS" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-5QEy5J' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_25091/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_25091.dir/build.make CMakeFiles/cmTC_25091.dir/build + Building C object CMakeFiles/cmTC_25091.dir/src.c.o + /usr/bin/cc -DDETECT_SIMD32_C_FLAGS -Xclang -fopenmp -mfpu=neon-vfpv4 -mcpu=cortex-a7 -arch arm64 -MD -MT CMakeFiles/cmTC_25091.dir/src.c.o -MF CMakeFiles/cmTC_25091.dir/src.c.o.d -o CMakeFiles/cmTC_25091.dir/src.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-5QEy5J/src.c + clang: error: unsupported argument 'cortex-a7' to option '-mcpu=' + make[2]: *** [CMakeFiles/cmTC_25091.dir/src.c.o] Error 1 + make[1]: *** [cmTC_25091/fast] Error 2 + + exitCode: 2 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:104 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/CheckCSourceCompiles.cmake:103 (cmake_check_source_compiles)" + - "cmake/Modules/FindCFlags.cmake:17 (check_c_source_compiles)" + - "cmake/Modules/FindSIMD32.cmake:53 (FindCFlags)" + - "CMakeLists.txt:120 (find_package)" + checks: + - "Performing Test DETECT_SIMD32_C_FLAGS" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-VSksUx" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-VSksUx" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "DETECT_SIMD32_C_FLAGS" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-VSksUx' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_eaa99/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_eaa99.dir/build.make CMakeFiles/cmTC_eaa99.dir/build + Building C object CMakeFiles/cmTC_eaa99.dir/src.c.o + /usr/bin/cc -DDETECT_SIMD32_C_FLAGS -Xclang -fopenmp -mfpu=neon -mfloat-abi=hard -arch arm64 -MD -MT CMakeFiles/cmTC_eaa99.dir/src.c.o -MF CMakeFiles/cmTC_eaa99.dir/src.c.o.d -o CMakeFiles/cmTC_eaa99.dir/src.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-VSksUx/src.c + clang: error: unsupported option '-mfpu=' for target 'arm64-apple-darwin24.6.0' + clang: error: unsupported option '-mfloat-abi=' for target 'arm64-apple-darwin24.6.0' + make[2]: *** [CMakeFiles/cmTC_eaa99.dir/src.c.o] Error 1 + make[1]: *** [cmTC_eaa99/fast] Error 2 + + exitCode: 2 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:104 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/CheckCSourceCompiles.cmake:103 (cmake_check_source_compiles)" + - "cmake/Modules/FindCFlags.cmake:17 (check_c_source_compiles)" + - "cmake/Modules/FindSIMD32.cmake:53 (FindCFlags)" + - "CMakeLists.txt:120 (find_package)" + checks: + - "Performing Test DETECT_SIMD32_C_FLAGS" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LP4rwA" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LP4rwA" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "DETECT_SIMD32_C_FLAGS" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LP4rwA' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_a6da3/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_a6da3.dir/build.make CMakeFiles/cmTC_a6da3.dir/build + Building C object CMakeFiles/cmTC_a6da3.dir/src.c.o + /usr/bin/cc -DDETECT_SIMD32_C_FLAGS -Xclang -fopenmp -mfpu=neon -mfloat-abi=softfp -arch arm64 -MD -MT CMakeFiles/cmTC_a6da3.dir/src.c.o -MF CMakeFiles/cmTC_a6da3.dir/src.c.o.d -o CMakeFiles/cmTC_a6da3.dir/src.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LP4rwA/src.c + clang: error: unsupported option '-mfpu=' for target 'arm64-apple-darwin24.6.0' + clang: error: unsupported option '-mfloat-abi=' for target 'arm64-apple-darwin24.6.0' + make[2]: *** [CMakeFiles/cmTC_a6da3.dir/src.c.o] Error 1 + make[1]: *** [cmTC_a6da3/fast] Error 2 + + exitCode: 2 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/Internal/CheckSourceCompiles.cmake:104 (try_compile)" + - "/opt/homebrew/share/cmake/Modules/CheckCSourceCompiles.cmake:103 (cmake_check_source_compiles)" + - "cmake/Modules/FindCFlags.cmake:17 (check_c_source_compiles)" + - "cmake/Modules/FindSIMD32.cmake:53 (FindCFlags)" + - "CMakeLists.txt:120 (find_package)" + checks: + - "Performing Test DETECT_SIMD32_C_FLAGS" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mhwrNW" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mhwrNW" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "DETECT_SIMD32_C_FLAGS" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mhwrNW' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_15a24/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_15a24.dir/build.make CMakeFiles/cmTC_15a24.dir/build + Building C object CMakeFiles/cmTC_15a24.dir/src.c.o + /usr/bin/cc -DDETECT_SIMD32_C_FLAGS -Xclang -fopenmp -mfpu=neon -mfloat-abi=soft -arch arm64 -MD -MT CMakeFiles/cmTC_15a24.dir/src.c.o -MF CMakeFiles/cmTC_15a24.dir/src.c.o.d -o CMakeFiles/cmTC_15a24.dir/src.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mhwrNW/src.c + clang: error: unsupported option '-mfpu=' for target 'arm64-apple-darwin24.6.0' + clang: error: unsupported option '-mfloat-abi=' for target 'arm64-apple-darwin24.6.0' + make[2]: *** [CMakeFiles/cmTC_15a24.dir/src.c.o] Error 1 + make[1]: *** [cmTC_15a24/fast] Error 2 + + exitCode: 2 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CheckFunctionExists.cmake:167 (try_compile)" + - "CMakeLists.txt:145 (check_function_exists)" + checks: + - "Looking for lrint" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "HAVE_LRINT" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_e77ec/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_e77ec.dir/build.make CMakeFiles/cmTC_e77ec.dir/build + Building C object CMakeFiles/cmTC_e77ec.dir/CheckFunctionExists.c.o + /usr/bin/cc -Xclang -fopenmp -DCHECK_FUNCTION_EXISTS=lrint -arch arm64 -MD -MT CMakeFiles/cmTC_e77ec.dir/CheckFunctionExists.c.o -MF CMakeFiles/cmTC_e77ec.dir/CheckFunctionExists.c.o.d -o CMakeFiles/cmTC_e77ec.dir/CheckFunctionExists.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv/CheckFunctionExists.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv/CheckFunctionExists.c:7:3: warning: incompatible redeclaration of library function 'lrint' [-Wincompatible-library-redeclaration] + 7 | CHECK_FUNCTION_EXISTS(void); + | ^ + :1:31: note: expanded from macro 'CHECK_FUNCTION_EXISTS' + 1 | #define CHECK_FUNCTION_EXISTS lrint + | ^ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-mHyUlv/CheckFunctionExists.c:7:3: note: 'lrint' is a builtin with type 'long (double)' + :1:31: note: expanded from macro 'CHECK_FUNCTION_EXISTS' + 1 | #define CHECK_FUNCTION_EXISTS lrint + | ^ + 1 warning generated. + Linking C executable cmTC_e77ec + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e77ec.dir/link.txt --verbose=1 + /usr/bin/cc -Xclang -fopenmp -DCHECK_FUNCTION_EXISTS=lrint -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_e77ec.dir/CheckFunctionExists.c.o -o cmTC_e77ec -lm + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CheckIncludeFiles.cmake:195 (try_compile)" + - "CMakeLists.txt:146 (check_include_files)" + checks: + - "Looking for include file fenv.h" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-Z1JInO" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-Z1JInO" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "HAVE_FENV_H" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-Z1JInO' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_0649a/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_0649a.dir/build.make CMakeFiles/cmTC_0649a.dir/build + Building C object CMakeFiles/cmTC_0649a.dir/HAVE_FENV_H.c.o + /usr/bin/cc -Xclang -fopenmp -arch arm64 -MD -MT CMakeFiles/cmTC_0649a.dir/HAVE_FENV_H.c.o -MF CMakeFiles/cmTC_0649a.dir/HAVE_FENV_H.c.o.d -o CMakeFiles/cmTC_0649a.dir/HAVE_FENV_H.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-Z1JInO/HAVE_FENV_H.c + Linking C executable cmTC_0649a + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0649a.dir/link.txt --verbose=1 + /usr/bin/cc -Xclang -fopenmp -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_0649a.dir/HAVE_FENV_H.c.o -o cmTC_0649a + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CheckIncludeFiles.cmake:195 (try_compile)" + - "CMakeLists.txt:147 (check_include_files)" + checks: + - "Looking for include file stdbool.h" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-IX009J" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-IX009J" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "HAVE_STDBOOL_H" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-IX009J' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_7b624/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_7b624.dir/build.make CMakeFiles/cmTC_7b624.dir/build + Building C object CMakeFiles/cmTC_7b624.dir/HAVE_STDBOOL_H.c.o + /usr/bin/cc -Xclang -fopenmp -arch arm64 -MD -MT CMakeFiles/cmTC_7b624.dir/HAVE_STDBOOL_H.c.o -MF CMakeFiles/cmTC_7b624.dir/HAVE_STDBOOL_H.c.o.d -o CMakeFiles/cmTC_7b624.dir/HAVE_STDBOOL_H.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-IX009J/HAVE_STDBOOL_H.c + Linking C executable cmTC_7b624 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_7b624.dir/link.txt --verbose=1 + /usr/bin/cc -Xclang -fopenmp -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_7b624.dir/HAVE_STDBOOL_H.c.o -o cmTC_7b624 + + exitCode: 0 + - + kind: "try_compile-v1" + backtrace: + - "/opt/homebrew/share/cmake/Modules/CheckIncludeFiles.cmake:195 (try_compile)" + - "CMakeLists.txt:148 (check_include_files)" + checks: + - "Looking for include file stdint.h" + directories: + source: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LjxYpe" + binary: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LjxYpe" + cmakeVariables: + CMAKE_C_FLAGS: " -Xclang -fopenmp" + CMAKE_EXE_LINKER_FLAGS: "" + CMAKE_MODULE_PATH: "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules" + CMAKE_OSX_ARCHITECTURES: "" + CMAKE_OSX_DEPLOYMENT_TARGET: "" + CMAKE_OSX_SYSROOT: "" + CMAKE_WARN_DEPRECATED: "FALSE" + buildResult: + variable: "HAVE_STDINT_H" + cached: true + stdout: | + Change Dir: '/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LjxYpe' + + Run Build Command(s): /opt/homebrew/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_df389/fast + /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_df389.dir/build.make CMakeFiles/cmTC_df389.dir/build + Building C object CMakeFiles/cmTC_df389.dir/HAVE_STDINT_H.c.o + /usr/bin/cc -Xclang -fopenmp -arch arm64 -MD -MT CMakeFiles/cmTC_df389.dir/HAVE_STDINT_H.c.o -MF CMakeFiles/cmTC_df389.dir/HAVE_STDINT_H.c.o.d -o CMakeFiles/cmTC_df389.dir/HAVE_STDINT_H.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeScratch/TryCompile-LjxYpe/HAVE_STDINT_H.c + Linking C executable cmTC_df389 + /opt/homebrew/bin/cmake -E cmake_link_script CMakeFiles/cmTC_df389.dir/link.txt --verbose=1 + /usr/bin/cc -Xclang -fopenmp -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_df389.dir/HAVE_STDINT_H.c.o -o cmTC_df389 + + exitCode: 0 +... diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeDirectoryInformation.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..8c6d8a6f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeRuleHashes.txt b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeRuleHashes.txt new file mode 100644 index 00000000..9065731f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/CMakeRuleHashes.txt @@ -0,0 +1,8 @@ +# Hashes of file build rules. +d7b1964f32a49f160d3b47e3400bfbde CMakeFiles/check +a9a9b3979a585516cabd3e2ad3b64cad CMakeFiles/deinstall +4fd5f9140757785940552a82a144ba9a CMakeFiles/distclean +c596c171331d739b68317a3a2e7de067 tests/CMakeFiles/test-vectors +aecfae6d612e1c7a9f34102b819c5964 tests/ref-192000.s32 +c7d8bcaf11771ac1584de6ba47359e7b tests/ref-44100.s32 +2a95587b080e79b94bc94e9cda8b230a tests/ref-65537.s32 diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/FindOpenMP/ompver_C.bin b/C/src/soxr-0.1.3/Release/CMakeFiles/FindOpenMP/ompver_C.bin new file mode 100755 index 0000000000000000000000000000000000000000..0172993bfc574a89c90fb30d7f532bcd1ca4f901 GIT binary patch literal 33464 zcmeI5Uu@G=6vuD7jtn>Ka7IO0RxvS?;5N!YLyZ3B7%=~=4eX&p%w=nTlj_^lkq@YG9@NH=!imMqVk{#hRlF5Mn@)o&;9+{{#FP+@Iv%^ zlJmRwocp`yp7ZJ5Z;$7z>8Zc#l=3NvA37fz3MjQpg)mcU0dy@?>uATCt_@x5BI2Db zX7g;<6_&)=jTg1@7Lhz)%^_s&R^GcV7`(>MBV< z6-skVw9e-8{n?VMGG5M&2S!H3_QtDm;}zGnj%U)@a)Ood3T`~%AtLs*MC*L|g=9LR zlj(sBUaX9Fz>ODkgNW_TuQIlr`-X|Ls-w3)ZYL`Ms>lnr$e3HC#PG&x#}3I)_HDwj z%(XYcwqVP)JD?vFoI7;^V;k&RXcX!dZ_Qr6cYdyLb>27Qr4Ur^MQc7g+&Y--Z%u3+ zOu!bo3o3a$_S?q`KKcBi!|$9wIvqZ>Ivj>C1a)c(;_?U0Tyjy>djg9wnEJ$qG^0L= zBlp}Za_)mrS#waW!Jm<@oD1?YYQ)tMyRZZ zcH$m6Ns6070wnN1Byf2|P0nod9hvD=qcy6q?p&=p{^>;17*On0YSAb@Io|gUN5`x5={Bs@`>nr}zv*;$&+5p^$dH|WGJ1caFK2HIw}so5E`3^1%I9UFOd#G- zzGw2ivt)$I|6~!%Jj)OHX4WA}y@_P}f$}P6BtQZrKmsH{0wh2JBtQZrKmsH{0wh2J zBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZr zKmsIi!xJdn@EI~e5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH* zAOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AOR8}0TLhq5+DH*AORBi zj}r)?z9>{$u1n8dZ(DC~!(8blUKBI8(8b*drsaKiPjs)c^nh literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/InstallScripts.json b/C/src/soxr-0.1.3/Release/CMakeFiles/InstallScripts.json new file mode 100644 index 00000000..3f3e62dd --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/InstallScripts.json @@ -0,0 +1,10 @@ +{ + "InstallScripts" : + [ + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/cmake_install.cmake", + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/cmake_install.cmake", + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/cmake_install.cmake", + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/cmake_install.cmake" + ], + "Parallel" : false +} diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile.cmake new file mode 100644 index 00000000..7f86a083 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile.cmake @@ -0,0 +1,98 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/CMakeLists.txt" + "CMakeFiles/4.1.1/CMakeCCompiler.cmake" + "CMakeFiles/4.1.1/CMakeSystem.cmake" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules/FindCFlags.cmake" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules/FindSIMD32.cmake" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules/FindSIMD64.cmake" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules/SetSystemProcessor.cmake" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/deinstall.cmake.in" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/CMakeLists.txt" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/soxr-config.h.in" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/CMakeLists.txt" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.pc.in" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.pc.in" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt" + "/opt/homebrew/share/cmake/Modules/CMakeCInformation.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeCommonLanguageInclude.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeDependentOption.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeGenericSystem.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeInitializeConfigs.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeLanguageInformation.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeSystemSpecificInformation.cmake" + "/opt/homebrew/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake" + "/opt/homebrew/share/cmake/Modules/CPack.cmake" + "/opt/homebrew/share/cmake/Modules/CPackComponent.cmake" + "/opt/homebrew/share/cmake/Modules/CheckCSourceCompiles.cmake" + "/opt/homebrew/share/cmake/Modules/CheckFunctionExists.cmake" + "/opt/homebrew/share/cmake/Modules/CheckIncludeFile.cmake" + "/opt/homebrew/share/cmake/Modules/CheckIncludeFileCXX.cmake" + "/opt/homebrew/share/cmake/Modules/CheckIncludeFiles.cmake" + "/opt/homebrew/share/cmake/Modules/CheckLibraryExists.cmake" + "/opt/homebrew/share/cmake/Modules/CheckTypeSize.cmake" + "/opt/homebrew/share/cmake/Modules/Compiler/AppleClang-C.cmake" + "/opt/homebrew/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/opt/homebrew/share/cmake/Modules/Compiler/Clang.cmake" + "/opt/homebrew/share/cmake/Modules/Compiler/GNU.cmake" + "/opt/homebrew/share/cmake/Modules/FindPackageHandleStandardArgs.cmake" + "/opt/homebrew/share/cmake/Modules/FindPackageMessage.cmake" + "/opt/homebrew/share/cmake/Modules/Internal/CMakeCLinkerInformation.cmake" + "/opt/homebrew/share/cmake/Modules/Internal/CMakeCommonLinkerInformation.cmake" + "/opt/homebrew/share/cmake/Modules/Internal/CheckSourceCompiles.cmake" + "/opt/homebrew/share/cmake/Modules/Linker/AppleClang-C.cmake" + "/opt/homebrew/share/cmake/Modules/Linker/AppleClang.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Apple-AppleClang-C.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Apple-Clang-C.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Apple-Clang.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Darwin-Initialize.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Darwin.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Linker/Apple-AppleClang-C.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/Linker/Apple-AppleClang.cmake" + "/opt/homebrew/share/cmake/Modules/Platform/UnixPaths.cmake" + "/opt/homebrew/share/cmake/Modules/TestBigEndian.cmake" + "/opt/homebrew/share/cmake/Templates/CPackConfig.cmake.in" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "soxr-config.h" + "deinstall.cmake" + "CPackConfig.cmake" + "CPackSourceConfig.cmake" + "CMakeFiles/CMakeDirectoryInformation.cmake" + "src/soxr.pc" + "src/soxr-lsr.pc" + "src/CMakeFiles/CMakeDirectoryInformation.cmake" + "tests/CMakeFiles/CMakeDirectoryInformation.cmake" + "examples/CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/check.dir/DependInfo.cmake" + "CMakeFiles/distclean.dir/DependInfo.cmake" + "CMakeFiles/deinstall.dir/DependInfo.cmake" + "src/CMakeFiles/soxr.dir/DependInfo.cmake" + "src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake" + "tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake" + "tests/CMakeFiles/throughput.dir/DependInfo.cmake" + "tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake" + "tests/CMakeFiles/vector-gen.dir/DependInfo.cmake" + "tests/CMakeFiles/test-vectors.dir/DependInfo.cmake" + "examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake" + "examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake" + ) diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile2 b/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile2 new file mode 100644 index 00000000..0916f461 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/Makefile2 @@ -0,0 +1,561 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: src/all +all: tests/all +all: examples/all +.PHONY : all + +# The main recursive "codegen" target. +codegen: src/codegen +codegen: tests/codegen +codegen: examples/codegen +.PHONY : codegen + +# The main recursive "preinstall" target. +preinstall: src/preinstall +preinstall: tests/preinstall +preinstall: examples/preinstall +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/check.dir/clean +clean: CMakeFiles/distclean.dir/clean +clean: CMakeFiles/deinstall.dir/clean +clean: src/clean +clean: tests/clean +clean: examples/clean +.PHONY : clean + +#============================================================================= +# Directory level rules for directory examples + +# Recursive "all" directory target. +examples/all: examples/CMakeFiles/3-options-input-fn.dir/all +examples/all: examples/CMakeFiles/1a-lsr.dir/all +.PHONY : examples/all + +# Recursive "codegen" directory target. +examples/codegen: examples/CMakeFiles/3-options-input-fn.dir/codegen +examples/codegen: examples/CMakeFiles/1a-lsr.dir/codegen +.PHONY : examples/codegen + +# Recursive "preinstall" directory target. +examples/preinstall: +.PHONY : examples/preinstall + +# Recursive "clean" directory target. +examples/clean: examples/CMakeFiles/3-options-input-fn.dir/clean +examples/clean: examples/CMakeFiles/1a-lsr.dir/clean +.PHONY : examples/clean + +#============================================================================= +# Directory level rules for directory src + +# Recursive "all" directory target. +src/all: src/CMakeFiles/soxr.dir/all +src/all: src/CMakeFiles/soxr-lsr.dir/all +.PHONY : src/all + +# Recursive "codegen" directory target. +src/codegen: src/CMakeFiles/soxr.dir/codegen +src/codegen: src/CMakeFiles/soxr-lsr.dir/codegen +.PHONY : src/codegen + +# Recursive "preinstall" directory target. +src/preinstall: +.PHONY : src/preinstall + +# Recursive "clean" directory target. +src/clean: src/CMakeFiles/soxr.dir/clean +src/clean: src/CMakeFiles/soxr-lsr.dir/clean +.PHONY : src/clean + +#============================================================================= +# Directory level rules for directory tests + +# Recursive "all" directory target. +tests/all: tests/CMakeFiles/1-delay-clear.dir/all +tests/all: tests/CMakeFiles/throughput.dir/all +tests/all: tests/CMakeFiles/vector-cmp.dir/all +tests/all: tests/CMakeFiles/vector-gen.dir/all +tests/all: tests/CMakeFiles/test-vectors.dir/all +.PHONY : tests/all + +# Recursive "codegen" directory target. +tests/codegen: tests/CMakeFiles/1-delay-clear.dir/codegen +tests/codegen: tests/CMakeFiles/throughput.dir/codegen +tests/codegen: tests/CMakeFiles/vector-cmp.dir/codegen +tests/codegen: tests/CMakeFiles/vector-gen.dir/codegen +tests/codegen: tests/CMakeFiles/test-vectors.dir/codegen +.PHONY : tests/codegen + +# Recursive "preinstall" directory target. +tests/preinstall: +.PHONY : tests/preinstall + +# Recursive "clean" directory target. +tests/clean: tests/CMakeFiles/1-delay-clear.dir/clean +tests/clean: tests/CMakeFiles/throughput.dir/clean +tests/clean: tests/CMakeFiles/vector-cmp.dir/clean +tests/clean: tests/CMakeFiles/vector-gen.dir/clean +tests/clean: tests/CMakeFiles/test-vectors.dir/clean +.PHONY : tests/clean + +#============================================================================= +# Target rules for target CMakeFiles/check.dir + +# All Build rule for target. +CMakeFiles/check.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/check.dir/build.make CMakeFiles/check.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/check.dir/build.make CMakeFiles/check.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Built target check" +.PHONY : CMakeFiles/check.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/check.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/check.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : CMakeFiles/check.dir/rule + +# Convenience name for target. +check: CMakeFiles/check.dir/rule +.PHONY : check + +# codegen rule for target. +CMakeFiles/check.dir/codegen: + $(MAKE) $(MAKESILENT) -f CMakeFiles/check.dir/build.make CMakeFiles/check.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Finished codegen for target check" +.PHONY : CMakeFiles/check.dir/codegen + +# clean rule for target. +CMakeFiles/check.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/check.dir/build.make CMakeFiles/check.dir/clean +.PHONY : CMakeFiles/check.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/distclean.dir + +# All Build rule for target. +CMakeFiles/distclean.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/distclean.dir/build.make CMakeFiles/distclean.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/distclean.dir/build.make CMakeFiles/distclean.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Built target distclean" +.PHONY : CMakeFiles/distclean.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/distclean.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/distclean.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : CMakeFiles/distclean.dir/rule + +# Convenience name for target. +distclean: CMakeFiles/distclean.dir/rule +.PHONY : distclean + +# codegen rule for target. +CMakeFiles/distclean.dir/codegen: + $(MAKE) $(MAKESILENT) -f CMakeFiles/distclean.dir/build.make CMakeFiles/distclean.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Finished codegen for target distclean" +.PHONY : CMakeFiles/distclean.dir/codegen + +# clean rule for target. +CMakeFiles/distclean.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/distclean.dir/build.make CMakeFiles/distclean.dir/clean +.PHONY : CMakeFiles/distclean.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/deinstall.dir + +# All Build rule for target. +CMakeFiles/deinstall.dir/all: + $(MAKE) $(MAKESILENT) -f CMakeFiles/deinstall.dir/build.make CMakeFiles/deinstall.dir/depend + $(MAKE) $(MAKESILENT) -f CMakeFiles/deinstall.dir/build.make CMakeFiles/deinstall.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Built target deinstall" +.PHONY : CMakeFiles/deinstall.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/deinstall.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/deinstall.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : CMakeFiles/deinstall.dir/rule + +# Convenience name for target. +deinstall: CMakeFiles/deinstall.dir/rule +.PHONY : deinstall + +# codegen rule for target. +CMakeFiles/deinstall.dir/codegen: + $(MAKE) $(MAKESILENT) -f CMakeFiles/deinstall.dir/build.make CMakeFiles/deinstall.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num= "Finished codegen for target deinstall" +.PHONY : CMakeFiles/deinstall.dir/codegen + +# clean rule for target. +CMakeFiles/deinstall.dir/clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/deinstall.dir/build.make CMakeFiles/deinstall.dir/clean +.PHONY : CMakeFiles/deinstall.dir/clean + +#============================================================================= +# Target rules for target src/CMakeFiles/soxr.dir + +# All Build rule for target. +src/CMakeFiles/soxr.dir/all: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/depend + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=7,8,9,10,11,12,13,14,15,16,17 "Built target soxr" +.PHONY : src/CMakeFiles/soxr.dir/all + +# Build rule for subdir invocation for target. +src/CMakeFiles/soxr.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 11 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/soxr.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : src/CMakeFiles/soxr.dir/rule + +# Convenience name for target. +soxr: src/CMakeFiles/soxr.dir/rule +.PHONY : soxr + +# codegen rule for target. +src/CMakeFiles/soxr.dir/codegen: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=7,8,9,10,11,12,13,14,15,16,17 "Finished codegen for target soxr" +.PHONY : src/CMakeFiles/soxr.dir/codegen + +# clean rule for target. +src/CMakeFiles/soxr.dir/clean: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/clean +.PHONY : src/CMakeFiles/soxr.dir/clean + +#============================================================================= +# Target rules for target src/CMakeFiles/soxr-lsr.dir + +# All Build rule for target. +src/CMakeFiles/soxr-lsr.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/depend + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=18,19 "Built target soxr-lsr" +.PHONY : src/CMakeFiles/soxr-lsr.dir/all + +# Build rule for subdir invocation for target. +src/CMakeFiles/soxr-lsr.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/soxr-lsr.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : src/CMakeFiles/soxr-lsr.dir/rule + +# Convenience name for target. +soxr-lsr: src/CMakeFiles/soxr-lsr.dir/rule +.PHONY : soxr-lsr + +# codegen rule for target. +src/CMakeFiles/soxr-lsr.dir/codegen: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=18,19 "Finished codegen for target soxr-lsr" +.PHONY : src/CMakeFiles/soxr-lsr.dir/codegen + +# clean rule for target. +src/CMakeFiles/soxr-lsr.dir/clean: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/clean +.PHONY : src/CMakeFiles/soxr-lsr.dir/clean + +#============================================================================= +# Target rules for target tests/CMakeFiles/1-delay-clear.dir + +# All Build rule for target. +tests/CMakeFiles/1-delay-clear.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/depend + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=1,2 "Built target 1-delay-clear" +.PHONY : tests/CMakeFiles/1-delay-clear.dir/all + +# Build rule for subdir invocation for target. +tests/CMakeFiles/1-delay-clear.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/1-delay-clear.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : tests/CMakeFiles/1-delay-clear.dir/rule + +# Convenience name for target. +1-delay-clear: tests/CMakeFiles/1-delay-clear.dir/rule +.PHONY : 1-delay-clear + +# codegen rule for target. +tests/CMakeFiles/1-delay-clear.dir/codegen: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=1,2 "Finished codegen for target 1-delay-clear" +.PHONY : tests/CMakeFiles/1-delay-clear.dir/codegen + +# clean rule for target. +tests/CMakeFiles/1-delay-clear.dir/clean: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/clean +.PHONY : tests/CMakeFiles/1-delay-clear.dir/clean + +#============================================================================= +# Target rules for target tests/CMakeFiles/throughput.dir + +# All Build rule for target. +tests/CMakeFiles/throughput.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/depend + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=23,24 "Built target throughput" +.PHONY : tests/CMakeFiles/throughput.dir/all + +# Build rule for subdir invocation for target. +tests/CMakeFiles/throughput.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/throughput.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : tests/CMakeFiles/throughput.dir/rule + +# Convenience name for target. +throughput: tests/CMakeFiles/throughput.dir/rule +.PHONY : throughput + +# codegen rule for target. +tests/CMakeFiles/throughput.dir/codegen: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=23,24 "Finished codegen for target throughput" +.PHONY : tests/CMakeFiles/throughput.dir/codegen + +# clean rule for target. +tests/CMakeFiles/throughput.dir/clean: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/clean +.PHONY : tests/CMakeFiles/throughput.dir/clean + +#============================================================================= +# Target rules for target tests/CMakeFiles/vector-cmp.dir + +# All Build rule for target. +tests/CMakeFiles/vector-cmp.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/depend + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=25,26 "Built target vector-cmp" +.PHONY : tests/CMakeFiles/vector-cmp.dir/all + +# Build rule for subdir invocation for target. +tests/CMakeFiles/vector-cmp.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/vector-cmp.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : tests/CMakeFiles/vector-cmp.dir/rule + +# Convenience name for target. +vector-cmp: tests/CMakeFiles/vector-cmp.dir/rule +.PHONY : vector-cmp + +# codegen rule for target. +tests/CMakeFiles/vector-cmp.dir/codegen: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=25,26 "Finished codegen for target vector-cmp" +.PHONY : tests/CMakeFiles/vector-cmp.dir/codegen + +# clean rule for target. +tests/CMakeFiles/vector-cmp.dir/clean: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/clean +.PHONY : tests/CMakeFiles/vector-cmp.dir/clean + +#============================================================================= +# Target rules for target tests/CMakeFiles/vector-gen.dir + +# All Build rule for target. +tests/CMakeFiles/vector-gen.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/depend + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=27,28 "Built target vector-gen" +.PHONY : tests/CMakeFiles/vector-gen.dir/all + +# Build rule for subdir invocation for target. +tests/CMakeFiles/vector-gen.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/vector-gen.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : tests/CMakeFiles/vector-gen.dir/rule + +# Convenience name for target. +vector-gen: tests/CMakeFiles/vector-gen.dir/rule +.PHONY : vector-gen + +# codegen rule for target. +tests/CMakeFiles/vector-gen.dir/codegen: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=27,28 "Finished codegen for target vector-gen" +.PHONY : tests/CMakeFiles/vector-gen.dir/codegen + +# clean rule for target. +tests/CMakeFiles/vector-gen.dir/clean: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/clean +.PHONY : tests/CMakeFiles/vector-gen.dir/clean + +#============================================================================= +# Target rules for target tests/CMakeFiles/test-vectors.dir + +# All Build rule for target. +tests/CMakeFiles/test-vectors.dir/all: tests/CMakeFiles/vector-gen.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/depend + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=20,21,22 "Built target test-vectors" +.PHONY : tests/CMakeFiles/test-vectors.dir/all + +# Build rule for subdir invocation for target. +tests/CMakeFiles/test-vectors.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 16 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/test-vectors.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : tests/CMakeFiles/test-vectors.dir/rule + +# Convenience name for target. +test-vectors: tests/CMakeFiles/test-vectors.dir/rule +.PHONY : test-vectors + +# codegen rule for target. +tests/CMakeFiles/test-vectors.dir/codegen: tests/CMakeFiles/vector-gen.dir/all + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=20,21,22 "Finished codegen for target test-vectors" +.PHONY : tests/CMakeFiles/test-vectors.dir/codegen + +# clean rule for target. +tests/CMakeFiles/test-vectors.dir/clean: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/clean +.PHONY : tests/CMakeFiles/test-vectors.dir/clean + +#============================================================================= +# Target rules for target examples/CMakeFiles/3-options-input-fn.dir + +# All Build rule for target. +examples/CMakeFiles/3-options-input-fn.dir/all: src/CMakeFiles/soxr.dir/all + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/depend + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=5,6 "Built target 3-options-input-fn" +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/all + +# Build rule for subdir invocation for target. +examples/CMakeFiles/3-options-input-fn.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 13 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/CMakeFiles/3-options-input-fn.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/rule + +# Convenience name for target. +3-options-input-fn: examples/CMakeFiles/3-options-input-fn.dir/rule +.PHONY : 3-options-input-fn + +# codegen rule for target. +examples/CMakeFiles/3-options-input-fn.dir/codegen: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=5,6 "Finished codegen for target 3-options-input-fn" +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/codegen + +# clean rule for target. +examples/CMakeFiles/3-options-input-fn.dir/clean: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/clean +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/clean + +#============================================================================= +# Target rules for target examples/CMakeFiles/1a-lsr.dir + +# All Build rule for target. +examples/CMakeFiles/1a-lsr.dir/all: src/CMakeFiles/soxr.dir/all +examples/CMakeFiles/1a-lsr.dir/all: src/CMakeFiles/soxr-lsr.dir/all + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/depend + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=3,4 "Built target 1a-lsr" +.PHONY : examples/CMakeFiles/1a-lsr.dir/all + +# Build rule for subdir invocation for target. +examples/CMakeFiles/1a-lsr.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 15 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/CMakeFiles/1a-lsr.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : examples/CMakeFiles/1a-lsr.dir/rule + +# Convenience name for target. +1a-lsr: examples/CMakeFiles/1a-lsr.dir/rule +.PHONY : 1a-lsr + +# codegen rule for target. +examples/CMakeFiles/1a-lsr.dir/codegen: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/codegen + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=3,4 "Finished codegen for target 1a-lsr" +.PHONY : examples/CMakeFiles/1a-lsr.dir/codegen + +# clean rule for target. +examples/CMakeFiles/1a-lsr.dir/clean: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/clean +.PHONY : examples/CMakeFiles/1a-lsr.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/TargetDirectories.txt b/C/src/soxr-0.1.3/Release/CMakeFiles/TargetDirectories.txt new file mode 100644 index 00000000..5a88f9dc --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,48 @@ +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/package.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/package_source.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/test.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/edit_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/rebuild_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/list_install_components.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/install.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/install/local.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/install/strip.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/package.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/package_source.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/test.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/edit_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/rebuild_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/list_install_components.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/install.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/install/local.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/install/strip.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/package.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/package_source.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/edit_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/rebuild_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/list_install_components.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/install.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/install/local.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/install/strip.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/package.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/package_source.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/test.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/edit_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/rebuild_cache.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/list_install_components.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/install.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/install/local.dir +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/install/strip.dir diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/DependInfo.cmake new file mode 100644 index 00000000..29b95a51 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/DependInfo.cmake @@ -0,0 +1,22 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/build.make b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/build.make new file mode 100644 index 00000000..eb057041 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/build.make @@ -0,0 +1,90 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Utility rule file for check. + +# Include any custom commands dependencies for this target. +include CMakeFiles/check.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/check.dir/progress.make + +CMakeFiles/check: + /opt/homebrew/bin/ctest + +CMakeFiles/check.dir/codegen: +.PHONY : CMakeFiles/check.dir/codegen + +check: CMakeFiles/check +check: CMakeFiles/check.dir/build.make +.PHONY : check + +# Rule to build all files generated by this target. +CMakeFiles/check.dir/build: check +.PHONY : CMakeFiles/check.dir/build + +CMakeFiles/check.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/check.dir/cmake_clean.cmake +.PHONY : CMakeFiles/check.dir/clean + +CMakeFiles/check.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : CMakeFiles/check.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/cmake_clean.cmake new file mode 100644 index 00000000..97eb2435 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/check" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/check.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.make new file mode 100644 index 00000000..12fa6bbb --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for check. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.ts new file mode 100644 index 00000000..2aa2de65 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for check. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/progress.make b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/progress.make new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/check.dir/progress.make @@ -0,0 +1 @@ + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/cmake.check_cache b/C/src/soxr-0.1.3/Release/CMakeFiles/cmake.check_cache new file mode 100644 index 00000000..3dccd731 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/DependInfo.cmake new file mode 100644 index 00000000..29b95a51 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/DependInfo.cmake @@ -0,0 +1,22 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/build.make b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/build.make new file mode 100644 index 00000000..64aa147f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/build.make @@ -0,0 +1,90 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Utility rule file for deinstall. + +# Include any custom commands dependencies for this target. +include CMakeFiles/deinstall.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/deinstall.dir/progress.make + +CMakeFiles/deinstall: + /opt/homebrew/bin/cmake -P /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/deinstall.cmake + +CMakeFiles/deinstall.dir/codegen: +.PHONY : CMakeFiles/deinstall.dir/codegen + +deinstall: CMakeFiles/deinstall +deinstall: CMakeFiles/deinstall.dir/build.make +.PHONY : deinstall + +# Rule to build all files generated by this target. +CMakeFiles/deinstall.dir/build: deinstall +.PHONY : CMakeFiles/deinstall.dir/build + +CMakeFiles/deinstall.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/deinstall.dir/cmake_clean.cmake +.PHONY : CMakeFiles/deinstall.dir/clean + +CMakeFiles/deinstall.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : CMakeFiles/deinstall.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/cmake_clean.cmake new file mode 100644 index 00000000..11f8a249 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/deinstall" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/deinstall.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.make new file mode 100644 index 00000000..7d39661b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for deinstall. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.ts new file mode 100644 index 00000000..8c45ccfa --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for deinstall. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/progress.make b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/progress.make new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/deinstall.dir/progress.make @@ -0,0 +1 @@ + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/DependInfo.cmake new file mode 100644 index 00000000..29b95a51 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/DependInfo.cmake @@ -0,0 +1,22 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/build.make b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/build.make new file mode 100644 index 00000000..0cb60048 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/build.make @@ -0,0 +1,90 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Utility rule file for distclean. + +# Include any custom commands dependencies for this target. +include CMakeFiles/distclean.dir/compiler_depend.make + +# Include the progress variables for this target. +include CMakeFiles/distclean.dir/progress.make + +CMakeFiles/distclean: + make clean && find . \! -path \*/Modules/\* \! -name cmp-test.cmake -a -name \*.cmake -o -name CMakeFiles -o -name Makefile -o -name CMakeCache.txt -o -name Testing -o -name cmake_install.cmake -o -name install_manifest.txt -o -path ./soxr-config.h -o -name config.h -o -name \*.pc -o -name \*.s32 | xargs rm -rf + +CMakeFiles/distclean.dir/codegen: +.PHONY : CMakeFiles/distclean.dir/codegen + +distclean: CMakeFiles/distclean +distclean: CMakeFiles/distclean.dir/build.make +.PHONY : distclean + +# Rule to build all files generated by this target. +CMakeFiles/distclean.dir/build: distclean +.PHONY : CMakeFiles/distclean.dir/build + +CMakeFiles/distclean.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/distclean.dir/cmake_clean.cmake +.PHONY : CMakeFiles/distclean.dir/clean + +CMakeFiles/distclean.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : CMakeFiles/distclean.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/cmake_clean.cmake new file mode 100644 index 00000000..a75abb20 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/cmake_clean.cmake @@ -0,0 +1,8 @@ +file(REMOVE_RECURSE + "CMakeFiles/distclean" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/distclean.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.make new file mode 100644 index 00000000..c91d7197 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for distclean. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.ts new file mode 100644 index 00000000..4d1c2da9 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for distclean. diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/progress.make b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/progress.make new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/distclean.dir/progress.make @@ -0,0 +1 @@ + diff --git a/C/src/soxr-0.1.3/Release/CMakeFiles/progress.marks b/C/src/soxr-0.1.3/Release/CMakeFiles/progress.marks new file mode 100644 index 00000000..9902f178 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CMakeFiles/progress.marks @@ -0,0 +1 @@ +28 diff --git a/C/src/soxr-0.1.3/Release/CPackConfig.cmake b/C/src/soxr-0.1.3/Release/CPackConfig.cmake new file mode 100644 index 00000000..10b3ae16 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CPackConfig.cmake @@ -0,0 +1,75 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BINARY_BUNDLE "OFF") +set(CPACK_BINARY_DEB "OFF") +set(CPACK_BINARY_DRAGNDROP "OFF") +set(CPACK_BINARY_FREEBSD "OFF") +set(CPACK_BINARY_IFW "OFF") +set(CPACK_BINARY_NSIS "OFF") +set(CPACK_BINARY_PRODUCTBUILD "OFF") +set(CPACK_BINARY_RPM "OFF") +set(CPACK_BINARY_STGZ "ON") +set(CPACK_BINARY_TBZ2 "OFF") +set(CPACK_BINARY_TGZ "ON") +set(CPACK_BINARY_TXZ "OFF") +set(CPACK_BUILD_SOURCE_DIRS "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "soxr built using CMake") +set(CPACK_GENERATOR "STGZ;TGZ") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALL_CMAKE_PROJECTS "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release;soxr;ALL;/") +set(CPACK_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +set(CPACK_MODULE_PATH "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules") +set(CPACK_NSIS_DISPLAY_NAME "soxr 0.1.3") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "soxr 0.1.3") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OBJDUMP_EXECUTABLE "/usr/bin/objdump") +set(CPACK_OUTPUT_CONFIG_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "soxr built using CMake") +set(CPACK_PACKAGE_FILE_NAME "soxr-0.1.3-Darwin") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "soxr 0.1.3") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "soxr 0.1.3") +set(CPACK_PACKAGE_NAME "soxr") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.3") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "3") +set(CPACK_RESOURCE_FILE_LICENSE "/opt/homebrew/share/cmake/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/opt/homebrew/share/cmake/Templates/CPack.GenericWelcome.txt") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TXZ") +set(CPACK_SOURCE_IGNORE_FILES "dist;/lsr-tests/;/Debug.*/;/Release.*/;\\.swp$;\\.git.*;/\\.git/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake") +set(CPACK_SYSTEM_NAME "Darwin") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Darwin") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake b/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake new file mode 100644 index 00000000..6f2c72c5 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake @@ -0,0 +1,82 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_BINARY_BUNDLE "OFF") +set(CPACK_BINARY_DEB "OFF") +set(CPACK_BINARY_DRAGNDROP "OFF") +set(CPACK_BINARY_FREEBSD "OFF") +set(CPACK_BINARY_IFW "OFF") +set(CPACK_BINARY_NSIS "OFF") +set(CPACK_BINARY_PRODUCTBUILD "OFF") +set(CPACK_BINARY_RPM "OFF") +set(CPACK_BINARY_STGZ "ON") +set(CPACK_BINARY_TBZ2 "OFF") +set(CPACK_BINARY_TGZ "ON") +set(CPACK_BINARY_TXZ "OFF") +set(CPACK_BUILD_SOURCE_DIRS "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") +set(CPACK_CMAKE_GENERATOR "Unix Makefiles") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "soxr built using CMake") +set(CPACK_GENERATOR "TXZ") +set(CPACK_IGNORE_FILES "dist;/lsr-tests/;/Debug.*/;/Release.*/;\\.swp$;\\.git.*;/\\.git/") +set(CPACK_INNOSETUP_ARCHITECTURE "x64") +set(CPACK_INSTALLED_DIRECTORIES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +set(CPACK_MODULE_PATH "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/cmake/Modules") +set(CPACK_NSIS_DISPLAY_NAME "soxr 0.1.3") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") +set(CPACK_NSIS_PACKAGE_NAME "soxr 0.1.3") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OBJDUMP_EXECUTABLE "/usr/bin/objdump") +set(CPACK_OUTPUT_CONFIG_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "soxr built using CMake") +set(CPACK_PACKAGE_FILE_NAME "soxr-0.1.3-Source") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "soxr 0.1.3") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "soxr 0.1.3") +set(CPACK_PACKAGE_NAME "soxr") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "0.1.3") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "3") +set(CPACK_RESOURCE_FILE_LICENSE "/opt/homebrew/share/cmake/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "/opt/homebrew/share/cmake/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "/opt/homebrew/share/cmake/Templates/CPack.GenericWelcome.txt") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_GENERATOR "TXZ") +set(CPACK_SOURCE_IGNORE_FILES "dist;/lsr-tests/;/Debug.*/;/Release.*/;\\.swp$;\\.git.*;/\\.git/") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "soxr-0.1.3-Source") +set(CPACK_SOURCE_TOPLEVEL_TAG "Darwin-Source") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "Darwin") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "Darwin-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/C/src/soxr-0.1.3/Release/CTestTestfile.cmake b/C/src/soxr-0.1.3/Release/CTestTestfile.cmake new file mode 100644 index 00000000..080a3df3 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/CTestTestfile.cmake @@ -0,0 +1,9 @@ +# CMake generated Testfile for +# Source directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 +# Build directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release +# +# This file includes the relevant testing commands required for +# testing this directory and lists subdirectories to be tested as well. +subdirs("src") +subdirs("tests") +subdirs("examples") diff --git a/C/src/soxr-0.1.3/Release/Makefile b/C/src/soxr-0.1.3/Release/Makefile new file mode 100644 index 00000000..1011469f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/Makefile @@ -0,0 +1,390 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..." + /opt/homebrew/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..." + /opt/homebrew/bin/cpack --config ./CPackSourceConfig.cmake /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target test +test: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running tests..." + /opt/homebrew/bin/ctest $(ARGS) +.PHONY : test + +# Special rule for the target test +test/fast: test +.PHONY : test/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..." + /opt/homebrew/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /opt/homebrew/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named check + +# Build rule for target. +check: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 check +.PHONY : check + +# fast build rule for target. +check/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/check.dir/build.make CMakeFiles/check.dir/build +.PHONY : check/fast + +#============================================================================= +# Target rules for targets named distclean + +# Build rule for target. +distclean: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 distclean +.PHONY : distclean + +# fast build rule for target. +distclean/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/distclean.dir/build.make CMakeFiles/distclean.dir/build +.PHONY : distclean/fast + +#============================================================================= +# Target rules for targets named deinstall + +# Build rule for target. +deinstall: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 deinstall +.PHONY : deinstall + +# fast build rule for target. +deinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/deinstall.dir/build.make CMakeFiles/deinstall.dir/build +.PHONY : deinstall/fast + +#============================================================================= +# Target rules for targets named soxr + +# Build rule for target. +soxr: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 soxr +.PHONY : soxr + +# fast build rule for target. +soxr/fast: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/build +.PHONY : soxr/fast + +#============================================================================= +# Target rules for targets named soxr-lsr + +# Build rule for target. +soxr-lsr: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 soxr-lsr +.PHONY : soxr-lsr + +# fast build rule for target. +soxr-lsr/fast: + $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/build +.PHONY : soxr-lsr/fast + +#============================================================================= +# Target rules for targets named 1-delay-clear + +# Build rule for target. +1-delay-clear: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 1-delay-clear +.PHONY : 1-delay-clear + +# fast build rule for target. +1-delay-clear/fast: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/build +.PHONY : 1-delay-clear/fast + +#============================================================================= +# Target rules for targets named throughput + +# Build rule for target. +throughput: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 throughput +.PHONY : throughput + +# fast build rule for target. +throughput/fast: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/build +.PHONY : throughput/fast + +#============================================================================= +# Target rules for targets named vector-cmp + +# Build rule for target. +vector-cmp: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 vector-cmp +.PHONY : vector-cmp + +# fast build rule for target. +vector-cmp/fast: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/build +.PHONY : vector-cmp/fast + +#============================================================================= +# Target rules for targets named vector-gen + +# Build rule for target. +vector-gen: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 vector-gen +.PHONY : vector-gen + +# fast build rule for target. +vector-gen/fast: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/build +.PHONY : vector-gen/fast + +#============================================================================= +# Target rules for targets named test-vectors + +# Build rule for target. +test-vectors: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 test-vectors +.PHONY : test-vectors + +# fast build rule for target. +test-vectors/fast: + $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/build +.PHONY : test-vectors/fast + +#============================================================================= +# Target rules for targets named 3-options-input-fn + +# Build rule for target. +3-options-input-fn: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 3-options-input-fn +.PHONY : 3-options-input-fn + +# fast build rule for target. +3-options-input-fn/fast: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/build +.PHONY : 3-options-input-fn/fast + +#============================================================================= +# Target rules for targets named 1a-lsr + +# Build rule for target. +1a-lsr: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 1a-lsr +.PHONY : 1a-lsr + +# fast build rule for target. +1a-lsr/fast: + $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/build +.PHONY : 1a-lsr/fast + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... test" + @echo "... check" + @echo "... deinstall" + @echo "... distclean" + @echo "... test-vectors" + @echo "... 1-delay-clear" + @echo "... 1a-lsr" + @echo "... 3-options-input-fn" + @echo "... soxr" + @echo "... soxr-lsr" + @echo "... throughput" + @echo "... vector-cmp" + @echo "... vector-gen" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/C/src/soxr-0.1.3/Release/Testing/Temporary/CTestCostData.txt b/C/src/soxr-0.1.3/Release/Testing/Temporary/CTestCostData.txt new file mode 100644 index 00000000..485392fa --- /dev/null +++ b/C/src/soxr-0.1.3/Release/Testing/Temporary/CTestCostData.txt @@ -0,0 +1,11 @@ +20-bit-perfect-44100-192000 6 0.0264525 +20-bit-perfect-192000-44100 6 0.00923554 +20-bit-perfect-44100-65537 6 0.0110829 +20-bit-perfect-65537-44100 6 0.00885211 +28-bit-perfect-44100-192000 6 0.0265365 +28-bit-perfect-192000-44100 6 0.0104456 +28-bit-perfect-44100-65537 6 0.0133927 +28-bit-perfect-65537-44100 6 0.00992985 +1-delay-clear 6 0.00114776 +lsr-bindings 6 0.000983535 +--- diff --git a/C/src/soxr-0.1.3/Release/cmake_install.cmake b/C/src/soxr-0.1.3/Release/cmake_install.cmake new file mode 100644 index 00000000..188bd5c7 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/cmake_install.cmake @@ -0,0 +1,85 @@ +# Install script for directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set path to fallback-tool for dependency-resolution. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/README;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/LICENCE;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/NEWS") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr" TYPE FILE FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/README" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/LICENCE" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/NEWS" + ) +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for each subdirectory. + include("/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/cmake_install.cmake") + include("/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/cmake_install.cmake") + include("/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/cmake_install.cmake") + +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +if(CMAKE_INSTALL_LOCAL_ONLY) + file(WRITE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/install_local_manifest.txt" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() +if(CMAKE_INSTALL_COMPONENT) + if(CMAKE_INSTALL_COMPONENT MATCHES "^[a-zA-Z0-9_.+-]+$") + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") + else() + string(MD5 CMAKE_INST_COMP_HASH "${CMAKE_INSTALL_COMPONENT}") + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INST_COMP_HASH}.txt") + unset(CMAKE_INST_COMP_HASH) + endif() +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + file(WRITE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() diff --git a/C/src/soxr-0.1.3/Release/deinstall.cmake b/C/src/soxr-0.1.3/Release/deinstall.cmake new file mode 100644 index 00000000..e16af6fb --- /dev/null +++ b/C/src/soxr-0.1.3/Release/deinstall.cmake @@ -0,0 +1,25 @@ +# SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +if (NOT EXISTS "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/install_manifest.txt") + message (FATAL_ERROR "Cannot find install manifest") +endif () + +file (READ "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/install_manifest.txt" files) +string (REGEX REPLACE "\n" ";" files "${files}") +foreach (file ${files}) + set (dest "$ENV{DESTDIR}${file}") + message (STATUS "Deinstalling \"${dest}\"") + if (EXISTS "${dest}" OR IS_SYMLINK "${dest}") + execute_process ( + COMMAND "/opt/homebrew/bin/cmake" -E remove "${dest}" + OUTPUT_VARIABLE rm_out + RESULT_VARIABLE rm_retval + ) + if (NOT ${rm_retval} EQUAL 0) + message (FATAL_ERROR "Problem when removing \"${dest}\"") + endif () + else () + message (STATUS "File \"${dest}\" does not exist.") + endif () +endforeach () diff --git a/C/src/soxr-0.1.3/Release/examples/1a-lsr b/C/src/soxr-0.1.3/Release/examples/1a-lsr new file mode 100755 index 0000000000000000000000000000000000000000..9f27a395cf5ae7480351b6bec7d91b42e409b8cb GIT binary patch literal 207768 zcmeFa3tZGy`aga?^WieX9YqDSxqum9rk159E+0S*#W00$yIcE}8SpZIgOOIEDFbSu zqt#gZYqxe2rFMa$Z=3mD*|in13#D0r>uznkf?8taZPEl9n*aOxTwp*@biwcc|Nnh? zd7RJnInQ~{bDrCI&gXpEe&$C%#yEyQ70M8lBrnD`GChtM3qwglNl$+u{=S(H&0H{# zu6F+uU+#YCiZg-}g$mNs(`NoGt@~~9eJj=O_9vfv;u000B>ttRuUx!prF?>)p76{* zQe%EKS%OFB-5`4~YuDTK{)&~4WvuAD)Ds>{P>IA@sWcMj?(ozyJkU`5OHa>SvGUQZ z+@+o8-P^k|QG&OG8ihYPcmL~tM)+ke&t1{g;GXz3CQ0zr0TL8C_izW;<2XJ2vD_!J zau=m%ZUB54 zGrOIN{ML*M>FG1#)8f+;=cS}d++vmBFhPDA=i;AyPB5v^)gYAg^rg$YsMa^UAf;ac z&mAw~Hyw)dcV$0x$1kW*!tX8c8~xF_J3Q%X*Z(vgrl4-Aon6;iwcJjt{5HFJA1D^1cp>74NDI#=M8$zbUGYIspQEtciE3WT2cmDNc2x$~F;n%+^!+4X+L zimuUhWqaR};f;Qv3#+c9E8%s?qq(zFl4s7CEpZ29f|pdcpwuiu`PEqIobYnTZ4zTv z;uE4~C>n5=d>*ReSr9s(+7ya1MZ>ex`28%DXU$+%{9_NG(4R#v58?Miln9i*{%S|? z%)MKb=V;jKQAmD_e{990E7kv|5ROmah|5UV~tOF$9k3hBF|NP$FmA`kWs4%%GK)BEN?8w z(yU%Wn`0|`K_eKo1wJg#%5cp`Xgh;zYFtxmn(G<2^cAKtYFTKOmJ3>@Wl<*WaF+i{ z_4n%hM`I$h$204K2$W@8 z*bCp|oo1cTrt@SMURSX+4YSrmUq2W6oxgoDelOSi+oyUmd&%moy{tMy8|N!HMh{JD zZyvEdT%BAtrIBYH&EBl7ksncU3Ahrh(|lNkjtgs<`=cxE1(kq%!z*^9u8TY?*8?VV z`rE(3vjsy~-a)jp688Y7O}sZcz4SFVluJ@I< zFP&9>I&!83^tM;?=|^1$Slz{W9O$e9oteD}?J7fC3Aa?#xguO>GXj^Lxb`=|HQ`v` ztP3h}+_5GBu;a@CLxd&bkrp5xpN{;qr8S*Hy(&Dz1HMOj2hX7&8TwIOQ5?XA=%QKP z>Gj3oAA_d4i7fBI!cF1okQoips5g3RfIT{^c}i^r%lqcG?cwYsTW(abN~4c;`rS|Z zROq=3t!7TWgmgQv^ZVo>Nnnh3C z9IodwwSd!cI?z^s`d6qO8z0eu~hetv%$^|46L{iE&rpPNNq6zh*+dHbENG_xA@ ztF1#CU9J)ANudo^?NMg*5c`m+g*JM>k;nM)2+d`l*69RGpEsj}aiIO3)&&}li>7C& ze{ii5dOjx3!17AbHnHB{2G}(kCc=TE7ES%7@s!S82RMv*4r5*ge0kvQ0sK9|D_-D5 z&VGsasA%Q+itl+9c!sOE4Bm;-8?{FCi5kD){WNu`Nvo%^(HdY608hdXd+vpuK6Wd| zc5Bf`^c-*-&jqd1MvXFdKFhm5t77k*#8|SbSe4F$<+V`10FHX%t&j)G_zJY&?Q*@i z3UFZ)g{T2fsrNkIRqCzoaP8g>II9?YCv2$DRyB(4zK3J))Q%CN(Z4aeTUcH>;KSUi zpNcxBZV#~k6Y$s=>jDFKp%$>JdG-#ClUDq)r-jPGqV=&HUp?JgR1{lSR2W-0T&`_3E7%p_s@!SxWR*W(6BIkz$L0IK39>(q>!8~^Kd1YCEUy;#ixY%4^`&*& zPV+2A&1ou%6Ih#AXJe3^>Z0fGr{}>}ozJ(e-KJToP3`u)KG?ocem?$+=bzlBdE}PP z=ZQ}03#09u$IOn7_7t|U{H(pR@yp?tg&MS^Zwh0;6KbQ@8pAq>*A@e&nuUB^ybbh^ z5Za=+sL5&%{bXxVypwxwiI(Y2+G32SB!bO(+F_-Kh{q<49b@{r=-^xIa1Gv?GjX^b zzCcKnZ*x7#G(%{Hwh(=+@Sy*s?ck`H_a^@LdX?@D8k_ChJe`1}^aYCiqVAK{Cc~*kPX~im`3N)S6 z$cI!g$X*Wbg)sI)8^%r?&n{S1+h6(|{Ym#f!FBpofeu8ER9w%8tnFAc3o>UWWX}x9 zphW1$1jx;J=toYHfshTZL`hEd)MaFkkc<@2$L_LMd_PfspZIuLun5ac_^Q|>(JsMw z%>up6o6#2@>>cxJp{>}5#ywXt4EWJ`)`LQuKL4>+YFiVvk&8P@xbOC2c7nA}rEWO@ zTcL?$H`Vi-A@-}{F=1$*_sx(S=0{<3M2a?mo$6YNIv8|4)xFau*-6IDuvxr?Hj-7p z#Wk{nj0=e8rRRQyYsLpz+k;;0o#DXg=p4vR93w#Y&O2y(2=H&@rT4euSu@(m@+Y-2 z$S3pTLYryKoN|5s%2uP7&|v}(XJjyY=1xw;M-Msmg537))bU)4Pk*_~ar&`p$LyC*i8`P7zA>@*rM_S&ZD@pD5G(S~@QTNMh;O=dt$TkH zJuaa?h$k-2`wMg#Y%ADK#4ERp?+>l$SQ8JPt0_yju@KUostxM$0>&9#w3^$xcTbmPDu(AOj%)l8_;aa_)R(k*yL)X8qVhwGE* z-DZMC*Y!gr{-)zvi9g|{S1}KvgT_$;+Rzh!hWBARy+gbgCHEy<_mFYuNB4e-z}S@f zb!Dp_xSF#G*SMp~wTpmlM8E5ZSHS_C-uxi(LT08s4RIpwvzc( zPcPwLj#cYHQ+`w{v%VM0S>KN>d3stUvwnc%4`Umj_Ne5owXw|l5zar3Rap&<+*a zp+Y;ntkaupGb&BccNx&hJBq4fP0*P;iuU8T2){M>T_3x{wg%5^h;3SbAoj%i_hOAI zugVPQ^yBN_$FX`>c~xfKX$4Nz z(~Sw%>E?j=sb+47}MX*a$Mej{;u5 z0&iV{?e{%oBH2StjP3p__?Pa9V>&;?4w>2Z3_bUIR!-MnF7mLq!Uy_(C~JEuMW`wU zubS0t66uuHs-Sz&;E>{lLfa-$w&u4s@u8wzEzan=b{zf;jRE4>V(=%+pV~Uro7p!2 zRvhoqlHtYDT1P^U#>7{Zb+{%KFX?)h-f0GZUr!y4BLM3uq0I_>PmBbtJB7A5ZmnZ6 zzx}1A6U=_Rl-Wl^-ir7<1ABvGw&G`4n>$Vs@Ih-==eM>-^5uk=+Ib~j{{UV@2TVyU zXlFt91cMfBsP82lBhDxtb3u~{kK)Y_ly}2pJ+q&Hf7%m=SbmgkJ3p+&3je5h4rCSN z_$JgJ?aA)m1UO`$_&~HN4o2bLCFr2$^RC^nNkT+kXp?xMx97^vxpu?m zzMJThbk21*;+P>$@JJ&+3bJ@M_%jK7dLQ_87Wj5%xpVo9a`3S@21xh!)cZ~FjfqcD z?>j?5PZ}HU`T*~U?|ui~y(IH4mn2mE628L<`5h7G%3&h^_Vs=$WG(S8#|KR=^JJ6A zF4(k_^y6c##Gl7$Om_0<-K}I75RdLtd5CsF;T)j~^a~*$vp9yU>Z=}gyKB;Lz$;t* zcxyAppj5}>-Rfxc1&psl^LHCgUOY&or$Tw}{y((5i=KK-*XC&Z}&uNByk!-g$ zkT1i;J~BhTDA$gIeu{i)1TUE}_Kh_5F&?tyu|Jc>K4?sIQ)q0K$G#b3e+}dj;ZeY= zTXt$#TJ!2PV&7$n{IN#vJIQ9GzB8jAOx^k}q_gj8@$RKauG~!R1}~T)&lFs#zYd`< zyV~?bFKv3Fbs*YwS+?z5;2{-k$e+_wd0`h;#kFMPp088o5BY;CZ+JxBL zamXSU^d0FR>Dq8y8&)w3*E-*Kx^|Nd?n+eEwJ-HReV(Y-3-yC%*Fg87&hNk{7s0y} z)A$~I(+b%@JX{JqGQqdzAjmTvPFF(6x`td+k+3d~T>55d9pWvC@{r%r7@2l8u@{5l1Q^az6*F=F-Z7BLsFR-Tg{sbU5oK|_jdTt(Zg9< zWH@_=#_l(~M@;f#>$WYsw64KlV0KJOg+S+k&gzOdj&EUOSlad=mRAIOI1tY_qm9F9 zY^wZhxe?5Mj`y!P&-+$XdlrnV@vpg^d}aem0?Gx?g7UAzYRdGhqn(CT(axPHMqIDP zZ_p5S!33Y{9NsP9d|Hf%p#}H_+U9YA2iZ(PjIVvRQD|j&_Z(uwCYLMi3-E?cgLs=7 zIH4UM1+lafL;Kf`YTcFX2=AjE>{Wdr`@3nO0lx|v@5ZO?WcMZ2~m4j<{u(lY(K+C#K%;e9H;rGDNhIJbfxCHc|L9MGc> z^q_vCK57CTKR{cECYyX%TB2_k46$$93VQ8Z{fH}RVo+!@#I0}lr$5PF4GL7~vcD<) zNdwM1>B9+Y6L7B3=zyoNHWTO9qSavovlAb1ZuDaA^t!crRd4kA6!eOOude}b7sSHf z^I&N{GH*@+{)y0k%DrOmu6sYnJ%)Eyo?qM01lp2KOmgX8Ps4v!h1kke+p%B{He8h+7_^T6jROK|=H ze$j99GV%K~&QIaD2zXg>O~lO~{uqg8ixZ{Vp>X7X7Yqy!b zd~6b5YbuOh`(ruqN(Aa6+z1!&+B_cTgoA?Xdeo;EaVdHu$G|Sc%QS&J?5Y#|(zDK_ zUi#>2a&j5$|6(=dB#p;mkdt9uW2xJCgp88M!Ts$YsroHYmSJWASz(1%5 z{ukEvE>}if1^)y$x#C%10p81)kfAl8B%t()KdxUBf5=CI(-;04jNJpUExYNwzT_hG zV^5t&yesOw-sB?a)+rNlT%*WC94oT0*LLAPwM&tMuoXJ>hV=?L7;#108XyNnd3JGK zH+fd^RNwNf6uyum8=JxFiafg&?K=Q_L%A0PKUBH*6Wr^RgHN&xNzlK_y>#5WrW`C} z-Q*y6HU&JJl7NzlVuj2r@-KRWWF6@;k|hlN6|HfTb)c1gCflpXI*e;c)&)S;syO@Y zavdgaU1g@GpmK4rP`NZLzS3Ye1#o6liV?p8es|)x2)`%rdjP+MoK$yC4_S*iYghd; zZ@JeWMfEqY5oK9VS+649C(2p_cEMz#|zDqmXw z*`K?GRc*numEf0j&bMV}2TR+@{lb}qd5Cf7lY}Uv_5jUM>oc`BoHGw*Kfg5l?eo)` z9o~SIfH|BK^8I3pG2?zvY-_zz$8(%^&(6XDgclEZ+csF0G|Hgc~$eHYlOSJYW|yapX3$hE=Gtt0(Np{HvI5WT{_|$ z!~k31TP=fZw&t6i#;3Y`6h&W0f2BceX%2n_ggPEjh0&IJouqkG`>g%Yxha zl1CMJT?v_;3z@C=<3ziIWOg8A@dU`>;ESi~^^nh$kER-hxpc^G50C14k5Q8BKERf~ zvP72MU*E#=&q3A)sYrGQv>exPX}=ri_wpyV`@PJoe&PHu$}4qOv{&jWHZ=Jp%h0a( z6Le--u4h7S&j2i=eo?1f_ijB_e`=&8*E6Fsv>W96id^>|)mnc7*OsFGQ=D!UUxYd) zX;OFHtr?s;45&l(pUw{jztmmveuGm-JhcOL%neN4b${UC)M27_EOdVOvmvRwem-Py z>L{dkppHeuQg~Z=0wMLdS>2 z3mbNATG%i+V}s@Mm}~g(1yjSWUz!G|4o}qKgE~qUHSF54XmIM#ppF34@y61IU6o5a z>$ny2X}#affs-ZvsAmZ3*^}L{t15f&>Ip_Y$dUW-Jxjx`_br20&oI=3+`A7yd!%7k z-6MlnPZ;Xa3LPJOxuW6s|6I}V0rO6N4|4u${WJEkr1QKW>%WGqUk1JBF6*N{k?%v+ zFUGynlbAjMV$%tWTU%@}CVcq=<#V=9(mha%VeCOu3@PJEx zjiTR%!Vbv5wN%vg9b;8B)`5XXxPQm|ZIo|O!@Bz#J#oAU94}r4#}MGC&|`&4hG`uH zn5?_cF)(-z0!-H3_ZS#F2LUGQZlewep2(GP_mc($rg{)y`V9iiph18cG6*n32La}& z-eI;Jm1MUfL*ADC9YxMH|5dtAGURpKtAQ;)i{vWi*MA3j_ZnnWoQiLWXmF(!t;*{b zBk1HU_&MZLeGNJFHRRMe#B9l@QtBv1%$M$ap$^J-BHcmrQ#40TIWJ9+=`=@mcOiR0 z%z=Q+UxB%*i=Hfm;#y6)-Q!xuJ#KL=_(+{`E%-)KT&uc1Q1*?Kn3EjW%HIOtNQrA@ z{P(rvT0zi>=b;n(jBAZ@k89~xT`R72UGNNmca6B#b-{}#{JQIf13lt+*9Ff+_;r`x z{}#ML!fycK?I8TR%k6&)zx{;Y0K#h`{JM|Ze+xg3{^!wMVgm3l8?SX24%f{nQ>P)8HK_FajgTKbV_iLE z&JB%I#Jj@(oZT=D@vcFy3o)6*( zDD;B|Wa`!WYwRJ(HwlGYZG~L@1$3jkj)*!a--lfN58Rs!J#_k>fR_v46V=qZ((dU< zY`FYmVgtpbNSD#^Q4~?9!H3!deX?5>1YO3rBz)*fTfcgRvsIhe@Hq@m|_04Vut;N=N2=} zzgEmJ1UO#23XUPbu}91hcy{*e$+uMso6 zA$ndTW_Uv|uMso6A(+>Q8Qu`gYs3t12xmgEb54E63{eNg46~4Pp6#O%bI$$5oO4Y@A@U&CBM)*T@*tn?M;@dJd5{^%!F10# zk3(Lc!5=wl&`sYV2k&pt<8(|q^iAYV97I_LUAhUmq88}-!ze-Ue*-MM95Eiz7i!HI`*4e*(%bp@Q*KG{aRWibnM5sBsT0snZv1)XCRln zXFi4p>L6eCprThH*S~>WC*4YRz-ak?t!xMQfL_OO?{(ya5B212rNE;U>tLuo)UL6Z zgCl#uPqqjAVGsDj9-uWb$U7D1-zW#Mx&}FjtFl|qVg1p0`08rhk3e1X(T-ruSp^~I zk#c$|hgyJ5fPCO?^A773-67ix7ho@3fW4sfbE$k^i46zGO8uHaHU- zK0sLs+F(8}e}yW*HZg+PPkG?G66m)`_+BrJN^JNm$_uJt$s4dfre{B&1Wwe?ugm?c zj6LFg>Su)y%H)0~{Y~r06khGL_lPga-ji*m0Ptjh%#+>hJ((B#Yw!8UeAlPF2Yf_( z4?IV6xmVbGo*LU-;yQ(y$jP07+}uRu=q4anHy&&4J`mTTlzO}IDf&v}Q@I`fXoo-A z(aEQ<_lQp!=yer7&A(ng4MsaJV0`t-r)Vej3DI3Wd#sJ-tCKriBgX#HR_}Xir{nbp zsvY-_*;w!YO_`(epT``PtkDsDx9`gvFpsex>zTy&JpF7GAG=S1GZS!dz8mNL%3p?k zo-|(0Uq)`)0Sjcw!+qwa?WJ*|!y?(%Qh)d%K7$)+FOA7}WCUS{O_YW{k2=>tqp z-Ja6;0fvdZ;?lwahKbzb()|Mr6ZyrZobc|z@+Ye*^&DWB$TKe03@}XO8khPHFihkd zmj(|oOynGw4jW*Y$U80#8(^5oJubbaZ~jd7KSA^RtGu4nFAt0MHiRz+OfOgYiY8oR$kw|VADdC-L~ zT{{oDdU%)a5%Zu?|BdBAlMV`KDGG7VgI>5d6S`>7bDt9t-f8#tvVWmyaFrZMCD*Sre^H*-=`GLtK=mNOWmoz*J!yMG_zHsr*E&dWs|N`# zyV6D<5c+xy5?u8l!Sx#?xIu#iH)N3Dh7J!KE8}=4bb|YQax-$S8Rqs$ z?!1h9edcD@A+KOn-WBm6g`abJt;7iBxNRWfwpY)^mSThn@3MZy2$lRsMMf)aRC4){7vT1t0o|(p z#0akorU5Yf5hJ`VnDKzwj~L-~!88G8KVpQ}1+$Rod8Ir)pv?8i--5UOv-Ev&+rsR0bvALU)=Pk$Q zZbGiN7`wPh`QB1pHz(&?s_W+DeM@!Syxec8zMGf-E!B7Pa=@kfZeAX^Sl@N!f`2Ue zTS~4q_EzhbYaR8Gd>?vuChm311^?hWbHU#ibHT-Vj_b(>&yjsK1;?-9ues-go89uk zkKvwseh~7h(&l3R&j;UNh?c*@&@&H={Hhw*^C`$>N}-%^$=0y-J=Ja?i#58OjUC-cwiR2_Y}sF6V{MnBNue#Eu4C-;%h2yl{MRwd-3F zSC4nfdEqw}@9b|bxBNYc{Qkr{`wP=8-kIN@c&CzMrufoV#5=*~J#)nS6Ysnsxc!KC z-Voe=#5->YZa?CkHw3pI@y;89+mCqX4Z-b4yz_?O_9NbTLvZ^M@4O+n{fKwo5Zr#m zJ8uYXKjNJ?1h*gYP6ckC@lME{UgDiydFB0#cPjI6ea1Uc55+sh-0}eAmSb%)@mP;{ zX&(x1!eVi6(V6%@H`U2uJ&eXODmBVeovhi<&Hn~<&)G4~p742=lT9&cHScos<8d7C zA?P$!+$u{rS$S_G4z?GghLtFQWH=`*G}TM0@{Hp3Vut zqrH&a_i&^Av)h-xU&j1c$o~{={__TDBeoH3Z|p&vh1a0XE!Rn#<6c3Gl8)oBZpf&F2$Y zh!Jb4Y~p`|I$;aJ+cfurxJUNFJVqdgo<$YC1_ z`9}4|0Ow@L#%$(mOGXhk7FaU27FZ0$nOf$NpfeWgobiPP78B?qo_li6Xsl106Hj|_ zsaw{=P9r@cfPMxPqMsi0BbvPq-Q5?>c-$M?3(al^t?sAmZZs>s3e9c@z3#sWG}{51 z4U=islXi1Jx3M=!JK<-rQ&1oe?@aia*%^tFK(trK>-69~qAhsyUGU~OrZy07z6;)b zm#HI&H{ZP~Z%&nYQxAH=7n?H?ym?{mHtIW(H*vjB-aNAwyqPHR=IJMQ%`E|MqIB}+ zCh#VT$eWwNn{?b-0^TeEZ%zPjP6Tg`25*iAZ{7;t9FyYMM7%i$ym?#7b2#qgP3&*g zD{lhlWZ2Mdyg3fMInGcV30_p`jQe$a!JFeupo@6E5o>^nH^I+6c=KKGCTM0L-V|xp zCvSpgB5(FWGm$sxdSATRgJ!pbUiaSwn)S+?GVR=W^SWsV-rNh`+$;0uUhwAL1fso~ zBi?+Mc+=gkrTyv2wq>wwnZc-?gL#4|w{r{jrfWXMza8b#>JXoaHfqhYe_LN{{hcGK z<^xCZW!Z*<3~{$zi{pM-AGPpLjFK+pRBWcgS9K~MEl6`70 zX~(s>(z@T1=%EHZnon_WC*AeDBkBj47V$=HYYuy%Y|hsDT5Xxb>=O3m+UGw-{bbLV0GB76t{44qPmMi9)jNFbYEG!4eUw@t zA6s7MEa(2nEO@W28nlLWZ~y+Et`}3i*gKQFS|`&!#MtkBexV99gB{;Af_3O`7j#@u zu69n?GVNIOY4N%=(QY5^$%56TpkHx?!yNaXBZ_Nw_@Qktu3P&&+2*uoF~PbV!Rn5w zhP6ZD2Q-@v+9kp7xexx;EYNf& zXgkAlZd#%Rv=;X>Z5g{4bmlA<=czzn9(xcoI}iOx`)e%5zJ@eTcS|h&^0c~bj3KKcO%uATH61S2Q3qEY=ZC8bF9#FhR{qcjZHnuckroZ$pix+=4 zgeK`WU@UoJOc|yu#&;3m_rjJ?{AC8(n8$9fH~-{qNA1$TI@G77aZvl8zo{?YyvtF% zq|TxK*JXzX+HCTep(_r@{;mIf%@K9zn8S>*LDvmIi8}R%Pt_-7{K;W1|Er_wSie*J4lGvDeE`z9(=TlVYC_2zu|m|q-q6ni#H*FjJHFUWTns+!?1M&aAY9cvQ7 z7YX2pc<{q}qR-7jGbA2E|EZZ7&-eZu-Ud=hW?{Io+J11 z>1?Tw6Wsb(kK>;5gxbq%(B2;MglHD&H$(Rd_}|6zb!YDKMEktJ+uo2NYK#L7+70=! z#uq%UvR_2qBr8akB%zE&A$f7~Hr6o$^oql`5AJ?%dw3jUc~P)Ghrd?%P_3_|GmLuB zbfc}ldHxzA$<*?yz8Fbv}wg@fESV7$K$d0`06(J~Yj&h?0SMf@g1>o+As z+Zf5&1<qha%7{Evpu zer>q;tow5_NFD)Z(``bB6}ZvZ%|y8tE(OR@aPeNy0|CG<5O@Zm4}&ev_Q-bE zIXtc<_jr!s-Nc^P@LXJvccHJEr?EDF)crkVtRH>@Q9cJ>PTd}A*PySz%VID1U~Ft& zuXAqq=33YIGW${BTfm359D+|tdaDe@_IiPZc+rHi7w?d6W>d1XO%KE0f{bYX>GtrZ zRO$Hi-?oQ?Uy>PQXj8J}k8OcnaVC11wq&YV+hn`XLa|+Xhu-b>{50u#iUA+SJBL-Q zL(pVvja;&*Bh?t6rgm3a5-(KwJn)2;^!`|!(|+I1f4E*e3>i_fdX=-pi*+<2MuxrW zhfrT#Zg;(?^JaNY(BZ4`LdQYqYQ|G64>}1tU#DYvX7CE_xk!7JtCz3cR*rnqZ}43m z1HS15-BD?Hu6kYqN+!w%6oV!X*NfhOtuOAOspCRhXm8x|0JTlcs}CCR4I&P9qyhT{ z<2xtfcY(qRxS?^t!vfmIMM`y&4AP>`Xm3^rUwB&*C%irOyR{9l-L>kDgQHxwR-H5@UeBpk^|$vl#ovf;?0l)^$Q?ib>I5$>;#eTMV3RpVMUu2th& zHLi)i4shLpaUO?QfFR=<1zh#Om0=%6J@_~-e`;$q{1?JG9%H3(tkB^Tx>!r}RCvFX z=otu^LUIUnEPOcMse&z&FeO`C9LeliXjAiDLI+|D^AovDZ6f4)Cg}X?>MW-xzL&Hi zYO!{PdXY90apg?t*;4E|PVorxozg+aWcc(Y_)bwAc&!9HK;tZyj?u5`Kvsu-zhDCX z52KztK|6YOlH0Qr8vQIA4*g(t!Hl4kpy4@I$A`|S zjK{Ml@Q&$AQ?3=q8DAQ6o1WP|_cy-a1;|jupj$4-32nrajc7|*z)0Ir(A|jd?{cV* zbSdO)M;+i9U}uv}Xex@c&=_3-ylIRg-x|E%#plyyKL4NMZ|gtuo!#UYWDv=14eUa) zxAhp)K8THHd$dm0V626q|1jnj%z>@#3)w_I%MS1e#n)Ak0h#-aTH61{_fU>DYJYL~ z&M)$vq$8*9|8+R#LB($_(SD^-JexEUI-u-ul#L;NMDIqT(7P7UmSRFAJN$91Hn6%i z7;FFd(Y2fQQzaZArx#HDNd}|VfM;k*>2m;B^7VO^_Ml zbBOgn?!76Qo=02Krr~)8*}^a$qTbq8Z#MtIQGDi0M{|c{FLtvr+GL+;LxS#vN_dy{ zaK}E}3q3$DMz$j8MRXxp` z;GZ^b?b_#`0S_4wQ&-xQ1ACw5oe!!)ef_-I{4;pAk`vm_^6HrJ(697OGV-6t@82B0 zoD1|l$NBl}_+q(pM}7?LeQpQs=O2R%p*;n&_~FUl@Y7;yMSH@>HwNzu^83_hrzc|% zSdLZAhRluweO^c1CFsY~pfAm-#Xz?w;CTaLosa>L7trglZ{uMjoi0_CHx6YTZGo(< z#g}#b;LX}j^N2|?_8HqV!rr7~9qYbuz1YZ)s<;|we$C+8kxoLmKH4gVwut#{zkztQs9{ckO@CE%OyHF3_ zDZ8(*zIpXK4)vQKI+DrNumflkZF1mi9T?Ayips5c748-y$~h*y1w@8 z9!FB_KOANzjjI6gbxBx`);iUwrDp^1>|s31Lg80Nfq$l$wbhUt!MJX~eJ}iSLF>f% zD8XX-WUA_4e_1jZtfVjk~yBzA6BaX5Y5`Iw~MfJ6< zZ#Zi2taF&_-0(|WUtgQ?j-z(>QAe|*3qSQIzpOWhm%|_X(h()cFbF?EW7gKV;k6IP zzqa zwnv-jI?dVkY!h9dgX_f}_ImY&*B!-?pE}Ci;$4e?E79Kh8r1KZ^9G-r$UkRRa-oH*DjYUrX`^38&)ryEt)=?uDc6z(!VxNivdX$2m=J=ZjfrCEU!!8%TLCF<=RYi5CdGeO50pl2fJngH2HbMPN7+sLty z-r(#AXKB}Zm*T80Usknm49hzKS~tVS(-boM9jN~s;7Z>?%+1%OE<=9AcFrd!8_%@h z8xC{ecO4@e9Xj({-Z!Qop5Y6rtS7e#{vIg-8b8}P_-5y^zjzbu?GxC` z-LRn~B>^Q9Wdq87?9L00;A9+El@H`f1;Qem2mQ=s6BFJPVqFmi3?ISMK=(+HCX>vhB}bzK3nVydPjmZB}=0^A?OZ zxy^d{xo)`PKH-WSJrUP^Twn{$>5NweiG8G(`%RC2(|`Vmg!AVUoRxTfA8eUIw5!+g zfpM#h+5U{PTd`i?o5kz}=kmWmj&bE3kP8}B(Sq|B=RvT?m@4k5%Uh^(L1uK9XWCX8 zW4h5S@1WZlivhi8d}VizFD8#Kd^7DyE;U^qU*EWmFWNVU#@AeoFXrcw;*UJIvlw6J z@U6A|7+(i^8DBdvzDhB^Dlxv!#Y^K0V_6(uTR9(bT+uk4!}%RNgz>e7W4>=-e8CvfJ4DhWCjH0ImUeXCC5Fhdl#*KgF23 z~RZl1WP%-Ot{h>(tnxAb3c;Ee=5#vPV_FfU*vv$50A--4C;~nC; zIPjYRvglLLAsu}GI${jbbE7aXYhCay_?=|lv-z*@Avt*-bKc{*Aln2MWV7d6_Doa- z`061eCLWq-(|ZXPm8yC=^D0~x0sS-)_|vuHph2Ujbd7knfb(xLKn7xb;n=5z1Fx5@ zUwDN+*$+7feuFM$&=2%|+Zyrvw(;Om*Lqc*bGZlfgeUZc7xacV^oJUJi#eG@6~4p6 zLHDu>;>l#t`x5jp#p_A8rTDQIwm*gMz2Z8>(A0>xeUEqv-KTMK0(#+Jc&7GoZE6$Z zY&tF^#}|5FyU*~Pc-Y6syuc6G7qyum9-}$)WP{36Z9DcCmREy&Aa(;jZzC(N~;^PdlQUhZ4&u|*svz))J2Dt-Y|F*#LK-3a#Uer>= zB$jA1r!3Vz74?Yr_fdJ;r+yn}*)Zi1?Q2u=wD0{g&fu_z6%FhOa#I^+2?3nj8 z;@WW?Ya=?m&T)9x*Oq~MD{=jC?6vwgz)a_dwnVI-*WPm5_VAX;tm+ufic!Kp%`&Z&I!Fj0tlz2=q9%{cN9@F~| zwYQ4L^zK9LZ8+Y})AI}4+r?vgeqs9$;xRqHP{emTPtPxGchYr6&&+E7Q9Pz+X0~4*WKHhq;fShT zJdkU+Sd**wV3p@IQv9m`_D@rzD{UTRKj{P?DG#V_8OFwP@UaE>yam3_Rr%OH=KO5) z!ROT|@wgTTp3DI6*AynSe?xr(o>f^B#6EU$!7VitA87v;*IgXfq5?0T5&Mab=eM5~ zudBp9Yle*em}iqAt0!+kv7n@&Xh5qN&Y2OSvVvj)(xkSl!Sk*(Y3Latnhhun^V ze9MMh%fVU?BV>C#it0#H3WwM(Vw)ZDo`}gJzDTh!qbKV~@GOj__$bLF@)I%vqhrl% z$m=A??fW3VXF-n7gnXY-4!JJQ{SZ&QN%Jn(A?I^?$oV5alAJ$r6*<4iw|6;jlI46( zFLM6)^~ibHgs(wPldLx(F4Qks5Bc6H>mm0$Wj$bY%6iEC-ei3wWc?U7S>K3!36k|= zN6WH419M5TtVbR~r>rmeUs?Zug{*IuW&NA7tQTcIWW6Z!A?we|vi?n3*5}Hy{to(u ztQTcIWW6Z!A?rn%4_Qw#pGWx$a{WV;-6+38$wzqzWg3bv3XSVuK)(M3g+nDuc|G=To1_hTanNC8e|p+**^x?f*{9@kVOW}iyVMFx`1cu zao&XMPeGRb{>X(CFU(~W;hoYWc_|TF*j&}orWF2&BSnQ{?x-n6b>vaJ&*qZ6H(@-H zyx#$NPd@kml)Nv4yx$D@o`W(MWgJQXN`K|O6|y}8h2;FJ`1Jxko(5frhI-J@6ZF^s z8NWo9^M!759`l5DlJ#WI8ezjGz)tmmEXssDV~|6X=cJ9bTr(oib;i~>ietJw9uRpPpXD4gTI#VAyn=23Cr^1G39$P~Pk{IARNqe6^Et2~D&tw* zVbIbA{mH{$nh0K`nBfzM8M+WN9E*0hVLz2tId1r)sawqOGm05n<(Oe$2794cju*NR zFHA(7t~h0~EgbE58SVH5;9BK)VI$y}5HA!EFU0(x9kIf?HSou_V-8P>7mg5Pg5M#h zpcQe*6PVAQ>MhZK+(lO!7D|OsERgant$<7Z7wu909B6JNe-UjJ?F1i&7;@h+K#JoL ze5G&izu-!H!h==0kRL++Y8%@9(qY6v5i{KfoDFiklwza}I2SPYBF+t{v$Vp)Q=Km0 zbOP~_=5=cuMxx!ZZf!25_wii(nph{J=X0hxf8)*UYa)@e&W~!L_+1-tdGL(u9+OJ2 zP`q44F=sXTbBHIam__6{w3*^dM$G-vIR`pZe1Yb5i6({6x$ZQ%TKkc^GJ<%M_>%Z@ zPWqi>%Pib<4;vN|_|eN{Z*PoLncDlkHT- zKm3u7Qj{6RnOa_*sik?KBIKVi@j{2`3p3h<@%2TN^TB}D z$=fl;#=6wTv{~75b#cohKwgXeR$+GL!Og-m*l#H>&=$y zexUDm^l3c$pi4FktC#`YO+F-RAY-6&A!9mdeQ?if#7A2x28;gN1YV%^HX5wAiI&&f z&>Y5WTo1#$eXXTgwv*QG`&K+-Vs-mrD?9_ee*nL?!e$r)d%*;MF$2EgGli_~eXNry zRMyJSIvMm0t&_0=|7_R{@yG{{lyOdkE_1gDA`w$l0gvK!!t2pwwwE>rJk#7Y1rfvt>IXhTgDd8+|xl05-H(pTX76~4?kw?BtnE~I{ zaAYy^kd~y}y6QlRVakD&#h$D(e${&^2~*xnF(E%HhvVwD1hcv=9j@JRoKH(N+M|I^ zCOmymM>Fb*$9Pfsr#qGQ#Y;9%9pzrdVa%w}z6^|&cyX-2PV!f5Gnx^P&c0{(cbHk`F6l{m-(;Z z{CZ{nO1wk1%RtEd8d>JQPjUu)tU^48Y#k$PHKpJF9htua@_u~}nZFaVo@Blivj18# z|7b5Ve|`@h`yS{2UzPbE0{5Qsy)T)6rXMnY& zPkNbTe~G*7hdj$9`H#|5{_}3~pKQf})B(AW|D*>*z133(pgl8CGNB7Lh`Qh_=z_1W zsSD=Hx}dQST@Zmb@X!Ydu#w45j^8BeyH0)34Em5h;Gn++8b^KTgW2eJlKV0LKi3CK zTD$9mjnIRNT*>~YE6oG#cO~+5wC2jW+#4}sHDbjY#Eg9qJI0!cHGar<=RJK|@m<*;=*_P^^PiG#xSC%}FpOV3;UsyV@x|lLNbo9+U9vY#;Mqd_(p;nU zi^pXMQ{NyxZKc~kd z-_!qZ;rAjR_cy?M)2GokHGG3;PJPga8)eHuJHCaVh56h%f6S4VWM?~fbi>yIe3v=N zhw*?8WAI}H7OyjAj|1MfI|cb7 zt!M>*zkHd-igZrCi~v4534fBFg&aw12JULi&#V3a5l%Rlt4875lxo}Nz;MK^)CVgt z7X`oU;Ie=)nvbrtz>iHqUr@Y?;&v3TiokCv;#C{_5wF?_Terw9UUe9@G1XT@^Us{G z4RgaU;ce6|K*qoN%&jt@P`IU*yK?FbA;%?boXz52=3;6QUR*<*zaL1L8UQ zj@~2QYJu!+_CcQhg2}e%9jq=Je)$}8B z1ISU^guW$u#o)U!M6+hh6;qDSH@A6|mm!YajGWyv(5u-OYgMpDvL%u)F9yAu$KpHz zzsTh!`K$)*F7qQRet^ACaRuU|*`$Z5FTh9C52we@C|CM@Y{A-wR`8D>{O{iQr!d>% zT;B`-SiwIVuEIa<;1A-V-=J>`;TIDhS$T|4b5w{W4hGh>A| z;x8k3iXo5EfM1GlZun(^Wd>qOi?NPk4B|{)p)+&_tfyceGj;LEcgTQ@*#W&-xC!}G zh?kO{RCuefkYb_8r|9IZFp;-T^5GR$nQv&kQ#?RCC%*Y&nzNZ75kq~Gi8x6X#(VY? z+SEDdn;i7$)Is?YB;#zDr`V$MI~c?J9JFR-IZgOBkq95QEuHI;V{Ofka?*IDT%;zz zjp9f6S|2hy#r^}%ml02mI^#;4i@qVaw?n3G1?*hp4IblsTWT>s@eFwO6P)kEJOyIg zX`soE_%$1zX>^eZlut5o(r(uj^if8mX9O%B%Ot{sEX!`bI&Ib zXDPsWgjJezExB&CjY(iRl8RD2*TD>RdqRc~?fD*G} z-8SL{8(?n%ytCdy8*oIfB&`W5s8k6oHxhQ)tG_I$On^-(+G6m}tw)S0uL_>Ig*2C3 z2tT}#)gd-sxdp$63z@wV~#D@Lr>5s#^Fq02hf%!MtH44YyOY>U~jF_JJ3Ev-$4?IF%ZTYOpFo1oz`(D_;P z73nb0@1RZ<*iwdX83*FpBdS1KuqxnSoGPeAjcd>1{4AcK9E;*wS6U_dI>CXvqlFvls~-zUC5ul+dsai93! zJTZ@DpZLx^F^7b5R3q-3C+4&uA6U$9p?ne-Be+t2%XZ|wL`)Fm+!cCW5OY-G7#%MZ z`HA>4VdA`Yq8q*!mv$yqsM_kyCZ9|(Z19ImuXgD6nLD0(=kSl1+J|An!J{M~Mk5O(y zX7-s_Mm&XBP-gbo*wL8pqTGgz?6+bmE|ig78B5O<;hdgh;7=>ARRSi>yC83uatrGw z`XK%Yom~Lh?5}dAokEg=CFhLVoPny?XscMUzulRfJRd)5oQ z<_(^^aviX{J^Q1ZJv$D%cCw+43YG4GK%mB8yCSTnc=Hf@0~;<7k*0?#L4cUQ?a?SBA%6V?$^UOU;e zSvc2Y>?-p#`iCbw3x+~x&!#qxtT01=lI`st_c_ls~$&scFzIgezo zz)lry)^y%iwpCXWER=1gu4bdt2yv*;j3`| zYuGf=pH6eLSHo;AXbWuOy4%r?D{a*rXXfhOY*paB`gSM2e@gb8Xs;5Cbl%U+Rs~LK z$WP#OY%KgDjA_L-b;1@Qemr+ku^*)I@B(;*_~Rt?!=0FWgUxD&4psYqA=|5AqP-du z7}~>L9dVQGRZL%Cd!!iL=dTUOz#o_-MV4%wxJGR>{vFQWPW&Um?G zi*lg#IN+w(s%f3PCf#qtIoYaK8r!0+D)CrPTh)&rX*&a+9DF-f;;A2Ccl|g|sG>1Y zDDy}yAJ)TO#oRRf>W>02M}=`616!5s*G_vC_}-5`JPW(kO7<%FM6y}$aEj;PAF^31 zWt$bYGS&#FTS~z<^gRKhCl7md4*BM=S<~mU3o67KNJiKo+bGWgxeW*B@{n<`QRB&G zg^Uwmv(mX(7i?CN3G|I*vRRW9n-#L@GHh{$r=rdx#~ZfUT-Z;(fK7I50Pk!26t=1h zHh~$oY5?Zl6x+2K>ln7eP9j_?e{k)77IQ6gVJkfc+cg+?Ss-`6f*vhl{-W)=1G((` zSfH3ENjZ~6u$}fX73>iyZ?Y8M6)O<$OLnYIyf;s@V+&YN%TDA}Cc<{T9rh~K>5t#D zm%S%{igG{fi@C5b&SG89In;R`_AARi9m~NkIG)vlb?g}_O~`Acc_jwBfn~oQ3mc&h zzJj>EC!O+@i*{=Wrf~a~IaY6vH+>3>v3= zAJ;P`pvvV2l0(WiN_o zUtnBU!Y!9qdv2#01ectz&A*F5M3LnEr${Yp^xR z=5e=mYWKL(zQ%P0-;Z$2;8W7PDi!)h!o%O-TgLeI#Lw|7;GC}G8Sz(-wI~sO@s^(J z7b5%;EMrC`_PK6h%qZ5mZeetYs&n1K=n$@R-GbhOw+L!{2T?u45*akpLhB=DMJ*C- zsRYCeB7QU`&f`?_+y-UQk5o1EUEVtsFS%C3- z#1y>MOSSJK-r%WTti3J76LEz_h%;b50Lz`3ucaO^z5~paxR-`|nYfqWhkKi*T53?w3Domcai;cnp$WPoi4a_b`;-wv5Xx+osHVLYx;tivDccPer10q7ME+#d-!m<7EQ2YF=GKhSP9 z%x^d9=d~XQWoZ}ruyV=)eQ<89ZJB}9S&{RkY^0sAG4S(ggyGpsYjbr=P7Tr@-UmA|!dRlD)tK3t1XuC3>)biAtN zc%l5v8m`I(U8Yj*ui&cEaX(|dd_RY)Dqtg8Y9`E-U}kbvakyVoB%eP__lLnhm(Nq_ zJhbKbMEN|K`+wMb^Z2NWtpESs?kv3|kN^p!<8-GJmLwP@qAco6Isp_C2(q{_K9a>H zqya@oku?jbfd(sj5@#ossYs%}X$8S-!y*Qh0xZ9V1Pl-!@ zdc3>DB|l$$zY>c5=x%Ml%6=`MyEXh4-*fToKRGM7Zs^oh+%x0c`Gs;X=|`OVN_%eO z{@!!na-T+;gQ<6F7@wx4xzmUJ1}WQ}+PIS@cB~uj(e}f%VB^T^d5>{d!p z(-Lf017F2Q`>U*3p5gKy@TAuqSb=?EMtaQ>xlT#1$&u^h={0e3b@P5X*L>c~_1Cj>VxVFV|kE#XuU-=mj3#~zq%t$Sb$`W_gowg<+@SpC4y+ygV=|6mVH z1@c=ia(NOmjqro)3CRqzh#pg(73Nzj9A-qON?E;le5A>fgRH8p8)iN!aPQkDY{IYp zz@E2jdj4{}!$ z^E}6liB*HafI_h0iD0Xz!mOS?1eW{`?1%vqK0G;f_v`4xszZJNRTJ>+wT(#c~4 z3m(A!QT2;MYnA&s1ZiryP9x z9r(0H?cn(>-~5sEHKcbKIySi|r=iE~+Mcy$u*qQvYs&M-1(ytw@TC48Tyhwq!5uvg zE;-=MQhyv=au{NeyY=_rP#QR8=rO{VKR6_I!#sZ+97;omJ(#M$2Zz!W$zP9yLuuei zsXq=5r74oX{vI51X!+gk%RfQllAj)rmAK@m$J^3&sA$sR+=?`{pFinMPBYk3uE z-woC$@Q|WRAr&PIuQyZso1*b~n3QncV6`WG#n!x+1Tw{4J*Y>=Z>sR=`;d*w8()&}w zp9#eT!LsAX#hVEtGcO`MK@gc)@b#N_T;3G!k56=Y%fT=wzN}2as^<`6`EmAjl+4{Z z_z>$g!lC~aT)QC$-@zKga_)N~52rIn@Cy4iHnTV5Yjm%uz4_T4*vGM){T#p9b1M5A z)~2jsJ<2BbapdnknB9eMA7XvS7W|zpBd>?Ke!<>`yuEqZCCJ+eq!)i^qQ`aSI)iWX zk)fBOgQmfIVsjAxTvB%YXlhrf!{9KJ=Q;St${c4_m~W5oYVctr^HurGon9)pe#E@d z$HzW@%CE12ZC8_DALiYa^$_^Se5Zzef`bm#+>}Lq${zp4 zh{pHu@uw>8~WvXwarx53n$li zs64)2@yh<>WAhZ|jVzvHV9{XO;P{7%x43BP3yJuZ9gLjw9Qaqx^V3rl?{C1MEbwFk z&vJRz;K3&$Wx}VVSFq=JsIjsMUw~51Ce{nA!lzl&LdAQ?m{QgFC&ha|-)#k#P9}s_ z)`3l1$)mBi;@wL6#y8Z;d&1j#EWEe!E)l$HToqJ#IzjO!f?JJmD3yPp9Zs!pUwP;S z@~l(5|Cp$Fn|mtW|fV9yq^>=S`axuZR4a=$|D| zxzDF#->Jawo|Qd}O)t2-*r7F>Y$N|(8Da7m@eO-BW9sK~`a7N>?UCp69jCZ{!yL%y zN!WJS1JktL9=PkiX|R)t5g<|4|oD%|QBwykK~dlYahohqm zp)a%PyLWiEuc2t%By^QU$xmr|%7UApvcH!+$^L2bWc%F>Y2)6#d6Iqa&6Dl>EV=fM z_uc8Z6Ng?=Bkyv&_et8go5<@f^4@28$Uc#GzvbN%yqn0oRQ@-d|BbLbYJX?&Fvn@r z1p8b4hdXwEK%UI+XVT9?8|!J;I`*qe8+gvNj67%TTGhDO<+Z3bkFwMB^57I`V?2=k;Z=nvY&^e=CdhwZ(ocNF!$>9RI?(0(`X zp5Wb`S7?(LXp?%{r2Gfki} z%gDwwmp7K@1?VQe=dn%wzU28WF8qE*dIq*Ww>8bcZr9k`~<{U)A=>;Dy-W544qBTsa5d6)BiuAa|&HK=Ju6VDS|-laSj-~W=o z*oihDYZ;k^JR@=Uv6gr7x4(M`a?BG(u&2Gtn@RdC!J)Rk`vG!q_1$N3|JCD)_p4Bs zcLMgPRQUBP^tt_N`=$(Z1FXCF%%OOpXTL;L1G zl$yC(KH=CE^=JDeO(f&?otj*5c0YD3d=+H$%+kIoGRi-)eDB(JN-AQ{P<-n<$=m;~ zBkv?%|96t7|6O#_Xf2-+TArh|Jbb#+*|t%wz-|wn9_No5-Ls!jg|NUlH zO|t)fJ^Am`)BK72{rB&YzyJOn^53hcd4v4@_p8YN6aD#X_cGY@?Np9yQ`?it+cIoIHgV0<6;%l;Ah>ZQF; zX0O{jG26axa(3FjDcNQFre{~~E6U!Ayi~UL+w3)a&t^yMJD2^tegDXQZ(mFH`S}}% z{%z-k?EjpTNOzJ*k6tn=YpCipgjIy8~~3AMea!Qt|DQQ9*H8p$|q@tmeS zw;I}eS`61{xF!0-X)x(@tjn9KJ&%M(zsIE(gB86&kE35X(fL}CXZ`pFO?eL@V;p3j zW)%Nx(QPNi!Bcr|fk*H3@iX{V0frp(;{>=_0Y3|dXt)7pRw(jcJr2%R zpr5v4&W95B*^jjJn*?3Ck5kJ}$Cp1zT=LW7?@3(p)8p?*T=Mh91>zeFO$UN*jJ1MyAyo}v z+0s7=Pje5JrTg#E*Bbuld%jG+HXP!;{~oMssL{UzCrkYI;H1-k50-9RtET}EbN%<= zq3XW}50}2DrvVSs{rBKu!yokL;9-gX9z1mV@4>^3@9Js5!(9J8c&PgC!NH|#d}#{w zYa@7Q((iY_<9qk4ejTP?WAy9Jx52r0T&%NX-9;eAA*&0@;@PK49EuKY(qGVA7Sb?L!^gHu$g&KL8hF+Xp(fZPu`@28_HM+qP)fw(k;b zD}ISJ$+8A$M#vBPI}|(k=hizaA7sz3*nN_|^Ie6$yK*nIB>J}KqxX?U;*w6@%ky7I z8ormf_-|_2EWYa_@m<*tAC~R$*V%#fM^UUlie~*$N7lY|Vhvmj>*;Oyt_;CLHqjQT7 z-hO-^$M>dS{H#0k?Ju=2v-#8XXZ?ljDIcg7*ex;21XH*&%*6RL*Gx0C_ow-sG)8>I zCM4zC2R`@Wu7RF6&J0vHoH6~wcfQ5UmEx@?4ac?rU|!oq6^X{7=i{+8FwE6m5AgZF&!FdpB)-7jw9G zGKV{owjV(s498dPFwQy&(bg7f-+diZUhw8KyG%_>&J0471ABYXG|vjf-hTdm7?@ajsQLCJb=sNa3mL4ZatzPH_w#nX zAFNi`jP$?wj1G=?#2$k0=}>$|TYlBJ>ki5jNk6uW$g{V9KF=P`S*mR!iifw2D<0k< zBG(?FY~6J#vhj=+->jC?yj)qm>%jnA>~Yj=m^Y{rB3Ptl{# z+McqXO`c#syD7(hHf*By{v3RnXiJ}5#~P2rMkOnry4|DXlm01tO!o)uU5roJYsjxp z>{Iqm-6z;PZDwD0!bJNZ+F?MD5;;>*vPLVB?t{i)S;sii#`nXfb&Q>*Dr?%&KBJXj zcLP31pWOHW<^PR+%D%<6eLEw&{rxSE+jCi? zGYTK*Ip!zq2Kpe*U`P&9<1BH>@7ppG-={4M?#KBt*nYNc<%|x^CTx=Uj3`%aoK}W!z@y_OP(5-_tqf3n=&%ZKbL~}gjj0t<^u`HKY z_EBr~o_bCB@2I!n*9KXCdWYIq(q_<>@?8e`h0}M(vXl$5?%vAxtOpowVokecO2+Q+ zg5u#rrd2O)qs$yG`L;#QKdve@&*Q(I!$~4f)pHNNonETeoSI;$IhLw;kNuvYs@`K` zRPV`QO3g{9T66NWTEiamNVghZesZIsMr?tyZ^^+q62;WRN*h?!Rg2vvYIzv{Do|}} z3suECR&}fuozI)*nU|pmh{yGTW$vmCZMfUu!oH4Rl&Nq=h($4UT;|vt~ z<0x%=l(sd~wr1Kkj&_yywOmtZ=S&dJM9H@|!(T7bC(>4Oc7wFHw3h)t;gY{4F~ia5 zMmI&~WIw~OW6vrz$<^tVMXVEZKV7kCEOYWhN_@VTcdAyFSrpIz7~Q8OSb6J!jKfc7 z)G8a|?XpJJ#kg{_cMzqfNpXPsS#NE%sEpD(9%IBga<#9D8_Vo$w~|z^CeP zDQ8#eDpy%22;c8IWsFU3``GmPM%uJt+OoyX>axW~=IIK96mQ{J!XCn{s@LtpCcTmn z!TnRJckCLaX6#J0X6#5q&DhSynsH%j&A7i2RvT)@-x!)S-lW!y|CF$jxJ#)SAHn?r zwFdiB`S>>t%tu8wZDgF5wO206|A?_|mW6eg*sZ-`=rwJ6hbFb@2OqH40AH*VoYXlO zT0e%2J(_qNcHiHaB6=M|c9%Hod^p2lg61=SNn^{x4O&04XJ$pNBQ9>7-MO03NBozw zev~on?2(p*lArX;n%90)Is2EhcUkr=J5%-Of1XMH`s|r>`dQAhd62c`vX-#wo8Rp^ zmQi~qbHSc7$tRC!?=$;W?Am^Q`I*ddJUepsOa|YmoaeATan7z|udF-?1QIhta|mT~xU z->_nUqXX@k2F)aVSYZo}aU~^oae48X=v_X;P%rD5oaFZkp&ucLAm>saWPja}hw(cI z&J`P!1t0KS%JE#xIA|Y#(Omtwa^h~v=mZbJv}5Q=gH&^}l&zF9JYdeVR~nUGBG(i% z)`P<%r7p?8z-~?7FEQSAUde}F{&8eil`**#Q00&@m7S*vF49-0L0)MTt}xIg35-1}vWQ8*tgp8EU$C;!^OKc$_LocLx38&9B* zRRzzr)se?aRT(}9p3Y3Q##%#*hY#w~eeqG|Wm4w4YL7C|I3Nl$3_ zAZIf*K-d1W3O3N^ud~PO#5=Ba1CjlXKFfI>s>z+i86JW~qp3@jI?Hx|{(Nw#@2riB z&jRqBZPFH=(a!uBc9TcWxKdQcbMQ#%^N2m1ar^*h@)+O|!P@l(Wx^<9g>8YM%yxit zhTP$ddCrfpyDE>(X;)^8<6Bc)oc$nuvy{FlVC=3Kg3l+))Gz{n^qZsB%05B)M-cy5 zGNZ%VB`+B2HwZ0K??cq_8|JExgP{`+w=6tPotDfPx%LEmOIB{abM4U)vIlRQjd387 zc5Wwqe6;;6+fAy;Dzd@5Y9EbOkKXR`3SJ9OWg0tJGSw(cPLkVBn>=Q{#%&i_bCp49 z2T#tQ7r)&$?m|EN0_S#H_`}MDnX&yRN9-xKRkcwfGdZWFY1!b)BGvKOQp0Rpa!^EU z=Clq3*9%P}T;5^Mx<%5~+vAlRn|>{GXnA%^Pq8Jryl*hBTTIHk4Q})T+VymI#e0r= zoj^}uY;IQ;9~Hau()I{wi-WYgw8uH>E@uXO!+i0zw2AQ1O2LR=*6(B~-Ue)1;#caM zTVx(Fs_HPb_&502L^%}3%|__b6magQ;E&8(Ft)vHLYHVnmk@bEuv6wmzFwwOa)z7t zKwHjn5{wG_MS0{#_BCX&mn~aaAXp&y5ZK1dvDJJdYoO_`H^2jFiv~A+$N8ClelMiF zf&V%E~ zU&xr}AJ-00#$#ZV@T&0jl3%a~2ELAiua)Hk9PwbU5#3PMZMqn*oV9sE!xNn0x%SaY zv^#Ud?`)!DUW)Z`@Ty?DALkFTe*OqFVp4r_jPzld(WS|;tDpzLA?g2bcN;4Y#j5S&(TjKL>Ao zH`?VD`F(GQ68Ub1v0T#cH<;X+jOFj0R4WzI4}hM$&}`Z~Lv!2=dvjuJaZM-ZXNwra zypHy+(@E$c7UUTCWtW-sODrz$=t$S;GRo{^ziofMU)jdxHFLkDt6G_3RMxDt$vkN% z=A6wQ{EXJ&C;@SydUXnpMAJ4&{2al6@->F}A%X?2UOW>-y7WM601(O9g1V4lZtH5;T0BSPB>uku*ky$#XH?{ZJo=`1TH}qeDj9Ud( z4*{bEpHF=n_4(>Jo^}#mGyd-(6355#8q)V^3xb?b-6f?I`J`Ei+gnFa8nY z=K5rG852#6iH)?&*UqiBqqJ$9dVj5qc^lEW{B8GJ+U~M;3&eK4&BQmxdk0$<%GhS& ztj{ZrYf}D|)IVIWzqH3do<)38W?RV^h05LTDD9A@jZtN`M8+t=V;PrCj8lx6-bm-R zMN+3LVfS#_MgDOI*Oq=koY!i?W@pA;YQbJ=#g-R_O)nhVUK?zDZLya|;D02Dvpz%V z?;yq{W2+w$H!@@3ZmpOq+_i@jmYH@84YDlUwQbp(XU6<;`!kLq@wrdnZX%jjf^qJHY!#f>!9Gy**&@}X`NX@{XtmB!ZCP{3FP!yotf{G6s+U>*>CwvF zy;j~!xkbO7PT!uRz5MjM;b>^DGUBq|Ee?7W`p)?kzBY7Pk2~77^*wS^c^o!qEzQk} zSLl9gh;kF-j#ti7mFH)FjUOGx`ENxIqYZ_gg_b$Tqj07reRA0r>>Uq_j-X6f8(m?W z#kX;7w<5FiUn~C&mH4MN?H_FwZyx=Ye>3YD&?imU-ps6PPE^YlmAMPBgTx?{+O+?c z!QTh8f6Bi*R-OH|3tCRwEA%iaK}p)i*9i?8oCRvx?FFs`wiIu49J zrL47=!}FCB|J<_Bgno!VgAW7jQUsy>oUY1+i6KhO)aw++P2|~z?&SrX-& zn()VQ=N?u`XCS?i?>Lii3g@ErQ^85`+w8+g!NhNLe@%&DKJ2bg9FO%;%50MuuWdy! zu>*??v4Y!!;Llm$p9*%1Jhwzi+sho%1kR2aS;5uARnDPm3{l#Ru_(g|k*PPZ=T3Z> zqAw+n#h!H17?suLmJYEyr^Uq1oBroU=(-&l*-YcCZbK3qLRg z_9EJ61F}pJ*p5wOWU$nQP}BywhWLZ5nS1T|Tu1QD`SumuuVCNQ=N&Q}wT_Bk(lY&tyhq#@M0mwpZXwAXpOUf{ME8iWytrl;)`o6*bRF*lNW!IVXWWwN=D`OcCt>yTxT+GUsQxF zpF%me4o~mf$UIY7S7cy#tpU5L_&Y}SUy$>UmK!fj$>87Vlxwqgj?v|1QL31{s!um4 zz1+iDqr`v4@SiYb_BrNli|_-URRnG%%ij4Amp8Z6h#tZjC}4~NUtF4hf#iXV?N0d*Zio?=^(d96$TCwV!^ zYdd*uxDeX=Ds^zDKp$iIe+6~Pr7WWvOTk*~Zc@{dc__((Q)O+I<>+MT_<$6bXr2M{mNBQc_e2TB$ zzVD>oa?Vv?-AlYJYoxpe${Sd>mot?PlD1b%%e$Me)F#x`46j(O?Vlw2$DPik#Z9!4 ziFE{n@Xw8(s4VnRchZV7ru~!-@=V^Xs>-NbZOCZGcUWDfdB-Ar?z)qh*Oxsy@R`RH zrtm%U(eW9TBUtNNY3SE1egujP=BA_2P6zrx=r6FWvW}wCkluVF{mI72{OkhJ`$=0&9)b%iq32>~ zzV)6y)$S!ta=`QWfcvh#`vT7VGnq-pRlcc6R=jeydvU2+U0kYE7vnEIhyTd=s9z7w zpq}aA?fWZ3ppnbkEDSr8v|pcGyVgEd+KT=(g&<3Dm1iwRIn&JmUK`0Li2Q=dm-AGo zgjQbItd@UG|4G}$F3G5jj)0fc*t(ULy^Ac$GGB02~(rVUF zcDBUAXKwfP%E*||;u;$?Rd^jX1Z2C3A%gcw$w_KVR-$6E(wA1|A0u}R!fpu9nx;iB zcCbgMK=4V8^%O84>84HP{K(|F>CK5Hqno3q*%l{alemz-bHX?VvMA41`G&mBC$8~0SERn9zjozIA6}o#~@wkIBgynE2J+fS)c! z{PB~()}?sy$ES!Liv2Dg zY;rl^3^IF7JT@u^^;k+@`paHO*`MY8S^C6uK4&*POWEZNTtihF@5cO&v7c`XUN2_c zv$$)m%8keH&C#9qEK)5^V>ixTG;W1w5qm@GBjUcUhdJ}v8L@@R_g-WYCC-*cFO&qC9akB>x*9x z<`vu)o}Z-;#aD%iHWWYP(v}-Ga+T9CnSkZF} zxi_pmp{4a_&@Y8A_eI_!$k16*3$ z1-AE5bU(oZ(SJmTlCn#E{B$k#5Ly=*yMU|6s6zLCT9@=j;*zcoekpK(o$@_tThp+{ z*8fb}p!GR?nW%Q^- zJ}zmWP5SsCx{mO2LG1U>{e2i%eiP-F|C;ztbhp5=&!g<}&g|T0OXeTUnOc)bC+n;- zsjFVLTFO>?rLsv|lV&(rZ56xnn75T0vue!}8DTc<;GrD`Rht*jq8-LyZ!QGSeAsT$ z_1W#ZK6^Xk%597<0~lxeGv4$=pUtRb{LysSaM}o8IP=GJF)iN7dWE*1Pu?9-3a^FW zx3JBo)f87!s?~$+>Gd$Tzn=AM z*J4W(%$4@@mpu#ph_VmgYA|OB56z-qW<%SFl_rhHWlSnW4jzOYT!;=K{(WV<5E(_< zL1dI7uR@WShQ=1IofkwJwEorqdoIBa!&XJIdeCRy%9sS zJ>cT6NPJ()8I(IrO7FT5*O@u=tw&`KD0ZZ4*@t-od1cAA{X>>+a}5axQ(lp4s#3m8 zuHeIRxeimxSI9M&b2_;mc~~8Kf;qU8$SvCW^RxC3?tx#_cC$IdGgYbY;JcPb%XOGi z-^q6^x5;&aQh$x_T5jjMU~jMN9_31X6!#tX-7NRzl77*?UuE}rOR10L{@uNO*QbQ1C-h%`hhX%w05@oWJf!ZRey};w{CHaD$M*1o@T2e+*Yb{X z9j4UB_^#!`Tf&dO;QIJpc!~T>@~j+xq+HkR?XB^neBXQDEgC-xZ~k##qQ;N%{hgoO zr172P5iM!pJ4v$^K2805kMWT^dS<7>qr>3Q3Giq+yxHTl4=dh+HJHwx>zktVr9eIhJ?dd@w7x8IOxbP|bmwtb3 zXN^xK4ZIDnCcvjYeit4Ue&-o{s^txjc7aFb+dRhRg!KDrJO5Jt)$gKz1@f(mje6xz z=G)899Xy(l&fLa_n$6hHzsHcvn&96PJ=gM1g@+CB@DJN6eu^CSU&+JO1AaaaSIRd5 zJbWPf$H!7Py4Tgl()>Ukj#PbPsmhw?@~iN$1s=Bi^LaQN%y<)CK79!~`??4e;^s9euMO+i`35e0cqB z;c?nh@Mjl1pA@N<-vp1J0RtZ2dsBA1ojtSP4&d)M0?I#xI@AFoBG`00FqxgK~lAp_n{ zXHIkLMZBMkZ-Qg+{`p7#h#Y<8`As>0Cc0JcioQti`Uttve1}i(ia~b%y`tQ-2fB~p z*}b;rULBb)=+vjUrUN$1sO9Kt*e#D5Z%nR~x!5i-vD%s#WDwunL3;D0I#@3Giw>d9 zAq2?QGKcUTHpf7F=3B-0RuyBob&cp|%7h`5DXa&6fLI$^l+IcR>?E>|;e;XD zQ*G|#d9KY?+sE~$*w?pR=XqpW+t};3U+~yxGzRCpFm}xToXuc7w zmwFVi-_>7s(Z~LccT&c2W2VmEY3by7WK#d#4cG-fRy%r5vRC{|u%ibyf>ic_=VA*K zo$k_d%|`YprEdNHVv5b5W{l04I{k&i%n{{t4K^6HI)1^rv8AS>>SYm|RzKaTsQOvg zrq#~Bbs66!=$iXegF4)QLr~cL8Gq|K{x;$xh>s+m|F>@AA13|;@h6GT{9BLl&l6ur z{6*qQqLcZG8wja{E(F#zC*DZtN$5&QAoL>KMCeB7Oz1=CP3U3Y;zCwuJQX`f4zfT3 zW!*%%4@2*{{av*g1nG~NLB9Uj1fPig(=%b}{58X^u|sGZnKuw!Wr>m>TK1>0$urt21}7LTO^YmJ~4 z(*n_VFQ4~4|Hzgf)Om$xsXy)2_;ize6TqiS+WPp^|DEW$!lPm*D1=96y^_%v zd+>w?Y}&J`23BTam)MV8qB>j|Ip+_qnhN+eMYmJW{Ug3{S^u&V9-7CVo9A!9{z+cX z!xN`1F`h_#$;H6~>55vO5uvaZiuM1Ke73w9^9NOqQOv7mE0#t5w0{`gb8X5Y5OlD4P8#|M^mkO|<6xzW4wM&Kn`;wm_C@4GFWb{b<3)X>mGX;6h zDr)^9#<{b_O8w_@Wu3vP+4~2d;lBTlgzVdPbV2s*kv#&r_O&~Ts^7h5)9M-U%meVq z!|=#Nc;th>-8lYL;%kVnCEnxjH;s=Bx#s?;kPi39goNGy*x!4NA3^*s;-iQ=;Tb3V z;e=nD@QV|^a>6rC_{s@SIpG^;Vqd~dgjB)}gqsPy2tDmb6hpc2l@o0FoO*~~y(Qna zjC}R$>AN>mKjE=g@#+3P_3N($d7f5->q_SorDTLDj(qq{WaOFnB4ka7wifJFcus7i zMYNHO1O9%^;hgMQ*qxHKHn+Iv(yz1W*U|KAIQ9*(Wz3;p!|B&*H7qNeew|0ZHh|4T z>DN>AYlJbv6G^|u(XUSWm3h0?ek~m?^SWkFyq3SgJq|kJ{)L1tAK5xPci4*cKFy!n zCN`fw9j*6i&?SA^*<#T8^mA+jA=Ljv>C-aT;18uwxgKGS;;AzFl>1Bj^jZ4!xBm_L zbPIjDLhsYV)T0HP+y?seY5MdPlfh%aU-r}V=`!hG#pvm;2G!;1ecDg&(|r0=a5NqK zdrj|C*;^|8ZUm?}G5lILvcN7d}{)5&1+oI?M&9AJs%uqJ#7q1PQ9(OCvAGpnFFjvItVY9z|#h! z!PBo8I%B>w5Tl=7G^nx?jNT4L576i;*gY4&rrf`98yI~%7=1wJXTe_$pRwJtW?|Pe z(?Vj8d^>&j=cZuK043P7Md@hW5)@*6midRX+q!xVwsC3Lb;yG34u&n$>3s`p|BgWK za*n{?p?AqEbb3f^vl3}_7(?BimRH#Nu$Cx@^PU9zCz5|NW45=45_v91iTsY!ZO(7& z=J9Up>p8dWX3uxqZt={>LJuR1AUsJByb$~!iJo*fdeVR$ozaz2v+qPtx(9ve3wu$u zw{X+yWyn=BCOpU(@DO9b?btU@5kF1*4DomV-go?O7z3VQ44A|i5WWBA@%xB>O8m3d zF+s3j#sV1=WNZ-J7yOs;peMmUCdfD;V}XnbGH&#?AK9QpcIwBNfQ)sPI*KpUxUX79 zR_ZuVehIe6;lC{q+dqOn{MbIE-R0Q+9Q3gh`sfFJ3=OtePZ^EL5w|6H9MH#U=%WGp za6um`{*>aOk9_DO5bI}x5wpPh&Khk5xl8qPx-q4ei~X~D5y zfPpfWb!IGEp@dpj1O;1fQ$y=M+}6c&FifWn_RkA#%+P6L1+=k6r;Yuzf#mfCdF@jo ztSyERckfp#Y`vikqfQ&Qi!6XF_bIgTS7_riXyZSiy-&CG@%$C~_ze2UhaMsbJqdUH z6xz53+9>$1r;RPp#@P%XZ5*MF4tyTD0%+rZ_89TMOK$(v_4CJwJ@QT97!mOk#|U`v zqA>#bt96V3yG3reXpCUL{MF@lLwN@BN8p%nCAmEuzb-#TZV%z#GET^Pge%MKhI*V4 z)H5awjH;k1;2KF*}gQ)C)dx2*mSMnAG%Ykj4$%NiY)e$ zJ_gLXbPT``%0*)U{ogtUh|PsQxJbUI|F16J8_J#Ze<0>xD&JQ##{3ld-mkOy`~GtI z-cY|!`rhOke2V@S`TlDYeNX)7_WiT;{lEV===&}7y(a(D_oByW@;`mQoW3vB<^TTZ zaVzM1zYdV6_kDgq-}`j|(F3IK|6T9<|JfLS<+TVurU(2Kdum7QG7GV%z5#D^#Gd+I zRCBLR*i&P!YESL>v+b#V`^lB;srRM*e7wI$zWEWn_uErteVW*6#GY!wKTw6i;T7x39FE$(Wyjn&PWwEs-or5OzO+ob*d z-yPgP0xtYB`R6g6e>%4Lf6G5}e)aSDr%b*H;2)Rya(U^8_@|ILhfDcqJbt$P{4-Sj zo_{95Hxckq1U&RS_bU985WqhM_@{FK{}|w(&H?;mXw#4Q_xxjM)1P<%|0KKC840;T z2FIneWMzHWznYfn&iZKSYU{%MHgYp_Tb2k}Q|R0GWYN|XLi5;zupiYpSVJ1ko()+S z=C_f{y3B%=a5 ze~JD4+h1OZu6%i2*?u15IV0a_bj6xM=DAn_ug!C@j#ewfrS@~PwWDV?HuTZh&~w3L z&)WklXKVT~?ZUj0%qPu7@2&=)Uw3kLOgeMSxk~w4%!w>ns+2F?$a=2^)_O7Dz1*pm zufWgE7JS7Bc0Y@5-OU{8Svc*U-7o%IrxEIme%d}>FZPk%Mbme$W$wvfbgk=aRBl*y z@1)v{Fx7D=0$mzh-#lhwZE#!Hy8I5RBhM7%I7B?CBk>5;akxWziaawG^336TmS+lf zBuKoQKTU=&O##oY4@e{N-u^WGv^4$XS=#q$@+E$|KTUrv%?x=q^!qf+Bz`wEPk9a{ z$~qFGL!Fdd%U;y-Xa7E^vPrS7I&KJCL>n+45$awIjT)dU+H?3U+C}V~m8^gC+d0#8 zJEzQR`0Siv$sX*SWBA5I9|ZQ(0nQQdU=uIY`)RJ;Pjl!e8As<>_K(-zN7y1QHXm-Kp%~vO~iIQi$3z(j%DwL*p9#NBdcyZw)`yH z@&7iQ+Hvd8$EmIIO#n{0TIczG9H&aq5d(4RBhEX#2&YoPsa$Z1wJL8x_e)r7vJ{$s zWtdvNtOT5T3!G}e9~T()j86N{P8+p*;e)nT+CS1E)OvR6^xdz4Q9k<~e6HE|RLAB3 zjQSkf6^zR7^gT`;UeGT^a7v!PAAnVdI}PwX*U|=Scy)NeZ2@V&$E?Gh2DYZ{4Ay9L zyxerl1}jJ@Pfes`F@XKhdX6olvZ%;@PeV*vs}u18IQa?s1hDo zbzBKsL|bWmGL|`^{}U_|`Rr0G+ra!@AeL3@ec6g-^yPE((+IaBY;2kFZ$=3vi5^yS0Sm)LW~hr^Z*A=VG+%V)r`O`5Hidg^_-Oz%swS4ho?p_Jf@$vu^rhh13LV!rcNo~(ZyNrAN$=B_ei~Wc!Pl1w^8Av% z6pVX6pf8tq@bzWBmiFSl6s&tcpf8tQf_G1YcdNiV+KGM)cFzgu$A2Z>{m_}1vR=5Q zUtIlH_*VFuJ!{`!8!p3-gegkoG|mW`5z}129$SaWjNR*$<_C>Br6C_Wv298k z3p}wNAHBJh<4WloSi4Y6nf&{HX{#Ufz5X;l3$K*VQr0T`*tgmqR{Ynj@5;HPv~?qO zHJAAOogSmC;_GHS^Xp^BT{EHrSy^?JWnq0&jc^>1W>>+B; zH*=YjafJtEw=su#w6*@M5o$0ORUe9EZP3gm*%^dK4taa!ApQ2L^q`j^qtdGZc1m(Dc zG8AApB=3<@PAfKN(Me~wQ_Aaj9yV?I?i1AYq_Iu1__=7yx30fFqU}d?;Wy?>_SBvt z%wrwbfne+o>{Be?-b2o-Ov&f|V7QVJ7ow!J#Yaovcd~CLO>NUujE{{m7h2YckB>Jd zRjy5?4T~*pJxeD&x>gDD<>zF+FkZ1*OSU^b@nDqXYX~FXASFfR48#ON9BF56kN1@7 z@8fwdWho|2j-F4tV#>NSpFBOETs;r@rj&d#0`hT@2kX(w73`;J_IIpzq@#z~K?Rc5kBf-?B(Y`VD4bKp0<&T)FWi^|G-DJ#BawX&{P+cxFm-|c!s zgw{uKdcVcdZ*hNp)K_MF0acTJJ?j~?{Sa5+$EEPCpJxxE)BPB)bTKF$hTg0!IRD6> z+4q1yj(+fpp>+83@OcDliWEcI-j+~TeM>*3{$f0{H@CoJj?TXQm3|&eroDu}3S0S0 z(fJEMbyL+5qMr$W9Sh(uSTLTig8-_%wKNduM+mg zN;$2(6aLBy;H_h<+h{{s+wcwNid%OEx3zu@PhGe5I?wf6eSEbE|5F=+m6U_*hxYM~ zrD=)yo%%=18lj`t;hi3|PpYYnX9;u^j}IJ$xl|*36Sp-x#3}WK?+r5M=nt%Q_Z8_)QZO8Mp4 zLE7Lzuy(r}l)~Zclok9kC8T0#evp>T+h1XcG@XWubrOfOjdmdBm@BcO}C5Ugk zkkUnE>rF=Ti z9x#M?5J)@^@vNNnX*oPQ=uo`U4y#z3>*o7B-u;H>Pa48K`^a;&v3*ngjG^b6x>eYk zdUKu|@lt=hCvk;%vHt#g@P>GNsUGjH)Ql#+$sg~Azg9#0ri1=?f}9U$UZb>gV$+P0&nW#& zBFSTvc9yJm-Z%Hn)Gy5_-;UDGC#ulW->;nuS7DU&_n-TYG!=3_IQP;X6AkXp zG7?{$HRC%dy-)UZ)m$gn>s>V`+jH&is(D?m-FPq81m4Tl!TWYxV|g#vj=Yy^d)~{n zE$<^adzP?*@GRj8!aan(1RLSI2=KCEC?w!V(i^PqJ%=!kkWDbtR!Ov#j5W!@t}`BZzEGXL2%mCw zgJ?Im#pF2-#+9h9>iBz#v-2Ze)xmp~XOE+Nud)}V2kj7HdpdgdH9UcvECGb^_nlZ{~zmpW5fSqtZ&q@{&gMeHOvR=HOvR=HOvR= zHOvR=HOvR=HOvR=HOvR=HOvR=HOvR=1@n!B&%yN%3GWhKBupZVBHTi-5`?es1K)o| zPzi^@_br6C2*p2w^`}|86F2*#!3y|lV9j|D*xsdi$@mpumJ0TF{&Ww2rI(rn|Nx3dl0t9zZ{2z`+Ebb>t&_XsR73l*=xdXLTs7-0G43$d zMMbx7?kzT~CiFL-F5JFq;CcKZYqqTR+Svprh)bGc(ed!7lsv^TVkP#sOnho}XKWud zZTbtd8M8By)7`9Db*tt&5AowhbKSVin>^Kw{o`*?%7-%6iob+h+CilqGPrIoFG^W~ z50eM`bU}{qYQMd#tG(Mb!Hx_Q>yeo^%0s@NLE25U*DJJZ26DfQ6JJW(@xND)=kYP= zsdg&$J88=n#!uGPj!cCX#b!7Wn_&w!!|v4Ei$9=d-EKIh*Y`HV0`Xy+i!P|!3@7rg zOt%-dU@z>4ovtjiw+ET5elhj9k9>=Dd*MLR=3*~&VK00Mdm*;M`YGsy6|MHdj++0z zufA(p*o?jK5WaW&hWgq+g*6u)DW}*1m!iuRldtGsavsFa4&QIr#LFxJo;VeW8!uCMD=sfo<|b z_3zJ_l0ut8mqMTa652HBv|08&Z6@^Td=YJmzWQUdS%8eGhzv;G@!Pk~&ufLyi2q(_ z;D_p4%9)%$h6CRO;DGE+nW*7FNB0Tr=L>b4x}QI?c-9Pm2%QLxEWPP_8u9bT5}iNZ z;N8m1zM4JV&mSvw{`k`+{83EWEAt0u8bc@Ib5H!}cc<=$IP*g2cP&2O(Er?-l<7Cn zu$Q)|fR5{+<3)P;CXsJ?01eM3t_0Aq^6Q&xweRFCJmFvHSnU0`Kwo}a|Gj)8bgWLf zMWbWI-M5yr5X<{Q$D@t0IvsbYiZ(R&D%gIbNBq`RfF^${jMK8*{ zQNv2H=PB;-wJL{1`1v1wWZg1C|1$i`m=f%=ZlaVmTnclJOFnSaN)C>OlEV1^kHqE^&;IZz==6*ZR&T~ROZx*zGU;ESMl39zA!ojY-%4wOy7{qh&-6VQqGJ0axiD~o4Ug)=5p3gcu^_{Wv zmGTqx^>Y)H`i;m6&oS%%&yTD_p_jAL6>j6*4}ZtJ9^9FXfuyGK^2yvm(1c zx~_9im+TB|1YMq*p`~~BnW3fQ47Td@r)FyR8GUAI-{hLps@{|G-f+;|1t)&OSP=VvG8UjSK16tvF(H+(Q5zGMYh%J+E*TSK zyp}Ox31eF8m;j#T%eX+ebX+h7j0++|{xio085hPeJ}i^*?8n9i>eru;&loXN8zWXQ zM!fp7$B4oD7$Nn)Y>WtKhfBu^lRi$UjQ1|#ud9p`zl0uSJm~zte4H57eDOFjiSf~o zH&uUY8Tk+Gj3{IM(S#7rh6=@|%(>^I&DfYN*qW`(4Tj;5)mScigRIMuHPmtjlx9B& z>!j%opH4SwYjK`JuXeO$?hqOMEP6vskxy@U;fAY^6-#;NA1fTOKD~M+dba4*m+B3V zk@ko6hEAH^@C)jE2pysTy6bu#-1s~-mXjc>$*(80ytaui#UoV}J9zRz|u z{%~HR+_UPEJSKDr_6F5i)N4F$>Tw*sjQQXCxzuAxVPWmki^@BW@{X+)ohOK~O+oK* zDXJr+yH%^R@&ESda(RwhmNp-e5vgzjI7-XpqZ`>JN>d)`^$ z6<=I*pBtg0!|0!q791HVXJeU|&o_nt2R@;vzffto#v^;0W?OC8xlDCc%w3_!)s1EU zx%_(^dT%y$5c`(c`NX~z&vhC0t*3v2ed`tMTcrW^t)0lq^1o71^*4j+d((m&Xc#O5gL-4yf(El%IbcS2iDU@m^{ z%g1E*_9P8c>I>21v1iu1uw$yEbDEj25|0U)7h>@@4K^By%`z`LubDd4V4s*tDSKL8Y+f{ zX8r&T$=P^9M=y#033O?prDCJ6%}QEzPgxHURkZ?I;y{%ST6*jvf$6X3xsT2|RGs8z2+180`bN=qr3#TqPZtTI;m>8qqf z?5C{3Xr-?hjlK?ZCK&Xj(T?!E*bub1(9UPK)HWJBCQIMsV_O*m&lgU#kI1BN-1PHt ztGUi!)+Nx9X7e6%ZLM}M-{W6e{xARa(X^>)GcwQ=Yz`jiuZ8)zZLFV@wIgXGl+y?K zhpe#>obxcZF~<;Amu$4u6^|KHn>z^`2eg@k+$-_8#5jBLq(nLQtzOnIHIQ$jv7@zk zR6(uQf0X$wHrPb`+RFU2(AnR2|D;=5)rNgxO>OO zn5QY@c(QLwk=W3?=j+BtJ53KI;!EJ>)%y z{3su5D=k$eCHQ#v>+4+eUB>ate_K?Yfy}ANW<0|u`}pELaoNlD`x54Ua!b(DOO$$S z>(z6(ir@HZ!k5s(BlxFC1NU>WQNM}YB)l0Um;=p8I~LIANAat#VbA2m+LBTqt>kd7 zgLW_d%-D8e%3x%REM$yKWQ{?{90Qrhz8#zOZJfVm)aJ6sS(WQ zuHy|6o_T~+#s}75)je!bJhBFYGhpjf&a)7|P%m>H#8lSlln{CtBI+iPelqDsvlixH zk8G_^PI2~i4(aee#TpjO5jY?-U);t!sj7M?=6Ja2#W|)2?yxY zIqO1ukNsx){MoAO?eKJ^{yH#dCvA8=_s{c>)2ubjDLi#+ZsC`=I-w`A7qPy9^$^fh z;R)?oe&NYm<#}i3&18*4Ug4X!`fW;ih1Iu8`cj_BHwt+uE@gZ%&#U>z&U8iA0n1v& z`qXy#+|%Y5!_%qA?hSqju8aJdkKEcBc~$0C z@;GPXfx;y1eJS^nrkJ>_l@z%Jc~z5LM;ooW%sLsF)#j5~B`uiblUXNg@@~%Ln`?7M zO{^8H64_PCzKy+gWo`G_UL^i|WSgYATLa|Q7*7**K{l?xmU>(+v$|{ZCtpcsrQDN! zK0p1ki{vrd$l0W=GAm^=ft!?Re=_qH%vt(n)bEf-4u0*IA7qX&s_I#2;V`n&{u|iS zfXrIP_-P9NOqW+KCrdN4b-~ucPqsr8ZrW&4+3A>Qsf! zbXD1PKkNJtId$2!O-G;XYT?`r+EkNW>1&Z)#XfQ+`Smz*K^c8(-gc{}@$sO_*|gm; z)%x=$Yc3i=Yg!Y{Ah)=F=__f5n_UM=A}!P(DQ z``eZDjjV_9(_K@yi)B|yv%?U>c@fuC{p)2{AFWB*zGb~;iB3OPl3&FpFo-=Ne%V#z z*;e_LvJRnNPa?+_i~I@=`DEDZYPC4DB{FQaF2f=_v(LcPv`m*_rEO=huR2rob!6Dl z!<5qoa9Qxe1J21>3D!r{4K{*z$gJri!-97%WLSx7|3Zcpe85MrCc_T&%dp_oSvjv) zr?WET*oTnM1|vgR$y?;u*V*s&F|un5vTFfj=j-@C^UJc0?D3e3tR!Wr{;uWSdCbQQ zMqYXzSvHb#jRS+f;H;+&O1LJ=Ze%_Dex34RQsk%otf`IH*IsVsUq#w`pIqzs z|Hymu_$Z5P;s5FGkaRi=2?Pj%Nv9K(B!GgfVlwF@fPp{*4epF2pppRwcSAnY3lZ zTN7_#-%aIPEo1k?ld0&h7rJs+A2Mh(Jb8%sUB+nlG9EkQnn4Mzn}MEc<2yFOiH7L9 zELDdMMTa%I%XqjFyDks>nc$V+D@g1;QeD@47X36I-j%Rcw#=J$jZ#yB4x5EOdKTWE zWsSJ_P>gz9d=0W5T=Z61V=HUHW$m=A3(tc8pQvHMAEm9MHVMux`nqnxxkX>UE#XXk z&9>lYsygg=MZ&l0Yj|5XO<--W)E)Zi*e}pozd#@T;u_Y{$(yxzQ+bc(N#Y6O`J@&4 zE6*mL$9QJ)jN`e$ediJAu=IuHPt(4xK#yeqN!^#!;V8l$zEMv*%bR=_9rjFs4vQ{| zUYakuEA45b=(nm4n}iO#5gqo003G&ObXXfY>VhwQId&b|uSUm<%cWPinboD1329@JyVK<<=c z4esSJ!96Y`&k$&A!p{(5?i&9FK8RN4%i_Dnw8GcW1>Xbn7syLlvydq|9r{g@64Jvu zh&!Qto<9*8X zHD!5|GM%IhJ>Ph+N1qR7_Gq8lC%%7b-}tD3ed2o!>>EEewO{od@!Jgb6~&t zy9W}k=p7$3s*Uw3^HuR}a@tz^ygjhT`_T9rn)d)33v42=tZ-lpukNvn?;Phl^DC0# zpNchF%UHj(fioX2UwBQAGVTQl!q?z0-z>^E`x51wL-|VnLHW{r<%^*Veco$>pYy8t z1Q%r}{bP@vl&^vE6<65eojHm%55J!HK(8uI@3E8eHBi1XU>nSe)dg%Futa=1!)SlZ zr{hC3u*W5=DVsCBq%HlUdE%Dx-~*rF%fEo%zt27KV={u!vBILN8cLMrrUcRFJEyK~ zVQlM!Z-zB1SFp~&!uU1>ejPv#y-m0~GDgOsOvZ&PNfW5wo2R@-(hZh-YN|X+aZG$zM6Ad-$-jy;vev81{ zVV~>qF%pk$I@U{%=Nj01BlPunw!q_>CiK?h*BI2jJiD&CL8ISW;zCc4cayl#)8a>! z5PV5DsQX=xs&sBpG{32Iu0KP%@cWo*Jz z$mw!>bG*PH%vnEg8cW2fl$h!#m6TBw^m-j8ebG?go5=(tj_{zw^xJ`Nnip)eY;F{%JgIc`lULn;%)n8tVm|f!|8$KZ$2F zkBz4_&zT_dV@E#39-6m(duWXM9-1(94~>bj_x9hohi2M;VGqq(bhmu;>=g79=?}7} zWSH3^_KhdktgSU(%s#Y;9?z_q8e!%hR(;(u^Gkty=XT*Ae(E3WnY-f`_RI|m*fYo4 z9Ce-YI$3LrOsVGC&m((PWbfRaAd$_WW&9! z!rW^+8qOX^mOO&&=!i^s>#NxZpT(XYp+vf$Fm!a!qn|&ggt%J_t(uaUTUe@wgPL}; zcm6Kw;4FDYD$(vwsfYJ~S&hL>$2r^c4Cg$Ezp$L}jnEmT#JX8;@0q6Jn3{I8r+$>u z(QSZ#y-6!E8k&wTWq+eF#GQejDs5sTa?L=VuJTRA(3C`c0eacVIOXN-J&#$ zd|FHyR*GE0t{H<&nna$vkvZ2PSDrzSUPal&Cb)&`JZ5pffCu^X2=eJALyY@j^1KFq z4fs}LhbBAaH1@n!-Sc)1*(7IgPVmM>E*YcglR6x^WHq)&?&xvkl9j$$=8Yqltj3N_ z8@zGkPzG|!*mI0VA2}p`!wKFvawr3R^jI$)jvUHRguWg}4rL%u%Di#pP=+G(bvSa! zs?xhbqn{*kp{K_?NnGgZ@wO5ddV2h8*`p}*Zct@ZiJEt~N~=W8H(ZrzA{)zk4%cM4 zia%VHi!FxsO?k+)J@8&Eww=%eoGnRkGzL3&|`-dNAO-BUn z|4H6m@yU+Dmhuqpjc%LCT)_tRd+cU!$2Y8DY;sv2c!T3I^4`I^k2jaOMs9@GB;KF0H)6u!L`NxlX%hGoNwYz#3-5CBP82;D`!j>S zC%y-{M_I})XRmqxVYu1smi3fj*n_!dZIAFX$cI|yt|l^J@SiqN6xaZ_+m#))n_}DX4&6- zda1%3lEr-*Su~tF`0OpE*;O)oMe>|ED~6-zJcRu7kbZWi(tHmxC>MD$owR(?8r({= z?4SJXO1>-a5K~oCHnt?;Cj41X8%kbmTBS4}H}%-u_!p)5R`TsZE`5;{QdNg++5?To z{z~&6@Ee~qRNWZb+HC>2 zw2J$!d5f+)td@I9m68{^OTxW__!m#xn|IB)ZQIkNH|^#gTj({xpLGuuZOg>Bvo?hN z>dc!ot>8X*<~oF4Bj2tJH@i*T<#{b*>L-hXtn#ssLpxP)a2M&nentFBoUsDIh-_VfJ#z1FecUFyKi8FS}Nmv3&|t=;bSP6Va)3JV z{DV3fg`X%3J*Dw4_U35Lgv;d~lt$!hq#@e9hkuhcU`0^y(T6(9Z zZ0`LE z=-(B8WAMsbUHf>K~3e{`S^K~y?H(9-Sl+v`|RdExLouZ`CifKmY0Vi zL&OJnuL;@1{qMuT&lNe;S_==BaF`YzM)>QymFBNQ?9J2hFZH6oevLhM)X=sm3)?_^ zM92a5{I_D>RF5B2YC4nesG&1{Bt7k2!Lc+Mu`|>>e^Y9fsB|LmDe7rQ1Sgtt`#M!G z`2HwYc0RDKW`6ay3}%*pw3X93}c-LfZ@L08Hq5^9fBatbNLOmChKI=6IEc zW-EQ)x*af~qsKQfx2w_tmvwP6r#s#xw8m&Uh9ch|tlCpwyW6I;aL<7eTTk#>@Np$# zCyK50wYv>4$v0T{kqO>76)!`jKTgMsPRUT|kHcOYS=CHlE54(|p2KvwQuFoQcE%f_ zHSByNaM9z+dX7--vJz7}_Q~g-7d|Kbt%b8a!Z)9;v)8=yVMu>9e2{zQz2SE`pV=G! zo4sc9f9N@~x@;iLAN(|^^|-?G;%@`iWYYf`=89ne3b(BG$50QZKM0)JnFKc>G= zyMgQB#seB`J@3Zn?9J2{{mtT*y%c7~FEhTx$wAm&ydTDniRNCHVxBELUzp-IpJmSB zbI!$jY2l&a{n%Sui;N$@e%sg3uO8>F>h0W#8_zw}8QgVS!5!6AM=~6H(3dI>zv6i5 z@K#5=Bd<9gIr8t0tw(k^E-Wt{`O*Gfj{jUI)%u#Op$4Bk!fMbGy}3ISe0qJ4pXB-%C2*olAPDj-R0fH6@XrsmizD&9!x!d>e**8^b>|fq$=|t-HZ$ zZ@x@v%baL5qW^i0j?ge>0GD^vAL$y(H1y>33=gpMNTeXPYV zb__q8YCq6+P1{7?1#fOZmaYGb^l8G#vP^Fnd#&L$Eq$Z@Za5Cy8%EYO)adz;lcnA; za?<7vBTH*v)p3xA`Q9+{(BKUt57%$iagc|Z-Z1j8;T1g{d06TVBM)ufF!HeWWgQ23 znC}fE4-MWha&Y}i8cu=!ZbTlM_3*(h8f=079<9GS>hJw8BImZ)S#!zyi$EENtP>gc zK~R{x7qZRCvqF_|9X20Aw!MNpJBy!n05a~we<0f$kx7@9Z3}eS=F(&v=Lq~%w$0OJ zTe&LRYLJmXmu>S^*>>b2+2(q@Wo(|T`6&&D%30%_uAUNcgxSaoVo1(loSBdpp#ypMlkj&dC?!1?4eIG=nScX;Lp+~L{2l@h%Ndr8jjOXYm> zi|^ZIO!D2gyO48uz4t>@kS_ZjjRs4d0eSYpipa_-u#XygBe;4Ree@MMiebI~Jq<{I0n=iQ0DY%#HRBch}G z&gJ$RCF;(2LsW76=U*!?R-Zfh)ds_)f6Lw1&0Sua&G{}RQ||b)ead^ux5Y<2l4m_R z;EwpY$&;9)x;;LqO{R6OnX_LBzd7JGo@w!uCfI+RYtOdMjm@@}$7FM!@5Ff1jFbyv zlNNC{>Ybday_oUgPVNJAb4Kb8V_4BM_%vl+*i5;+#!&U#=Y{ZK5&tK5 z2C~+GcWN7d19*qspy7P7Wj*eKr z&psj|lXLFnozGeK@-F3U5P7fX4pVv8awZh-kZ(+Pea<>uxhq)CIz7AO=)1FE|Zadhub>ZQPAc z-cf>YGx+iIwe)F%pRc8>_|$>mF9SbiJ$I=uu@8S9oaxYdkF@8#cd3W6FPZkO-lZN9 z=B_h_)kz;roL4f%X3mRGYGwa1E17;1ZJ&}El+FC&trwCaw6x5iLB#)bA*r1gCsW56 zcOmHyfjGBZNV?36lcnR_d?BevAkIw}lKSd69XU6PZ)M8aSef)yIg1h<_Mg8e{nGtR z)^E#sPp7e|KSy@|Z|`@LFZ;Qy{C**2UrSf<>3@>$QRxTZQ%92i z0{AHn22Vfwp7q7QvFi;r1Z`I@qQVdt@qs96Xy1V3L(SMlkulD=G}AAnDPmGl=?`T_XV zp`^br{n%#o^rs(x1&SRaFJKOcid zPx!sY;CJvx|10$Eg-O4?Z?k^sCw+TohhOj8PjjxsPjugazFipDxAXPBok`!${Dr>F z+PlSJzklD3pr5@!A8&I}AOA-0*q0^~@Wp zI1i|OT+(~*RrO;v{e#1#)5j%!jNtQaA3l9t((e|0`naU4`1El}U!l?uz^9K(`WBUb z06u+O(hsWijREwv^sm8B$v1ii(D&Q!zsGTiGWF)YC7|!y{x|mh=t258fBl7|5tkn4 z8_-RDFIh0`)W3!-n4kFDWkH$b2^i<|I{vyW$Zh}2vS50kELgA0f>LAw{os=0JbP^y zhyVA=mMRWP%SLnIP%+2tIWo=_)=lLDE;M^aJpb36lPjN_=9tH+rr{R`l6_pW|D~I+nDT0%S!#_mTat(-VF{ zRwR~QcOmIIU6)Atxh|3UJIasEC;v6%$9=ZnEEEjKwRDZXmfjB8(Gxl1D-S#pI(_%wk3Yfa8Hjwj z4xIM*@J?!_=S5iOy*N`_iC;WDKbG_sV zkTSCu=R=!gA}V3#0wq)$E|VdReBw3q&j+|h7ms&Yrt`|VZj8#R5v5z>)6l77A5 z+YEku!LdDt%)BeJ%YvmA;m)(bv-3 zBVR=B_{*=Q_uDV!55TvXRQlJ8JhGWQ*C3DX1E)X#_6TXO1jwTX_9gxQNggGZj=7L@ zyRH-U`ngUdw&L$4qZXaeWYq6*-+D*ppdV9|z8}+9JC3r~Jl5%4zYb=5bL;?DP0UK> zrJrE!!87)nQ>H$tRmRXT^JN`7nIk^nECQL2ZhOi3XxZOlW#Jc59S-Hne zeBdjM?bN+67UoNqMDB@;JP^@o$-W-$sk0+HU9tZPcP)3pY~ZmeS=JKnP0OPUyYS_2 zQAnWx?rO&X7y){e8{@V)P1E^Z@_ zn$}U7ZkIIX(>CgJYKQTsyD4XeA*`r-tvjy75Lz_lNp~FUuX82r4*ejmh@$@WX zKP+pw@>%aKbL;jQ-7hR=4&GZ|i`es9Mtxw?TyjvMfY8`*d z+Vb`0lIo37yPlaBTT;Ei&RusO-9GiQpx9fpKDuM-5Z)6%nlyD1@3|jMo4Sm*lAO;u z+_&>g;JJfmBF`kA+jyqMznQ??Cv_|Pp7W@uB)+wa@19_NM*dv;g)E)~cr`bO`A5z? zd!M?ylXAQ7oxS`eXIQ5Z{2TngOXhyp88WKZ8OokvZ`9fK;I3tj)K1#?Fy>Up&r{BM z|Mh8L3;EY>^o{W3tSa~Hur=YavJSygSHgUmtQnZh+B8cH>+KJiJDFF?x`Dy$Lm$LG z^lbK_XR!}m?t6Pvz3=Up<}l^_MmhKWAFVN2sIM_;udgwwAl{xeCXced;W5^j>|~8e zX}}tjcC0a}RM(hXx=#nLF_Av~OKVKh;(y+sy|};Bp9e^ufd1@?@ZNJD$GZQ}ri<^n zU&tNz8T7GQ{2L25=TzmYci@HtnS!*1DC z_GTmUWEpMxY-C4wH2b&`Xv3L`!IQ;(nW3~{!;EehdgIR}8vrf81c(zPNR+?D)B}T6dbuo{zO6Kj3jIzH2~sq(I9UWOlR)H@PMLDf@N0 zh6lO7R}2S^Gfsc+QVx6~Z&S$TGY=gd{uSXtdnY=E?7iJFdhayH80HK&jVh^r`Nmz( zl+*riqusyp(LGb2;@uU!JNC|S!GqkEJTU;`Qdqu4i=_?|0 z=Gs{wL4V1loo}VTP`}Qp{G-TvFHc-w(+604ld9I2rHC`Y#x8;<Klfsk5@FW7B zR2#x`9q?o+JZV7wj)W&?;7ODz${h_)65xpqo|pr8QpVbzp`3e>sM0qUji3z>UXgU! zzPK*7y>Tx1F>zL8r-|@myv~oHi}=wc(x~#|6I1KW!TkGM!jHxF;cp2)c%Ni#;hDwo zgYd=tSO7mB{vG)7Cj59(=f?@k(ZZUddiXI9eryOgx{aLqFb{rg6y7K%_aH-1-2|N< z**ZTa!Vi&O!jD&Ve#BE(QpeUA-OfoHUi`|?s)dHor#BlctB0#~7GBgHe8MZ1u&(Ku z+2L!Ju&#+cHFa{1fygM?=TX7Brbh1hT)4qp6>|~IMZyC^sN2iq;m{+zVlng<&9bwepBfX_GVCU*aAa`y6^X0?miZ2S7pv| z3%WG2XQSTM-waoxPtw-q+{dG|b)gk9C%Dr&?pn5*LW*LaSQ|IsNA6JMJQ$I=_e1|2 z<79KJ5`Dg>68%Gt5`AG`S9kNitKH}K4Rrso?;3acNY-)jjN!SDNBX+R-LcI3-hl6B z@ZQ@TPS#Uh#~jg(*i@g!msB@T-u28zbP|!pgINP6vUt)E*U?%Fn&C#goHgA)GBOGP#nYST`hSM6o#AW2|2bdZgswUoA=I8by(3~MULLG_d&;| zX(iR$AK3NGZe5SP{o`4x>^%ALY)y|nI_IC0ol20V$70ioKCSAp*s5xe2j>G9%U<@*{zUe|JD==j%)MCl zI^f+e>$66W4c-OH+KctsCCK()(`UW*g_mzX*Jq6fjtJkv?ZeN&E751a35RdQe=FY> zz_&mD4t#qPzNz{yd=tG})pz0B6Y#A}*LMeDb36&(ygKg$oo^EZ_~zApMeh~9J*)HW zf46MC^qS^h(|g;m%c=^El6`mW>&&5VuMSPaSBIZxA3Ap^zC6w`DC&UyzY71}bF}LY zq-||?u3s$vy^g==-|O(3{d->f{!;$E0dc=w&i0W!0dlrJ>gRIS>)(^})F|XPSf`F zbbI#oa@#ESDW*2|DK>>Q>aqqtGIL5$ds+KF$eJHCn0OX(S?BJJXA_sTv)=e1;WvGshmmW z?LQ+8{{AzaeiKC>ilPrKBW$4mBn9*zBmJjKK>sn)f4T(pA7f-Taex0YMh+q#(0@|x zKbm;*gR-m_x1}(AS^wQ_sg5y9+S0H2VndO|7F8C9B8%TyZBb=0Z5~;SzXVxqDQf@1 zqBuDd$Lot-g#TmJKk&siF~4#r`~9Yrjz3p3+q|Zrm3D?oJv48`|DyR}JE}g?3hXeO zuDg^l@A5PFMSB6?kG)j8(r8`UPutPGU-GE!s-s(-ck$`JTE2_@w4tp#xEJB89gnXz z6PfIOF{f&gYExQ@maqn0_UtUdR;@-pKby(Oedy(|RH%bBd&yCX;5> z(k7S(TazT-)r*s*;S`W|WdM%E`+IS+Rh(=|%kbk&l=!t?oIxs1xulKs<7|}p4YYU4 zb39r0f@E6_Gg2?e-8~CF9$M9;ggyP4F?==ue~|P3iuTezjqshibS|V$#HUxqUPZ4@ zFGKg~CHs7E;i+zXdidp3zil9o6nwXCe7BQz9!=4Cv=|=A7`g-=Jp_-I!lPyI$ODgD z@Te3XmBFKOcr+Ity`l5y4$5V}wtGtS2J69fIo%QhxkYr!XK}XG(-21`uP*4`$#Rn$w&IHCZ9HU`0euPDajKc zpAvk&(_fcQ`Pk@z@~N76i=W7+eB=}D{&^eg;A!*g8jw%4_YLcf$S0HMiF}ji$y$@l z8D2SGZ}$sk-+XY@?Qv?mKN%Ae_Wi8c2R9*`G+!9~TlIxyT6YJ?rcY?MBAX`0`sLG! zmDy9IT}%4w0W#`D>|iZj#nt50iIqbFaQ(9CL~M=^w+k{xZPP163Glm4puzGx@fig_y1ci@283rF8f{#n#<1+Z@fsZcuSPCD@;A1&_oU8NkcKCQ% zL@W0l@Ntsx5x?h~F~MPP!N>W?uU)E7lYi9txKZb$$T5*WfqWDh_IdyxpV0YuT+%P% zqsX$?1NbQN>`7go?T*Ru@l2I_$fDQbqqluL5u@=jNzyOkqsX?`1NitvjK;@_D(+AD zC^GK#06uQKNY2ee&OMEsqmJNVtD~?FsXC%lO1>+57^{iECBeE7{A+o{387(rWEVk-*_}&B8qAY3u^EGo`e9?(~ z=Ofs>=OeUrFO)p0%xUYE^AWgjL_Z%v`;O>D4cwKmkU8hxjKPbrRo5%vP+lYDtrr~+ z8uI>eW)}aJ$y$Kj>imCO$}M?c`FqRD=g>jFyylfDpZ7LQY3gR2aw^Hh-8Vt37ih)0 zfnf54kk?GTgjW5SZS=I5EC;^f|Ku!+9L}vUw-Y}BXWyCHpEJkUe>B_j;_c}9N@iYs zHs5bdU+{j;(H&pq?0Ms>Jr_=XWiU+oHzhVd-mFZE-=m!CUufh^rB=#l&W0^A*Di{a z{z|>JDM{>@QpkLtg*6W;9WCxuzR@j0&PfR4ES}b$$rF_31lFwNO;vt8WlBy>nQa|Y zm}R=U0-6T)qATY7c!8inhdB|_Lr$f%3Ro5Fu3|7y- zxCebW8GTrI{FAi_iNfO;O((uc=WWM-7F<5Kim|q?B(YUhVF0eG^QN-aC?1+V{>HeY zB@cL^(9C@g^P3W75^N7`J} zcS}Xw)w?U=UYYZ-<*2b^(dU#emU?U$b9c-=t(28Qdl-3k{yn6Bfd$(G{kw>`@T;Nu zgT9-R8RqHx_BC#^i#uryopO`8k5SI_EGRLw^?v)@gVr&|k~u5t`FHLaaGLDgRnd;N zo0WaF@L$gG{C>Prv!3;C-*LxTLE@mR3ny?!mWO*Ef#>7b{-!tcew?9D#D2sdxbr3s zIy2v)9Y1TYNtt17b9JZ^{T=6ASq+_vEZhTC$z2<+x@33$W_wLxw6d~x7xziFQmi|7 zS+^B@Jgh1fUFU)8mFCcvyn`jC(4rBn$*Ba#+>*D#6=rrfaJJelk`Fp+zWK^FSxa1a ztK6T{!Cml_rRrtw_%JiZ+#IGvuQkRMb;ssEPv00%8%}Mfj7_J$LJ2ovUrL$f-#Q~V z3+8af8UJ>lF|(%NQ?2|1DZkawzGxA;-YL#$>=WAAT_JaD%0C>l*9@R6&D5W5<}CF; z5@x1tE4bC6{YSC(A4gd~IEA`G=5Lq($kYFWdsSB^hjn%vT512n|7=(P!9Ztp*c4Eq7zOs0OX=06JB+iM!*mA-|v!2;&HGH7SDayQS5 z_L|DhN}p3vO5ZQQlm9C)#T6AqN}K1*@K*rHT?C6)8XZ`=8f)^>BLuZ9QjQF&hf zV4rP;8-}U(bWWxn<{)1RH(07xa<*zRyj#mT+{am0DCLoI1(qp+e)E)+smyXt%2UTW z({_4WY)@O9p|`~!)N*tzdWW^7-@tomi)oxMTfu##YME$@55tSn2k%wO5;ZPI_F?9zrB^m5lz?!rWeR+sbxwJsAQtK|DqmpiD--PEPb;UE;J zyXnIPw2hnyr4RgbULB%DC-WY_BV&oJc7XW2IIEmByy*1>aopcn_D))USzTIQa7cAt z+1|9gELVDA*@$z6i8CfYj5~F(B2LCI#>f7rl9WCdxGVSv z#?JGMo!`-R+jTU!n+azuHJq!$H&?mYUUdWZ`VQnYvbL#;v+Kp45Wn*}qoyk?MAj!7 zv@^CYv{hDCa>kb2+qL56zLBw_G0EO+ zc)OoFugu^%2A_}9Ugm@=E59Fauh|7&q2XMAGj&bA(Xr?XeJ)Y&;=dPqYJb$nmVETc z3)I=Sj6qe5A9eJ98EZrq3m?^fNc+D(U@TE(SP}QCsWPmCx+dG(9}lOtf+ms2<&hecB zqrK)^&W-#IS)LrG^syovs@6a5tom|O@%PBCFu4cW6r1W|EXubG;cTXLk$Dr8?IwH) zrl9btd51Pc+V&+x=0#pRrOTmpky-n?MCLCFo|1WJV`SbwTV%e4Iio}CBg;w8dnjaz z;ICKlhpPCyNH4jAd!iPZ)jaj&$#W<_=5Mg;_gQz1w}l(6`5U-bFDU$0^}g^S)G22( zm;;x4+4I(rWwmlf0)%8B%TW<}+KIQ7Vm|@p+S#?RM_Q$tza2=gIp) z?!cCJnX-MIyca3kcglOYvb|p3tCj5u@}~Szluybl^(s26$l~vE?KRTIAC-ILFVP3K zhbb#1&$r|eoi6A3mOf@fY%XgOYf3nGQ2M&`qwhHjtdc&jps#L49yHTlDv=Qe&PzSg zMp?PzD(V=$U-a=~^es7~f0>c{KS>jr<81>{Ho1dmp;2+BJh?XRZG+Ok@LAE74XI}I z>XcI^kEKUu)zBWHYeJ)yW}%lzoeRBL0rXCp47sPf+G~c|-i{lVQp;Jv%JdZG7z)v^ zQ?QA>da?yQImG~7UB^~*d+fBymYRb-R)9TLdXYU=`0TK%?wk>xlJeKpYmJmOdg1Cq zbh*OBL05ODZWhg66gHmmoH2N8k?oz;Mc8abjF*!MOItZ@vg8(}1f&y|I-Y#1(%i{~ zUddRGuJin`^%l=C13Cn>iYi;iPR3R`m1L+o9l}|Iz?Gd=&yl$;t7c*s%-qz{_c&+V zrj*oJHe*8-P_ISL+H1OFlYVXr&n-yV8#k48hkIVAhzn<(T13jexW%J0i=I_# zilC8;ZBfKGy0J&%GgDY@n5`}@oP0&Ki{tJ@Pjnl?a*IAyYVMRV0-LrQe)omg8!4rV zNB)a@mk!8X=&Y^fUV2N@6y!n#cvti)soKZ6^;ck*?8hFG`=u-C|IcuTLHAPYxv!Aj z*btge_j2k18&b{~EWlo@G+lpgDF2#*jh;e&Y;4u0t*3oq$8+Z8P;C1gZ2W7n^@m{d z4`z?RAnvNm#ut!=r<{NJ2ioDqK9bOc!Bv(nGS-CF4OMt!tI7Ty`A%}L ziq$y^x-D_bxRw= z$IVx3^57skrP$uc&}gx_FZS(R>R%P=^Fzspj#I!`OuaAvHpI1D=qiQxo)elYgB4Ff zu&d@}qrtNleWV*}U{pBmGVmMR`w){H*7&}HA4lre3Xjc6E@v`tiMM129cbzniXX{> zA1RDB6;9iVpp8Y+)>`97imLk26y!;^=f#Ke2rrbVsrZ9j&IEi%pVKbHXOoEkC<`Bs z{HGne_ZiAlg6@SM{I0w*(aC~&TJZ$&n0SmlhHCs|)na#szOgp0;BqA;f&6(ESGob) zdIA3_Yr4&>|3}9Y8~#0I-_G>mdHZE#h+89$}YZD8St$ojPv*>-tSLYZ{(4(Tj0-Q z?Nz?Kr+mOaT3zV_f%V}(Rvu1JWzNm$6vFev@O-?<+%ydPMtI(dvn{3EdF6A}I=O-J znbD(r)8QFPYP-O6ojA=*Ke#v{!yC5ZQbnYr8oiAwC~{N_>^(jq~2GsM!2fLB{J} zB^w&QGDMgi=F=zNS9sSiFjTAc_a8gcjo+E>GO*{CyG^R^k^jsJ^9XO{d&(0DS1Nza zpV~m!_C&&6Hp0i2W>(uinmAQap9xc?juJlN-GTPN`s=@=kJWb~e}|pvKZyO&X=i!@ zcPXlA{I}qID>&dwJ$xlN?yPFTX$S*;D4%kPEdQDL4g#OLme_LQ<#Vi!CVAB^}{qau}+ za_*)Q3O}SRdvT*;Jf+N)mVs|_ac8OEQI9{)97P`-Nndo(Cr8jXha>NEk@v%p_d}=9 zchxh9*W-&cL@70fJNWv*b%Z?ZgD@uB$FGHO$rZ1`+aB5LDOMb?jl zk7lKh5~chY8qU7IAf>O!1p~g}Wcu+=+UlvK?Nb7M?IHur$bzlZ-#_vfCkLPFFFH#h zeK62x+=KBm6}==S;+@r@eBb-+p%+^E7%Kd}vC}4VUD!P`28A`{yil>4am#J3O>V+( zKGsb6W$ZFPpvf^+&xv?@wKs0&U-mGb2)#hxoB1B4*;`NIgA+fq`9|*cVK1I4AE`%c z6mgxd$PD=hYeL7AP{yEN@^4%6H2=18r{eQ(huVMY-xgS)e_OsQ{%v!me_S|~wEIqP zS&$velo*@JOg!MuTQftxSp}s@2l_RzFhLC<8>!@J##Vj>?4$a z@_t9g>w4@>@spn-?=_6urx~~VMV#xu(G>G)yI6b8*Zu4@ZA01GPQekX!YaHQ!i~TPQ|7P z{jkD0bnT|%ZiE+p0M6X4#oZ-cdBnN!woS!72&bG`@!K|s^8Zw{c@mZ4O7mB zl~=5`T9xU>KWTMdwPn6DiE;M)>V_9(IPV+FE=$;gmh4&d`T96?YZ<$@83VFW*|+ zlW^h9OPz(wHWl}h^yeRUhA!S(e3gV7cR7dVZYmx~ z`0dM=IERkgT6~S*f4bJWaN?%oG{H%K)H!t0*5Y&tw_oKfEZkK5N5X|KFLtI(-dda? z_%oI|t4L2Kd@A`dXG+1=;uOMf=g)P9-myt-p9}jhat@uiRc)Vzm+{@aO=|m0*#@1P zx2o-PsAY-s)R;|b`<(OUeCOYLZY}dgu<`KF305bs}wi-s8?^ZJUbkI=I;R9Pnw6tZ+Ubx2gDrzdh>g z)oyFCeXz&rYQ3r0u<}u7X{)Wp#x+ZviRYgxK0bD?bKi8?glMyMTk|a8KNo^evNhX>eALEW&mr$hy=rTg6LIT3Jgi z**zLkr2hqze^!rUDT&~OSj+x6h`foUM?q(%PA3{VgLOJ>p!1+kr!91b=yYPBGef7- z4m#KBblOAb0i8|<=;Y{hVxe=tPNySuhU#?UpmU#2rxSFB>2x|n=U$!8AE1+~(}{=9 zJvtpLbcXA6%+R@8rxOaD5jq_Ubc%I4VbF2tbi$!CU8jR=v5eH|L_%kpN@w5%w=-_| z*5Z+-uGCd)XpT~8##vW6Z_eCQoJG1;|97eM2R^ja8Alrv`~>hz|2SHu|JvcT&IgY@ z6@Wig#ec1Px%1|(n*#8iD*lI+e|E0!vo!#Jii#ii*b3+Bfr0pARQv~*u5^Bw9*BRZ zivM8xeCLOM48$L+;;%mQ*hTn78vR*wovW`2#J^4}f6rCUfdc~RPuA#Pv)XxcpFsTU zRs6WZ3g^w#gTHBn1?2M!D z`sq*7@V|Q4dGn`F1=QzFD*l7nZs)*Lf%SifhM!mFJpaQh0r)qo_^T@)b)Gi_^7nQX zfAwG1IO9x#{JllRkGp)HbD%L0|27qW;27$^C6N9&4SyN+hHUVcf1-;2+N)*GxbFh- z|D@u-*6UH{Yu^UqPf+pW?po^n@SA}D{Yo1j<3Z;9>?VAW_-o7N zm-G;MvaMf*bKId##ig{@*7$7$Wy^)*tDK!*+ge=aZR7Jb8FOLC!_Lmtn~InE+IW^) z#&N-qIcIGM#GkE}@$rcdJJT4i{P@`_{Yzk&kDr9R>l8l>pW-LoIrd{<~?4##<^`yAbyU9@1~qT!M|UtAH!qLaX+CyRK@T7 z!k?WV%?PA_pNc>0KUX+Ex-XFaFpd5_%bc_B4#d}F=eULQogdv5h@Y$C&nj8$+*S~X ze~(Ik+o8vtALR$)57+R&TI%e4Lm>X$TKOXvIUm0^5PyVLo@XC%&PoWx*JSXlzGcpj z`UmpMq2hNQ|7Yj8oIw6gSLt{D>%-1%qXO|qYV_BZI=77p#Gj_(rwxFQ*9GE_Qt`Jf zf7m(hx6L0+#z;+uX8GWn?7Yhd*JNgy53b3|=X`KYM(*;#HQD&37p}|1 z4SM-R7TQBt=fIt@-{7kj{k{C9ma%cIv~`(_SSQ5Vj04@dhpMo3xI4wBc(TGQ?rd|o zd(^rRPyX{E9!Fk?CvRGaXT-7)&vep;6TZt8;<1OD9f{aqnIG*;mv>gZ_Rc<`y$3aF z@4=sG?;&Tj_qE?>?@{M=rcZ#TVQz!NIQN*tH21h8XzmF|tGS;zg6Dqf2$_4*q0Bww zn8tUKpg;Y>&h+T{XVq}AQk&jp{#R=F?x5QAw)4MM!}pkL(_`j;qlWJduT5_^|64VD zUsP>+`}yCg;rnB1(>u)nUJXAGTbmv=|D5B2)@DakzjIT+=Q$I%%yF3a%ksoM;&?u8 zlw&2~yXA>n>2UJyB~RRPN3Xasj;rvU^^A*h*!$H_y|&-Usr9ig$B=%XP95Culc`U} z&UdVfwL1p&J25r8-|?vvW9K@u`W>5^*{@-$Ew;>Ii_LZ<#3~LYKEY99GBg>l8hZW= zcdM0{6z*CZdS32XE8#xM4TL{e!>yaj2!E!AjZJ0XpCYV`Z9P({OmHZbJ*T!-E|0%! zWk~-~JXi2U@O-u+r2pGIq1bE%%!_#M9cyf@G>4s?v%G+Lq?ML1_hgI3-Q8qyZ^mXz z{diMxW<-$V9c;GA*lc#f^&wH!7VNfnu-gQ-2)pea>^2S7y81M>+ahc?fepiUJIz?Q z54$Y_yX^{Wwn%KYFR|C&#a`3$L{?A6W}A%7b_RPb3VZD=w%T-TH5Yc;PVBVx(3*mM zvJX4WfQ_~u8_kG)wgLOhgl(3DZMIV_TST=3`|Kg?vo6?XgRsrsz%Cn%T^5W@HlOja z0lX`*$wp$6b;TZ=gxz&Fwped$v3A&DFB8|w6<&QBTPzh@>@ap%d+e~su)%J^273_u z>t^gPLu8PnC-zrQ?5}ayUKg;v5=g5L3FFwDAjdkjOqOaJVLMNKNN9CFZ>_B6>Qcc` z(?hCj<*nieS2qyOQ|Yv-Ue8-APf&F&;e^&g$5frkTTyY0)hHZCy z&Vo&sir)4)Hr*6#x=3ugFRm z*jqZyyL6gG8ckQ|sOtKyrRm2OXk{4Ws!Kbu1$rHZS3f6Z56`Kt-$a?*rRgqc4zdG( zt~9;eX7-+O>A%Xw)R$6^;`L|)!4PE)SFg*|R z2lDUbwotwa&XqdNBpuG2gbMEkyffeIro*i|d{vhIZ@Ja=Z6(e7UvH+>cak{&)mEpG zFW(@&gHFSw(`c>3rvs1W8?80?i4beGwBaP|a}zq3$Pg)uD|AeC{r4`ly_vAlv$4^= zFuUuGwEC}I{AX@;!$}wa*-@i`&2GY0_2QMUm$HESrAy=GaTjH^IW}U$PsE1z;k^J} z3}tH4@s8?v*!0=h^j^HVhGEt9e{-du_=~_39lNpZ%dzdfaJ%dEwE80gOLCa7@5{08 zy|D5IDGTs}`ZsoK-dlL%Zo8ve>gd}_jKKOKtXSjK1`efj) z4^kbw@g;1;m*9mjv|U&2I+Q}bhn*&T3EuQuUA1X{nl++&=aF>BZu|+^_!GRaa@Ku} zv)880faXMe3Q71B)Ve%!wN^hbSUk4`?M#0izrqRp3NGsKesJ@T^w;3{6^`RqkUWnT z=2T}MNmkRZckN6o$G2d@w;-_E!xz_{)I017ld9h^wuA~N`s%Zc!HECC4?CFlMV$uA!Ur({AA}dyaHKZl55e?1>Q4I@4cAM6@nT{T!4evLBx8a`NWU`ZNm7ru=N_%?j7 zD}h;cn)o+%;otDVx&aH(U`Bi#S@<}7u(rU$bQpe)4fqv&uui~C`uFg4Y{1vygLMGb z!n{BIArXIv5r2md)*9IN8f*hTk1Tv1KG+XC)4w>W!FJ*ID8ujJgMAI`xDLbjaSY#w z5B4RnqZ(`i{*PUOt_C}X52TFo*q85b!0L3G_(8JpgZN-afbG^`S@=SZ;S2G> z4g%Yu)5ITg41b6Z_7_u=#THN)M3?sWUZ@>2-zI*sQoO%1tUc#41 zIGlO=;mq5Y6JE@`{a)tn=SsTrh;uRX_VWmLXWsr9=I!Sb{*3v?WeblEU(!Z7@FI7p zFS$xN@RIiS$o=X|oXUY$wYTRrc^4}OwrOwAzw=&jxSwOmaxG8$BLgMu*-H9jNB-zo zdAPsBNxO{tIALnfy;nI#?d|HAwio;tl>;w;vuy9x685}I`1!qk99<9hg#`bs1|EJgiX=cu2g-x{Ngn9@Z$R z_^eG>&f0{K_#hp>74Sc8^RPZa!ws?4FUBe~Tn`pR~UT@OY&DrMq zdXu*5dJ|b6s;xKi@BNi^CbB+M)|p88WUcsc@>xxs>3(EwT+43jZ(85m*3SM$M{o*z zc-6I~X8KGHYs$>%)9mln);ym6``GVp;9PuJYj#h9XTgk?Rnq@tZOfQbfA9O)_bnYt zSbzRBdjT6c8#I)?kqPXPl(&sNlJZVukEFbl*drKSys22Bdb`O47KfcV-CB_$^%bU^V{rE#w`~v*61^8+G z_%cTaee`=X`n?~2m_{Fet{H!>A7AF^662H6`OWD3e*9bwAHQz_eqTSn%+XOE>;N-% zfFFOjieG_$cn|(zKfcV-CC2Z;HZY^B`|(F;<;Neo2OqK@U*_n*$6iQA@Au<7RD3hO z=1P3cetemugTL4imDmt|{E-?yKIuyFN&DKT%+Wy~yTbev`lB>_eAmhNuKoBjM+bdu zjhvs9f3%99gKxV6-?krL=I9dR&DbA%us{6eajN*q_`q}Uf&1}gj*j}oCfS2c;>RDO z;_ty%o-;16JTgZ|`LR<9uv7f_W3}?*Q?G#Ue)=+3M|;3_*@Nxk$G=W14}SL?{O*2y znY*Jr*fW*bGk*N*HGKT@1^DCr_%fGAf5FDtgN@_Izd^+>z>lAdAK#BJb9>Oo?lEKc z`0;Pl%8$Rl@+b5ssrVJxLKWCTe*BwM{6^*jl9>IeI%0Q<;~f3u3ehj{}t z^9Fu=nG2*m*i3t{nf&;-sQ4AkFXS-4;K!G_LHLUum4hAS#~-KS7cdWz!#so^U*-zI z$F{1(X7S_yNySfQt|FPa3O~Ng9a4VmtxD`IKmM&MehzaQjbj4o=d1Y1*kERCFhBly zjXwTKGxm_5ex8b7iCvb1UFO4AGPjF7H{-L+!Ds1BH%A2>Fc|FHjX{~}ddfZ6Y!%pS zK6ru-H*4@@e3@qKAs@V_4iDG!W7joe*ZJUf9Ui5@EAep_;N$ecN9phw4PJolw(VxO$@JIFU zB~ z@I4y55?{U;04T2S292CgWGlZdwPC+{gwFoeeh8_{E(iXdF?&SYy04N zI{dF1+{|3S9_9jk@M${yBMqL+e0T-(;Xb%ahu7=*nKP(l&cF*7yC`{9`!OkF+mA^o zHN{&(&0#sy|1f4KHe$-?Fpuq~f^FUKkL33HL+`|!iniIziq*(E##}uuiL{^?dk>pA z$XXPDHvzoNpjK9QK-$v*d9uP4t0{^#)wtgML3y3K~{@RiB7y}@;1w5N^}x$ zEiY>#$!kf`VLkjXHBT=+y{|vr6veto$#b<1OZUUnJehj>V1K$PinWoFXQ&Pv;fJYt zM(gR<`O{5NtdEpDH|elH`C)3Fd_Dbkf4V7(HIkC2P=`(N!_+*}_4IrF>87Y_wLCL) z*la&c%~PtU&-167qF5^_-&v@`miS?69*>^>us_`t#d=A}^Oy!R|5;!K+wAaAfj?Rs z>M$nd#tvE=YNfTIh3tR(NgGPJL>nUQXKhHw`$-$p)6_Pk=lNM1(s9%_6o8}t*Z=Z1 zWLDeIPwTv;+<4$rQqYuNI_pjL2L&a=?&hhx9x^WJmc8aYGlfmw!5 z9ZL*jk~vpJnLX!V9cKx&urGFJuzia1Kz^i+r+$G_-8iRRr!Uy+Cug$AeTa{8R!V&s z`}6D*;&&R9?K|WQ4SYwk|EUhYoA}q1%n9+&vS*4j+EP!O+NE~GUl*>pmfv~R%WHbD zCaijP{mZ zix#r)D}%FUl6HFH41b-t?F@Tc8##+0h58BHb8p~Wr%Ua%Kb16S3Ow-KZRD&e%FOvM z&al~rF?q&`@g?jbzH{E%xIXML{oJH@3{ex~jZww%Uwo~+`0O_)zuL|I-XQjVwi(=V3U)4Fa{OWXd zr@E^ctFtprg7u(Qk#;X1phHeoPhJ;8`bG1aD_6j$b>2OBeHDj+f4tv7@`NCggUC?0r zYZg+w_t!%0-+M*dC3{8Ll}#IFpFCl>{cP{qc7YQ{*xPu=+O?T5);`%{rrl)eSo=*O zf`D2fDr;o6fIH*&w-Ikyr`#Dl@VsK$W_OmAi*#`{?vAa18 z<&NUCZ>F!82>8y5FZB62{G?eE>Sax;pr?2e3xjvCA4Wu=7;dbMZOkZx8dHV@s)UN^Mn0p#%z;_?0qT*&Jhr1N2J_Z{@fJy<(F9eo*HTu$FiD9%uu-rnBxODy}xz!;)TG59>|W8KEo* zIKHh2){Cm_dRfBUu}!cYUWbbJa=Zs~-(^vC8}HF&T4y-Gylx__xr6d%Cbsk4!{sF2 zjBhR4^8niL*a+9(I-^fa-NvWgM0*l@aA9q?b;fdNi#!DF9xv z4Xf;MxtPa7D6c{OIK3~WUTz1p|L@XfHY%sFo+s!r>ztYRLRiPVom+GCuX`eJGxT-A z`vKr_ZEJn|+hja~w&Ase_n=+(pbENnZC?S@P5i)m;tCE5mi znG1Fj2mK9yv#{P?u$>68oj^ZL;Gm!N{i^R%y)6wOGS+o~;D#mRx1@4v5zCGQ(+Y=6b*T6GlPx^AJ z1M=Z|fc;P*FUF3*=F_^a8I9`>{hSUqZq_!jqdmuZ##4ANM&A>Boz|dlv^AgR_=0Vo zp!<~Rj|TjA`40Fm^PQ!wYj1|{OC7r5zhQKs*RXDDpq?`wIf^ zEk8ovJ~Oz_(bqJz&l>81_b{!1cPQpBpIqU?n27*CJqqs=TU1;T>G8s)9Wf7xv$P{_ z@6&E4=zUTaz}`h8VVyL7pCsm^nMQCQ>-}opT1Ruy+CFCH%V)%+VoRR+a(I7R+`RnB zl~ni+`vvU(6K{Oir;Azem@XoYs%x56z>qY4OKGWO%-}SBz+mvZq*=A>4si)|m>&T9 z7mVpr7OYADHyE50JJ?%b2<$De0Q|1t`&WcU1Z!q7S6z9?-4EJi4syLgzL{;sm0;kZSZ-pFdM9lpO*)~z1zAL|%n3HRsZSD+ZXmk@{R!L=~pR)l8a_piNQ z%w6l)9Jqz|UrOM%53*ct39flz1Gfu|MSEfIE1HYJgo}jc^Y=<2EEO5462MOo@l+1L z?@j}LhXXzXSlfS&-CLZ9HiNdjzjQ!*w2Fx@ZE2RliBoFRSk1bo~_R(Bu``o#hI zo-8ZC?FAd^_o43R`o6^dL-%EP zcJQKq(3c?F%!ldA=V8+iJ@+Pk>C?C`EzyD2(3jc&t}mbcr7sWs+rD&$wGmdZrXF6E zU8BP=meq%0JgX1G`_}rfok6&(LAZxOxVJ$V_Cl)Hbu|bNGzfbcgoOs-!3N>s2H{Z# z;V}l`@dn|E2H_xs@HB&Ph(TCx5T0%jRvCmf2H|Lf@N9$dcLw1F2I0j_*kOQ^tK30~ z_!h{apX)#^-$84EG*K#@B0?s>VWlEOtB%q1b9QoZazm~iLXkohEm0~$`3f~ZRHBpU zVk2da+Focvz~u4b!12CAh9QYY8tw%-p$Lgmsh0BP5`|J0%1C@Qa*TNB@Idi|kwL?l z7=PdKBZf7J8xk;V_yhx)F<*Zr4)hy8%y;MnMhOduM~(>`HhwGJ`9yAl}xEcjSycdQT5dELu7P% z7&IdyN~_~*WjcPhdKE~Pt2HuyK>v|^jYOwVqmlgsm=IqbrR%4b_tQvJVKNjg(ZniL zVGV+Og_f^ULw-?_k!p=j7RsNc(1r7L;SfJF3V7DV@|Ch^nG&g@luDdgWE9jUN-mda z>YKqc<8h%aI7J?%l0x|^zD7p!!{kS4WQ@MP;dEwW?+jo7#3=Cp0e~PJ z#_#9O7rG$T*pWD^NSS0tKW$Wm$U%XjBiI%b?Bxv&rz;Vu*6MI&938?O9C{(8I?U0z z7g9t>!Z4L#8kq$85-5{EtJPp|ayilg-C6}rM2JKcI!h4>q+*^GD*hB_C)d6MoWJEe z;9gh7&WuuMbxk#BVcZp1VSsaAm%k`PYGhJ{7E`Uy*JVIoH@9#3Aqt%qX=GYSM5Gc| zP%e?`)EZg}S^|}dmZ8XSiB<-Eq>WUoAfV5|SrDO6^`jH}x;O)p#4rddi=gjug(GAU zYE3NCh0GG`6k*{y%n|VB5EeSP7m_P9Vm)iP2rcGKs+P&cw82MWs8!5{zH@R5n}Hm{ zy!b*P#5pMXlQZru9Cmbw>4h8yDCR;BD)`V?rCJh-)itsRfA9^93YF_{sbRWsEHE5O z3F8lkqTx(ePNIYUBN-#9#?2K@1Kp7p_?3q9>Y*B z2p3m(4-YDm>+Y!}u!LK$B>7B>)5cYH~9pD=pC0w>h^YP`OLgASE?oW1h zHKv|%JGrKH9Y)p6zEZfzDUN!Pwkc+!`yuMa&6&1mXO>a>&S1Y5wpho9m5BE0{VJ-c z?3f?_r@MkaF7~ZEICK*}cap7^)kX>Pm)$DfnOZ39rJe9R$HAEDclYT2!BEbyr5&{qMp9oxIqnx1O~K_PX9rp1a;^tGpvy7hB-ho|wG@qC0YA4;71i0OYD46(M*?f% z_V~*4ZH3A0qA#y|5+giO9RJJWKMRCil2t{a6OF0JqdiKB+7F|Grdt2x;T%WtCmpy_ z<#veb-OIfHGbqO~?MG!klp`)#9L<4txXhJa_zdL?&zuNbhE-7(nWBWq>6L=c6C6ei zb2ZK{>~>_n;9#7v%luPzcB_vGH|_o@ZbX6!bvf;jA;v^%BUzRG(9G=mfDg!DkA{OnVuXPwgbxPndG|B1jOzM`8SH|Cl@{Yvz!hjQ(RlrYiU;NjD1KE;SW@&^21 z^2=<|#b<#>1`SFS7Afz|Ln&FpU*s_*wW{7xYVgUgmG;-y zQCY712UPSaYF6!}=q~ZEDGzRyPfXO%+zBwb7(b`BixNnxgmIW9AgsJL~25+kL4!6++w6 z{n6C#8RzmpduC7%uf3NeT0qVJzy8Ri}Jv#{O#SvkA<-xnTxb<>(-(}j8w zs{1iqK8bRAu(wPyZ=NG$XDe_zcPr{n)Kb@vZJTqKD<;Ve?{Oiu|km{)??Wbi@Urb9ut??4o!J#mCH zeJ9{lj9eV{beAAkF?^WS>^i}+(!Ab@$HohHv@V$w5BYqS|6zvf^T+H%bbZPeE(;hl z%tlaPjvcsnSOW zgzoVLwwoazTaPizaJvqo^ z-ZkK!K)&*D(8ei&!q0bx>26;-And)GpKIF1mTHlSlsF${hxB>2V@>nLNvk?otbHV$ zaopD>{CW=c{k!C?);X005l?n}Kl89@e&V}*y*@2}Bz*nM*60wV`#nu`waBh4DB3yy zk)=zk{KXF4GKOq^B>X`;)zz&uhqAi%bLPQgl?7RXA!m4>)#ea;uBkZ=@V*8yZIaF&Oo%1+tWkJhzlLC(S_Q-$g^KIxwhe~1Oap_Wb`mt^w z9(tHA+$MZ@?@-=}^X&xP%VKh!vk!UOSpIfw?xkIxsc&0lKfbq3c>0$kdDUb2f@b4Z z=6)_L_wHxfKF9j9z1P6mFS1+Q@gBt7gAocEq!o_2ca=)W=@~xf#LorQGv8T>72Bx^ z%N`uLIC@#Zz~JJN!by=-?){EI=_9@>IB~e;lx zUoiQ`k5oy8dPzd3)dgMFmAo>Z6iqox6W=b_{!PIS?XD$%+;FGX42rKgEaVnAS|^?I zsl7_saYY#(*N+tJPl{Y>XOTvk3U-Hd$yie`_JHRpdz-n`;^5eQkIF*|Ec&3S+>b-3 zs1tXyhVSoOF!|7nbI0dA5sETRyIwLbq5izPZRYRZM+h2Iort4;;smzyb5|53Z&IgB*bqQ%`}XY|i)T&+^VXZ}U)9l=`tWXEVfXhEoQ@yD@`c2ZC5CoR$SSzo|e6F7|TzmW2c7JMs>jq)AUhS zCr+dUy!AP!yLc6Jb-miMZ$W#?^4lN%65qba7p*#7SatKTu)0V7A78a8q0VvKuWr0{ zwBT}buiNH7?xKe6AB1E-ZYX$qxO0(H`XXxGvHs!eYE8kn3v?IXhkQ$Y-rjO&o25ev z9-KWP5r#NW&o4)Je%hH^a6uqZnt1;%)NR{WqT_AO*L0tzs_algW$zaUNUgIA4*l6x zkuZEW<_j=UL?$J43*gEjKkB9DpKwUCH*v)#6 z@Z6pXVbH2p)ZN_PluSoa-&F@tQ?E{?YEH_jyHP4iy+lW;7sgU3j8wA-ks2gzC3+>^ySeN2MK+7`ugb0)7M8|p1wZ%^7Qp7CFSG7Lgrr>6tm%1kF$#3x< zroA66rr(3^x zzU_GIy4&z$?ncv(6_1QNwyybtV@nsQj|m4+$LzN~_$8og^X!8sUwHnmS>Qz#oc9V| zZQ@;clJC9ld4KPeZ=Ai=LVNG8MDM&z7bbem(hkf1`D5m>?o0aTa4i?+9Q`gm=f%{M zIUK>IoPMi|aw6^b=2%e(EVWVBA}9zo?Vo=;aSS-k#t4Y_<5o zJGg@&x5u8Rxg(SV^F|Mi$TQY0%`>S=%A4J5dEWU|s=UrK`s8`OOwIM$TkhRDvz5U4 z&jo^$myZZa)9(l}C%qNS%6TW4=~*u5(*2;o8ch@wS6TW9-t@{VxmcJte^8tJH>XAU zj%C65n>MTSZ`}>gKeKye{`MfNe6O~;yhDAx1l=w=3FYIr2{&GPE^N2ambzTvOSMu; zDQVGsYSZ>*lx5%=Drqxpg${OS3l82dBUn#CAJ`}6&$UO0*Ag7a@!&e;wdBC2fY`M} zJosVAgTFh#GXfv>`iAXZ8HWZl+87%i_&T>lK}g4e91${(;UFV?J;627ECCYXU6=7D zGh}hu0vXjpe#y;{5qyJTQPdo9Hd(=!7_AZKR2#%CYKu^9Tg0>FBaZ(ZWac;zA<;Z! z6gLlXv*$y8^O2EN9OC*dfVIGjpH4tK5-hm+>c;U;)-I94JKH+>|>Bw-B4+;JR-!~2$Fa(MvN49{ikD23N<>x+-&h9_Tk7UPsECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9 zECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECU7%Sj91) z=UT-vUo=|9;cpmWomm|7owHS(F~P8>038qC)6qWc^+5Zuw*&3t^>kPde`kq(OX4>t zehcE$Uq(VY^PQYk9J5BxDy}t2w9E%~?RO-8 zC*tF8K5=?y;^Pe_Foy3vX`fI0F2vX8qpzR7+~9c3jEMe*n-*fRMIXoX5?IV+TO z9Lw|J6GY|+9*eOR3hs{OL`)={fAfDe7z2h!gys^t@}7<5RxdCcg5?;V5!y=RQu|=J zu{eo7D#zK-atOs0=;N@zwLg~QBf0#s2;)FE1|yV8y>`BkSg$9SUlU>c zWxe5z^fsq__(yu1Q@&}W_uGXwH2zX~2ss+a;r5!)*pmJN`0v}dIYrP&5BlmK=>Y|_ zoSx6kDSQ55`^+2Z$>m4>pdhm7XKhzu9NN;lrQ~sCu+?>*Z)??)O$j$8yUEY`Y zl*NpjS?p_hr4YbUhpNn0kL%k5B9A`vDq7V?CdLciqBR z(?rkEuC37Djdx=gbD;?MtM_pJSBK4R4n$j_@FiHz3KbP%zhS&9BIA>250(>wV~(cd z9U8~zXJ-F^G@t5_O@mQ~?ACJGJryq~?diwGBOM3e8n2~E3kGq%r`}XO_ zW4)gKI{lI!kmifY*Vj`&9)GEx`teY&ryq~MtjCOFdOiJk{AE36Jl5;!%m1<-GafT? z4dd~bc+ro?dOiJktk-Kg9?!jj`{zF&k8{hg9v>Xj4`z4uxKM;6(;r~`_jaxCXFV_a z@%T%;=*Qy*y>hy|FY7Vmaf2RH?=S1|eQ|sAd_s`MdOrU$9+T@-GO`eQXku+XR0j370#yE#qg}Fn(eO#y>^;qK*uHNPM%d81r$V^kG9| zE99|~k<No{Ryu3SL1A~(269+4w=Rin0Bmq z%J^9y7(e(U<4^vR@pFk^MEp|XZ>?j}bsW4Njy+fgSO!=ISO!=ISO!=ISO!=ISO!=I zSO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=I zSO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=ISO!=I{{LWr56uh* zR|T#sIK1*&e;Dfn;M;)1f4LPOIE+Lluw_8Q`fRLMA75w~Uxe^7ZccY_B5=Xr7J%CY z?gF^`;9i3J2+oXyIPJjo0Otx$2+kkeRB&=|8gO&LEe4kiE)^X7O=!+Ba7Exs!NJ;d z4y-fh@VJQ623!wt&ft8Y5@NAf8a_j-n;{OBXl5x?I3hw8p_S=yJVsiDN~+e1wK|PV z*MQ{)5ju%<29_4fB?=`iQXdl*CDDX3QK2%8CK8DykRP0N5^{EBfE;_W7zGp|(Wz;q zRv>Z6Y?(%l#8Qb;sg{DT*3u_P4^>1Xu`C91lt)JCAWg23$&ffqrjw~4MX3&>PcF_# z96_|9UDC){z_N%4buzE6F`UzW<#NPwWX(g_$v8HBHI2LR(5b^bP>@M9V!0gXlt{y6sFzwRLvDy0D%YV7 zO618y)z@$?i63dLZ+Ix~0mik9jBu_B#FYXiS{+gwp%tT%5qc=X@e4UTRP-|s1WWcq zm5iVXGL2FufmS7Ql#*DqmZMdKsl>`iIobrW>3`r%SFEKo&4-9hi%cM*Y&RWoi9;82 ziUZ~R&Ot_@C{~7k;K)%qRy~DVm3$bV6LE`-fGTYy`oK|W#5%P&GF$>ps^ci5wBcwG zmxoem8j=_qG9cn|6)vTof&&n>X+N&}seMowO86SLs03ou&p}&wU;{Z^=u>o&Ti>Xg z+-R|!Dfb}=R_wsFiOT?SZiq}LK`V_SB^pVD7OgXaX70wR7ki3DAv{~BuX$a5>*5WnFn$IX~1x0p<;B^C`yNG^#)SPGH~?^7c_%& zVglF&*UeQd4MFR81KqKo!UOAAh*OK=@wxIMra$gA*NBljNaT+4pyhcy#0A?&+j!V0 zPJ(LkMqJZ`wRBA@A)tJ^$8rq#-n;*nx!)Le=JLQy63_Hr&ks7rW^w3J42HoLlQJS$%BazC`G2>_r)2HXkTW((B@yVam#6Sx3@g=;28sJ1sGW%tG{iba(s za7m+A5M9{`qH8-rv?@%YlA(pB8jV_m5=|j9TS%(L>6t<}9e{C}tCDHM)jE`J%Jkb_ z5Uccn#B3WlC18aEA~-$7g~j#23ede`xeDDdRf{zeokET7fKFN;FnJieprjI01$tnr zii&{IPNGuDlv?xwBr;)?Zze^zOhSRZNIEFRXF(T$sh7McTP zp=hZ&7&}CQvD4?81?CXWtixh3E{G)>4bYfj4s2-j=m6-{{E2l^>GS1UkTwdHX{8!P zB(z+Gu9&MNFa(yG>uYcaRI=i5)^VTc8tCxVFITE1`b-yDXvNXcrclD(atpZJs&OGD z@9;U9u3qJP94>`CU;y|)r{cnS&|Zf0a~5<(n`C~;LJ<+El%d}(;6_CE#w`nEfo}{U z`1XTVn*;mUQhqRJlGDtYxg1}Q^WPQ%rY`FGwbf2W}eOKYvVXM zlapw4*|?HhXq>=xPq(NsFZ`xzYMGIZXe)OsmpK=5%edI38C7#jj0=sDTg4gIa>~rp zj4PT|H%m0DZkA+uxouKgGalq@_K;WNl+`=iBGq^W=YUZ%w~XVHz_o3Y)WXU#mltPR zXj*HUZJN|9-Lkw{p~(eax_Om(Lsly+(=Dsorjo2qK~`3l>AV_~bkj1^6=sEIRc2}C z<)(=ism)3)uy(3>g?TL}ouA36;e=XRoiZ&ovMlv0<8119idW68G`6|G*~D?QwY3Q@ z<4m5+>pQuGlgNR41AWxNqfZNX;Hhm3&nytr+?2rxu2zgY5FD4m;4TDr-^<|M1X~_v zup7a6|01mKNig1r2;;#7~nc+&`8SgDnWI9LnI<1o!o0a7Th; zMlrZ6!TbOQ_txuAX0R*4NmCf?t=E?@cqqYmA1B=YQ3T`tm@u9|Fy7Y*>&JoI$W?50k!+;OtBW zA0jvyKWl^j5rTcP7@R|}Up9ja2~Nyq@M(f;3K@K!;H{?_e1+h-=NNpG;Dn0|zE5!X z5(Yoh%imz|Yl3sj82pi7v%3uDnltv0{(!+21mk_GaC_PijQ6X;m`^a?w+iDv1mpdy zFdjfK-p2}KieS8-6~-e8#`{`fJb_@mzZJ&Q2*&$dVXP(??{|f9G{JEMFV^cjFzHDI zXW`#AAitU53vLYFO|aEK24@kRFo?k?F@{Gd=aCG)L9h?O9|`s+*wTWL4GB}#xV1g3~o=fm%g0~W!NpKOt`2?eJOn#RM77=`(;6#Go z5?o5K8Qj$9_K#=uI}w~juoJ z^mx26oj<;E96Sv5dhQg7JQM zxIOa;Hp^qumlLd;!K9}UTzi5^hhm|A2*u50(&4sA<4``6ewN@B4h+6cFy40$m-md| zl8sDyEy0%O7;FYYIRErnj66(1(75a>la9CN!|9tAFzL<&JO0R|!!!k*o(vU-AR13F z-Ukq4F~MVNm~?0+EuTdAiYJ&)_(~xd@5={41j9HjpU|7phhdh+Lnkr#0>SBN48B8f z#To{`A{eb_unBZHZqJH!3~om--VYI?krToGu&*G-egxxv5-|?f>nAaI8Nqn}L!7>e zV7xCP#_$UjwFLVW9Vhlluob3`8f!sPcmNlzm3j|na!_Wqv8E5n%ljg6T0@Rlukov7BxRRu&5nM|0%P060kv~sx zAW1I;3_M^e=;LV<{Jse`h2JNJ@-|Iy?!6%#GUz^~PCiq4Ze6I<9)&&32 z1ix*9i@+-2R))@l`xV?paF@Vc23HL33OKlxp%QSvgS!UqI=E7BH^AKlcMDt@IDGGf zpNZ%$xN>m!z}*M;0Ng`xkH9?!_XJ!8xU=AzmJieV=r?fxC+h*lAwJB#|8+tRCiU?& zhruKuiJ_+z4Z<)xsYiH{&R`PvUq>6tXQq!aRH>f|CsJg>mYxW297QI@No4(WF2QOtwOv2y{WtLq zW$QKmGF{$8vuV0P4$NdMk=IYc5eV~tGG-##AcC1u*GJ$9Z-a1SX-NEwbVJcvJUwn` z;q?(sWawFSQV1=BBMfBd`E`=c%zzsLGS^O`^fTjP{ML(}LuAZEN>6%|Ff;Q_t`EkV z=?j$1Xfg>hX40DgdIppU>*tyoM9)ss^UVxalWA~*2>o>S_3YEA(R4H;-DpahiNe#; z%=~Htri~a+oEt>xXV4p>8cmxs(fX-nu@!)(@{A}YGdYYS#s%Hcg^wof1{Y-De zd^as#A8$DKO{d`bV8iL|`bc`#yB;;FAIw0n6`5=$hNrM``obY%kmXgsy0q@bJQ6UN` z(ZK@YgTQ%!^MrTRIBRGm?Yj^k8c1U|B>vjP*%@Bh#Q_C;%;E9ko|gz5>0u$qjC5R@}_bqGn7^z#dZziZ& zpWsNij$s5Qmoh})ehO7HWied^4Uj11Vub?Cg$_agUunp(RqI>HSh*NmDQ2MF?#0+<8^?eJH;MV5Y0;L`IBVLD znnYo%Y7zxDMz_gX41GXC_?pAlss;$v%R~G0-37rfB;z|9zSrQ}iW5G83jP#ADTB+G z1n5VLuVk7qS?CC*Iz$4mmElvGP`LD&F+yJ&gAL7v#6;moefs!#$FdM16a3Rg|J%3? z#KG*4NdbZnClD9@!Soxr$>8wehK#xw^0^3R9{$0>9khu^aa<(*lv)iMAmuC#vRpap zhut@NR|fpLX3Uh8U6RTVZ(h;zhUeH9t9uvwm6-F~r)@vF_n`mYt>??+=i0wm{O0sZ z2aCC9R;hpeJpWn0H48TMTJzRIJW6q7r`zb^606yhId5b`P1~&Q6mqD%FxfmR`Q&k{ za|1^=OTXcF;&X^#&!xeeJH`#Q-sA2r-MQs>;`B*A%`3uQt?PR#`eYCJiA_!?Ggdvy zHy2JU93gHU@yoI^{WtCNDeGXg@NWB8k>mKE1K)?)%?w|(DdFwr-e*I4KGv=cOL=}s zb$JKvjFEU)w77JZh^`tXP|zx?4E z-{3n3(vCjg{`BZ||MBV)^BXg(Kb(A>m+kRq{0{CZi)RS2e+*&#cn+9`elRI@>=-Jn$Y8{IX}qOC_^@6;i1O^MBYj)1ol!AJf0XjH1YjVKX{dX=l!KJ80=V;KM}4h9@Y-a@}tkOVSnA zvoD*?vS_<&d~^?|%;+Huab2h$na(=To>Ynhxq$>XD)q7mNeVW|;mUzpD zU3tX^&vbhDgXG!H(H}0Tcig?O`-Z(Bb_OT)$>VS99!@V44=VC#K5@>s|!;T#$5b}E_N91*YS?s<-PZ~b8cqdTc*h9vfj^eTMJL= zZNHcH?+2}aQd(_h_7=?=u_x_nXy9N1!) z^0(EkN~y6I%JNE#M|!j?Up4mjpbqkGib(fm*XIR^yiWH%Hyb^wo_T!7tRtl&RR*H(V1ndFfW;XlFFj$G+}{^NX)fjjtRuz%8IvWv%?! z+1sk0+z%TkcB))!oYKN}>C-V=1|(5yfB$@aLi40r{_Yu_?3W;W8}kZ*%iwK&3qyvM zRv#IDNBM5Sz4g-*9e!1P^~t!OQ(}3*?985=&E0Iu%@6jp@3eP*=Ap^zGf(A(yz9lq zGq?ehjqB!S&7HmIX5MnYrG0mQDZT&M(s>^(e;n)2d+nmLh_o^ub|QF|#-KM)1|`XD)P$J2K_sz(0)pu8^i~Z`pBod12mvoBx;e*G7g~ zI?q`Yrz@HJa(MjRggXu=bc1<)Fygd;(0Hz?t3>Y z}?X}llx4rh9&)UxY=))Mt@TWi-gp%mN*aoJ-8DqgHi74sm^Wq+u`S8pI zbLno^Kk?n?xNwL5N60ZQUudivvwS3WLX;LshO z-pkpU+KEnhblnBA8#8vkP4BOG{E5sJ9k;r}8~+o9NSu9AC+XT1o>GDb8j64E=~*it ze=Iw1X~%Wf{+^9>!aL#StU%YUe_gK#zpUkXD>^&e9ly_KIN>S%oKWam0__U6<2*h6 ziM*$>^A@FN=Pg-|yWQdaV}TQ1tJGh*?v7IjF!BAx`t&7_Wf&Ga?{!Y`pE##6))nqyHMo6YsaB0e)Ec)_!+@(^hejO@SJx$|I>V!g0`Lg?7Yuvq<$Ku zw{b203C;uEl?&ZTPhXVrc!u+t^P2GLyq4iveFy4N}l~2$0@^j){3zOzp{BK^k{p1xF$?T@$_N?+z5Y9v{ZDCRupXga7^eUkdy$ z1^%z2fP;6hKR40a&@$S`a3U|;T6(YDmTqBT9B;>yngE54sQsG@!K;EMJ`Zf4af zHclC^R&7+UNmqET@+!|N?`MK7)Q#mg^DJ!$GcE{1;h3>uD2@|RlM5@9={wGjMzi z{rDbmEyDy`BFFYzS#S4I*x$#g7OZ*7Q_j*%TCxYD7Au(;razUuVHMmSm!S1JrljFWRp^H zgn>}K8^;KO@l$5ruK=C6mtJZ5jH|F5XBBNcvvFu&TkCAU5OoRvP>x+{^4uQMzB&~= zx&XX7A3Qq`ygRqTzC5MkO!$M~={bgT6O#?#adQoyevIg5xZ>!br-tY`m$efezrE~8 z`-8(Vtj0^QC8G^*;w3+p&$;!?OY=~d=mp%ieFvKU0{Bn8Td>i+X3*yZKfKZeTAjeN zaGvfv`RWnCZu-%&hw5EnI0v2S{1VQGVJ`h1a5aF%(wO zK3~RCy+MLagL=e6j-f0+1NCSwLd6Hw3>9p_ct&II2x0j}cqY%$pU}G@f{m^f3gdz_ z)N`o2*0~RLTJdg;y0cyq>S4}TI>MZFX};6E9E|pCkPS6qg3V@P+kA+QqgcLr6f zjMFDS?NzDaGSxZ{)~@>TbVIfuv;8;ECaEy)pFF8fZSgQJ$mP6}lLA@baqvJ+(Wa2& z;JL^Nn?f{PmKt!{&-j}f&iv|itE%jvRmEGZTF51(GDCe8GUoDgiq^k+vH7vVEI$F` zeH`Q2><&3)JlarhKW&ALYeO6(NUo~{zp#LOH3!-B@4MJGE+9{>nW9r$PIK=iPJGcC zarvrM0rda^TiFd zm&>gYzx>Qva`9T2?W<>i)(N0_JY+~5WXFfgh%ZEX76q9#ztHbvHDPM8{V2>qyCY4n zMEgqPpeFDldm3_$g&t!%H*q|fQn1ncP5jc=nA`9?=5Cx$ur%56?TiEM?=>z^aa<(T zq4B}JD%j~!v09d2hQ5jI9$;pbiivO#Xo;lpQn@>?9f!F3GvS<}ZK(qI^1#~-_`8Ew zJTMnH^JU(xvX$p6ukZ@+j8jiXXmn~F#zcu@6Lhr_`U&k`WFtBARPZDO!o_VnJH)WL9Q1v}NSsS`?{TfGV7qx-8x^dYY=9Qvu0%cMr64or5ad7LCvxV=4#&$Y z0T(_^5ZMnhtPw7-YT6xpwgb*e%+uh(f~|Ta+jAescGr#)A~C*Ep?9$S3czQWkHLUD z6?5lbfX7A|7ihr?r#C^*@N75D6UeIF>{+3zsCZor$Jb0Z78l196&J-64Hep1fKIJJ z-wqFEX+^(F3%66-TAO=7(z8 zgapvfSnRP^?88~k{Aa1oR;rVRI+LY3d8}Hj6QeM{C)L?Vb=LdL554T=g!7nG=V^tx z0?$g(mJ!EL#^oncJ5Nf_YZT@kxUa!juB7KaEWZ}dOX3Ba^77iPXLuH+eY#ccp*>J6z=6F#QctWXD8>3h|@!E@ksboQ)lxzk4!vtFd7ZI&=(?lDKPvLN#bQiR=yr*-N@V2=<2!b0?N(myC+- zuY7^=r01WKje=to=s@&H#r*>LV9>jBwxM!OR3}ze3q^=toCdGs$jhr^d~ET|Cm zfzz=($W5Fhz`lDo`VL#Jp$T>*z5f>K>d{A5FsYS6KIxwnY#F1HDl`R;x9U8E_6+cF zW+pRd?c_v!G>}uIoeyF2?jfAS?ioH?&iN9+|+R9t6kPJPt;gvzj9jC z`Na242_>)e21D)x`5rMM4-Kt+(u-`bPF?Fd-b9bf7!Tr!@8|vnx(v2m0@-z}a*X)? z;L7&Zap1Xw<0Gk0a?Yx~EJNY~>Ee zZf+Uq2ERlDeNFOF3I8LM<8lv>ZoxaEPIlov+@D16S_l^1pCRdZIzQ{=PmV#>xe4tw zkK)mX?)Wpj58G)s@m_>9mSmUz6yxYRF7QFqoa6d3XiHx==2loKE%0a)hW-K>5Ga>Vot65 zC`RYuUe&zrW4uT7106x9$6*g-ZuO|jy4MJtYNqSrjnnmhaZ~l&lxX6$_SI>iS1M%S z0?5Ak2GG$d`&{^k_+OT>fBw<&a&PZA)+y@k%iSPH-62ms0Miq&l^6>Z=7GYjoCA5u zvR>mb4y2z{Ec-QzBd8EZX!eJVAo2T1;Por;)@9g!6r&+~sF|@ne*^#0GjUG;*24^$ zX?u?9{hn3O{a1_K%&qWIuMB3kS5k!P67Z@XK04`?Rf>T7(BYtxg@SFPC|e6!o8g-g zZnT~_>&b(ZJp}L%;pBk(;r0tcTUE6pbn2PtFbJ0UMce4c~7!7)?GbIj(7Q<#FK z)vhXNZ4Kuu2rs4mTD<-Vyoe51Qe4o+0`3b0Eo^A-6`W(8zrdV{E!wS{G*a2$STP3jc7m8olV{dIAouAaqROX#GHPHIMYj@p>dXA zYtBNyyq$6Zv5`u8r`cby?SR}QJ$-@?fz7X~)IesQ0q>Qs9X8^=N0hG)=Y#7a@a!^l zkmaId4{VYkkrz~+A}{n*ul#~z4{YwqM3=-1j>%Yu2(p7mn)s2B#k0YmiQv-*z^}8w zw=)rUnNa~g7Uuxz{_c9e8NM;`DcapV81$sM;i?btj`;3(;N8m-?{bMk^-J&_R!HxN zIKS`2xwrRIA!~_$IX)n|+?`D#yI|u^(vMHH5`UhcIZ3=L^62DNvI~eu_bc2)yPzmZ zs0RIl$j2;+;;MUVN7?3>gjhvG`Kl*dEtrGOHlFO#Mw2&qv=}i7z-&su*kSxmqJ5b! zkD+bC^|+*$Ddt0bM(-Gb--&Q%eZsdlJQ(~P2T$@tfpOq59&Q*HcZ?7G!PTCK-I7n} z4td~)m@NnXV3h|z&qRA+<7|8JCns@Us>pgR1A3oiix*@|I%G>4WD9J}An3i%S&64O zHY)U&Y!RXj@x%Avwe1R3i)C<0NH+L{d^J62W>E~SwD>^h!PbVo?q%@{xR3N-q7R!y zzNwA(s9Xh^^GE2P5r9WNrylafX}hh4d>JB+ksk6zzIOujljTbjcu9}BucNt-`H(Hm z{h2iPL1UtuOk=$?@AR1at09jFk3wGAvJ){>%c|Al*kz0Sv055Cr_D%Xr^h&CbQ!y# zj{^y#VA{^-+H$+mNVhZL}lYgawhffvcM zPQ0FKCA>(Uk^X`|xchO&Y_o8LEo9Sq39!!|0N>04|I7p*%>X|oU|z>pfWO4?Zvw5q zfjm12`9B45%u9eJkLOXqAs(gp`3cA(2lO53ALqTHxHqJ77VdStZ+Gk=8{CngsBc^9 zhW6ait_Ru&&#s2B!GKF#Uu-tFm}<_d3EA6(@OSc76Z%^7{(5 zhy0=w{1mZYClT{Lg?@aE{(XbKYGJ1|0XB?J^gXz;s2$fh{`(ok5z#))5obJ630aqj zzCD0G&O%>jg0_&C(CuW0ku8c?vS_!~LSM_atn1t(ICP&=IpaXxW1#Sd2Bk8@#@$)| z9OzoizscL-KSvH_Y2hJkH_hE|dAF$KC)RFVc6n{1uYlMj@Pp0)ot2fb9N)r5v9#?0 zEWa4`us`Zs(8r-PHx)jnyf9|I!24ES)1>|jIVvZL1<-o_X5^R zG8~SyFToq3D#Y8AzzO~MYXD0-Ik<2As0qEcA0fT;gT1ctXaC4psKrr>BlRmD=kYkt z!m-DG;hEg8X82QbznXsN>{q}{VJ}l;s=N2=82Ytc$@0U!Sz4BFXMc#+ExcFdSsLdJ zf_)32+7l%AV-; z8R!)bUta~@E{uV{hcy{5i8rSJ{{-ki`B{l)=d)kn8N)k|UtH7J4BC=SOmazuxv5tK znaUN{t_7ULJQQJ#WS1g9Te+Pqz(VZfnze(Rvrli;dwH31i&sPbM*OHM4)nqJremB- zp`Rjsy-YdGt7DF6HZXgV#1AupQ*Z4nz_(d}2j2n@r(hiCg1=Ml!o4?e#5m3cpQkLr z^+z~j+~#KC_$;nZ<5jJPM_<_mv~o^dYtVf;k=Fb*<)-r#i|))rjxL#|0s&c!ub z^&Va(Cts^7bsh&|IPgjs+9KQt7x3C#9@m6}jO#kIrx9@}ek)hYF2zYSfjsPN6a3P> z&BPwY=z4N;8SMWOCFCT{$03lD!JTud%Y1~4lIG*Sp5~*5V?iXVv_4K*H5)PILqj`Z zT~Fp}!mgc{y~$km5A8xNiYTLSbdgQ_AanOY=I+zsK4jCr8_HbNlVsCASD7p741eGs z&<+1fYkHO|Bd>#hyo+3MFEjw}WlYFaYf<7+dc+_1Z-_tSBf;qne--BLA=s8(bY5?A z5&E&a&LiFxbzV<$5p?U2i8wzf%R`*YvarW~;W_n7mV>YrI`oF|8aWttP2U~HIPmuF@0g=E=i0k6yQ3^|lRhhT5W&m!Q5%Flj+XB~3zX?7_Q`d5CIj%PQN zgGH>190bp%fM-+UQL<2ska@+v#cz?UBV9(agkiiQRW7m)w9?FE`(#;%dF_;Sevq{a z&OAnHBZFI8m8B}IS{x`;Ee(#V(&{t(IDJNn4o3mUoj4ZbcoN4$I2LivwsX75TEtm9 z+n0FDwfzWc-?CbiW!+`Hf^?rKYqgMH0g$y?$l3tNTJ#&&)b}O0{s>3tNyu6)WNiRs ztyYq?0WPu@&tzF!iex7)L%$Ozu*nmlCq;WAo2Bt79O9zJhBL4gqhKp0!&aOFTM_A(L9nyUp%|~G zIb4@Hb561o4GM3QALPUZ=)sG;Pi3H@u);m$U^!!crjJlc^?CN1^}>VNoIE>6M`^q= zJc?p21j5b%KhV41!OkQf)CfB<1$N>%*ok!SQ_&{Ui*sK$i*=D(B!9WFEX@SFh+D+c zW}{CLD7nj?ww5}aJWTep4|r!RbTvbMj$e$WfeUzA?eA9F;2+a!C4X0;So+#Lwo;uG z$ILI>!Kyc-ZWZ_?o%3$l+0N2-a=)}EVjW^E#w0#Mr#?h$)S4`{3D?YxnJ+HQdGF#h zi`5gb;<1KvQhHuOF=jjuh-pQxg|m$pIQ8D0Mg0gb4)D1D>OcI72)}-WcYyF)*njwO zp}?;n;l%+Sm)?K)6%l^@2=4&lC$#q;|FP%is( zWBAg?WO-c$nVkojt?}VRyMtu5KVH4SbfowEB7 zTl(4(Np^p82P?P$Ss$Pv+3nYILdB*1ZmiF%pN{c)l~?@I{&9py>aIwS)YEKm@+p?7 zUgsl(>Lt0J1-U%~uymS59dg~X^?1YS5l*?D6_Kf4FFlv#y64E&hLgCr6z!kpLRa#| zXk(Hpb=PFoz_g)78;bw3e=PW1`^P^Yl)CE| zg9fIJBI*a)STrPc*Ww`q)5Z?!N4ovvM~A2G${#*3Z5*I}ppB;=X*|8`!T#slX6l2` z{&C5|#$6j1HV(|(Uy5xJYtRl%OLb|~0BC}oq#hsuF26TV_;-grj3Y|PiI8ppz? z^5c9=obf)yxy6y{wx#wxs8GNV}9*YM8{vaWuH?3c)X%XjcwzH{+g zc)%sUM%HhGVFzU5UMkx9j4#{PjvxPQldO_XnOkahJny5smgaQyx{I0gYnnI0_FqH!U(`Nu+1`GhqpaFn6 zd;nmM>=|auF{kX7WypJyzaz^z%io;ONrt?MX9r=+&my^s_4VID-n{`C6|3M|!WtcE z#Vhl>#0WZg3w{pyRNp{OeFHgl0Wn+hspK|F5c8$y9%zH|ok(}k`V_5^Q_f2>WIC-; z=?ZCo4RRnL^H*T4>U(z!#po0q+KJt($@uNBDKs3x~SJ@ooxU z2I1FLe*Z`CiU_}cgtvq6>ngYZBm52!e*Flqnegj6Z~r6wI970@xYkXLFZ_uc#kFn< z9(;!z#kFn<9(;rw#kFn<9(;it#kFn<9&G*_#kFn<9&Gy?#kFL3y~ed5uPClXwt5B1 z`t@uQ<;T!^f#w;O<|Enb=Mbm*6mhDz5vRHbajLmzRyWSWT4EsQZ*oIC$_PC{@hA@| z9_5L66k;J(zRx2Nfd?u$I&tt#XO6Z#v zu;Zt!j#_zD;cq&I*wtPf3l-ii#gkatWy-sn?DwiF+V9mvh+zef_DH=SF|4V4Nb;Th zwK1#@fSYR!D;P4|CdqK}YfeeeWg9;jGzkYD1;7KzO9h7z!wQa8rQVMiR)4p#N^B#* zbU%-F5XTBh@JXG9IM&1bh~yc4=t~It(srG`grF}8=nJ(om6zHEvIevr z#Ir&k8I(E=@vH%D2QjUXr9)DuA*MB;?I5ldvSN7ZG{m(Av>n8@LJA*ge0cfnf#U(h zw?a${8>b<@HK2V#j4R~jjK*n*aSdoYh;xOMEoz*GIM;x-gIHI{AC@*wL##_~X9MI% z_gGhVnR83?6!ET*Kj$<~L%eIi+d|AMwYx%Jag$t+cRic4?X9C%{J(+xr&2-nY{%){By_C)=&q<03xy zifL^)gJ*+Pys22hf+$8veqD|mtB+jc_3B`i%JekulO6JUN@vWlX|7Am5H`nH*c=@( zL&?7jfUOZA*&1TZ5Vpn<6p9%d=kz&dxbjwGhJ(Q?-$^>Si=QjyIt<2GxWo(#ZWJ@@ zD?FE&VZn`JhC#sb`|IEs1RT4?41s4?-|%EN-|&`T-XLapOE8UHeZ>C3v#Vd%FEEV* z0P_Yh!&{=~4Pu731oH+l!&`!RgP7qh!Ms7t@RnfSAZB<=FmDhuyd{`7h#AT-dyN@F zhV&3KEV!ANp}gkQYs?UBP|PqJIp;ZEDlzBWN6a}_RTd!+avky@Hy{u4**@e!W*`qT z6FHc!Ip?v+>(lxoM-95^JLKT~9eSM3Nr%3TyooxLWzeM?kt=F|u0Mhj0RPwD9eNe( zLgWJnNIq~N^im-766sdTsY`(Tr217TInc4+-o;juj)i}G3H#U5!l7e7xg()*CrT2h zNS=XQ^6vQC+iN$UbqB%;S%fxd7R6n=W=W~FvdB~GM?CjY0HMK zFnf*a)qJ!~W25v{nX;Lxj`oRA9yH}bVt0h+&LH z3?l`$gg?fv32oE3`Ag#_+Y>|s*`A>NI<&84KGq&1C-}a4C&rMDqi{S8n$X@Mvia75 zChP49jUS;r4%%QnuV973&om*7nNPdncO@`x;qbk-jZA3#8_G7tkmU8)AJcuDPXQ+y z=QpKsmggSvK8>@?2j$W@lm4cCWHPUI*n7m6Wba9~k{@`|PvXfg_MXIxeYN+zB);p_ z-UB|Oy$7D7wcKm$J$IF9qPS0CCUSCTAU8JwIlA%4)s4emyN|@*q$=}t;Zuy2$fr_2 ze9;eI^rM4MVeb*2GSKTfd|Gg`d>V*;Uc&t9l~2)68WWn8-UW3+`u_$UQE*qj#9{dc3?}Lbk1Ce^XwMr~G5Gt>rx` z*(%nk1GwgJjXj)xH5+29jzIQL=-AKPxmQK#d9RANx0!OHjC`=$fIOx<|}|M*Fvx2TeN2ucbK1H4l2>zAWgX0ndewm)aTVeCT4Soq^7Y zJ}9*_;Ca#M&hZ)O+~|0zoq^7eE|%IE=p5;TQab~iC;h%ScLqLJ+S$&)=Sw@=8Tg!O zXFIniZ`#?`?a7^Xwsm{*r=4xxo*Zhit((fDme!Kwn3lYjB=4D#*OENoL(*E3ms%+%opMW1P9whuF1# zjcmu0KsL~+UWg4U$+5*s~jM>J_7_dV1VET4G`Sn0|a+u?{Hg=I@ikOdAt)k!F4^^ zf}CrHwSAI1ui{y+x!Lu|D_EI-O*}~E=iF}j+2`SlxwfO1V$PJGP5A|f_IB>?iTJ&9 zf6t$!T*r!SV}$YVvp&TL<@`ojM$3JabNP@L z;PN{Ip)30mBfKe?TEOf>jPRyl#sOv@VuUvZGXpUD5F@-Pm_2>CE z7qdR(a&w)z-1l|Q<#xuC20Wizio@NOoNg%=cU$thrFh)!$?bN=mTpUaw-lGVEjiv& zZ0@$?c}wxR+mP!m#x8DCzPGcj+mrL{Z0q*qeLLH_eYxMx_HJMPx3j(5mjmu>@Al<^ zi|yT1F8C)-e@o7_o&(+Lnrj{LSLr$Q?o2%Ek_-OPP3D4sDCUBT>l`69=PkkQL%j2r;PxTjc}sBn5bu=X_8RYm-030S*_l_~$9Si_4%chE6YWsEQ_L;* zLvA_tCR3i{IsCSt5x-|%+=t&YUxeQcUyR@OU4q{;Uy9!|cm0iB$}P`u$u0jUbgQh7 zU31GTZYH-J`?-3}Er+hA+;WXGw_LP;`kG%Z=N-#=zH;8NoL?^I9aDZeAHj(4olw(fg-BXVF3iLzF zF^Byj=9o+0XP_J=*BtX4>Tl5hOLENdJKZih=HhtwHP77CEzg|j;+kh(;*w|HeP7{h z+E>_Ho;mnav?oA&abF?jncu*Ml*h>=*^n|1$~o9_j8)z%Ks-qNN&6daHP`&mK;@d> zB+ttE=DqT)B%{Q9KJvWzS*c;6Zz^H`o3q}5VID)c^dI)gh{bQFld!Rs20B?s@M|eavtw; zp5Ssm!{vOYc&@>_^gS4E{9^IjqBHUP+|(wA{V*!S$kYgTWwPo3H~(9-os@BhIsS`m zJDZZBR=v;7kHdMKn-Hq1=H}CV!bP>m<@{Zj^D39~3YYUYT+Vm6od4G4{MRn$FS(qX zJI|F{=v;5t00-*Nnee|D_tRB>IW;)Q&QTN%Z8+f+5}~ zE;K$ME|fRNxtzzloF{agYilyp5z0*U#bx*&qEfG>?;M^9KPZ07IRfA0R&hf0Y}Oi0 z_~85T)pT_IR^vqaZudb?vrZw{&I5+dL$IC2v2ZP`!0(|Cio|oksdoK-V%yR`WADbb z-|MDtY*Cv-(dHGj8IAL+fc^bLLd9{#;M~zz9~uYwN#8mrT)IE^f*x$e??Kt{ySjt% zT)&n}Wn7k;_Uh1gVLt<2mg&znBp%;yO|1RUT8r;%i#&?&IupMr*Ccu?*KmV30)B+H z_7zUc%=CS@M!Y9}lSzSZTU}Y($UU)UD}9^(Q`~RzV74dmy-WHQI>{3H9y0@(YOC7Pv<1y(YKIXzu`vT&u&}#VL9_*LH|>4SrC$yYM6O*?Z(ig;M0lB(y>Nn22K+e#Cn>#gAySgC7CAM}7oMksn>2ci~4o z@6L~-f!D3@<2a%n_^pZfaaCw4hwlv#KSttyul(2)Z9blRbNqPqzCQ5d0MX_YaJ?1U zSg4OZ(B=g0_e2}mCKnlK^Q)Vr%@-3`kPdsPlNe5b*yXyYrheOY~MFuQaJvML$hhe$#Weo_XjPdfMX)+G22bC{ROfcyA< zk%{&Y?wl~EEerNiWP4m=6!uppU&43D+T$B%1LnqaYj(}4VP*r$d3+=6`65=|v_+Ux zjPef7-JTQX{Ep6BoANH9-22s|d5?aTpEv06qLhhWEy^2wcyY?S!%I@ETiBfZua@M^ zKfE;M1)Mv--N4cBs9wr|ok!nr$UqL;V8}OWHwri>LpJ6xZ&Nagu%Xb9xuwvcEy+?d zxA;(9QK&txsL+rBx`@~AoIMiz(~{!oTU^SPb+FTD-U^_f7KP}i0sV+(Z$fwXMl&AI zM)yFoF`(6hbl-($W!ItE7|`p%+d#7&pxF?KX5DF*1iFpBMcN5Jhn<1~d3bO9&-M0j zlz5`OGA>jD-Xq$AH{S+zzCvTp4de@v%@Fq$JZ*Bx{qKLe?3A{Y=AGcp zJHeZGfj38`ST_=HjskDqo$>7EeQuNDnfM!Lid3; z$7X;o;`IjX0VduAKX>EJ_raT>nU;7{q*<@L37Uz#*#pf)-lY4z@n$!gjRCzLybUz# zkvApUx$x#q(+<4354^cg;>~^F&3*AidnHG_`9ATct6fXqrzhK%!M0^uojM8Y1Q9OR z27H^&a+-fH!mZUR)``@q^|OE5P-6U@HR9k$){?7|4F?(GYP*)izSI!0@K4tA*@vx4 z%W3gl4Q%I>oa^fq)tYjzDEKO|ci|h5?`{hDgt3cB2S%G`4^f%CaX(bc^1a_Rh2Xn6 z6I%Xm3dw~Xo;1YUq*ak0lNcK2OFm2@{F%hicwe%`6GIaM$qvVL01EsL9)1a%l7+b_ zgu3F4Z+DNYRc~l0X?fS0xcA@I5)X^hKGkNZ$J!ieU7tDWp#(iFr@8kMC%$Nn_(7sY zoK78%ewHU~X{c3~TlMas(-r44PL-i9-~Mt##E=SW`S@ejMA*OzqCMocD=v;hiuw!F zc*D7gZibf8?uIkr9){L*Pwcx^V*fS1uf5uM~YP6}S89*r?AS(_%>?L*yJpt20~E2*^V zV?VG)a2Bf%`u6hLH7}BFPTwphSXaYX{c**R7K(G>8@_-kw9_{+?qTtvwW?)mCHU|R z@HSH3wraWh82X|bu2<_+dGICj)NH*F%HTIKr9qATYcC5bomzvUTQ%9fKYmh64Pqa< zoM`(g_{U`Px35kD&1QpkiST7PKIrC=B$W??a0IKhC?`YBCI`uX<~9 zDm+jyWMR(SIV4UzW(6gN&KM#X*5f!cI8HpSAD$Sx9&^bZb4oj9F@6^TelKhZ*o*N0n|4`CmegC7|GsK0v8U-37q<#OkJ%W1`X<-h*5)xx)0#j%OVQkVaFQ-i($ zKIWIltR?Oi=Y7yq^GovGg=!1@#R&X1a{KB8@I^fMArAcTf#`Fy;h9bz!}uwg9`$>! z$M+^H&|lxyYh?xTgc2~j%L*07m0|p7jFY4>4wA+=-ert6IPWe`sK2}l{p}`Ch-TqF zGeTbj|2ufT{@g@&^v?sl?Fkv8#5_=;-;f`xy}{!O^Y>_*WCh8RM3m7eBri_g&Dw{7 zUa|P?gUKIk4~b^GTepDCH@rf|+IfKEjc-F)z!<3Dn263G*H*rN=x ztbKJd`kn+D%!VvT#MnOo+RTD1m}vm5L^+^W2-VxYSbj3_Q~CZaByz`)5oh?wsB(qU z8{Y-@)+5G1FxSI2_rhFOaznjUDmFjL_gKj6H-?IJUF*#tc?6ivcMI)C;6`&d3*|<* z6e35#!Fxat_yIqE;2D513^dr64??_RFz^pTKZc+`Lot@aFqZCS`p$G4#xerqLp-OQ zg7Jae5_Jq{r9JGN1B0PAp+oaeL^Ioob?%1d(X2h#&A6ZrGI#3g&{WkLE;ZDbK8GTO2RgGOhI6;6o~ZiTm_j zX)Sn$zN4Lq?^BoJ_a)1ZOf}(~sO|d^yMZ3Eg+MPoT;^&1!n-w^zN@|uzrEsz`Bn1s zO$`yYcdQY%25W?()oOVJ-=*(z&tkQt;v3nnI)}%-1&@RgPkM zv(P}in1S-orEDANW;P{T-TVmrEyxJV&$fp&r#jEi{C#@}_$8S^hBhZV{jtrkE6znO zQQ8glrx@@NymLgs+67gPTE``eI#P-GnbGD*OXP)WuX#_Y zN$-!wHI0k?pN^N0Kt`0VT4^u!VC_wak>OkQgJ`U-wmDu7^W(BbQGLVF!_HRCCk z2b~0+9~#Q?_23oy<|2KoT)BMB)(Yg4ev9AL(c(9qpgXFxFVxJ9N6A82kD^t@;(qa4 zu=T}nXohmbTj<-k6@E&Sl2_Jg@f$=O>_{!X7mVLI5q}pbxR4th3p@;EBi>fsA-P2`04Mt`@a5%$~iv%sCcXIxZN6H{DtAZA_B!II>ei_lzA2NmH5a?L+NP%4eTPA)=j=ChA znX}O+%S53aF^2gGT$VZkay<)letlK8-5tM|v_4|7dWLe5Ity{-Ea=%Xd~=-Q5#&3i zgO17Y=}YlDMGL`erQiXYXOGZ1##QOh>M`z@GJyXhXy;zgj_Rhm)SV~QB^<~;xk_^b zF%Q^u=Ek2q%y!rvO^9t+pgZuTG%8x{t7~)6tZa50PYXEI2CPcEs7w1YXt6z<|_Rk+3d+2+rgahRC0%|`|t5a)H zht>ov&~YlrmroEUdI0sP4n5bwnU7V=~o8U(%+bK7(vwm=6)} zY;Dl%-?f&U`^su*ciM|xYz&*^Gp&ygJ*g1hr*F99JKPK1KrcqNBIreQAz0*B(LEKd zFFc_h^dzrLj_`$_f^$7j`g~|I=53$_I{mx51snLs#;sZN;(vpObcpZDeaeNsPwUQg zis9Zqo^1X()UD#M=E5tZ#zDW*Z<3M!Jnq1zkma1e_XWwia*J{(~p8o#7FaV(fEPt1>r-vi7xK zI$mz#M^1mvnCu`Xvh&E6}QVi7vb z4YC7$z+0Pwvqc{`E>5SOfqu0vX4@i!UpLgA-)l{b`KMLSob$>Ld|euxt2R#6sj2Q% z)IEo~Y&iVN2=LDoy}AZ+gYIkbd;*SKz*=$rN{9QjZgeI*0ez1L4dOtT4@JL0MZBj4 z4&de5+3Oo3R=;VjUH+-Hy!oow??fN?FNQx_Ya2eXDnE1fT|@qEIBcA>KUyP(!QZ(g z@ipRz5qawx%DH{ka(CE1KRWMw;XchH!jUO+)B(VaXfCL-)xJ2tihgwU1Fwp*gw`w> z`tl>u1oJGh5OImucUhHDN3G>2o%ltx7dO0T` zXV!9;c-K1MO8xW(?mF<3kH`bd)T+aJjL9-}Ii7Dt>1j;JhRT3nqrtfR3U%h7FfDj! zc#b*)u-IYhe*$+|2fQ21?DP`IqQbGi|=Ev_CP#{GdmJA_22Ps zmEU6xmh5v2=Djjluqh#{%GU+A>fz6YDwVmu;M4zJs~AkS)RP((dEAfX=fXDm2d&wn zKjcS50VfW&iW0i0mgI-;q3Jq>aXN!;orY)4{IE)W$`rEY4aY-Rei`JHKIJ}BF!aT$ zOlBrqLx=Yn=8ZS%$E}MsXr6WI$QI3&UEI!-n^bmm#!JE|~_{oN@3Ur2<2m&8Jnt7Z6m|XauJFZj{N5+l=)M?d zzrZQIFQPnuWSptV9Wh(nHy;^q3iCs(3Fjw#nL*>h4F1rKuJ1vAVtv4`#puJ*vfCZI z13-^I6jbb;02&(o{7pLw9^K2_oba?Tjl!6>chM28Da^+SSK$M=ZVaZ4k0~5QgSzXF zgqez^=V5qGxEN7KC&7th%H-~FG9@?}5)68$7;xfU;0S;bfLJFJ2pLMa#|w*9BKRCtQ)EC*r!F^KYRwopFi) zaf~$5xM?tMnlB!8;{3&Udll;Mhb>cte)Tv%FmL5K+n0HE7wsch#J1U&{{?c4t7wN@ zP$`NRT*N#NfIY?(vBw;qLcIerqpLhqx6&L7y_4nFxy-RB(2M3*PRIOW()_}2rajH2 zrc3kdTbKDo-_4=NiOp%RDL6D$y~dpxPH@KQ&bfo{_+ULe z`$xxa;-j}QcgBN06MXzkrQoBmLH;Jj0=#+58_i*jiRMx~tC>#xppHxXlqoD+d{S>uAU;CGUF z&lkM8m*nI{ta*>)0!-ssfXQ57*gHYt=dFQ^m~eQ4N#h|H6pEVZ%%f;o81&Nw;7|8X zfCf$O&U?hOg`97T7BUd?3+G-f9C*Ea-9pkQ@3`ud1CVpzH|SCZ{XoBOdr3PoAbP%}%-~6`FFfU?>IzM75ViHT#SyPs(pNV)>{riY~^)tVXHLRcV zsQQg5`RWf|iZ!_5-Mav55zZOlX({%)A=Z$DSVV3da+p!lp_dadws%5@K7{e4J}|_c zs1GgS&ORJ}jOEt`JNa9MdP6}Is#k;f`4#X4^~ne0Zh}3Lf&7d-$iwCM9Yo}Ln;u0Q z1qzjEG|!nTvHwD6ut)!v&V7&NqlSd z?|_-k4{ixtH@B_j?(HEh(X9G7u8ZaCiMVFCHcHROLEhjxtXR4p&8pLJeNeu>n^kW| zoZ^Ih9gg?8ke0BC^PKQQ=~~@VEMJeHYmb)V@zV2Qbj@1A?v<_w)3u`IpnUC5*Fh~O zaD5W^#_|N~;kK{EbAt15+iCHfU_9J*Sv;rrA8uQG!ZKrS^tDyTr+c)Al-51&};rzIQ z&g0vf=p6H&-J9B09>mhlM+?n&kx3Nv{3yv9q-0-I)>vp9YgVa z5RN18oQ}iroQ{L>oR0o@9>}5(p}c|eEXoroKS!C05`ywW0E@0eIT0$@p8m!&dLfDy z#SP_~uRWvdQA$y~+>v{M7+5moMc(DYt)JjGtuMevyNJ2UJcO!1@EYuvDh57u3li{I zN?+5ckwVpY#25n+YkcqM(v%mEE=iemY(>hDV~?c-Jyi5oz%gsegk#^O1PZK5d-P-q zJ9;8z=h4$C>yCbt;&$p#-d(2-=G{3IQMK<6bK%#|Gf@4){7x;br=S^D)f_pVy$o;a)6wG84RiuqeLmTN)eitil*C zjFX@UTBSE#;uVjz6tpfB)}NPT{o9hP&y!^RJ#>Vu7iB(Vy(se`>qVIlSx+*bNBJ6Z{bQ6p zD8E7}KzSHt8j3dx&Ff!6zW)S;LpcTc{t?Q%D8?Je`b&I3rRKR$=P<}u#b&HmK(^n7 ze9ku@vpC59QMeZXIj(~&(qdiY5aiJ%)M>zVGwweFS@!#*mr^{imQjp%%8urzgl%SX z6vvuV_@mYo1L9gz3rbN^4t`*O(pO_1-oD05K8qWGco zRo)vR+cQx}&cBYM2k7xE=t4BqfQIg%$9l;4C6b&ka*^{`Cp43+Cwo>08#W$xsvBfc z7UUU&9HKl|4dh%Lt;OM<4tcIKw!|95d_qa)C-hO~V_j(2jbdxxBd+!x?D;FO@hP^p zQjDby&mH!(V(>EfYXxpX^?tA5Tp#2D4ISJXO))IQ;3Z#paAhKLm7IR@VDWp|=WtDR zjO62CeLV{6?&XNTCHdBdjD~KXjdh4k(Ai0_({n$aYRctQbtYV&^;x(C=4{AO?z< z>A!)qR*IKWjMR#20c$Vf+JG`!Ej%*S?f_0F5g)OvUDG%M{f=?z^Fewa_2O2?*csK& zoo4@yCo``ON6tDwvW4PzHsJEmImdk&3c*0}as|blmE_MMo~&R7k>}87iZAJ~_Dk0s z=uGhiTGu6-6hY^@(&T#mNAAin;!Wa9;?Du$O{K(}C7rw(K4noC-XwqZM!czqjmgLc zMBf?gKY6a@fJfwW;(_b+w-|f#ZX^dTyT}3Z^`8>uz_8qNh@ZbK#nk2bLF@gkm>D$S22cvhYw=EfN0`B5&-k3V;tAJM4W^ZW>QnIA(cN2Bj2vEEJm zyZ1=6DV7h)O#)7jgNJRP1?4%_fsbF2@EZ%baV|U@him4-!|aj!?c#gjBcA3j_?Y7T z)4*SHtUmzn5Fc}^r-^*ba;Ms{er%o!K2GOHNPHYrIaJYlpZ>@s6T>&zw?mfrVqUcH zK~ef4?2=_-$t$5a#=~x~U~k2K@Gf}1Jq&y<&)br<+~81(mjeGt|Dz!-Sc{D+T=QZi zs2$Txz0Q@?}k zoE@ybjBpmXyd?sk7bht4iUqg4@S|U+%z$sJJ-QfqNJ~=gT6ri%JLOQyVs};*xAKFO z_$eQxWFS8(m*eU;2eSIj?T$UMoL5T?`lEtQCOo~+h6QcKVZJDQ)9rHq;+!^5J>_1- zV$LYhzf8=PIB~APPV!&|8r$YBx)A#(!Kb7bCLq>Eb`EDht#8?MZ=KtfrI_-k)GXD&o z^;PEo33dA-^WR2)Z${?71Gug-{{vj#tjvEA@AQ|voL-+Pn!=lUS?N8F0c zhi|w9R4 z)LY$k0QxfnB@4P>y{HSmhA#N#hPq&mqzjsQ(FI}X0}p)=4;z{60dB0cT2OytW^aE0V z*}G0yglDo&2p!?{lgr^Zlb_t(515R)*VhTd;U{BnI{JJPzM~#~z~5mvTgEZlaSvs# z0lonFvsZCVK5dKS)BZ{FX(L_mB%gLVuDkoR;=7VR(34;5LojaO*AfifmrvPA-e-RK zq&*zGN^_U&%?$8t5stLhX#6tTejIoj0?GFlUaUd+0k#SG)lI{gEgb#HMXss}>wOW( z2`}8pE*+fA(xSlEa}ZO(?Wq^|dwqNda@?$8rGPtr8{Qc@xnk&w0@?`|@(JAvw&Sf5w={xgJd zu277`Z&NBwoBTr%w^G(sVl4`OS=} zgsofb60bS}+nCxbruApe+k~~}dc>^E$GH(=yo&bcP)<16wnjR7;fUOL{C-K$4)kB6 zggm72K}?8Zh?Kv^;17t`7(058c&i1n*W!gd{RPpc$Q`Uc2Yz`H`XeAN$)TQBMe9%L z;_upM+|_n`54N8CSF*+F{X@u6+la9xdPU)PV~A!JtQAv^&$oBGRg@!+Y(dU$Ip}5a z#$FZdk!%U)D@s5w%V=E3n&(0#gznL3uIyYLd5r65xQw({OS{y09x&Ea>!wkff7God9D8!jOhR+DqVm}3Q zn;9C1e1}ZPm>tlYMH`V%g?K6HNtw5biYOL}e2Na<3Kn_m6dzJ)l=z0`JH-RUYvP+P zr`aw1uqYavEW}B&G2e5ZQl}a zWtah_6+(8MIz9npYeA`8w7h=7djZbSU zM;vo=t7mi`%3PH3C{ZicZY5qY0rqCVJMSsjfFp7xX-`mLl|o>7;jqhIf2pu49yX@8l1^DF`$QFZ~KY$qXF4ze)A8Ahn z@f*=jk8wUTOt6WvW>ti}sMsl2bl9&Wp3~Sum$k2+16v{)HboL_i`lR-60r{L+?x#B zLtKkCc(eMqLBnOB^Ya)h(qW)qU8uspr5wLy?2mhoD*R1>3ctEoML>%Z_nyb~dDNjC zi;`MLS{26R!CJ?j9LSkRF(zAZ%u@uIo=2GgeSjRQx}^$cq8tXslyw{zP^U%S%xemz z>1pKI6rqe)1k~lD{wmZ0UDOVUXVvCf7-zYags} zI-lKDsZX3}JzZaKwE>)=B;>n`VB@5LL(lJ4(_Qmm{2a84y zRdgB3dX&W|vrz6v2|=;Dv*;#_sn1_LqnFtVx8`8KnQt7czXx*X2xvGC=K;{mmyj!{ z%efenk#iwN3m&7~gshx%F^qT$v7oG+^D%c~y^C@iGIQREp}0_HPE`!mE5e)HNXXK8(7h^VuF1{q2^8hgTq z5#9%>E>HHXJM38x@R}!h?%I98uJ-JYF81tL=$3yJcC}|skjGbeb)~CK``Rx$ZQ63$ z%j*)`{sW%%)uuI~ZeMKL$1gi=+8>cCw;FcsanBLCRlw_?*fY2qHf^Cd;m zcUMa`?c;#ojD5tE*G@KV39dDmyYf1X=8LzTW?O7?27Xs<^35ASBL4!h0vDwZ!Wzx^c}DPvVc~1TPWk>&p zSHgFaY}lV%W5XWD-r04bk_|g(nA3*!8`f#VV(iI=rFckBcI;W$2t+rsSz()+Ef*9O zzk-cgg7H^?-~KbufcQ(aW8X~Zuw#=k4}X9iyR26`b{Xtg!!>@85jO04*s?NTb@zja zcgQX+l4x!Oe-X_Obi~V@wkQW$j|FbBt(w-sYtH93T$8P8q`58Hs!ks3Zmat6BTVPO zlLK$3I(g~`*j+!)6{=|t6iGZ%%LjL}SFtt?zxuC!Sfj$cj)JX9_G^c|3Va{L7@mjS zY9xCVeB!iO@3D*5;2*MCt0bEhwlekzC|k}Y7+V8uvydRvr7uZ8c0T% zAloR<0l5uzb9l%&*r;)2vqHuRuvzI^YzsCk$pre1WU^TkWt$bU=_+h-nWrMoBgY%I z*&NtU-hfSZs~_)e`V6+J12%ykwyGc2-DKOloOp)TS?v=dXH3e}?iP?29?DFV16M&jqx35%w#~ITORdE;y0hf_?0n zDb2`hq;(|*yMg7r83P-k9=?LOzbBpZZ7I6!NUKKw$p$6+lzw}M#=w~`G<8noy=>-%4`iWzzx&qjpTC}Cb zc^DU17cbhRD%hk7Q!z>)3#`+j{%X`Kgs&eqajuwWd6&5%l%Gxc)W^m5=81MFP*aDW96o zzUGNmu?4rGX8`;Yp^xR=5e)kYWF(QzQKJN-@oFV!Kb8kRVwrw36Fe>-!jH;Py7N$ z0oQaNb;P3vdr`uC;tbvQFNFET8%B*x=yl)1sFAE=-@=_iijI8?cLs4C`xZ2Ayg^Xn zcMz2`4B-JY4YWUER>UIFmWoHbAUt4};cnpp1MQ30iv19@FM{?$(7uSzBOX)VEw~wG z-M>WK8!;-#!*CbgnFScXM@+#}xm5ij;tlS~#p=6*+!0q;gg67%BOog&*C38;IM_4c z%+nA$19=#*t9(G0MC==jY~syHP0WmVY?Lp2UIlzCOsw%d<*g3~u$=ahO?5XWO^E%)9JZuZ!m2V2=n|g`z zO{08eKTy8w&y_ERGW7n-aBP|n*%HesL&dMgt*3lVl<%RcLfh~`PJ011Jh69PUGd9t z>nUFo<*Ve~684Li^KKFE=2ZChr6gg?N!1LVT;l7nVLTf*?=BI6XSmUSI?$2Q7 z@BN5vg!n@`V2!G2Dr1j*qUiCLrB%0~UnO9VVa>^vtP`*x<8Hv`U?aG-mHR8eB#}kg z$cC$UCbo`9_V3j4>}KRj2=5cX!7<3CEbyp2@#fRzj$x+@5{I7N)LD)E%Gjkw)_~qR zKpyZOZH>krIh=($haq2BR7`+&d0{xi#;)YiN`Q*f111(z_V=z z_Ggq2(Dz}K$$jMjeXM-ct<}B7ck6hT6nHjWtFs#oE&D6{X(nrRZOAf1;Qhl|-Duty zP4~ZdX?10)Q_IGl1ATcGYjs(?-&pC7-zo278K3*(BP8CrWq*c0o~N;QM)LQ^`^)?I zmZDz%_;s4T7iZ(uxB2q#C2`5mAMYV?$d)i3zvJ{b+-H$yf5t63#%JkiZt-EiLCSWEE_brTj&=3z z`hJ);Y#c?sZui@*B%hH!yOj!QS%eL1(2MwJe~~rI)1BUZ?(DjK%dsy^&#qe}*U8y+ z1#*2jyDm|#F5WNWTFiU7-pPBpj^Mpq^LW3MYk%I$^*Y|mwHNQ@+JpB?ROb7HKNFrJ zd}X|&=C;Ku^Lj!@!kIFs_k~5Qk$&3g{cWhqyq_?P;2^Xo91r1p#%0g22WIQJJun9U z9vG{>2gZo3zUOD|ftm1M*aK6I{#J-yo{CN*{2+Tmaw9A(O(*=+<19@NtqTQ;#L{$|z1tC6#OdM+{4ju1jtU<}2wpUS zR~2O{vkAP)mMeIr$rZfXFpVoXRUub!DqF7LlqOejYQt2n;8cZN!KrMyf>WAYlX*Xd zYXa}(+L8Bi{Sx0dTu)6_nI9AWOeiM^mK{Ye-b4_cc>&>3g6PbGuV26E^rmxv^l_)x z1BN;9Wn~K0+y{{5N7>g=F=zXb1FYAGg#MRvy&OIGX4V*bxbKBNoXs4;6839sVsFM* zjJ;xa7w5;Yk7F78IUd<{JpXIfrmSW?%0~8a6z|@j-;HnYV|~YF{GBZ&ulu=v#@>da z-9`Bo=-bJp7k_9nj_b;GI^PzfLoa3wng#EP%|ZNgN!jtEsb8fILn2J>XW$GAt;GkVIx8zZus)v6uqWNun{AtRSHWu9oyl(qYd1r%xv%)X4y5GIt{c3^o zoOqi)0vkuL$9)#pc2k_sf4(lJ=IA=*mHo*_o>j~nS=>j!q9L@w(f5?Myll$zDfpEg zf}ZmX_~+sIiOI_Q2pE(Ho=o6bA}Yt_8bj2*0kUYP|DfDdVy8=G;5i! zya$ZwE1UnMym#~67I5kFc+1_p8y_I(<;8pXgkeU<8 z%9{diHNUEA{y;k%U)Qnb!1LtUpuGQhTzOl2DeqCnV8<3JZ!~>+Wa+InJC((n3O#l< zn%sXU99!u0enDM#GgsE!z&tLtie|o#B0ihv%`Z8<)!0*x6yh`UL#OvX+G&ePu+r3G z*;utec)oeV3k#Z8#nz-uja+za)rcCI^KY5&^fEun9F4UlcY}LDgDQKYmbmD?pRZzW zVB$SzR`I-Llk&RBuZ8|u^n~k7Hujxr{O(!V!`Sk?(~BKix5+m1?-fxdw-Mj4HzHF% zojt(*6lo7VS8PAd^=sxpMo+}H!ycHHbxv;;^m^<)r*~y!ENd=e-K!$4?qOTY#y#9v zHtw3Vhi$hqM#;GLVcT%VC^ylU`SjhJyxY@MHf|zgl?7=}=;M@m*FIr;J8h!v;zG+wN;8+4fipZJqAA#eNG8y<$h+YJdBqtZ~rzVlu3WPU%FeiqtTN4qw#UtQY3eX?!jX=C@5 z&6}KFix%&eHZY+Ft$-&D_?r%6%<~RovU{ojX2xaVT>qlCMVQ_eMd^$Yo|U$sKWG!v zzr0QEw`EfASn7SvMQw7g?Ka*$%DY=G(I(H+CXKX-=Lg#4W^7A2=qb&Aa(bhuniu9B zowBnTd~K&iySGp`p#eL3n(=ts$mT4kH-YCRj7@yc6I%Lz!Sm~!`2CD_4?6cezGXUg zyXH)%H=O6qjFWun!&^2n4~<_!Zx^1YoJ-FfygX;V-^BAs|9{2i*#BtT$YYl~y~}t$ z$DhwSEu>|73(u3C-o-o@-~W=o*oihBX&ae`J|l70k+!$+x4-iy^q5DDU{6PbuY7{>z7z_sejncLMgP4EXg+#&dhMjx9Ni4aBAd4zOoGlzCHse5b0r zjPLepmtlAEKl@P9SXvB>GxTr%L)FdE^NGZ+=zq3H(nKS-Z_)LFQ+u&v;j190SDyY& znNj|c=X=+_b7~oThLX;`le`1(I`K~O4SXkg2HwS`j@I)Tq31bT&%-xXI@Lawcao1k z{t|P$dOoCO9h}VRjy6hOBYZlBlK&6X$5UUrJEpcN`F5Z__uGa|EQxWVjJ3XWci^3T zH_&fWlXQ3K>9X|v@A9XMPR-Kuzl-tO&>Hb!V8`y1)HB!r9v^-WJCQe%SMKR%-isbr z+4ClSTvld`WuJTAY3b+W|7gQEN5sk_4bHl4pM+=X_dA_+rGfho@s}F7{|{%~%D?*4 z>~YrR2JZJd>yCWvfBv4cZdTxald~=@aKDcH_xRKNiTnfiZ|a zn&0L5%|pH0AId*H_no2fA3l`d4?QjJqsQ{+?fyD{{@lL|-Lw7S{Ez3pH}p4L-$w63 zXE`ChnM5`&#$Np-^W`pd3c8H-WpjVQG%J`Ec+Ofgd9Gu7 zm^&K$Xh!Dw@G6joeOVup=4q!l5Cl^Be&#M*w3bwb6Jb0DU`!rZ} z5T7PehH7;3r62H|eCEq@L*RL*mILqeod3??d4)fHmI`S}=6SY`Z(%DpH2Cl>7knE* z9a>2LsMgWlWOsVIsgBHnMkA*!?h};fdP7Hdo8dAYw`BZq0!%uQ;Phtb&!ged?{KNj zU}fCkk2AhdbS*_&1{x~>W&G_^j=Da6ypZ!Qrze(bfzd!vt_HpX@`SImX z5|{k^@wX)|`T65-N?h{u#Rbncl2*n;;&bKD(AZQvw6r8+n2uwIz(+gsC8?J`zEtA! zy)SMD?>CZGaB7{NF3&fIVegnK>tu?+ZYlRVJzbt38|8Vn&*lUcZ_LQn?NYM#bYsS- z(=F&I;;*9`yV!p0Z2A}ox-r%Z-i57f0?QWvNqCxjuq-=p&v>orkG|(i{nw@gybs)i zbxn2t@4(55z&$wW2;76E8`k*KfQN;Fd+<;T+=GXU-}a{g53>XJ;9=7r{LjI|ioiX1 z=m^|{ha2AVrvVQO1NY#e7Ptoo7q9lEDe+&M!9$b(e&?IMcTfAT!~EAS{_FNPz_~X$ zvrMt>A{gV))dk}|3bDE~z_#Ip=XH$hv~m~N_6P9n1a{WGVB9A^fNjlS(xtKOJwLXs z_hB1;0M5s@cm3G5NyoN2F!Ew-+pJ^To(r(8{CBKLmNh`r!+y};q1eGcwccEFFMEE) z?vwhh?<(}&oqM4r8E?yY^e)m!T++#VdHxGY!}k&w|4nV1#CLr(zAHQ6!?Gj(I%8OW z6wCUfIMyF^V(nXJ*1&aPJ$*dBE5q=erB*IB#+?}%AAT7dQXF1PXuzMU0hX)LkPUdP=@l~2T z{?}p7x$DBz3E2yMgfjtT-?jMP7QgC88FPyd-u`@_$oHmD{H!~QZNKYS6(2}5fb|!$ zr+koBVzYEn6HJk6n2GagE}LrT7)bLeX^i-aO-?Pg4SMD`I|jL5Jvm5Qf70|1-}x3Z zy4+){WXx2+Kj-kzMfe?4TPz+K6JFVGtgU%))sB?SOHP&y;>?_*K3}WrDbIO%`F*Xf zzop1_jQ{C*TyLdcN70sd(5AQ3wztv7w=#!&3v;+5Y5NiM!Ek)l4&$toFnw*I{#{6f zr{uM#c9>cgoh&)K_hd8Y*NER#X+t^NpyZ<&J50mgKG`gFX!HAo<=xBJHk%!+n-2Vc zON7UO@7{g9dk1+M++XtS3VDV<;8g6J`hV*qSubB;yNB_WoKqnGRHQqK&zM~L< zccoIjQn>FMsyZAQp}bbdwgvYvS1s$Y<+=QSkum1XGGlD(0T*)RY4&J<_bsEb4Pfic z4J{vDI@OYpqZQjywW%l5&gQV5%04^~-_P6leu!2bZ>0alXLM-P1GX@HPlw|(+VZRB z9XC^+X!@~3RFSRYb49jD&Qfg`RX)6ZV)^ixs6tzm+Op$#bn{6ozF%c+VRwRwK6Dz@ z@I-@3t2U|$zw1~Y?}P@2DV4dtv%1F4IC2c_l|kA9N3reDZPoDw=6i5s|AY;P)e|at zmmu%(2OC9RQ=(PxXjO5^w3}G_5J-zZ!;Xq|%oCu$cD36!_ zb;&L#UaUXIwpbb$S{45hYvAHKKWbZ_be}EpMs#V;_fWA_dioi8&Pkm@%H#Kuroke8 z{e&$}71wRld_Qbzr-YfBTHS&68LdKHP52;vY{Na2{}J2dJqzRayiZxVI_>d`vge-&A6-}O1i-t@(!kAY4{q`X)eeY%5a|+zLWZxeT?^6j5%D0z% z|3!G8NxXjxdi%)osO@#b6SgeY;20@emaLbND}Gn?YmWa~>A(I%P57+hnRo~&rohBG zX&)C(i#5PUjO*nLn`q9ixfGopU~D{rf38#^d3joq-d0DbgS2hUH*Kr`#Ji^`uh4TC zYX@ZQNSML5#yJdsg$9Y6%7=eM-#tp(-AW#B#Xn|S6_2lMf16yYt|tzK_sJq}`2RWO zjP&e6*FIFO>MZ0ZecQ&p(6qFx@RPJ{KSCx!`0VhsE(tGA@7TI!N?bxSdYm2Km?hy0 z;}5S=x{q`xj;IZ6edz^3>S`;7nE%4(Q&0KmIJ+3nt|3s3iYwkEJe#P{d zRueW!d`5V*`10Y}P<+3~fi(uTT6{J%x95DD-z+<6TDtM1iStFAshmecpINYda@f&? z8sjakj(c^GKf4EBmPRde3g>d4YNheyx}Fr#EZ;ByA3D zDc|LgUnG5ZBu|}{b@x`jXFb4h6KmQnlXG@PmXr^_X=?4lc523O$+tav{!vZUJ%|5# z4kw8|-pD=pc4DzscYK1O?ns969{DXn)4WHrQNSk1mh#(b`9qsMMEwa8f)!F7>( z1nMAoC-Zbt7uoZ_V*1EdIp0M3NI%0Xkuy-}kHfU>VcOPA+nQe6bnYsy$B=6bSv z!C2sS5Uf!-*S!Pi__d~`$ZK3M*eIkdS%&AxFlWej^)`?uX!oNSXMeIXj|D#PJ zkSAkPBNn=AoHesG){$eYeuh0fvQBs-dEirZxRkRyb(O2E6NK+~95*JUwSQ>ZTqAAT zG!pnxb@x8-S$D6de@gEab5O=D&@lo9G)9SE4dB(qHU_L6kWdm|r)?PU&{{zPM zc^1}TVz>52Fs^Br8J^m%KYYMm1AMVga8Tz^X#EH}_GsdX*nJ-{MfEv??k;iG`EZ8A z1l?!;qUN^w>-BzQ&&={ddt%}^o8x6dU-4hg`cY)qsY7k^B|qtx)h|6#GwYYLc3Ac- zJ-PD1|2&!Y)v1%&^s}60b1!SlWi8>#uV2`4B&Ysl?z~+m(>_0>zt8Pgy<^*%WhZmT z@$As4lR12&ah}7rl-WCuELm~#NX3UIXOWjYcd*vu$h&iPl=fb9a@O1HPg?MqFVDNl zb2)dMbMJELH>pbl?eVEmjnjGZopzp2v((vs8{6i8n&mtzo_~C&CtblWaDq+Z-Sm>j;0*hG7ewv>z5C-$IzZx&`k1s)$yTSoT(|@oL+n; zdY4T%G|GA=2l*`_^e2Q6XP;g?AG-CBIB)RR5ASWk3&0F z8sl0;*O7B4#D`Fk*=f&JPyF73u9bVXV5f_+j*e6lm@|l%wQANL;i=G0UCx@OyK_D+ zyjx_9;(V|q>L2)@{A)e`ly*vW;F}$6JjQrzW$2vv2J%>;so}HX>D&x!f;GH+_~33m z79M6^CVh^x{xEYag8kX9MRj$XQ1kdYG&a z-FKZj8%-I$qW#X$&%aw5?m_OyXnmnQ&aK?y*OwiAbL^s*sfa?~8Aj~yl5Yjy_mQ{I zz#0B^>`k@y7-uTI(r>(N1^Jn@43C=lsE!YEHd7OH9XP9CJ$?QPd(4i#>0CPq-S6~+EeVoZ-fJX#t*BR7=QO4@{d4{U^eVjAoibUo)KEUp(9-7^uDn5~KO^J!N{q)UZ z`l1BcU40WipD0t)2>j7+id`f71mzzg{A1Ddm^F)@H#DvnTBP0wsN>hnRUHLGCmd{> zf0Q~cnm%&PG4__M*mTR9!y{x5-qv{JKs4>#LHhV`$C>fhXeO)Z25)J7by_`qqth#R zEj*QLjIrcuv6g~VmyI@g$a_O-uYreSMwGBgU>g2rd2%J~mMfh1_fwIs$)8;E&yp zKQeEDZ2P^5u|zXt3DGA6J7r$vtEH-jGu*uU+H;N*->S>nd!je6uOW~5>>+BNV1eL6 za2qqnR`<26fu_G+1rMYxnq2f9=Vu1^y_E6_4y1*sVXHWY^9mK4=MHsSEw6^BYH!D- zwtp4-nANujJQsRSjl~8K*`IwU7K?eQp`YM|V5*#5sUmXhoJ;h33-!;UPQv@aJSaHj zfc^p)Q-r**sMm&Do>g_F6}SK1367w%-kk#<=BYb=Z(U`sk+YiZ{Kw3Hl7jxj**(8E z^PfxoBapvfSOFNOmkA70{`>=F-VZi9J2S?BFGS`Ay zQKWwmdh$ZES;7TT+ajHOkk#a0 zzGH=jwE@_(ER024n3F6Wmgdfde~$dEZFSl|`tNM<{(gt6wEpC(M|PfccRqMBcWT2z ztJzss7MHAiEXbPHoo@QOQY~V62e)Z;q-S1a>;nk4~YvMGMA7_FcHKrNxc>S5_^6v{MS-SsWiPC`87lU{{rMzskw`@NLZV zT+TWi%5@sMj+Z%z3V6O6n+J5qc=@#s<&2A~400|T+s+d?zs>BNR5i&yVhnjXVyi~& z+o^d%2hBi7j#5V zp=^mp-&w?0Ah)Xg?-XNfIg7g-c`ADcM3>Vv=h;Noxl4Wafj5V5bJnG5*c_3|;+uR- zM|@6jW*t8HCgi{)jDL6Zr2hJQ_$%V8Bsmrh+pkWo_3uWWVFD>9T(`8s5;) zx4e>XWuJm|!nC>ReACXUJe-j-jx$om$~Ok~1jzn|5bTl;CpG~>G2vA$!g`#1PGGBO z!cH-RXJ254h%#6#83g7G`B%^Sq`zj=C;!z^&v`_au7AC%9$N+Hb+8YV@obr9(tYAx zVYFIjYw>xr$uE-iaIC3mSnMye{L`(MyGOmemvYPa_QhN^?=lqkNny|f@S=XGRRV}D;m0$K-dqbz^!sQ#ltPPvlMMpIO6lA3CxzC2gj`4Br#TuVlEKyL~fwHx%5< z2mfvY2Zu1Hk;j}yF8DZ@IgLT%z)O8T<8bmH$DO`kBb|ZtM!w@r!pWSA)?WiB#c#6@ zBLx$`_WNr}iSS`}wX#3dS5?JNL|(_2bx9ahW=Ig+9t?lZ1phR!TlBd_Dr+}$NE0|a zVq`T}H&;1_syR$`7-LbxO3|s;v*%8Hm@-~U8;d>Zb7O2?yX#^SwomPn@a(j=7JkTC zRbLe1FCf2n1NNc0o*Uj;C})XloFA>B!y2Lp} z!#ZgB7R^b1-oG% zN7}-Va*T~zm*muJ>mchy%nc^f;*D8YTWShW|vMv(GkfU4S3(yfSbjP4>=* zIlYCIM#dqWfda-T_~OF+OC%3;d>45zc5FyBH!KjDm(Dy+31y|enWBqpeEXlA(O&+K z@IDvjJBBip2Gw;8d5UdC=Cv;TpXB8ruWjVD{%m;W_te3a4t>oI7T0n#GMgnu}+ zICrvqqmPl|+y#u0&`VaA=wl?`KP254zDd+L--K~Z3H8<}$KM92c^^Pm7xtIX%ob>d zw&y(i^ZV9h68bQ>O(x~-$UOQ;)>2D;u~TCf9;VOI=H#@>zk}Q(_fg7nalL)%FJ13g_owoWUhi06y_rw()!X--)LYKE3a)#Fw{5kQ*FbrL>$Y`} zijlN^+S=aQbg4F>u4Z_}a>amD8Gqd3NL|=M8<|)~Fc|;b_=(D6JnBkaUd6PZijimX zZq>@1nwJeZt@sXW$Th#e0H3?AROa<%j}Cn1Hbp4DXFfV9r)C6eU26>eTg8t+nZew0 z7}|-U4}|`L%PQ+AY7E(}z3ETp9#`+9Edysx;$U&!iprc;6KkDTR2q=u7k?}LJBYGN zK3X|G9dvuE*e$WUpi6ST@$b!)UB=M%M6E{jZBtiOC+SVJ1O66Pw~nrd-!=Fiyz!rr zD(frE%IUqPo6{SU0i7iBA46*ZTS4c@-9;!0@bqBe`b4khi^x6r1y zkCnEfKTToiQe5R(n^DemGl17d@(CfoQ1azG)yd&CXE$k{ujoH%yM#qKHE~h!l9tf0 z!m@jTW$Frx$v>{LmN@I4aMUa`F|IPtV?EN#tfA~`Nr2B>uB+6@F5%^M@z7N1mDmu_ z?H&&kyiZL_)w<-RD3g`Gv@-t~-Et##LwMFSHEyAuJvt?VPg;Vzg!xDpZ7SzSrp?K2 zO{o~&8ap+9VG1^h3we1I^e_{gwy@qFns3<(KcAue-=G%+^YkhHRrO-FZi}g2qSXX{ zBRoBe{*yisdyfyxV%^8(8}c@jcX@YgDzR#H6@44{m!xZfPvv~+nS6^~*gdO*@}4m` z=fcYaw}VWuC35Ly_!Z`q#GVEQ1p$snM)vr*7_Ve8{*bfy zN|;|r%Y<<5ObOW50_Vn_K}ngU();gpJBhJr>iKfwKRa zvOmrHQ}l`HOu~m13H0TgifyJf3dVdfL4R)Go{6z zc?UA46u$XM?akSr=i2-0X&1G3QAdA!Tm9`l(5bgwaC;wS>?e32;~yDAN!g`70lF6Y z5n2}=yM(Lgs6zJvT9@=j;*zcbekrkoo$@_t&!u6FZQz--!MW$~Ws26hPoTY;;C&Oc zXP~Wp=VrvMJbZ)5e_wkFT~&caGvRyF@-7Rj;BOQE%BD13T%E_L;nt)8;gU#e`<)}$E@R$Ilc zJmw8mXV$EFq9e?r9o)3T;9B#-nY6&V3uFb`Mwi5C-M!st;;tT{a&WUx-8JT znKD_x+gx)OcR`W!?AW>Rp?_?DjIn(!WBaAZxxB4C+%qcr+wT2sS^E7OoarZ0y4f-| zCfRnZPqJlfE3`*ldpTp{o{Vw3+m`dJTU?HPId-+rh;JsonX{cX;|pW?fC2X9_%mHL zXnY#|A60Xp%W{6_{z|Ws*o=Ze;Wu5UGyH> z2p;>b8h9}s1@ihnI$9>*1kn+;U7d~s-v#JM{1~{wkG0oyL#f~IzcsF=DT`qT<7iX zli$;$8e_TdwC7s6_elB$dw!MQ^L5pj!2Mgh`^vrk{INZK^M~)w$dCH_<>RB?zdFC? z`@QpTem^t+!T0&L5no57fA0Nj@>3g?r`Js9kk{Vt!&$4n^8fOFM*eH~%sPyXY`dHl z1DzknPL^x7x}_~t)D^a*C(F_urbJtEsB>*jO0tdpt?AhzMtf5B==$VH-?QwH5PQ;w zyX%u<18K7TX?XSv-?QWm|5mT3>*icrl#*mi&i=Rhkk}m3@ol>AS$0S$`P@~Xe2qV! zF3z>`uk3-UK9znz2A$B)R-a_=AiC<0@!a?Eo6Oq^J*{M)rDT782;bMhg%2yd_LSL-vsetqJP}-LwtyV_Ivs8&R{+~;pf99_^{%8 z_>l3y`{sWhA4X14o|oXq;}`Jb2|qt}gcpP#g}1nRI>~jIYV6{>dW5%xAAiC1;oa~O z`I+RI2Y;koSMSc$`BA>l+;g4IkHVXO+>@g7qkMnMN7v|lCwat48u(7qtbtE6{@!zZ z^!vT?GvLu-@aP11)B|t!JmJHN*Wu076Ux&YK5cwo__}xg33&STAU<8pet=8ysqm=q zs_v^7HTg_>1xXk2|JHZLn4Jw;lJ#=>$~cFDrw+tcr_V5_3^v#sPH?_ z;8Q(sc(fZlD&H0%o0GHes_*(s`B(q*{uRu(8aC<`KbdbYK6mhNayD}t@98$<0RJ9A zFKdB+kM&x^I}IK-z{5XmtN1B;*ncMvf877)^Khel6U4*&;(lC~x)^(XpDZm7=HY0~ zCrdTfJbS)}hb{21<)6>PkzmGa@bZZZc=<~|FZ+48QRm?dU>zY)aaP0YPqipPUxvG90EtnfEH46ln^^~um5mc@GdpTOgKI{4ftukYet z!r%N0UjOc2ch)Bl^kaqNVtFk(#ZTw^i^qY7lXKwhZ00n#oX7iV_$D|4@1J?#kLb~t zp5K)7XX4I{yW-9pcYT1~XujDu?&^Z>{9C22*#+Hq;n^MWt$jK%U(mU4d0h-P%h+X% z)v#M0Hug@dk-6AzT@v&)G3X$^xr6N13&&uE313Cdw4i6F)$#4K2%NEd+KFS;uh95a+HncXmJ1ZcF@!ji!WGwqEIe zU~2n>tF~R`mbuO2=(*<75@V4=!uOWgMHwI*aBrtcVW3^p?g$PxBh=IB@|CJ zCge<+_WVKSh>E#}8jN}!KV#k4VpCb|(x{CuKiRpg_G#zFmmPoWHojZPWp`(U#N2&# zNW|Saf9pQ}2I3=#k0f6Fx68-hPyA8hj}f2ox1QslBR-$_Z-}cD2lEwI6EX?bPsIM|o-k$Z>fzRen`j%EH;}Q)A}yJ(5{RDMh{eL0)4oO zcQa|L9?*P5N=}V?s&!#RXBj_Ru$@NeW8G5C;*=B*+g$C&pwjLUzEy<|Q1l8PXEiEj-2{k$4%FA?4oUpAv<9DKnz z_eA!^d>TmmeSCUEz6s*fMeTij8u(7exx%AjCn$wSXD-Rg6E^LcD+kr&VVBs8 zU7|Kpjhy`lXI(Y?n(nt#&-o+1aasSe9Ugj?JvYx?js26no`WY&Sh~2Q@gWi9TE2^tpp;#whcuS<14Yzy1%SYfiix$^G*Kx^0gi$Qr#x<^636o5_qR z?Gt7&_ficuR6-lrzjkQwe?RgwgoNaWnv8CVf5tlS%S|EfQ%Y+*fSfy3t{Oj;E9(r7 z&)PfWB=-Z}PtL#L{ch;KJ@ZGP*S>UfS?yc5Z+v+=JaZ2`az8xsI6U(1-+GUKk@#xj zYl!#!`!(aE!!El!HZ11uE@2UOKlJxL<3|v`mG~&)4tT}^e>mV52mIoIuN?4<1HN*= zQx5pXk>Fasm`%S%(yz5zL|#7q`Yiq01U3()UyswTQN}2DH2s=LzdGnw z=Ize)Yvpj6*EPG7^!yF3anKR>&nI{LAik^P{rGZ!pB7JPmrzWfj`sIy$OV1c)nd^5 z^iymDVbuRU>C-CbkoTldxgKJT;_)i_l=}<&^lAF^*Z%|hbTfUr+~21MsYe?&x%Kqv zll18llfiAkU-pyq=~C%mWpoeFLK=$vecIpOr^WQC;Al4Z_maO)WpAnUlYL^3HDVW^ z{fEId*z8xW)GP~z=|~KR*Y%;LB4Z7S6#gh<~w$YA{>uf>rQ)6?Q?+txcP` z#8eY=L7uauA2qW(Kqo`UkNf9mli#eVmW8v)Z#MafZAAqAH48hQni`gH=$mOfKQ)EA2dYr_ zX4T2MIV8;bH1iLqwsv>#Z|Bsp>wpE_9SmFQr}xdQ{W}D`%Q*snhu$Tx@M&QQtt#4T zH-@`9FRPC4%UYrk&U+H%#yDx<`&}6;W#r$&IO%rAL!a5oYQ3c!UtWq{B{Jb&WWasM zfE%%I9w&Z+_(|e#{=MJ$N00%JA_FEO1LF2xJAM!GkBNVBP9_NUi!2bCAhJPlU+`b# zK`%l;CWxF6Ss*e&GbE7i0S~(8qS@qd)X9G}K}}ZZxJv-H`0ILmwxgk0$8D34LhzQ%Zt9ilL8Ste*i! z%mnMZ>a-E!N=JTh|9m&FzB^dIK8QASoQF2T>Cb^vLlZs&14Wi~MV2jB;nw9Lq1GF; z@P_xcc60BK@Y4qS=Y=+=`)Ol2w6WPw8+&O3$?G%n+M}YZZH6#c=8M(wnb3yOPa8Li zE`TogF|_elXyX%T<3FIikGJ-9{}uZ91o|k39-;`n2)F(e+PDnbDEaTFjm^-;sT?0| z9HNePd>%Q2XygBF8S%eMZ#QQBd>L`(R~N{LsGle!;KB1`1p3!G83A^S-f*6bV88tL z>+J?l4*Ey1Ot_TZ9*JL%njtpXho$XB)f={^@!j zdi|4HSi@%g+68p`$_SrcKRs&W6@q_^ozCg_qTg%iV!!jtfSDJ{0Q{hwCj;pJb230| zF7&~9`aS*s{rbJZH~c{hz*i)Te*>^YOl1z6l-^TmtU{_EcG)Cbk-}r&{n2RBf=hER5r=#yGc&wFzQN#TSY< zpM8aMrnO6Wg>Y49c?WE6S3QRfEqZEHLPnqV2@h`V>Go{Ra62r{bYll+x!9;)93} z3W^UVJ~$|zOFTCyo<}?{C_aSvkf8WY#BU0U=M&EliVr0|G$?*E@tcFU#T~2{@YyXbu3D{~)y0{#|4iGZ84M5Dqyzom1Kd9ZF8nk3=OI7; zbZYm1mw(>A{^#=#r?j5OKTh+-`qB^aPbqT_7xK?|{A>mIXQ=ia|4e{yqTrz@c<4Fq zHTWkvh<^<5PuC#+F~C1vgZRhLu0Qeb_{Y$00P!IHNpr3>5(+~M_6upr%KET>H7zxq z^3l@wtqTj-$j!`cS)yc3p>N-lMPE}0&0`P3epF{?4QU*EHe_8`z(y|XGUxw*jl6}u zFk@LqKaMqpb*w2YVI6(7W@_0-p0{I<^4Z6``0V3B>%_`fCw9^M3+(5POVX7uuS?s{ zySU@e(G_b3ndf2!ygtvxI$FI97uwIw)=utO*w9B~LoWoA-ER!4nWc}9X&2^|WIkyQ z_w&!`vKx1orp(i_Jc9m>GI52$}_v~S&=E!o-Fap18H)6X-ar@RZtp< zX9m*r*VFWuXIbB+DVF$+fiwg3G}GnT(C^YLmH2JYJmoo%BI`(uc5Px>J$q3-Pyc;z zO^dRwI%+Xw8ntkb* z`|IC{k-iGCA8hwsyKLh5!8m{0asO^->8nut0h@E}bo#f*6h^<1rn@gqSMJ~KEPX|q zD}&OMkfx764fpSMmcAm*uf9vuU((#*OLLE&M*500`QN3PE@^J{_0y&c`spd`K@Ir6 zqyF?!nCtzZJ{m)ti0ybLeH5@A%iayK9e>wHR=@4o^0REm|J!it)U}tAe?N><$K@Mc zfAry$^V~e&kKzY=V<>>Ot|&blxaI(0;7EPJ@{O=?`if;K^XNZv?~}@-1$44 zIykR?y5N*Neejeur5HI}bXSwkuep)AhW;>B2+4e80o4 zgPrrvrImDoUkB$63Cj073_I94|Gcz+j2RSVmtyLtj2iUp_})dg#k?`m%z)tfVie)0Z>+eR(f^ z+07j4zK_1VU-}YzuJ~}+91~`JkG^~g9NVbdYN@BcFPHlJQt(W0D7Y^L%iam<%Vqw) zJRr|6=u5%0cY^v-aBaCC*EYorI@fPH{((vF(3b%kSr+5#%Vc?eL0<~Sy%W@z%VKHdabEZ+e7}?#JGUHQzQ?!EuH(u! z_Qy-U>sVjE3LUN~w3U77K3{M6y_vUS`W>yVLMp|)}wh8_R}nUy~=qeUuelyU@5SQS`#qe!_XZJIv`!QbWW`Gy^s(EJ~_%r(+@W;^~UNKY- ze-1v6Voi}UWbJMXcQ&^5SB>Z6nXR=A9{3Yx8gujNsUn(LbKhkV*e{M9hpC)1@ew5&&i}`CY{IwMRs)fJ4U=7;_a1377 z`D>15(fLaFG*^pgcpv_nttsov@E7BnbNppbWW5z~TKFtbZsD&A_Qpy%t-KTd$_wJH zBdptKM_JqP4d;qmw}-a3eh5!px#ddtRa<;~wGsbQ>qAxge)dEAc*oMRNc>Lyqiwa& z(JSyyPueHL)Xu#KI!eL^j$$s=2;U@bNpuS@<={6)=mY)aY~q$=|Fa0UoNXNZt^htU z1btV@cjf24OVYoqyx<$5xh&|-0Tz7-UyPQ$=Bx!x9hBnkLA{Pb?}B;HPF%G{aPl~N zc(20WPEQr(_DmeNCd1Iqng~W@Y{_sZhB?y>?Dtk-6;~u7pE4-FJljtj>9Q1}PRmg{I_JeNJ*A2d#sphp!7rz7{tosdRzfKtY zb;8-NV}fqY(5>N|4;i7!JlgwfqsnE4POB|(u59)&%Dy3M8nVO~mu6-Uxq-8)_x>4Q*Sr&*J&*CO z%fdO7(d^~5Slr^H>n7$K%GpO%G^Z>*gteaCWPNAfB>X}r+n&LuB4;^r?r!>L|6Z1U zGi%i*uudU|y^O_uFSk9#I)#^5ukh5rXQj{RD|;R@Z14O!D?Nm7yOGyD+{=1V2l?%L zGAlh-_T@WRlSB~z2XfwSS7hj|^rzH8vA#{}(30${!`@2#0(J4xx0!Ttw27o!FMfic z38_;A{q9DeC}a=rc<}H6_QtzdSNkCUm}oG&d$2xX67{^kqw-AS**%5`HwuaSKAw44 zpH{%L{dVP*c38#QTo>OL@$M0xKW2z@?;+38#*QsX(}$jJxx6~QC6n{qh*t*Uy@)H~ z<^K0qfj7jHD*f>us%|v#je+>(_-i$EY}p@(C(HS8@tikwvoC+U#BD8=fp~(%!#EGk z|GtyN6=z}l;~gc=dEJ3{dx^(zj?m5eS#ViK$!nB;PHdJ@@)_knlSuLyrJp6MpZCpu zEA`7V%D1ER^NFhU^mps$!c`k3{oSX(B~7)Q56-=`N41{*?$c-FUP+o8^mA^jIdgm? z_f7h9$@7NO2f5EO$aANDrgxS>o;&q(k@o8MIr_P{d*OS{-Hc!qbFD z3AYpa5#kBoMzLRnu%G?-Q$7pNyqn-4gb+UaG(5ABu!vw`ZA>ob4dsCs<4;VRyY1XL z+Z|VG24`(Fw3cjf)+*>QG|E}4K~I-=cGmXXm7E{FD=GhtU6%r;cLl0Jt?;59S9bZi!ufD1r z?@+4t3-(7=z)NN5KTZ4EMh*r0MJ8C_jXZc`EWGgmbUcpoyarv5=iJj@)KcnP7G1Y{ED~KEX^|rP5X+YtllUC*AOTsWxi?KIIw)({3({$$b=ztI(Xa zNw=5h7e_m5Lw7C9A4mCKWG_lj+94|b$^2ooh1%7Xc1g~!&?;VjaAx(8T>F}v~EdN!M2*tNKww#(735M3&pJ!p!xS+d5xAXKf*c~bd&g-HFuqhj(nJ9#j8 zJqX;s5&XUZ93Ke252yjx^}X~$6R(KR&!2(wt_yJfsKtl#2YvwOAF*B<=L`Kf@45ue z@BcYCk50H8oEEGv?CbbxSP#CR!+LQ49M+S^IjjfwFNO8V&}a7`tl!7Hw_tsbu70d9 z!e@*h>rFveuls`g|FPaD8~zt#eX}3yU-4tTj`?7{j`?7{j`?7{j`?7{j`?7{j`?7{ zj`?7{j`?7{j`?7{V7`&?DY*U~;Vr^%2onjT2-gv;1mWwu!1rGfG{QmfeKX;8Livwi z{R!6YB+mL^hyq^?tT_(>+q<tQUQ@039|*bXc&c7(A1GO9dP3^@-pda$v3ES;3R4e!!fpbn$tV>&N{5KN0g+ zf%!jXTl-4)S!%#%m!{j+p3rS+on4)#7&?w+yf!h!S+~y8#TCK2sJM=;nPS6gVf^MB z3wK;O=nVdlbz4?P{cM6`#3fC+jPdZNls4HuVg>fMTzqQvK(-H_I_>#c$n0G7bQfz@ zU7ESUP5h|Q+%PWp8h0(SfBepIKX*bedOK8^|^nQ^OUr5{Wza{AN_?UFpI#lC!+OiG#$=ceH z8PKBG3?Ij4*oMup2le*i52)2|H>~P?p3U$tVl%|osBSZSfp=AYdtn>)!v5Ils&X^k z=wyuxsmER9Tkf|P-cQ;>?1fJ3g}=jIh^?@3GGoH(bN0ecy8pf}zipe}ioNgvzIXeD z``SO9H5Z*Ir`Q4)GnOkSUm1VNc@WRh<^?idq^`Q2U{UF3Cttkh`^*F4C)Bs+Tk;R| z?M>L&9}nToQGA-pc-2e27i_}@ip_K|Wp?=OrD7u;MciprYt8hHGNsy_clN7qqf7^| zk2Fu4wljfx%bACPI;Y9^q|2UseZ8LEbzS}M@Nqo3BfeHS^I7Z*UdnRov9>;i24{L= z-$Z=VO5QS_OSED4OxJ0SIxG010H0nG*Jx+4FZA`dNd@Dp;5PZ8`VZhtNuf=lOQFwy z32mDEv|05XZ6^2adLC`cc=g9H+@9<5?^GA#@@%vcA`MG=fcC=Z{5x{@BjD6}kO%dwPIB zR`~hjPZ#h9ztFMR`>%t(0=E7q_(tehn|z&4$I8{Op0f}= z{h;H~#sohd$E=JqwDu|4*4r(9>#D($NcckhG?&Dx6V1J<7TB**Cvwmmn%OJ*9<&S1 zuT6r^1AJSB?;!C}h-?~}+J0Aji_w&pRyOVVRB#gvYrxLaI9A3*xxIC)6nma>jjz`@ zBqG57j7QckB@C#-zlywoF zTidl}R>NaG(9HvOp6#cF-h4Kn{q(`Z^ns+o9yc--9-`bMQo(pBr^RS?TfuX|cOS0% z%KCpB*CS}(YWg&rKKKqBVpk5J?1ijxN<{8Dkhx&Y+HmQM3!Vub&5?Ny`fnz*fM5F) z=8BmMQX|2xe(HqGVGQQE_->MMVjAPbykk@6jy>Cdr#zo|c*>h&=PJ)J`udp(s&NCl z!ZXPIOSyJZqBCThS(oK6 zbAM!6uuhPSO%0o7Ocj32bj(1H_#sTteUwsOIeQqr$CEZ;>fDl0OM`A}qbx`9y@Y<# zINqZg7gJun%%(;8%blU)@8i1J88$wftHY^{ujHEJG>lK)wLE_SV_nCtZuvRb2)aEn zT~F`mJ6%u58Em!LPt4HobNbHEzbQ0l)w(pT5&K%>>@#g|WoZ_@zGh^$)Weja8V$^; z1nRBLQBvxF`USFJ2{J%rK{+zv$7I3oOUQz}3ux>(@&8w4!3N5H zA?|;lEI9TPWI@7zMHVn-ypQl2G9iPoL6-^3beZs%3uJ=GYmo_ykZI>+0(e#|a)EH6 zTrdX71<@h@nX*CT!Z_r^QjuprCL5^V075Y`VumgwmLnrx{Mj;Mh+jrX{V$RcLG5s% zoG|(2goeC#3V(f%ocJa5Ao8H=|8hAos`Y$1F%kI~z?+qSYa96w{fsDMT@H z!IDS8Cy&?5n4svB$Lf=zRpDvTPYa>h3a&CYS^i08{a(t6e#Thc`TTmqx9BV~4&Rrc zyvfwZh0k*{^Mfg;rtK{AFy`pPnRn3j5Nt51%-!c{3foJU1{ZM?@q$UE^@XKl&W#}o zOH1mDOI`I{8Ka6XkfKRx_4kyf=*@;_V-)gSmv6*F7=w$wrV_`~@f<(}D)>NYW!U~f=^ zMZ3)Hq8>*Xmofj_IEQ*HDlM&Fd|r9SQQoojGUf?EwkgIvPNmrkO4BL#74?!2eq=>g z^GF^tZ{CFMXVIj4^fKvVAIj8*PU!lTjC*9P*>Pnn^!@B9;T2z8#y-8Fql1h;B`r8I zQqIOQF`sXW{11FWPkX+`aG6{7G|jTcW9Kq8tYq$raa_Y#_MgkY$1(2Brw(G@5<8#R zx01Ln#lH3APq1$-!M;@)WZ&A3t}Oqnl=*7S>K0v^@q=ftmZ00WWDQvXG$lH3xm+z= z!<=iAnX_0-{S)zVSRnm_4M}W{vffQGe$eCeoqQ*>)dJ??=iW0WKhvE$Of{A=j>n$a z=){hxkZB21Yo56#1`1STQuQJxG z!0z14nPe+yuV&6JVEt8N6>W8RX-Ey%#^zP3rYeWDM&%WZHqm~k@MZNa>kY&fA+$7D zWVG}Lv?P6TxW|B+K;QRZt$Hgo6v3GNQZ!UiI<9{DC1|J|8k+F~G$d!^2_5}T{7*2J z7FsGd`r54G+}KmrL&UCJ4lQw@N{pT!yGU^Qt9b6CvzV19zX{Ns@4NYYC-k-m-ll$> zjr&)WK{&{zR99+dFI^)-6=>xDs-HQ*0 z?%1ZnI)~UDCj4QsFD{!k5=G$5;+a|L6*F0bg^g8YWq`gaD#U)u8jN%F)kUYTgPaKl zJ?XR~JTEo`JubBK$#wP3#!hL{H^tai#=!HXkK0D%(l;*p`KZ<05Gd;+=t#GDkGY~= zznAavFD?I<|N3a!)UpX3XfiejH}u!WeB4&n&&k@6tP$$Oe*PhAEClD=%x%mzL^Pxs zEe+*k#?%*1#Kr+_7NGY^JTWEFRz5LB&V6f?^-E3Un_}!_Egw}Ri?z)VRreHu+IL)>c|pR#f2QJuqJ9 zTI@8AU-s*=+8lIFT{q*|3}?vr@?DAf%l!8h%>5KrFix*fjo8*}XLA+5@wJ36poItU zPmu-g7h0uvd39f<14i1Slawq`b}gSZP{Qqv~Nk-+BUL1&mJ_i zcSjrAHDnp0TB^3RjeM5)=cJJ}8Ybek^v?(HwY^me?mS5U%;7rT5aoWBkb!()4OYYb z2IZDD5S#(qpmCms_=WmC=Rr(iolXUzry;6g0_i7_ZZvCQ_V>)!`{X!hUl))L|5L1C z@juIBJq_z)k^*V^OFV*gC%*UV^zVnB-cO&d)4#)?wtg?)4As}5$QswAtB2}qVpvbC zuaEhRG;K=K_}0f%vu-A-r_;aoMbbO(5;NG0xeJ#BcYp zJZIep;avMW>*jEMkieO!naP9@!lz*>b2H&3!UDn+!an+R_S*2wv0qP{J4;l+Rp`0% z(Z%chdhT}eZ8G@Q#*3c2mv|!l8<^`!yfd?2&ZJEi8#%I6bn##t`KwYtbX#9|8p2WOV#MCOGqc{CZVsL zvfi`=Ij5iZKwNa#f=MoPR_xy3hv2&Cuf^!C{~vj89v@|qE&M;-9Z09MkU$6_FzIxH zk_1qYO);5t5|%)qfd-dRMiNj-h#&+VWlbkx2{Z@|D2mQyQ%S(Mp<*1kEO7w?D1tE8 z@k#dXMO@ZOir#|0s_L#|O~Ja(Is=_GM$=gZ7n!8#tTR-7H)lq_Z8>*5v`u7{ z=&n-sz3iLGe5n$ zi_jQr;%-u(&Ptig$W6+0ESY%=<}AHB>W}Cn$G`RJ4>CvCcGCjd!bxhs;0iCss z@zWgok*=?{SM}B8;ONWr)pq~G`YO{M{9mZ9ALY(y{zvJ@m-}=@Hy^3~SM(-qrmO0% z$5`io!lvu4VeK^C)xy0Q)Tyew!fVl8#XoW-{q=M7f--m;v^T|FKP{kQ5p{QlHIcGE z;7mKEaUObVIWk{#*3+!ZRP|Wyf_e(wbzufNtP`D;d%xewWXmuIZ!S(7wd3@an4reeF$yHxL(nwU~S&XFp}_@3r99 zvmVCV?ixD(RCg7eea80O7twLkf4}akwKXZ*_pH|}*4xjO^jGl-3}#P=S9cYC)~CNx z)?x7VOY~Tm=&!UPO^3a1n;NHWi4I$->#*p~>@zSoY|wRBsoPTaRSyw+9UXS;NadUn zxh(R+jhvIU60DD?8EQh_p|hro4vW0Aqr*yE{T4c`$Op~{R(04cuMUfx`a$mN)!SJa zdhEUEXG77Uf}t&X?DOpRdJo;T3Eef1vGaM(KlAFc_3ZIjg03WGsr<3&)uqhG3`JjB zhAtaHxh5flKjW^aol2;x%kE-5{4u4Ky4F&3jS}>yW2~u-*VkTF^Q|HkuIaT_6*gSe zYm1cdhTW{o%tV*%ivB9!4CVdh4}pE(;~B=U|zKC4i+ zfR&=tc0#AU#$kLUtK5sUi#|IeG<0Mi||aww+Le^Raf1EZYp=2h+Y{-nw4w%5=mP|ycO{#_T7}f(=_@3JeiFC zda*Ni^&x{s!jngM-*1d?FXOQ@t{Ie|n(64NHojvc9B+uI$xwCJAaq!xyM%`;v1@X` zp9x+OzJmCk!_{@o=g?1c;aw4HWlOwiH!D>|=&%{+qvzo5Io61a55=g*#n&L~!9{PC zHMX)AT-Hv@y6_D6|EU@l{1MtZYLnpHsjur6oICaP+Y(OK*K7-Zx~jvDRU~|uzJ|9| z!#LLVO5LHKj{Xvz^-J{8FK=cooxE9lH<|ZHo&=r%o=;n#zw&J4d4gvq&lsMI+;<*| z4ohEHzM1xQ9eO1DPinrR4o497@Qqs9SU1?9_MZZ;b*aURg z4d}2h`RTCFqr=+JVP8UrMfdgTu+OKUzaB()_4Gi8MUOqGgljtN8tOJ39rkbNrBcQn zycO(EnYWck?x7vJqp2Nt+qNFU+fH24!BO9F0o>;q5Ixz(Bj1+q8v932jtfYiWYXgX zDaVb)j+_AV0Q`2LZT4LmlpQfX%&tj*lNTSEANZnDo}pq%@NZk2%# zAt8KVx6bxK-DH2oa`sio{tDSsA^R)d=Um9n_JD2!`*EifYjCfPY}xG^@(hH=M*Iwc z=FYKi;e%*lz9zPFWD9%^o$x&{e}TM|H4EvY)1luaD1qIq{ka1hA7NH^^tH1FkA-sy z@X;nK$lIZc#a$9=@74+Yd1ag#yg1%^?Vlg+*8Q#N-9Dg9-%ysfDbp#+(EY6$-FkgE zvs+Yhuh_oHy<@}s^@{D$uXpU|WGh}PB{%s0fg z&T3=rwYOil51{c4G#>yq8rXPX86m(H-qdY3-#Ni|=9eYJJ{xVcmau+lJ!d{#yYS|2 zCEN=VfUlvse6uLu>?@RS4&^KQ2jxrgl`oPq^m@NFe$E?W<6M-X`1jp*QocIMS6F6? zb!I8n9Q=CX1HGX*wcAe0S4a6ufUP$xRu{0fz~b@g459ropN{=FWE9hDYOPJl377O&ZROA1hN@S|w}Z5JZ(6CL%F14n%br^Sycf%uYcQ}??ZQ|a8M%Hv~3 z$usK049y6}yf9z*yK7rrN)2F~#wx2Q5ZO~tuIljTM!+b!xC zktRN^8*W$k(=_4Z7}xW5-G?P~Mr%GSC7@v~{;aHLmC&7Y3WsQ@-6`WH1F}i<$Wh`d5;1v?`+^3cxM8a_sziN-4nRHy8vIW^xenv z?>zH)zBT=!;z2{f%p_%eu*h8}h-7ObAI|=~Ay% zy3^28rA=%=t{KSFS-zqsNg;R{Ca%H;!Dg8rwIl_r{S!X~-#K_fZ;so*wTYaiOQj z+elpK>G5x5kD}1KO_fnaYTltLts*twP*tXhY%J+MRFmZ@{!mpeHW{KCa*$~!kZB@| zO0YFVk8LuvCp<>=nKp3`c1ibJ)%}IX)V#NyfVled9`Z}Z{$?5ypdDs@H2XmwIQ*jHJM5}gShup9eIVnHtan^P-g{a1@%A#; z@D0$K!22`yMvOZW?^1K{3^kkG zvYs*+dobIq?Gb(s`LK(*tMSaGUaqh1XAbE-=38W*_0+DStLm-q>`L?LtniX}LS_84t4yFcOi;z>F0Kh%AMd9(T&=5+B>)RRA)_+rxQH)?0;oyo<=^q#%( zUg~L&S!AWT!Lqw-weIZ_#y!?BbqMrRZhu zl5p=J{^e$SEqZ`(|ILpAr`{v?w%wSv)?3WIW8037vTpq_ty^zs-3slamTO}l z0`@4d2Z22VtOwt7^1V@(?y*~jMp)08d&IufzqR$yThL^_U-lhI+t@+9*0A4Q>cGtz za~Dk4ZmO@=?)Q;8Frx>R(g1Z(+kia??3OFk$qMS^Aa&yT2X!(6KT!sHO8sB#jS-v) zm(4vW^~l#SLxg(||0Zp~ik@cTT+{kAdt(RE^RP{{^bQS~+;vcYv%N8f^ekU`OhYO6 zZP)j;HwKbkkDa992R2mW%d79n8Nj3``tX^LmvrX-&7_Cw-xYsj=I7ka+S%UtH0eup zIy(#j4W-=q_(g)faUJPh^mOt2RC6C(Hu{Wwui#A6t3!|>;)8q8gzVw|_aWeCiyUgD zg$GDDSPKs!{LM6_@tZ(<<5c`hJ?O9BV9y;hv}wq|HV_{Xa)3SmEtoge0j^sOL z=!hRlPkT>rEDc8N3^mW+l&U2volty=dfHLJiD2BmMb!&_IEG(}vko$PW~+IMO!AFv z4c00;sfayC@jjT)_QKi$6T04fLemS2N*b%u8Ku%3tJ2VHr5{?g1txU#_(tY-RXX6Z zE>7lj$C`xJC{4#u@B_Ep1&xM$uQevk8+z2U#vt2X_Ij&syrHN+b}X0JN) zS3Uh5d(|RuxY}No><#aL{!tz0FVOdfw?f|=-U9t2I?fBw_l7q^|3f`}BlNxD4ba!a z7Y^(2HNd^$CxLsztN8vQ4QGM=KC=S2H@p=12O9hd{e8v_To2bD)L`p)*S}zIq`v5H z7PsuBFf)Fc@g+_S!1m((D0WN)_qr7FY~lIR6uapha}Hl{F4ijx4-f6b-r8Nr_#4@8 z`v&^eQ`}X(ojY-3xu-gfyKc+4qq^c~nqv?8QrVH$9IqVN>S%lP4aZ|g|J||m=nlul z<;BB4KG4JQpUX>zU*es@zS}-W|Ke!(;cJe^xd*fTiuuDE53tZ+`P|_#@7>_I2|X?9 z!#<9cM_zTTTE1-fQSQn7>+%J|ALqRly^A@~b8@zmjE(EwX-Yst0_o|hd~3OBSB)m$h9KWY@ed8)KWJ#HYJSoOD z?j~bLRc@(%aAeZC4)(?#YI+2Hv{^1S8H2GK^f>mF4V$kCeby`AXj6^H(J_uQM{@_? zYtnrua+bxJ6H3*Yb|OzD-9jI|MeEPVw>8L+<6b#|++0I{78#<-4P@pTMZT-Yk+W;C zPkl1y9f@oHBNe||;zD1?-@!gmm7XqN{vvUqr^mNSTmpS z8s0X^N?TgrW27p_P9Yzyj4$y$_4o#fOMWeGMc(fQSLD zdkuMZ4nOOS$heRGfo!WsCS6&!Ezo6~OOtJ!Bk)t%HcyvrrK)VJLPq{vw#`>%+tJHp zo9n5j(K)i_r?lliJTFoF;GYJMsJMqc!{YZz`cZpJ`@WX2v?Z~(#ikwuj>H8|;FA73 z!6CoI<@~3+*&jPsY45p)c^cXUBq3x%%3)njj*4Sv&C)P1=`q&Jo?=bE;)mo zyLQW3H-AI$7V39+vc{sZ;4wRMjcwKQ?!;cUm{_|J+TMNNa(k5$eqXF1yfF5QZHWmJW5XZIv7Wl|-q^W`6PTmACpMsUx^=FZ zvtJ3nedFCcQ(`BKvtOEP&$P~s&a{?BW^$hI_*m2Qq>Eyc7H~G|eVnPinDOC0?gMml zM(Pe@aKUr$sCWBFeqAm^<0)do}-npE0FYjW` z29ftV?l6`2F3yDF9r&&3{x4XED|ZFUS*Pcg92?r*rW|bZ2olD3eN!du(QqDgbg$F%?gOVzOD{Y^x{bTh$vZ;uZH8w2TrGWy;OA=T zDn4}}_{+dgTE|`LOYB2m1ZOI=-Y4xv?_KIa>`SJ7t9Pk~2D@vF!8OtcMxMp|J(cB zqY1yh-#sFE{ABgo$Y1VvEG)Tdzx#uKzpK;x-7fl_LFS&X(C;{tcX81FdA|##Z)~Lh zgCsWk^7e#pak!foGlRj}s!t_7EiI9Fn|I={(r1n2a@39XYz9H!= zj*w3OQ)vpm&CrZb|C98of}g9UtN8RkN%yGq{qU(HNq-6aq&kDA5B>5WILrCQIo>b% z^~-gfPj;n#DScA<=KpxVjL6jc?(G*7Qk(m(e?K++hW&J+__+QB`swEQU*AukmOOs_ z)E@QA{j^J)%lc_p^Z3Yoa`X6TGiu|b!RQI0Enl&pvJQH&<+tmnp$3EJMfz*RW&QOV zy}!!%SNO?PwZFC_yyeIPYJZi!@~wpFuY%KB`WgLI!+A*UuabVlK5*!-lK#pO(&?{~ z?i76f(T7ieRlgt!>0}<{R8R8HlwF6{rGEew(#xN z2c|h*_Up%Wtbx2zKmNZqzFwst#~0srF=2o{2HSo<28*8XTaCf*;*b7U=-aQ@etq9& z4aHCT_Re;{+_yJ#uEbAtU%$Sc@87p`^}d}>-%h_u-)8OI;^5!DZ->&)UZRh;zO0Xb ztM_qrEd8WV?c>q(ox`Hn=4v`_+oOc(bT+&yl^!@PZZB zCduPB&gZoMWm%9Nb#+-V)n68@(`7+1vVeYY#c`g!wu?jl`(#0Ay20}@GNH|7GT}R2 zCaB}}C(~4!(4M~bo#@)g1nGBujuJ*D2u`H*O=N5&JJ73++in~)W~4*bdS9c3L&+ADstBA5Hf{@3XVSCJL*#kX8cxJB0`l76mBr2mHU zW7DaB4f(Oo`s?M#YRTg#KWbxsS$@>CySn_C?k_*;bosFh`B8io`N3YN#i9TG@*|W! zy9GHCd6^vfUY8^482`xwsvL=-e?}d}20)HTU%gGj$PvM5EBzBWqT$R?<%p#B-ly6U zYI?h)q$5Wp{T9JTj`;AABa;50;8P|^SMiY}lK!Yl-wz)-BI&QH^!@OWBa;51O5f;5 zUrYZ^rLU!H^tJT1$d2yF5np-WkMqf<$3#{5CuH4KeB_R#|4Hz3wR9C9xg+V1 zsr3Eukvo$9no8dfAGssxM^ySoKl)nw_bPoYU8Aq1Me!d`|0j7AUp(q!!acf9)Z^zmk=TmAm5f?+Qj<}? z#eM7TnS*{pQF?zuUu{3aUiCzW^L^Tx?Tyhlx~d{qGB5o!YY(2YSDiNXO0F;l1)HyF z-@zREA!iZDd~};D&PU7s7BllPY21sQk38|t7cOM4^pDJq2lFlOob;W)`}uvdUVNEf zoXDJX&Si7bqa}|nr{rF2#iHGd?ae21(%$>lWq%F(ZX4wvf@Zhxu*MivaHci$im%8# zHD?BMzCuWM*47*BjYT$PY6)|PpBtmxi$kN`a;L1^<0d}vmBzN}UKk7WB}>Bg#DpCT z?XYBjH}~Y(VI8hJaGiS>cfqXZu_+nWBJNGgp$xn6 zm8o%(#+=&*9yKk3^Z1#k-W@?2kDAt&v*Pf*?`AG;1CN^4UYTl_H0IMb=yPgE@Ta>e zXPP0npzAJoOpzg|VA3=07}j5BOV}OsVN3z>BJ!5=pE9TFJu6A-E047*-Z~1#UKz%} zhk!F_((L62!lK>xPtQD5_vws7?{Sarm#p*ps#x)KFJV6{Yq)Y*?=5rd_UT^bV4dJ_=n-^VFxxmg{ zcOTy~`I>;}yD~n$ck)2q<3FA-c>?dbA5WRQjJJ}Q%Q@Wl@QmZRmuEcB1fIKjro_G- z$J{4%EBl^vsHX(JwVUsrWPL{NT>Hfgo;Y|lH-Py^&OG~oy1S2ZyC0mr{1s<#hhh91 z{J&r3e%Bh(D%ToHo?~y+xpm;KVU5&I+V~LWRL9O!&U^oLGq8pHYZv-PNMc5Xdv@@X zA&lFs zJF8WPx$OB^Bk}_tx8S=5WJeOTi~(jxix87r;-9f!r*lYv`v=8v@C4)Z4=&~4r}8!h zZaVwOv7uiR?!RxmW8l7f93%Hlag1WlaN~%g%2#jS{ah*S|8Cm-TOU6#`B~nb(M!(q zp8Cn3Cg0F9`Ys#o-$vWF(I;&52OE9CMnAA6PUR_#J*5~u(kE=lmQN{%>_?M(?w)0x zXf@@N{_*VRvktvU`T8pX?sm%qd>9q5$^cU*aIhlVH zS?}eE>l^w2Yj2X(`mz*o2H5CD@MNs;1bb3=vKXF(!jnovNVWr>EQKd^$lu}c9~*=>ipkyI5KuEt=SQZ_kMZzBBIl5`qg~FQ-Lk_e z_6C0%(!xDJY2kibX&3xV# zjr(tMU)bNz{p0?d-KE1>$Hg;>=TAJ+*G2A*X5RNUd^ZF3-R*F)p6V9nh;GNG`Yg7n zvT@?>=Qf~|h%6q!8ZeQ?8$X$@%HoJ)GyXYQoTEfUCunQ;<(_ldyKBc@s?z(g>oS>Y z=guF0nOX^Ny)v~M>*g+(sgJ~k*FbnNV0McRpCP+s{OH8^ z@r)7}{7gWL;DLs~ns@eJ<31ju^VO{JwN&TpGw}6oov*e0ztH*&T1UAHxXIYEpzpJ5 zV*0{Ylg`&cGJc}_{1v|b2YmeqzW$AN^Vj`1y8i>-egtpF!^?1nX};Wqo~)A7B4>%jSPAJ#~BgUoV?qlRW;iIqaX5&Get2$YzfohzJ=^jbtUxJd4`rXZ`aTC>9QpunjTvkzWY8I zQ!>Jvbz0G94d^d&b{KqcK76_CW$)}yWG}q)$zI0X%Vn$NYueEYdRYdm;V_!eRxdKO-ZKKpG5d?WsA`L+PQ{rNZG+uQI>)py~W=-sNm z3*VlGZza0E+aH_b8TjVadB^E|8}G+AukI^)ukh`8op1lUW$TsKH2;#`8?`p0A}Cz; z-9^=ygZ8ctO2Jo$pJzWhcM!fj&M_!xhyA|_|K1C<>vp7VZF{~?H2%HzSM~3;`_=wE zuYG?d|K9lMUoU6JNFF~qTO0m!IqUWB$$9D%b^o4ac02rgmI8~|nWiXr0ecC=x3?Hw z$kD>(TrwxD!}C1Xw{W$_w{!h6d^HiX!#nio)2hRi{oUQ3{XN_^i+z%*wSAIJVU4=1 zfe%Zc6c8nA-}_s00|pS!ATI0Nz41)qvUb)R?@wIT*m&auh|3(7H$IT~K)?7P;)DF+ zS;Vva;)96~_KOc8KEyAcO+4E#K9u-SzxXiX!~Eh7;ts#~aN@)L;vDh*-51)S6PTl&b@yYqq9cj@JS7xwL+LN5H4{ijgx zKkdT)XZz2JcE7&=ES5Ze{l^~k>-x_`?q#^V|4imgDsTT8ZfNd5Q|UM1^r3M2&@#dX z`cHyi|1r{kI{EbAomlnmynK)iw>>~UhtNwv6wt@MT z``GU{sd()9s@diz^IB+UsMJF9cKk1zAGW>fBQ3)Yv+24^5%VrTgI~56@KV&3+LcD@ z%6{7R?(Zd!+OFEW)p-}6{;TD?+)o?Ss-1fgzS^<)YSWR)?w7MF7O6I+rCC&IBmk?Ga> z4_$20%6@5lWV&^nxxe)U@ql*3!_%!NBhx2InrR|wRxNFud4M%R;+?%X85&L=Y1jMV zNW8BXCsW1Al(e*FobeJLO_2c73@{?`t;ItpI)NR2N#m;#;1p0PW9XR z^GLyW>&ACGQRmSlokxq|k&K~B;L#)SXem5e29G@O$OVsz;ZX@ZDuqXL;n7<SWm>-FO|aEapr;W3>@Y&gpZvFzZETf0_QqEoIG&)=s1Mm ziWWYB^ZRC;Ou-qb;oPm_2%o@lG~<*C&aE1csxRZwe0(Q0oL|7d!=IJ~pZoDApZX9V z=|cG9^^vCOKGJ6X1nWLh%dhg0{;SES58M8F`E)??_{pa@pYQaSEz1HNz$$*{Y^g^buxN@magJz za_Z#DfquBnvg%}XmJhcRGDdCFD+f=K{-e=tmRTpGvwgUNCvxlL%AtOAn`PI@Xva@* zMSh)JIb2Q4rMy4uAOAMEg8s4jb0uUo^`!QZ#jIWXugEZ24{c@)@t0w>_)7g{n9K~mQDoSgetdjd=i>=Uzl@I}%ii?kqsX&oba_@CndRe| zD)*2@Z^B1!`*=E1<70xPU&cp~ZEyPV@##p7kKi78G{nw(r9{KY%b6$MWiG1fH*u3W>v~j;Ac~qIx#x3U~ zaNmf2K7#fg(TVD~D`6pX&OI4}7h$WeQ^29TM#@`@j<*UL^1d`PgMUkBEkLz8|KEmk zOWxQ1-t_8ubkMJEer?hhJq?o@x)>*&PB3xzO#tf!TCi@QC3ynLYo=a;DlTOjJxwOd z!EgCLIg28Tb1Tg4#ZSQ5cc!TG=1BV`vn?mqj-Ici=fqCt`}L^{KFB(@HekgAf=Yug1`7QT!$l0^%dZW+*>iHKBpbsaa4-1cfvNj=JcpRze z#Fy#3cK$Q(+5r`ewKYZYEh_T;a8;c*nYBi-(Dd;)(tVTU0WS!eInSCZ*23Ss>zcoz z>b&HU@w+}jX`FbSl$Ucn4%n;m!t7Oh3`(!Omg$@$Z7%4&r7Y&A>av*E<~(XSW^7;Z z1?7vT9-GMLpQr5aO})S4E;BEl*brghrO8=-U9uD!Jz+3O%^K+93B^dg?hJGf`1q40>?T zC3#z>YwzIM+B>9Jdxy@`-eC*1cdI3XE(P$vQKl&77TXmRk6}*S7*#NgH|HTu4Kll& z;#bRSZLca*lwM6nbHNWUm&FK=a$3{3;&NhhsNdYl_De=N^90>Ck#?QC$bLy793*Xg zPH;v3-@_`3kOz5_)06U`GZQ}@e2Kg>O6m38aHXoT3-v*{lhVze-g|F$n_b*VW9X2b z$bF1*re|J}p^f+3=Vw?)8H?tusO8_eXTWK)yPVzI&~`I2Zxa5?8J<6kRjSsp-tBwt zILnLge^dTA&dBm`?<4SB{Mz64WZsW66bjgn_#=1T#6V}}yR_ry?Nv$Bt*vhgQX;m#{mGbKmG_xe{(h9- zYKSUWgsyj*a~gXEb##}>9h>qG$L&=&QkF*Q&o*Lb9Sfer7cT$t z1K<3yFK6pvZ%w2PdHK+VHF}M#%e$NpoZB67TK@GaylDAP@L~z`#+UQreE5HX7nIxk z4yD+v#N*kbkM~zet zKCHLlMpI0()ev2fjIX48{@86h-__b~HuY6E;{lcDwKIBc%U?f4y{B^`?Jx`ZlE2Yy zY5Nb`p_~&d?QjS8yj9Z%@AE6Ov_&r;gW1RBE5FpEUVd*qT3D|nWlx;`;5O+$Qg&%W zb$YpLDR+LnL#s>rfm)aGVHNUysmmSIWi@pvb2tdasc!mk9&IBlROto(oHqq35sAES z)AfBmcS zwO8#1FW+#!ubH|g-^gfmghIH_aAx+5MC30R3a@X75YXonLyv-5l>&uFjuj&mcwN0uiBE4{49hKhAh zIV--}Soj07D_HJ9Hbp197>jZ(138;%ZCK7YWxEMqf+-+ma?auPVYdBoVL4%gCUrWz zHY{U*r?A{bEhnWP-Vm0v-xii@Vb19Ay0B8xa~=ttB>3x8{J|>zZqkeH<({ZTW;IVO zd2$@erQG#){XXl?v9=JSHFrJt>IH<{rQR1lkUHgTrd;HM@VX^+C%n9#H}&R}e=2XO z^vaot{5iY9X)ttV-L)-tT%mn?2Ji7R?AyolzPrS}eJ<~N7TLEy!~5Rl_U&);p0L`! z{S@yhQifz(toiH~XShnEdu+}`WxJibadHZk?K$$E!5!H0E>X6xmG>fL`%ZZ;SGL#6 zd$qDXPTrJ1obpL|rCvp66i~ zbD=lOkKSpMA^S{cd(~ju-k2dtyErRYnVQ5LLq7U-5;n0{Pqv^ZCmEot>)48JkDW2u zlC!YK^03E>FSEz;pC3}ul{3PVlK#4SjghiOEL@$BE|(wQ|E8|g&7#?hg2ytRGX{?? zu)Vvw0Gq9V@p2+zX)9+;mh6HgzjVS<#}n^T8aueqD;ew2bzU5@F3>Z?fDQqzg7T)( z6S0*}Cm1Tu1aj6OaOM37&(XO}t7c*s%-q=2`vhm)CKXj#Heo~MQLhEh+pD@_lYU_e z$<9mK7c-f4hkITsiwR+!T4>V#n8mx6#9*If7d)?26+j~!+oFJPbYYLg=ceH7U|UU0 z2>A+jEsnVlJ<)9l&Mx>&sk%?b2yEIe_}v#`ZzL5f9{DfsT{t z!J_A5qbHFc8(Xz$YiVED@tk=%7~4Jz8-EbC{y=R00qhaz&s}wy_yRKU38YW@>gIRv zlk+cAXor{kNP^-9R9HI6SQAt;SmBMWCi{2fJBdBYR%a>bw!|%K`&aa2{cccKDF-&P zF{t4*{H5PB#~S%F|3pwnbZGP=gF$)aJNyi_w9h*5j?-SpQI1+VI1;mCj5v3sARJVoeU_`&bbDG{Bl zB~J^U03H*Mk;hPppR7{s&Y-u}#N=J8B*l?G$KpygU|T=Sf6AI}Gwc7+@x+E-rtGaw ztxa&HDlS(FQRh40xQzUhz5WAPtKNrlJ%;>!5a6rp13l%8PeQ*7yrs;o>x)!*vP?PI z+EZQHv`Xq&;0@SV4^Y3g2|H6=B^vD)y|jO?(Kg4roMru#DzzN@tHCQyF+A*YP6toE z>HU_-LcztKQ-SPKzg6z{ttE`}_$NN-OIdH{k+NIh&l6E9UzRBc`A4fOwI8rvJDuy2It9XQ)k%AHd>SFMv0%9E2IeEuj#F^r3~x5p3BSGhEO zrczaF6})*VhC5u&Z15hM)?Dsj^rO6)_Noh%Tl(ls%6tNOrP6NgN-dhxqC)C?qR@|J z42V)L<;nj=WNbIb#l_~LPl>P6ykXu4Wo4Vb&P#jq>qJBS*M?BD!+hq{2MX`n1%^ts z{ywZuHGXfp-@u+*?l!4>K>jns>=E9|_mrpOu2=q=JGqXq?diDtZG?|6O|P_lJbtpG zKI0}!9mRdjyB+O;_1C|nT(up@-)?7W4B@&CJ5%GhOHobZzXc~!aKM*(h!7liMy24? z1p_~v%RM={j^lxR6S|5#dAVV6dASbP#4RaOuHpb?xH5O0V_JsdDQamySIl`?)WM6^ z2xHY+1LM>Pv!@gBxi02ISu3#{9*Pe}{Hx(%%1SwRQwf3}GNyTP-#2-RnJX;;-{j)X zQo*AhFU=f59~@3!bkHY<(Km-8@3WEjLy-4_C((D+Glk2(7mg@aWnt2 zhw(({`TO3?4=9b^dJ-R;_?gYObGHwB@l^RpJzB$w>vTnC$Uj))+9w4u23^g+ZOPI6 z+sb{4&%YgH|EYglVE+DX`L6i4&E?JG!s&$S`@CgQWk;trDvy7a&%c_hPbjO@NjuS5 zcE#6-pS9<@^onHsw2Z^r+7$GcA^2*|yG$d^NxNglqBjmhXR2px`wDyL3~Nq8uxA?> za~B8Itp2i}y=t)`EcFzv&;FZdQ|WBR$nO`KKj zk1yl(8TJL&GWIt6>N~g{l1Ck{JGg6^i>YNFq5PBgJ2GC^VsDC{{4{xQX52o*xZNl8 zeBTYG$k*FO+pE6mW3OrxgwGyZHXqp}zSn;ETP^fY{1@3NgsrAF1?{)2h$+IB{O%n3 zWTQI9e2`SS#JTs-#=;6y+t&wIKIJ_9%GSbUY?`2t%AAAOY%J_Tc;ScO%-vepRnnEm zoD1*XSlEql(%C1S6@9iAUPrjNq^O%Qyeo4f@v$ZN8ExECRFW}v+XmAu+u{_HwK&Ya zUG7|sQ!Liv-FIy(iPCW5lwfOd2Ju)eK77Gg@I%1)$LaTBx=7I*mr65@ubv zz`pG}&PNv6|B_i*85a~6TWc^|vF|)NGkb4a883HYwQtD87JMX-d7qAqo%m73->?JQ zpq@P?){aWm=^OCPpo`a83^L|AD@>zb7k_EZIq{oE7c4RwMt@^6C(CzM@tvHRJ-6lY z4WUmu_fteSB%nW7%t~Yj(K&Tq_4%f$PZsp7!OFSd(z4Z7t1{L2N3G5)w#;`XeWKO* z-sL6E{69-L^7Wtz)bmqY3AcHDVbK%Ly-#i|OrUO0?^xnoxO!`0C&Gg#u5g}yd}HA? zg!jJts55BQ*1~HEC+#VA20gm5u(RM#oafxTd~0EM!ufYBb>=VISlC0-Uwq0Lw0LXb z4H9-0JM$N8EbK{mVaGD(-jc0_y##-s$GLab#=_o&gU))K6%TAJ>?7fO<~u7UZY=C8 z;qW!iq&v43-bi?GxyQM%=f=XD2q)d@at_YkSlEy7-fNdQ2anlWc(dStw#K<|{Kmo* z!AX7GIe5a>!c+-It#an)Z!G*h;rv$@JCi1EEld;q=}Vmzq$d(So%n<^DQ|0G65+kM zbDcr=ZdBXn!oG`~gU4@G+h_hYd^cyK+CG!ELFbOGYWo~)S>ilBYNOgd=e#}N`S~EPUy2k2`y`-CAfL;BmTIZ7ejbeB4>wVr!xC z$tBMC3(ppw7(LfH{`6~w0b7#nihjXe zz%A!+Pu%tNEt7R=%ZzRrgzZXzb*W{xiWjG}uohb~yVWI0|7%J9S>28&#e)-QE%|+a z^2U=M4xO1goe1a*(CM^>&J3MS8|Vzw=|nZ%nqN2oMotgD=Nq;D+D zAYH5f`&Ih=9$D&)p^XWC9Qeh*AF0xRSF(!nwMiKmI5cf5y_4&W}?4@$XadXQa+|e)M~P{Lw1@>a$N=hF_r3 zpEcLH`euLpTeR|bU*+s~qd)zL8vUDBJMZY_kAJI*ACq6^yn}jZuAh93{+Y*}s}ue4 zZ&UFv+_}ct&*qPxr{aIKZ-MiTw*L6H>-dj4W9Ylh^e1TeUq9-+hljO{)|kw zv)^g|`oCAh&na=e)t1b{8_o+KkSb`UB&;nOPRCdEPwn#D*ne?=Q&g6_~UCb z@2SEko!jR4<7a93Zp!%+{D-vqF+AZM^Aq}mRs4=G{n`2PbbtDPQt@Z~=L+Y?fAXh4 zM5F(}GUu#m{`i{g9J6q~^W*#d@v~L@Sw)MT+w%PJA5iIUJN$(6<6M9Ip&I_zOPw8W z^T(g2l|O8e^Ql4p_`|gFJpY(;R-8Y+CWB}7E^&U`*PmYw6~E)yKRd@{`SW+GO26Y@ zA9ZdU;g3IDqraxuxowm`{uC8I_Q#JebUroOA77K% zAFo~Ryy*1D*JSprG`I8PpOiU@f^qPe|kGW+A4xy~_z{OM~ld(5fFofp&n z@im!!@%2ZX7jN>%*JSo?Uq94j_5DWg7^BJPcpqGo&DWzZX=9KklQYyfy25--7T@oK zYcjaR2iIip3qH6eb9ejTnymfG2iIh*Q7wuKy)N#-> z%&l`6=N@;M=ALi_%suI7G51qP%ekL90_UD`D09y`rtls1WSpIPzB)Bx{y8;Vc(FRQ z_580L3D|$rl%1(<=6|Dx9|+i)8ae-4HTKn0h3rg?n*Y5TekgorYPPI@IEPZ+eR3=1+SvP72KF7na~)48&*v)w`|jll z!e+~3Uc`IvSbZy{G5Fk^<$25_t+WKYCt57-t|p6n6E<7&CmRdXLjxS|VzW)eX0sEn z4GgceV7I-C-6pU_*lq7(w`s6em1nTs7Gb*yYzVg78OFl>*lnTMZP#J5g<-ROg}wG3 z_L`O_ta2hY+eB=(v)F6l*lXvo)uv*rxvzvXF*j>}G z#d>0kwZ#s5mAF=}kjgXIV#(NIN3g@9u*06f2Kxgx*bMBiJFveDVF8Zr*k9eTzs6vD zUBvc^Bdsqb53JlJZxz2~WgX!hl}?Mw zb-cCm1XS)K9M?+dm@3nGD=Ln$(j{rFT&ee9)4hdF_Zc?b+t_Rysk6@5bce9%wqVos z#-@7}o9<88bgu!Qj!jpEO}7r4&W24l2Al3FY`R!%x_`r_vtZLDqqlv5O*aXfE)1LQ zOKiHYu<2gFrkjFI_aZjkRBXC~*mQB&bS`YV3(TRHLgN9eGGp$THUQ?V}yI^PP z^&iJgw!8MHtTjEFk~w!EFi(nd*ygA!1-38FVYdTobyH=!{Xoh((=rWKq{CbXQfiMC zr{)}vbCkAlRMs6WPCfCL;#9fg{P@hBsl&-%`_RtRR{LxYyK7%c?R&+k=_xx?>#B?K z9orlk_I)YG4;81@P4j;1y_DJ=#i@4arFRGKZ^fw@uJ=-ozoXN?COic?E%W{><^4l=5CgAVJu zGxg+VU_H#9dr1Fu4RktWSH1_H>+m%W!JlgwR$05EIQ8UADSy19uH6vrJFa(AYM+#} z1pevWl;f+QlWX>jht7%8Vyzy5)eYDGGm-Bu1!t<+lM7B=kyamdOS3BPm+u9QtgL;A z{~Dx~O}=e+?M&zaz9i01%Q&pPdb$FT%e+hUezFVNf z$LjD^1J!?+YZzKtJBok1S<>Ux|FygJq}1LiamwCPr&A~2A^kR;PNq)hdL4cacpTpu zuEW!G_|pFRzd0*w`|@vr{{Qw)N^MX1w;`2vo%y$5JrDB-^6#a#AifFC^*YT29nPGD z3hx2DBj4u}eRfhg=*_E|zB+dI@Z>Q9DkU0OBBUF&=xr z8hhV|cP_}2&KO?zjw^K>ZTk2QSL%3d|7z@_9O_17g2;hV?0(57X~m(VE9z%HvBTDs6{5Y58py%2S9*YF7y?-eJObP>S!s zo3}LA;u&V&ol?O6uKlo!;{-m01bhfS_*9E$DEiJs;I0po9o6^}HsDL}!WY_ZsdODq zBHyD<6TSp*`dzMFDSwo5vfKNfK%cD1G z_4AU&b0_-NoA?z@;#Y7{hYx|9d$g|x$FFb#zk=j>JU^>4{b-_^eyeL|N-4et6TSt3 z?K+aC;n!I_x7c^41mIujgnvQk6+&;_ksCDlIg3Yhz0o|bBRw4n_#3M6H+akINx!vH zIoiWv!rzd|xaCb>u(}aFGAK{q(`qo$#x>!-x-JJw6C;`g(i~8Tc9`zSeY@ z@$6uVfwm`e?mPF}9P3OUraW(YKgD+VI>&K*4@P_sf~&zkNcr;EF2*)s_#ce;ADUr@ zQogLwU>W!z#^HnT!s?FhO8v50gO%Wih)4JG!QKP5LxZiy7jYb4gb#KI*gN|7@JGbs zkMP0%25hVTJ$w?o@k#h#e*v~pgN?&4VWj{0U|WD~(DUJ&Frs_;U@rh$qru|wPZ;q} z_+XoXEzoJ=qcGy5@WEC9b8E2O_$iF|5qz*GftBhod=>Hd9(=G>z=||j3I2-p_$z#{ zrNAE2^Wn2F`sbSoY=WK-zeR@s_oe|GufdG?E_UO)@X@><*jNoV4*$h&{1-l00kA>( z_wZqi!-wI6jRKaf!7}h;?8cAbgWU-%Q>Te9V?DkMAM7?@X&P)j{*2xDGkmb&!20U> z@M#$FY4~6_1M958O7Lrx;MefMdIC$(V7u{cjKjC#gIy2Is?)^3u^az}57q@(pawJI zpjK{uwe*;#d)5H&wfgi*NI|{5?gJs|gIgT&H2Rj68hfWiJ$Z`B3KG-|Jwra3( zZ_jrgXT0#i{sL^Ho{xE+cyxUqYzwdr8Z4f|$K66TO0OnE1=eK{>0rlr>)2E$m+}=G$(A zdo_C#Yh*8iJIvy)onRQ=m3jMphw$CQ=b_BofBp)-M8YA=+Ye>lzLfA{=I!?}Z$DSk zmB*ZmnYW)uxGVGa&oOU5pYZ3*H!fRvZ0M5K%E6bpLw(5&%E4E(w@2<*U*c2_zOKDJ zZ^*k)Ik-)Gd;XpGf+Kw#OO|VSqK@{HuxBgjPaOTdW95;)4kzt0{FAuJ-S^$#7_qOj zW6D18Usevj1kSR3H%Zv@D&ZIR^>TDR(wn=0J3G2_CjYmlkWE7(v~vl+f_HRYqPMK}79@Z&@C-;c;uufq) z>k|TF6>In88)5@vjn-wXQSh)vLEwS0ChIcRD0o<-pyIPOVL59P0%HSo{1(9fxXr`* z1P#BXb;8WVZNh(9Cs5Bl%+d}r*$38;kWpa{($?|0Weq*+L{BHDvxe3Dq^$cGtFNP# zJ|<_PXlqEceYvt1qrKmHlPdO2{(QZOhI{4pCT-j=OCEK-NgH*&iL4LR)|)i%{grhl zvOZMSnMnC$tvG9kS6WS+>3(!gOjEV>SFP`DV`qP(qh%6%c-6I~X8KH)?C)hAHT!$D zHIHZhKKlFHI2T{;tDoE2vtWADD(Qc+wq?}mzxRIPho*K#tUuq(Uch?J1`Pr)?!iHq z83^-%ky9!Iu>IVHTW zM_9y&^hviIc`2;tzTROE9(g5fB=5GjXH4pQ^;tWS}(T;=!|6F=Els8BwG+1@SA92aW}C}K_{KDHd)ISbv{2u$Xi*_+udm-+ua z_#yM~Lz>idlhqU;b9C{s_2|!L^yg;$3>DvupK=d=%4U3-qXQqE+Kf)!jGw9Em*LCY zgDCN~u zN5}u7kJqD*H{%af@%P|2HRCsJ#+Nxd%8!noh>qTjKS;$-#J_6BzuJs1b99s+y?qaQ zdozBPR(|}jd+@_HfpNF3|4?k@)zRb}` zBV%o~`QH)zI}xj@Q;&9n!b zsTu!H6~B!6g)HV5n(<|B5dLCEWno7(E`f&g9d|ryD=bLT~E0Oo2?9+%?FRu;bsk-LT*Wn?0e(bt>>^dLZuEWDMcsV}KJbau!_y`>ysloHG{r33Pqd7;1N9+0VeP-eN z^yQzT!#is5dhEk8>caF_uWz6alE8NN{;e3=gKq{Fcxv#=q3@U=QTQG=WDpO)c2 z^}%1%;axR&7ItPmcBT)$Q-^og;Cc8}_uwD(!Qa>6y)<||wrD-Js1IJN!*A5{<8$5P zH%^$(>hKgDj=fs%&mX0Q#$USzFT+3klkbP?@c#Puv1t>rX?@?1)8Sbf+>GzG4BxE} z-d%?e)!>QPy=LrQAKb3PM`-YJ{J4quaeeR+I()SLeQe`AY-1lhM~C08!SnF%X7%#> z{uCWPMu#&Ww}<&SUw)Sk&(Yv!{J&ZL^|MTe->rY2dAvQ$)A{nR)!})1etg7biGK87 z)ZzDO@N&kxpVZ$@9X>^;j}JM~=12d19sYm@-^09NIrE0T@7L<^hjlnU=5l<@KKNN3 zK1+iqGT&Hk^MflbHU7K2-$%dk=TEo}pR2+1n5QiF|Nl50UZ#H^e{~lAYTx&}>+r>T ze&#pJncwum?K*s!4#%gRh)>%GAEConYVdOAMH879^}%y=_~ZKb@q5?f_x8c3=Jj#(`WgYFIjjxXPgFW(36 zuEY0f@I2I!)x{Y%o&t3XW)g4U6eR0YE;tbs8MmnrdUgmIXG+T??w&A zeoGo@_SpWAx2+5Qk?bD7>ly!tf^9alVl}dkF2PD@xy7j3@1Gxz-qDmf9-t-SW`*c_N35JL9inPg%vCah=@RP zVnJnXh#k=wLIROMFbRm*z=GHt7Od!6Sl2GAC?!}{v7@50ifz>u6<6%&s(jC!Gl9tN zzP{i0UjP4J-+!G0b7t;mo@dHEbLJ#-&P-^JZ6*?VLYCUNZg{jIND|zk*}h&S_zv)9D`%51pdSCS+BBT2dvH43MB06**GSZ>z^}oCinbUpfYtCzCaW6k<%a8r1 zz25Meymvf4?DfXm`JTsx{VbT@hlBN&`waWORlpuF4a&laDULnnqi08r8|m6kWFAHe7&pB=Fk+v9P8U=i$V&jhP4Qz9`sh zrft!(mYgzKeif{3t$@7<+<_nCHTN9Y*Xi%p+CORAI~Lkt**eG@-f;_s{a-?@rg4Uj z=gJ&sz#3xJoJ}o#V2$Z>9$Ln+kvVd0G>(6~MhEu1dHm`GtncN++E0^^NJrBUouk=O zSPyCw@A$_9bikwP@vF-af6=1)$`$Zwn|F_2UBzMGAMZDialDP=n`Y>FYh!My7c1Uu33vF~LtcTOc4pSW8h4pm0ZYgtoe?8La zy?>%(hJS)%`M4mbjG=v;k^_<*hYjuP)I4Caqy5kjrwq%9j-zBDPHQ4Uotj%|9YBt13YtQz_#i7~FZV zKga}bu3C3X6sH!*H5#=Bsgw~~b&{r&r-zqE7v$X{5-H;nr7C5lK&ci)N_A4*JlIzhZz8K;wLYQ=2@YK1@+EscwltF-7VB#=qt+UW!laymW=su7!@ z)d{q6ouF;42}CQ@8o6L_=U{I7XUwW5>pyEl%jF6!eh^T|K%*LDh6pp=*>t z6RpOcRwh-+A>fWYI%}1Xqa4_9?d0W+b!+`7fhT~jAW`D~u7DsMCFtZM5P6}vkYJot zyj&X7Nt+NWc2#2N2HlDYx(7g==|aS-wK`lFH`gdvS9hdRN4a^rBW0{K3bPockxQW& zfh{T2S`B?op+GudTC1dqh>*rbPEtk!pO|80oM4Qnhj+)Wo?`{BxWVHlPfSp1b@eT1 zW!wtbpsQy`ufG_?YveMe7E^6V*Q;yCE?ve7B9uBU(#W;a*mxB#ph7CssWr3~)C3BZ zC`a+pQmq`?NE@$?gMc9gPhqSwt`i;E(aRH%G>Jh_SOm?E3mhwtRcj_AUBo1bP8k)g z!yEx`u2GRa-H}46kr-IRS!gkDGPPVGq5FC~hFWDZw4Fzns2JoLotHGxoHFK-_|KLK{|KY+1t`P`t(p|~5ubIo0|TMzn9)XuZ4YmdkT(fm1@ zkAEB}5)Jyz=kc~SCe%}IEAOpsf~e}`D@AiWQmE%!*CdVbIY9k-bE3oPiRILuQ`r9m zTe9NAMofFPeic<*ezc$9r@O)qUQUf$xV9BN^N=r*e@YM)&cAheTUL?CT|4wyo~sGf z>F(jZJt3cE9sYlZO)Qg-m;))|jm{9SDzbh?n7DR=G z+x_I{nL-Ih?z>XeVrpnHLfqeSx8Ub63R8f|@ z#IxfkR0>-Ub?qDEZBkg&_RtLB{uGh(jFXOzOOA@x?D#3A?`%`5Wb0{l@sZxt``3@| z9}G&NZceuBxVPg0YSsIl<7Ot5QwdaLc2fK&YF*a%I|oBP6EY&Bet>-1E%jdQ1^JwB zJpcOg`>%vPeOHci(|Z=W?)LsJaLRnq%xsqiX8f%pQSs_W<9k|BjgE(Oe_z~_60hrU zf9}l`YIc)A^XE_ZQ-?O>C7NfIQ)dq!`0>~9PgL*9v}O}cZN&R+e>fHTu90}o#O?PE zm{w6H4`h>0`)WiM-*bQ0SZ@;Djt%TOB=ELq&*`SP$;+r2==UY4(C_d+>THZG^N<4LZ zpK;Znlf)nST{oH@NfuvxI_yxlZt0?8)%|HGGe>kpkyLtH`dZZZLFk9{%=T2l`q_(L zw2@LhPYhQ%-B>~8cncm-i6^N^pGGD+r@o^6xapeC#~s8Y9;yA6yL*abcAR+obh1qB zGyLv~5o_Rs%P0Qs>{d&~fe+SB4r{thJR)l4;T;ZHqBmRZHCbcMiAt_3+fO}eL2(0e z{@Ad&2X&`HX_85EtT&}eZJLV!k(sT>iLq2NwIH!pnUm`KfL4Ipr&Uu6bHuV^)j5R^w~33mVVFvsP2 zk$iwIPx-9*g9in92*djYXUeQ~1*anR&-$g$F5%4yzpwL-FDW=Zr1j^EgDpf0vi!&S zz8@k=+Ypf@d$dpFld5-E3+Xuc4VsVZb--)upW)xT3b#kTa$C?sS`f0F>M-)?G~uN^ zFH81zKO+n<9sc|FuJ?tCMF+!Hj~OQVawkZ4`_ev9`z3;WGiL{?;Vz`Y>8M&{Pjd({ zE0io<+`@ACBT>w;9$wKm@~92(GS=JWRqA6O|FB`=L9@d2cYEAFFL)$+_0)lP0OI>S zN%ywQt<)E9oAJon%eFAhwe8McYafX=YQw#|l;u%2*MHu%|7fK?N7(BWzx9WL#cLhL zlwElw8r^ijry-?zRLbS~_Ud_+dfy>Uoo`3?5D7lI##?-UThwQa|AJXnc~s8{XEMw0 zRO+k5y=TQw>@7-g`6=~d${kVL9hRH#JkFyU2kJbBXe;%NR*W2cti501lfbc&7hNkw z@yBHIniu6!rjzz3UygpJPfdMxd_hri;edd3moqahDOU%lEB4!uQaPQDi2bfT(vRvf z-^zae9Ffz)VJ6C)hWf;c!HJ8*3#rnVYf{fvzt$Hm8=Yy}e|F*EvDcrv?XjU2#}*!H z+ar(K5~-OGRrW;B+=r^j{SofBH`?Z}&CD#s@|`cQ6lg3riEi2LDfsZcl`wH!XuetD z%z$3P2}j$0c<5&~Ym?~V{R0KZ&o&jhlqcnT<{k)WZhhhC)JxmDXT7z}{r&zX(Jx01 z6}$-%2(5-J%KuVyFQAiIvpl;JCx74M=eZ5<1axEW!3c$Q(~1V&ze>%{YZpD`_|N(` z6W`fLl$)uc^B)|#*nhs>cl_njqLJ}b{%gDegyVN}`s{73A9djQnPXEPi^RLk+FUXzrT)CTY2vkj!}`Dld-|`k+(wnn zv$J+eTcIC0AS3<4@f7MO&akHae3bf(HR{Zvs|Hh>#=f0m`P4%{ZKdhn#Vt*!57$yP zA2k;X!~bxt-rt~$+K88HnMm=^KIak+VrJl2FSdd`AEUHIr?*l_u ztMxHv+23CsF@h5ESLXfV?5}U*eYH_XeKX2>?3RA%Z=V;67ynXJb@QO;&3A<_2HKZW zXE;7rS6@G@FUfGfZLwuL6|}b-l5bh1e{!&Ou}AhCYQ@pc(dsuE{n(khi|-@GQeQSV z+Ganmm;S-&<5E$CEA^}-vGtSIT>W{WRAm})O{Ckjr&PyZTc~jv7gyP$l*-*J87#BQ z)gSn?jdFIM9h6stL&Gk;T&-{S>!7=@%jQxZW9(`yEfe()KS=f*mPAlBd-gs%|KfZ7 zwP7bL{Ns;Kd>8-aeh^Fnp$ zP*GdEA4O+=tPq7Qwx#aox2NPfikkjrFcp3^oT@&dpzbEbQR=xmNxbIFHI_ySHJ`Gyal1jD=?eS9MRN#a)%znJ)Mh<~2= zRm3kLekJis4Sv1+%_)Jcj%X_W9)!Ttu=H8oH@M;`YERCkeE{kI^-KIvJ=yt`% z&Cm2gs^3XfuHTr7*M4_@ZQ8xnSdZ>49{6|f<>A}?f@#a{(H_VB^l6`cbGZ+5hwYwy zq^8xaBi-M&JbI%`pQAp!2}dsnryO0;VCK|V4(P&zuByG|4G`Q+@C-0I_fgFa~{`vR^H+1 z*?G^yPvmigm-0F-Db9;`+MQ=-JvqBLtsGn z4T0+|HwKJvAzED&-T%nS_uqXl zpz$tSq3547g(pf53CptY2zQNqE1Z<~PB^jqJ)yJ9exV&2A-r5=9VmS5UQl|ms9;7n z`@+}1hzs4y#}}?yt1i5CH@fiDj^M)0VK#;SO>_kZI{FLSUi1(tLN|$4UwS5Ly4ry% z(f6QiRWeFeJcC-Zc|K)5Y#Ft5Eo_|%{mucLH8}FsjP^_`uh?H424IH({0(A*)Ek>UK!~05Umw1M<9y8fU*mrsbv_D|>5>Sx!R^?_OgLaKI{EiDMS@H$G+rkEB_^T~G#y4Eb-^kg( zUBS!XuQXX@y4q}wd8Wl$%XL=ktxfthFbQr5L^8+UrPonJC->hECVb9ECVb9 zECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9ECVb9 zECVb9ECVb9ECVb9ECVb9ECVb9ECc@m12!ql>-sh+%-hX2DfoS6Sa+Jjtb4FYf!CO6 z40~SCKD>WR`{u-leP(Hl*Vke@*aw96@%z^p({DwC53fDb7~Z|6edhgIn-pfvu1!i~ zBDW(xyz2{xO-d8uHzhvv3a?EHeyza^$MLO+??`-j{~HdQ6an#_ ziQk6!ZHezfd{^RsNBnlghdo^2ut|ZvN@!m|d_z49<;Y6K%!=tXA+$=p(?eI>0ye1m zOsr>vN{X;AfY+UwBV+(07r0?PF_9v4VZh6t7%=UCkc#MKb@*Cu$xQQJSdVEZgccIL z@tv_=2#%tU$|22ZJ%m#91{wClyI?&5QYd~GV{G4z!3bs1cxxcWp5Xq;u4xa5thG}p zu8T4Lwq2jE?AB&}__yrVW{&>K?!tL{8h5X*~mIEsQnw?2P-h4H7^?z(MV}Z5Z#Crg1?Izq(Dw|MgV1lY{M0_FSxIgUsuVce!MI zLc6h^7#wrdAMdJ&Uedm=_3Dpzo&%YD1UX;p8OA&2zJ*W{(ff4xYrQG#Y4ig-Do}Lz6U)E|4Js*uV2yE>77XEOY1TBMPQ%k<(|ZPb>nfaoh$p#sGAAVd_5v*a zoAsd~L~j)Q))>y$p#|fs92mb}YsQ~V{B%bKZzX;)y-p9M*ZM1PGB#*H2IJe4c!RwFi~pt`4n*&NT915s9W0YN&fz>+7aKzVkRz1mIa7Y! zXT}$NVf^Mbj6aq5>BL_{{BRx@mlye%V4po$23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I z23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I z23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q7I23Q9EH!vW8LPmqL zfhFbb!N)7h4Tp�Dg0D_?K7lfx}2_3O`d?x4srV3kmCZ*7hEVf4LDe9 z&&dUM2izNQ<{ZR<_5Gao;C#XL1{Vr00$d!pWN_)=)_~grZV$LzaL2)20rwExD{zR5 zIM(1Cz;y)Y3$8b~Vc;UcC4z%;bC!c!4{jg0YFMrH-OcUYo`fWj3X?fqaLf%u9)xu21Rz1Dj0N39L-x2I;e#VVpUuI?-G-0e zK-2J1$zBsUKfJ=_NEFD9kE+*UX~ilUx86FD^HI@LjPn=KSc$kYAW^GBY92Ztig;*iKdd*4!$;`_d{E3d z3`ODrRdS6=E`@rgb5zpFXgNo#jEa+};uUBO=vKVLiJs4-6DAlf(pW88!Gmhv9p*#Lp&7YwwV+LW z+$m0gY3W8>(vz8VNh?8+3&Q}^dNnQh4Ei#x`iif?-YgS7+6sw4Dhjy-EjCdm%e81D zNGoPp0l!&J9EnPvC|98zkgWk3Y7imUYUL_Pu*4HJkfFhms1jOx0T(Xjr`#B+QY+U; zP$n-{8Y8E>&`&%y`oN3VsAXV>7V$Oc4quD5n&>oAnH(K8Nz^d)DmFpf*l4(r<+22w zToMhJtXzXEwCW^C@1hA0RoFv;DtzFy-USK_JywIxnZiX0^)E5yp?q(Ms`kQlnT&on zh07Z~1M#l5AkJ?K;Wnp9Z5u}U|8W3|+}q{-4I=6p!m{2{;8Bd2|?WtPc8 z&OTlSx119=o9ke|w4sf4K0n2*$n29@uGvznZ0mbgMW*NZ*%nn6bxAF>&bF>?uMoy_2p&c7B7*ZDGVv=3 z?rn=dFCesy;Hga+TtIL(>`R2>&l8-BKc4`;Nig1r2;;{D<9&!Qen#*^g8w8~;Ksz) z5S-P4!8|jD@9~`(Y({W+7X~*X*uEQsn-RP9%ZnXGgwM6-ggPxM-hzoPr^8!V7w0##*+!g`!8WU zi(tI(62?mi#``N_yoz8Kf;SQzy@H9~PB7k23F{vu81JWq@nM3?2tG|P+RenDBRFXv zgD(**$YJnRfoM>)gBuY%^&W$p5nTKmgPjPDe$3!@1mk_BaQa>Z)JE;Fu@DEG593GCEXc(nc&_548Dgk+`H4 z8iVH&yp-VO1ZU4>;x}LnbwEW7-cB%|;QbiG2dk=MO#Cr|ZSeOtFuOpo{S^k^HQ-Pa zI-UzUjW{-NX2$=fG)71_kHKyPNB+oQAA(CpGX1wF!O;tt_|XJcFJdr!orUxf!u!?X z^2{K(xQK}dGdkW!&BSLCoPUam-$t-Ffr&pzunT;O!|9zScz`>DZxf97#l!JW3C>u@ z#D60A{CNh$S8F=|=qZdo+~#P!{st4@hTu_YOuQ$-6;Ln;A`!vEHZT}&6SO_vrw_+V z2)2QYF^(ZPgz%M0@IAs;Cc${$JgmQ+;NBjLJ$$XF)8~(2@Ogrxvl)Dc;OvzQeo1iA z8U~v}gX8uXu$sY53C8;sf*5%aYz_PVVcd^kypJKq(FS`wM*(;~!FYc{jMos1_btSD z2gcBUQ%HZ!CAc5yuV;vUQ9hI2H4MqJ}>4FTn!UM*!~#7yKEVJk>GrSZxUQVa0S6R1XmMW*@m$-=OmH=+uMfc|NqT(^_H7yckp#Pt@=qYR2nG&Z{%Hh9lK2dQD@poW0D~S@ zrH_O4aDF{}wjRD&4?nAi;XCSA>D$0WopFAx>S5P<*s~t?t%n2a;a>Id_w_IgvtQ*u zsvaI!56kP}*m_t~4=2^b)9T@w_3-?9ctt(DwjSPG5AUdlVJ7OU`W>!^^XuUg_3*iR z_-Z{|UJu`|hhfg@tNdTo!yoElE_}Z*?hoem@XydI;j0)r3=XDX(GhTk;Pl{%z#Rj3 z9NY?!D=$4Sv%SJ5AwRa4HkcyCaq^# zKi((>W-5;88>Yetgef;UGl6I%U}jPc0zA=a6#iNpBLAXYm$ep8iyHUvT0uP>dN!40 zLhE3Gkq$ktO5&NBPh&vlSc%9mBMOfr@DmdHx|7kB+Pb%p~GjPbNan zOm`AMo>bsV*f7h;#L)AS^h_gz)no#cAVNKzd@b`d`f4JQ(f(>Ok`dtvNyB3joH@pH z2gXyTbt+IMX7033^woqZBQ{KHvJbNU?>@+?-(pNZgXd**Mk_`9q^n_<1k_2NP^k@uv|Az_r zZ`CClKi!P>g3?8MLD8bUp#1-7{Ssj)VQxhbswEu4`0*~jLqSl%-0~nKQ_(kf2tn_` z_g)BTnNbnPk~YCYJVMkC2Oz-h6sabCkZxY6fK;WBD3#D%=n%9&en!jm1TP5~)PaP$ zzGCPicpx$!zC0q}=`P)unR0kU!c%G8*#ks z@38~rnkac>UzIvS3QyPIm4ryR%$f1PkTQdfy9SXY;Lp7H_;|;<2qDwE5QMK6^kEM& zn5{59hv306;=&(H|9~6CM8m^)UK>vV7g-bhuRU%T{PhAKoGzWz@$jfHPTPsTggU|4 z^I-LZ@yiNFySqH?bzj!F;OWJKFRpKnZgH?WeMtX}=)+_6pEesW`koGcI%tn;`=i%C zd)BlJ?B*PLA|rf6$|D|c#H#*3&&=%^Gr_r)j+1%BI&0UIx6Tie`R(oHMNi@np)-o| z6$_=2lXK3_{_vf5r>oM`66HCou2RwYmJ{#vIycvEr`mT?__n?I=Wg`5_^DNJpEmZ3 z<7yf=7<%&6u(9hu+kXl;(W}e;2GVBj+->X~f;u`aa!kK(-^C_vTuk2Rcl-PQ`81?Y zyN4ZS+7`FD>lf2})kTi&;4fA~|FDQD`f$S4;la6i-aUE0Clz|GnLB@Jlbo3Nn$uIQ zR`Nb>9v|eZN*grmH@D7Jo~r%h`FYOyPl}}Flk<`{w`j?owqa^>zOeh|oR86KE)AbL zGWG37Kie~QM^5ApzF@cg;=$g>eBOi)vDw(6zr&@5{kk^`rfyd4Uz*kV;rz@cSNa#J zeOvx$?{dLe=6Em)Ws++AbkyXlkociTHjs3Oh ztRG*=`GY^C{LuuRcu>{!f~Mu(@|pW}E<0{V9u!`myKvMXp34-D{e#ubZvWP%a>MO4 zOHQ~gta{z5@n(ffdfKcbtEZ}dRoaYhm~?%{DZ8c*FIlYDI-K3u=lpjMtiO-FYEy3K zFr=g6PZxE*kZQhhv|C=N_Y`@|&Afo}?p-XmOl;SBfh0KGxkm9kCLpchftgzyj~;jq zS>WizNZY?^X*?A_@dVNr@uD)Z7%}4D1l(A+0nbgivZG{7D{Jb7>SMI%j zZkF`rvHSB!+f_Gv*U@)~W4Md`%V2cD8X*q?E<}Z9gbZa(rD(ngKKoL zl%?R*^03679ReHI_&vXIwbhD#erFT>rmXC{_OKwg+WEdozwOEI1e;yr4?RfuGQ2!x zd|~;5*_v6N&m_@t*4BaTNJ7%g^yk(wqMu% z_1p#dRxyVLF4N!baCi6hM^osg&Q{SYtbN?m0vA&yAuarIhm~pS^ z9+A*zNE`8oC2_$fgPxq0TC}&?_-gnT`&Q#`9k`Y3ePXZ0n7nDuW7mwgy%c-&_Qm_M zas6)gO85G4b%VpjAq&smAF?y`iqzxb<7>SFTQ9i(@zLj$B|Tm4J{lh0sZ*Pii~iUV zvmzoj>-3l!we$4e%a;zGKUsBb*{A+pj+yN2xbA6bsp+e2bNX(dw4QoB>h5f9==4iRB-M$1PtHD+XnWS(tId<vUe}sHO*rV_hA>C&kXi`x0qh`T1;pF4X{gtz>ZV$Zr LUVFcz#a;AYrOq(2 literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake new file mode 100644 index 00000000..3141940c --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c" "examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o" "gcc" "examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/build.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/build.make new file mode 100644 index 00000000..e1e1453f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/build.make @@ -0,0 +1,116 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include examples/CMakeFiles/1a-lsr.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include examples/CMakeFiles/1a-lsr.dir/compiler_depend.make + +# Include the progress variables for this target. +include examples/CMakeFiles/1a-lsr.dir/progress.make + +# Include the compile flags for this target's objects. +include examples/CMakeFiles/1a-lsr.dir/flags.make + +examples/CMakeFiles/1a-lsr.dir/codegen: +.PHONY : examples/CMakeFiles/1a-lsr.dir/codegen + +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o: examples/CMakeFiles/1a-lsr.dir/flags.make +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o: examples/CMakeFiles/1a-lsr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o -MF CMakeFiles/1a-lsr.dir/1a-lsr.c.o.d -o CMakeFiles/1a-lsr.dir/1a-lsr.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c + +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/1a-lsr.dir/1a-lsr.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c > CMakeFiles/1a-lsr.dir/1a-lsr.c.i + +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/1a-lsr.dir/1a-lsr.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c -o CMakeFiles/1a-lsr.dir/1a-lsr.c.s + +# Object files for target 1a-lsr +1a__lsr_OBJECTS = \ +"CMakeFiles/1a-lsr.dir/1a-lsr.c.o" + +# External object files for target 1a-lsr +1a__lsr_EXTERNAL_OBJECTS = + +examples/1a-lsr: examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o +examples/1a-lsr: examples/CMakeFiles/1a-lsr.dir/build.make +examples/1a-lsr: src/libsoxr.a +examples/1a-lsr: src/libsoxr-lsr.a +examples/1a-lsr: src/libsoxr.a +examples/1a-lsr: examples/CMakeFiles/1a-lsr.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable 1a-lsr" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/1a-lsr.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +examples/CMakeFiles/1a-lsr.dir/build: examples/1a-lsr +.PHONY : examples/CMakeFiles/1a-lsr.dir/build + +examples/CMakeFiles/1a-lsr.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && $(CMAKE_COMMAND) -P CMakeFiles/1a-lsr.dir/cmake_clean.cmake +.PHONY : examples/CMakeFiles/1a-lsr.dir/clean + +examples/CMakeFiles/1a-lsr.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : examples/CMakeFiles/1a-lsr.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/cmake_clean.cmake new file mode 100644 index 00000000..45b33ac1 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "1a-lsr" + "1a-lsr.pdb" + "CMakeFiles/1a-lsr.dir/1a-lsr.c.o" + "CMakeFiles/1a-lsr.dir/1a-lsr.c.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/1a-lsr.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.internal new file mode 100644 index 00000000..6cab1c2e --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.internal @@ -0,0 +1,121 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.make new file mode 100644 index 00000000..4f5f4bdd --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.make @@ -0,0 +1,352 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c: diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.ts new file mode 100644 index 00000000..5d40ae7e --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for 1a-lsr. diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/depend.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/depend.make new file mode 100644 index 00000000..39290ba0 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for 1a-lsr. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/flags.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/link.txt b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/link.txt new file mode 100644 index 00000000..fa6a588f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names "CMakeFiles/1a-lsr.dir/1a-lsr.c.o" -o 1a-lsr ../src/libsoxr.a -lm ../src/libsoxr-lsr.a ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/progress.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/progress.make new file mode 100644 index 00000000..8c8fb6fb --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/1a-lsr.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 3 +CMAKE_PROGRESS_2 = 4 + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake new file mode 100644 index 00000000..ee7a0964 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c" "examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o" "gcc" "examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/build.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/build.make new file mode 100644 index 00000000..764c2fcb --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include examples/CMakeFiles/3-options-input-fn.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.make + +# Include the progress variables for this target. +include examples/CMakeFiles/3-options-input-fn.dir/progress.make + +# Include the compile flags for this target's objects. +include examples/CMakeFiles/3-options-input-fn.dir/flags.make + +examples/CMakeFiles/3-options-input-fn.dir/codegen: +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/codegen + +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o: examples/CMakeFiles/3-options-input-fn.dir/flags.make +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o: examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o -MF CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o.d -o CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c + +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c > CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.i + +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c -o CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.s + +# Object files for target 3-options-input-fn +3__options__input__fn_OBJECTS = \ +"CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o" + +# External object files for target 3-options-input-fn +3__options__input__fn_EXTERNAL_OBJECTS = + +examples/3-options-input-fn: examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o +examples/3-options-input-fn: examples/CMakeFiles/3-options-input-fn.dir/build.make +examples/3-options-input-fn: src/libsoxr.a +examples/3-options-input-fn: examples/CMakeFiles/3-options-input-fn.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable 3-options-input-fn" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/3-options-input-fn.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +examples/CMakeFiles/3-options-input-fn.dir/build: examples/3-options-input-fn +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/build + +examples/CMakeFiles/3-options-input-fn.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples && $(CMAKE_COMMAND) -P CMakeFiles/3-options-input-fn.dir/cmake_clean.cmake +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/clean + +examples/CMakeFiles/3-options-input-fn.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/cmake_clean.cmake new file mode 100644 index 00000000..3f3bdccc --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "3-options-input-fn" + "3-options-input-fn.pdb" + "CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o" + "CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/3-options-input-fn.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.internal new file mode 100644 index 00000000..2f96d93e --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.internal @@ -0,0 +1,121 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.make new file mode 100644 index 00000000..e4ec8851 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.make @@ -0,0 +1,352 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.ts new file mode 100644 index 00000000..fa4fbed2 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for 3-options-input-fn. diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/depend.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/depend.make new file mode 100644 index 00000000..8f8c570f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for 3-options-input-fn. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/flags.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/link.txt b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/link.txt new file mode 100644 index 00000000..9eaadba1 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names "CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o" -o 3-options-input-fn ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/progress.make b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/progress.make new file mode 100644 index 00000000..3a86673a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/3-options-input-fn.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 5 +CMAKE_PROGRESS_2 = 6 + diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/CMakeDirectoryInformation.cmake b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..8c6d8a6f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/C/src/soxr-0.1.3/Release/examples/CMakeFiles/progress.marks b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/progress.marks new file mode 100644 index 00000000..98d9bcb7 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CMakeFiles/progress.marks @@ -0,0 +1 @@ +17 diff --git a/C/src/soxr-0.1.3/Release/examples/CTestTestfile.cmake b/C/src/soxr-0.1.3/Release/examples/CTestTestfile.cmake new file mode 100644 index 00000000..c21b5a45 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/CTestTestfile.cmake @@ -0,0 +1,8 @@ +# CMake generated Testfile for +# Source directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples +# Build directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples +# +# This file includes the relevant testing commands required for +# testing this directory and lists subdirectories to be tested as well. +add_test(lsr-bindings "./1a-lsr") +set_tests_properties(lsr-bindings PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/CMakeLists.txt;31;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/CMakeLists.txt;0;") diff --git a/C/src/soxr-0.1.3/Release/examples/Makefile b/C/src/soxr-0.1.3/Release/examples/Makefile new file mode 100644 index 00000000..473505ed --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/Makefile @@ -0,0 +1,306 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackSourceConfig.cmake /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target test +test: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running tests..." + /opt/homebrew/bin/ctest $(ARGS) +.PHONY : test + +# Special rule for the target test +test/fast: test +.PHONY : test/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..." + /opt/homebrew/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /opt/homebrew/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples//CMakeFiles/progress.marks + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +examples/CMakeFiles/3-options-input-fn.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/CMakeFiles/3-options-input-fn.dir/rule +.PHONY : examples/CMakeFiles/3-options-input-fn.dir/rule + +# Convenience name for target. +3-options-input-fn: examples/CMakeFiles/3-options-input-fn.dir/rule +.PHONY : 3-options-input-fn + +# fast build rule for target. +3-options-input-fn/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/build +.PHONY : 3-options-input-fn/fast + +# Convenience name for target. +examples/CMakeFiles/1a-lsr.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 examples/CMakeFiles/1a-lsr.dir/rule +.PHONY : examples/CMakeFiles/1a-lsr.dir/rule + +# Convenience name for target. +1a-lsr: examples/CMakeFiles/1a-lsr.dir/rule +.PHONY : 1a-lsr + +# fast build rule for target. +1a-lsr/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/build +.PHONY : 1a-lsr/fast + +1a-lsr.o: 1a-lsr.c.o +.PHONY : 1a-lsr.o + +# target to build an object file +1a-lsr.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.o +.PHONY : 1a-lsr.c.o + +1a-lsr.i: 1a-lsr.c.i +.PHONY : 1a-lsr.i + +# target to preprocess a source file +1a-lsr.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.i +.PHONY : 1a-lsr.c.i + +1a-lsr.s: 1a-lsr.c.s +.PHONY : 1a-lsr.s + +# target to generate assembly for a file +1a-lsr.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/1a-lsr.dir/build.make examples/CMakeFiles/1a-lsr.dir/1a-lsr.c.s +.PHONY : 1a-lsr.c.s + +3-options-input-fn.o: 3-options-input-fn.c.o +.PHONY : 3-options-input-fn.o + +# target to build an object file +3-options-input-fn.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.o +.PHONY : 3-options-input-fn.c.o + +3-options-input-fn.i: 3-options-input-fn.c.i +.PHONY : 3-options-input-fn.i + +# target to preprocess a source file +3-options-input-fn.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.i +.PHONY : 3-options-input-fn.c.i + +3-options-input-fn.s: 3-options-input-fn.c.s +.PHONY : 3-options-input-fn.s + +# target to generate assembly for a file +3-options-input-fn.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f examples/CMakeFiles/3-options-input-fn.dir/build.make examples/CMakeFiles/3-options-input-fn.dir/3-options-input-fn.c.s +.PHONY : 3-options-input-fn.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... test" + @echo "... 1a-lsr" + @echo "... 3-options-input-fn" + @echo "... 1a-lsr.o" + @echo "... 1a-lsr.i" + @echo "... 1a-lsr.s" + @echo "... 3-options-input-fn.o" + @echo "... 3-options-input-fn.i" + @echo "... 3-options-input-fn.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/C/src/soxr-0.1.3/Release/examples/cmake_install.cmake b/C/src/soxr-0.1.3/Release/examples/cmake_install.cmake new file mode 100644 index 00000000..7765fded --- /dev/null +++ b/C/src/soxr-0.1.3/Release/examples/cmake_install.cmake @@ -0,0 +1,66 @@ +# Install script for directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set path to fallback-tool for dependency-resolution. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/1-single-block.c;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/1a-lsr.c;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/2-stream.C;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/3-options-input-fn.c;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/4-split-channels.c;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/5-variable-rate.c;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/examples-common.h;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/README") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples" TYPE FILE FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1-single-block.c" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/1a-lsr.c" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/2-stream.C" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/3-options-input-fn.c" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/4-split-channels.c" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/5-variable-rate.c" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/README" + ) +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +if(CMAKE_INSTALL_LOCAL_ONLY) + file(WRITE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/examples/install_local_manifest.txt" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() diff --git a/C/src/soxr-0.1.3/Release/install_manifest.txt b/C/src/soxr-0.1.3/Release/install_manifest.txt new file mode 100644 index 00000000..cd96d571 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/install_manifest.txt @@ -0,0 +1,17 @@ +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/README +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/LICENCE +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/NEWS +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig/soxr.pc +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig/soxr-lsr.pc +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr.a +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include/soxr.h +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr-lsr.a +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include/soxr-lsr.h +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/1-single-block.c +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/1a-lsr.c +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/2-stream.C +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/3-options-input-fn.c +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/4-split-channels.c +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/5-variable-rate.c +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/examples-common.h +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/share/doc/libsoxr/examples/README \ No newline at end of file diff --git a/C/src/soxr-0.1.3/Release/soxr-config.h b/C/src/soxr-0.1.3/Release/soxr-config.h new file mode 100644 index 00000000..57775e25 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/soxr-config.h @@ -0,0 +1,27 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_config_included +#define soxr_config_included + +#define AVCODEC_FOUND 0 +#define AVUTIL_FOUND 0 +#define WITH_PFFFT 1 + +#define HAVE_FENV_H 1 +#define HAVE_STDBOOL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_LRINT 1 +#define HAVE_BIGENDIAN 0 + +#define WITH_CR32 1 +#define WITH_CR32S 0 +#define WITH_CR64 1 +#define WITH_CR64S 0 +#define WITH_VR32 1 + +#define WITH_HI_PREC_CLOCK 1 +#define WITH_FLOAT_STD_PREC_CLOCK 0 +#define WITH_DEV_TRACE 1 + +#endif diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/CMakeDirectoryInformation.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..8c6d8a6f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/progress.marks b/C/src/soxr-0.1.3/Release/src/CMakeFiles/progress.marks new file mode 100644 index 00000000..b1bd38b6 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/progress.marks @@ -0,0 +1 @@ +13 diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake new file mode 100644 index 00000000..d362a671 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c" "src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o" "gcc" "src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/build.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/build.make new file mode 100644 index 00000000..1780d7e8 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include src/CMakeFiles/soxr-lsr.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include src/CMakeFiles/soxr-lsr.dir/compiler_depend.make + +# Include the progress variables for this target. +include src/CMakeFiles/soxr-lsr.dir/progress.make + +# Include the compile flags for this target's objects. +include src/CMakeFiles/soxr-lsr.dir/flags.make + +src/CMakeFiles/soxr-lsr.dir/codegen: +.PHONY : src/CMakeFiles/soxr-lsr.dir/codegen + +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o: src/CMakeFiles/soxr-lsr.dir/flags.make +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o: src/CMakeFiles/soxr-lsr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o -MF CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o.d -o CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c + +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr-lsr.dir/soxr-lsr.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c > CMakeFiles/soxr-lsr.dir/soxr-lsr.c.i + +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr-lsr.dir/soxr-lsr.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c -o CMakeFiles/soxr-lsr.dir/soxr-lsr.c.s + +# Object files for target soxr-lsr +soxr__lsr_OBJECTS = \ +"CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o" + +# External object files for target soxr-lsr +soxr__lsr_EXTERNAL_OBJECTS = + +src/libsoxr-lsr.a: src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o +src/libsoxr-lsr.a: src/CMakeFiles/soxr-lsr.dir/build.make +src/libsoxr-lsr.a: src/CMakeFiles/soxr-lsr.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C static library libsoxr-lsr.a" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -P CMakeFiles/soxr-lsr.dir/cmake_clean_target.cmake + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/soxr-lsr.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +src/CMakeFiles/soxr-lsr.dir/build: src/libsoxr-lsr.a +.PHONY : src/CMakeFiles/soxr-lsr.dir/build + +src/CMakeFiles/soxr-lsr.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -P CMakeFiles/soxr-lsr.dir/cmake_clean.cmake +.PHONY : src/CMakeFiles/soxr-lsr.dir/clean + +src/CMakeFiles/soxr-lsr.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : src/CMakeFiles/soxr-lsr.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean.cmake new file mode 100644 index 00000000..9789690a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o" + "CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o.d" + "libsoxr-lsr.a" + "libsoxr-lsr.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/soxr-lsr.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean_target.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean_target.cmake new file mode 100644 index 00000000..230a20ee --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "libsoxr-lsr.a" +) diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.internal new file mode 100644 index 00000000..1c3a37a6 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.internal @@ -0,0 +1,104 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.make new file mode 100644 index 00000000..e1ae6b4e --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.make @@ -0,0 +1,301 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +soxr-config.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.ts new file mode 100644 index 00000000..f2367444 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for soxr-lsr. diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/depend.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/depend.make new file mode 100644 index 00000000..910c44f9 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for soxr-lsr. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/flags.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/flags.make new file mode 100644 index 00000000..af2b0364 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = -DSOXR_LIB + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/link.txt b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/link.txt new file mode 100644 index 00000000..1422b362 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/link.txt @@ -0,0 +1,2 @@ +/usr/bin/ar qc libsoxr-lsr.a "CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o" +/usr/bin/ranlib libsoxr-lsr.a diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/progress.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/progress.make new file mode 100644 index 00000000..2b041ba1 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr-lsr.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 18 +CMAKE_PROGRESS_2 = 19 + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/DependInfo.cmake new file mode 100644 index 00000000..a87473fa --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/DependInfo.cmake @@ -0,0 +1,32 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c" "src/CMakeFiles/soxr.dir/cr.c.o" "gcc" "src/CMakeFiles/soxr.dir/cr.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c" "src/CMakeFiles/soxr.dir/cr32.c.o" "gcc" "src/CMakeFiles/soxr.dir/cr32.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c" "src/CMakeFiles/soxr.dir/cr64.c.o" "gcc" "src/CMakeFiles/soxr.dir/cr64.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c" "src/CMakeFiles/soxr.dir/data-io.c.o" "gcc" "src/CMakeFiles/soxr.dir/data-io.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c" "src/CMakeFiles/soxr.dir/dbesi0.c.o" "gcc" "src/CMakeFiles/soxr.dir/dbesi0.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c" "src/CMakeFiles/soxr.dir/fft4g32.c.o" "gcc" "src/CMakeFiles/soxr.dir/fft4g32.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c" "src/CMakeFiles/soxr.dir/fft4g64.c.o" "gcc" "src/CMakeFiles/soxr.dir/fft4g64.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c" "src/CMakeFiles/soxr.dir/filter.c.o" "gcc" "src/CMakeFiles/soxr.dir/filter.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c" "src/CMakeFiles/soxr.dir/soxr.c.o" "gcc" "src/CMakeFiles/soxr.dir/soxr.c.o.d" + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c" "src/CMakeFiles/soxr.dir/vr32.c.o" "gcc" "src/CMakeFiles/soxr.dir/vr32.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/build.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/build.make new file mode 100644 index 00000000..03b9206a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/build.make @@ -0,0 +1,258 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include src/CMakeFiles/soxr.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include src/CMakeFiles/soxr.dir/compiler_depend.make + +# Include the progress variables for this target. +include src/CMakeFiles/soxr.dir/progress.make + +# Include the compile flags for this target's objects. +include src/CMakeFiles/soxr.dir/flags.make + +src/CMakeFiles/soxr.dir/codegen: +.PHONY : src/CMakeFiles/soxr.dir/codegen + +src/CMakeFiles/soxr.dir/soxr.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/soxr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c +src/CMakeFiles/soxr.dir/soxr.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object src/CMakeFiles/soxr.dir/soxr.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/soxr.c.o -MF CMakeFiles/soxr.dir/soxr.c.o.d -o CMakeFiles/soxr.dir/soxr.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c + +src/CMakeFiles/soxr.dir/soxr.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/soxr.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c > CMakeFiles/soxr.dir/soxr.c.i + +src/CMakeFiles/soxr.dir/soxr.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/soxr.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c -o CMakeFiles/soxr.dir/soxr.c.s + +src/CMakeFiles/soxr.dir/data-io.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/data-io.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c +src/CMakeFiles/soxr.dir/data-io.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object src/CMakeFiles/soxr.dir/data-io.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/data-io.c.o -MF CMakeFiles/soxr.dir/data-io.c.o.d -o CMakeFiles/soxr.dir/data-io.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c + +src/CMakeFiles/soxr.dir/data-io.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/data-io.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c > CMakeFiles/soxr.dir/data-io.c.i + +src/CMakeFiles/soxr.dir/data-io.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/data-io.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c -o CMakeFiles/soxr.dir/data-io.c.s + +src/CMakeFiles/soxr.dir/dbesi0.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/dbesi0.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c +src/CMakeFiles/soxr.dir/dbesi0.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object src/CMakeFiles/soxr.dir/dbesi0.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/dbesi0.c.o -MF CMakeFiles/soxr.dir/dbesi0.c.o.d -o CMakeFiles/soxr.dir/dbesi0.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c + +src/CMakeFiles/soxr.dir/dbesi0.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/dbesi0.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c > CMakeFiles/soxr.dir/dbesi0.c.i + +src/CMakeFiles/soxr.dir/dbesi0.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/dbesi0.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c -o CMakeFiles/soxr.dir/dbesi0.c.s + +src/CMakeFiles/soxr.dir/filter.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/filter.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c +src/CMakeFiles/soxr.dir/filter.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building C object src/CMakeFiles/soxr.dir/filter.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/filter.c.o -MF CMakeFiles/soxr.dir/filter.c.o.d -o CMakeFiles/soxr.dir/filter.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c + +src/CMakeFiles/soxr.dir/filter.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/filter.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c > CMakeFiles/soxr.dir/filter.c.i + +src/CMakeFiles/soxr.dir/filter.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/filter.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c -o CMakeFiles/soxr.dir/filter.c.s + +src/CMakeFiles/soxr.dir/fft4g64.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/fft4g64.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c +src/CMakeFiles/soxr.dir/fft4g64.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building C object src/CMakeFiles/soxr.dir/fft4g64.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/fft4g64.c.o -MF CMakeFiles/soxr.dir/fft4g64.c.o.d -o CMakeFiles/soxr.dir/fft4g64.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c + +src/CMakeFiles/soxr.dir/fft4g64.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/fft4g64.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c > CMakeFiles/soxr.dir/fft4g64.c.i + +src/CMakeFiles/soxr.dir/fft4g64.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/fft4g64.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c -o CMakeFiles/soxr.dir/fft4g64.c.s + +src/CMakeFiles/soxr.dir/cr.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/cr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c +src/CMakeFiles/soxr.dir/cr.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building C object src/CMakeFiles/soxr.dir/cr.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/cr.c.o -MF CMakeFiles/soxr.dir/cr.c.o.d -o CMakeFiles/soxr.dir/cr.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c + +src/CMakeFiles/soxr.dir/cr.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/cr.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c > CMakeFiles/soxr.dir/cr.c.i + +src/CMakeFiles/soxr.dir/cr.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/cr.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c -o CMakeFiles/soxr.dir/cr.c.s + +src/CMakeFiles/soxr.dir/cr32.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/cr32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c +src/CMakeFiles/soxr.dir/cr32.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building C object src/CMakeFiles/soxr.dir/cr32.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/cr32.c.o -MF CMakeFiles/soxr.dir/cr32.c.o.d -o CMakeFiles/soxr.dir/cr32.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c + +src/CMakeFiles/soxr.dir/cr32.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/cr32.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c > CMakeFiles/soxr.dir/cr32.c.i + +src/CMakeFiles/soxr.dir/cr32.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/cr32.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c -o CMakeFiles/soxr.dir/cr32.c.s + +src/CMakeFiles/soxr.dir/fft4g32.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/fft4g32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c +src/CMakeFiles/soxr.dir/fft4g32.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building C object src/CMakeFiles/soxr.dir/fft4g32.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/fft4g32.c.o -MF CMakeFiles/soxr.dir/fft4g32.c.o.d -o CMakeFiles/soxr.dir/fft4g32.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c + +src/CMakeFiles/soxr.dir/fft4g32.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/fft4g32.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c > CMakeFiles/soxr.dir/fft4g32.c.i + +src/CMakeFiles/soxr.dir/fft4g32.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/fft4g32.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c -o CMakeFiles/soxr.dir/fft4g32.c.s + +src/CMakeFiles/soxr.dir/cr64.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/cr64.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c +src/CMakeFiles/soxr.dir/cr64.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building C object src/CMakeFiles/soxr.dir/cr64.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/cr64.c.o -MF CMakeFiles/soxr.dir/cr64.c.o.d -o CMakeFiles/soxr.dir/cr64.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c + +src/CMakeFiles/soxr.dir/cr64.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/cr64.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c > CMakeFiles/soxr.dir/cr64.c.i + +src/CMakeFiles/soxr.dir/cr64.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/cr64.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c -o CMakeFiles/soxr.dir/cr64.c.s + +src/CMakeFiles/soxr.dir/vr32.c.o: src/CMakeFiles/soxr.dir/flags.make +src/CMakeFiles/soxr.dir/vr32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c +src/CMakeFiles/soxr.dir/vr32.c.o: src/CMakeFiles/soxr.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building C object src/CMakeFiles/soxr.dir/vr32.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/soxr.dir/vr32.c.o -MF CMakeFiles/soxr.dir/vr32.c.o.d -o CMakeFiles/soxr.dir/vr32.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c + +src/CMakeFiles/soxr.dir/vr32.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/soxr.dir/vr32.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c > CMakeFiles/soxr.dir/vr32.c.i + +src/CMakeFiles/soxr.dir/vr32.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/soxr.dir/vr32.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c -o CMakeFiles/soxr.dir/vr32.c.s + +# Object files for target soxr +soxr_OBJECTS = \ +"CMakeFiles/soxr.dir/soxr.c.o" \ +"CMakeFiles/soxr.dir/data-io.c.o" \ +"CMakeFiles/soxr.dir/dbesi0.c.o" \ +"CMakeFiles/soxr.dir/filter.c.o" \ +"CMakeFiles/soxr.dir/fft4g64.c.o" \ +"CMakeFiles/soxr.dir/cr.c.o" \ +"CMakeFiles/soxr.dir/cr32.c.o" \ +"CMakeFiles/soxr.dir/fft4g32.c.o" \ +"CMakeFiles/soxr.dir/cr64.c.o" \ +"CMakeFiles/soxr.dir/vr32.c.o" + +# External object files for target soxr +soxr_EXTERNAL_OBJECTS = + +src/libsoxr.a: src/CMakeFiles/soxr.dir/soxr.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/data-io.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/dbesi0.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/filter.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/fft4g64.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/cr.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/cr32.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/fft4g32.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/cr64.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/vr32.c.o +src/libsoxr.a: src/CMakeFiles/soxr.dir/build.make +src/libsoxr.a: src/CMakeFiles/soxr.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Linking C static library libsoxr.a" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -P CMakeFiles/soxr.dir/cmake_clean_target.cmake + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/soxr.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +src/CMakeFiles/soxr.dir/build: src/libsoxr.a +.PHONY : src/CMakeFiles/soxr.dir/build + +src/CMakeFiles/soxr.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src && $(CMAKE_COMMAND) -P CMakeFiles/soxr.dir/cmake_clean.cmake +.PHONY : src/CMakeFiles/soxr.dir/clean + +src/CMakeFiles/soxr.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : src/CMakeFiles/soxr.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean.cmake new file mode 100644 index 00000000..01c8bad3 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean.cmake @@ -0,0 +1,29 @@ +file(REMOVE_RECURSE + "CMakeFiles/soxr.dir/cr.c.o" + "CMakeFiles/soxr.dir/cr.c.o.d" + "CMakeFiles/soxr.dir/cr32.c.o" + "CMakeFiles/soxr.dir/cr32.c.o.d" + "CMakeFiles/soxr.dir/cr64.c.o" + "CMakeFiles/soxr.dir/cr64.c.o.d" + "CMakeFiles/soxr.dir/data-io.c.o" + "CMakeFiles/soxr.dir/data-io.c.o.d" + "CMakeFiles/soxr.dir/dbesi0.c.o" + "CMakeFiles/soxr.dir/dbesi0.c.o.d" + "CMakeFiles/soxr.dir/fft4g32.c.o" + "CMakeFiles/soxr.dir/fft4g32.c.o.d" + "CMakeFiles/soxr.dir/fft4g64.c.o" + "CMakeFiles/soxr.dir/fft4g64.c.o.d" + "CMakeFiles/soxr.dir/filter.c.o" + "CMakeFiles/soxr.dir/filter.c.o.d" + "CMakeFiles/soxr.dir/soxr.c.o" + "CMakeFiles/soxr.dir/soxr.c.o.d" + "CMakeFiles/soxr.dir/vr32.c.o" + "CMakeFiles/soxr.dir/vr32.c.o.d" + "libsoxr.a" + "libsoxr.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/soxr.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean_target.cmake b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean_target.cmake new file mode 100644 index 00000000..02dc1099 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "libsoxr.a" +) diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.internal new file mode 100644 index 00000000..c73ceccf --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.internal @@ -0,0 +1,954 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +src/CMakeFiles/soxr.dir/cr.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/cr32.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr-core.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-coefs.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-fir.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir0.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/cr64.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr-core.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-coefs.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-fir.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir0.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/data-io.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint-clip.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/dbesi0.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + +src/CMakeFiles/soxr.dir/fft4g32.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h + +src/CMakeFiles/soxr.dir/fft4g64.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.c + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + +src/CMakeFiles/soxr.dir/filter.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/ccrw2.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g_cache.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/soxr.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___gnuc_va_list.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___va_copy.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_arg.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_copy.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_list.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdarg.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/vr32.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr-coefs.h + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.make new file mode 100644 index 00000000..7224e2da --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.make @@ -0,0 +1,1260 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +src/CMakeFiles/soxr.dir/cr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/cr32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr-core.c \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-coefs.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-fir.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir0.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/cr64.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr-core.c \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-coefs.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-fir.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir0.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/data-io.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint-clip.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/dbesi0.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h + +src/CMakeFiles/soxr.dir/fft4g32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.c \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h + +src/CMakeFiles/soxr.dir/fft4g64.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.c \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + +src/CMakeFiles/soxr.dir/filter.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/ccrw2.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g_cache.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/soxr.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___gnuc_va_list.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___va_copy.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_arg.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_copy.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_list.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdarg.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + +src/CMakeFiles/soxr.dir/vr32.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr-coefs.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr-coefs.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/vr32.c: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_copy.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_header_macro.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___gnuc_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.c: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g_cache.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.c: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g64.c: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g32.c: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdarg.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-coefs.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr32.c: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/filter.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fifo.h: + +soxr-config.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/data-io.c: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/poly-fir0.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/ccrw2.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint-clip.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/aliases.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr-core.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/dbesi0.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr64.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/half-fir.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/internal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rdft_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/fft4g.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg_va_arg.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/cr.c: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stdarg___va_copy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.ts new file mode 100644 index 00000000..9a04f92d --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for soxr. diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/depend.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/depend.make new file mode 100644 index 00000000..6f0c97af --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for soxr. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/flags.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/flags.make new file mode 100644 index 00000000..af2b0364 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = -DSOXR_LIB + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/link.txt b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/link.txt new file mode 100644 index 00000000..dd3b074f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/link.txt @@ -0,0 +1,2 @@ +/usr/bin/ar qc libsoxr.a CMakeFiles/soxr.dir/soxr.c.o "CMakeFiles/soxr.dir/data-io.c.o" CMakeFiles/soxr.dir/dbesi0.c.o CMakeFiles/soxr.dir/filter.c.o CMakeFiles/soxr.dir/fft4g64.c.o CMakeFiles/soxr.dir/cr.c.o CMakeFiles/soxr.dir/cr32.c.o CMakeFiles/soxr.dir/fft4g32.c.o CMakeFiles/soxr.dir/cr64.c.o CMakeFiles/soxr.dir/vr32.c.o +/usr/bin/ranlib libsoxr.a diff --git a/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/progress.make b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/progress.make new file mode 100644 index 00000000..d807739f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CMakeFiles/soxr.dir/progress.make @@ -0,0 +1,12 @@ +CMAKE_PROGRESS_1 = 7 +CMAKE_PROGRESS_2 = 8 +CMAKE_PROGRESS_3 = 9 +CMAKE_PROGRESS_4 = 10 +CMAKE_PROGRESS_5 = 11 +CMAKE_PROGRESS_6 = 12 +CMAKE_PROGRESS_7 = 13 +CMAKE_PROGRESS_8 = 14 +CMAKE_PROGRESS_9 = 15 +CMAKE_PROGRESS_10 = 16 +CMAKE_PROGRESS_11 = 17 + diff --git a/C/src/soxr-0.1.3/Release/src/CTestTestfile.cmake b/C/src/soxr-0.1.3/Release/src/CTestTestfile.cmake new file mode 100644 index 00000000..76c1de4e --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/CTestTestfile.cmake @@ -0,0 +1,6 @@ +# CMake generated Testfile for +# Source directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src +# Build directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src +# +# This file includes the relevant testing commands required for +# testing this directory and lists subdirectories to be tested as well. diff --git a/C/src/soxr-0.1.3/Release/src/Makefile b/C/src/soxr-0.1.3/Release/src/Makefile new file mode 100644 index 00000000..f8a72b86 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/Makefile @@ -0,0 +1,549 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackSourceConfig.cmake /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target test +test: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running tests..." + /opt/homebrew/bin/ctest $(ARGS) +.PHONY : test + +# Special rule for the target test +test/fast: test +.PHONY : test/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..." + /opt/homebrew/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /opt/homebrew/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src//CMakeFiles/progress.marks + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +src/CMakeFiles/soxr.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/soxr.dir/rule +.PHONY : src/CMakeFiles/soxr.dir/rule + +# Convenience name for target. +soxr: src/CMakeFiles/soxr.dir/rule +.PHONY : soxr + +# fast build rule for target. +soxr/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/build +.PHONY : soxr/fast + +# Convenience name for target. +src/CMakeFiles/soxr-lsr.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/soxr-lsr.dir/rule +.PHONY : src/CMakeFiles/soxr-lsr.dir/rule + +# Convenience name for target. +soxr-lsr: src/CMakeFiles/soxr-lsr.dir/rule +.PHONY : soxr-lsr + +# fast build rule for target. +soxr-lsr/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/build +.PHONY : soxr-lsr/fast + +cr.o: cr.c.o +.PHONY : cr.o + +# target to build an object file +cr.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr.c.o +.PHONY : cr.c.o + +cr.i: cr.c.i +.PHONY : cr.i + +# target to preprocess a source file +cr.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr.c.i +.PHONY : cr.c.i + +cr.s: cr.c.s +.PHONY : cr.s + +# target to generate assembly for a file +cr.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr.c.s +.PHONY : cr.c.s + +cr32.o: cr32.c.o +.PHONY : cr32.o + +# target to build an object file +cr32.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr32.c.o +.PHONY : cr32.c.o + +cr32.i: cr32.c.i +.PHONY : cr32.i + +# target to preprocess a source file +cr32.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr32.c.i +.PHONY : cr32.c.i + +cr32.s: cr32.c.s +.PHONY : cr32.s + +# target to generate assembly for a file +cr32.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr32.c.s +.PHONY : cr32.c.s + +cr64.o: cr64.c.o +.PHONY : cr64.o + +# target to build an object file +cr64.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr64.c.o +.PHONY : cr64.c.o + +cr64.i: cr64.c.i +.PHONY : cr64.i + +# target to preprocess a source file +cr64.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr64.c.i +.PHONY : cr64.c.i + +cr64.s: cr64.c.s +.PHONY : cr64.s + +# target to generate assembly for a file +cr64.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/cr64.c.s +.PHONY : cr64.c.s + +data-io.o: data-io.c.o +.PHONY : data-io.o + +# target to build an object file +data-io.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/data-io.c.o +.PHONY : data-io.c.o + +data-io.i: data-io.c.i +.PHONY : data-io.i + +# target to preprocess a source file +data-io.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/data-io.c.i +.PHONY : data-io.c.i + +data-io.s: data-io.c.s +.PHONY : data-io.s + +# target to generate assembly for a file +data-io.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/data-io.c.s +.PHONY : data-io.c.s + +dbesi0.o: dbesi0.c.o +.PHONY : dbesi0.o + +# target to build an object file +dbesi0.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/dbesi0.c.o +.PHONY : dbesi0.c.o + +dbesi0.i: dbesi0.c.i +.PHONY : dbesi0.i + +# target to preprocess a source file +dbesi0.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/dbesi0.c.i +.PHONY : dbesi0.c.i + +dbesi0.s: dbesi0.c.s +.PHONY : dbesi0.s + +# target to generate assembly for a file +dbesi0.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/dbesi0.c.s +.PHONY : dbesi0.c.s + +fft4g32.o: fft4g32.c.o +.PHONY : fft4g32.o + +# target to build an object file +fft4g32.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g32.c.o +.PHONY : fft4g32.c.o + +fft4g32.i: fft4g32.c.i +.PHONY : fft4g32.i + +# target to preprocess a source file +fft4g32.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g32.c.i +.PHONY : fft4g32.c.i + +fft4g32.s: fft4g32.c.s +.PHONY : fft4g32.s + +# target to generate assembly for a file +fft4g32.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g32.c.s +.PHONY : fft4g32.c.s + +fft4g64.o: fft4g64.c.o +.PHONY : fft4g64.o + +# target to build an object file +fft4g64.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g64.c.o +.PHONY : fft4g64.c.o + +fft4g64.i: fft4g64.c.i +.PHONY : fft4g64.i + +# target to preprocess a source file +fft4g64.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g64.c.i +.PHONY : fft4g64.c.i + +fft4g64.s: fft4g64.c.s +.PHONY : fft4g64.s + +# target to generate assembly for a file +fft4g64.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/fft4g64.c.s +.PHONY : fft4g64.c.s + +filter.o: filter.c.o +.PHONY : filter.o + +# target to build an object file +filter.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/filter.c.o +.PHONY : filter.c.o + +filter.i: filter.c.i +.PHONY : filter.i + +# target to preprocess a source file +filter.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/filter.c.i +.PHONY : filter.c.i + +filter.s: filter.c.s +.PHONY : filter.s + +# target to generate assembly for a file +filter.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/filter.c.s +.PHONY : filter.c.s + +soxr-lsr.o: soxr-lsr.c.o +.PHONY : soxr-lsr.o + +# target to build an object file +soxr-lsr.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.o +.PHONY : soxr-lsr.c.o + +soxr-lsr.i: soxr-lsr.c.i +.PHONY : soxr-lsr.i + +# target to preprocess a source file +soxr-lsr.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.i +.PHONY : soxr-lsr.c.i + +soxr-lsr.s: soxr-lsr.c.s +.PHONY : soxr-lsr.s + +# target to generate assembly for a file +soxr-lsr.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr-lsr.dir/build.make src/CMakeFiles/soxr-lsr.dir/soxr-lsr.c.s +.PHONY : soxr-lsr.c.s + +soxr.o: soxr.c.o +.PHONY : soxr.o + +# target to build an object file +soxr.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/soxr.c.o +.PHONY : soxr.c.o + +soxr.i: soxr.c.i +.PHONY : soxr.i + +# target to preprocess a source file +soxr.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/soxr.c.i +.PHONY : soxr.c.i + +soxr.s: soxr.c.s +.PHONY : soxr.s + +# target to generate assembly for a file +soxr.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/soxr.c.s +.PHONY : soxr.c.s + +vr32.o: vr32.c.o +.PHONY : vr32.o + +# target to build an object file +vr32.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/vr32.c.o +.PHONY : vr32.c.o + +vr32.i: vr32.c.i +.PHONY : vr32.i + +# target to preprocess a source file +vr32.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/vr32.c.i +.PHONY : vr32.c.i + +vr32.s: vr32.c.s +.PHONY : vr32.s + +# target to generate assembly for a file +vr32.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/soxr.dir/build.make src/CMakeFiles/soxr.dir/vr32.c.s +.PHONY : vr32.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... test" + @echo "... soxr" + @echo "... soxr-lsr" + @echo "... cr.o" + @echo "... cr.i" + @echo "... cr.s" + @echo "... cr32.o" + @echo "... cr32.i" + @echo "... cr32.s" + @echo "... cr64.o" + @echo "... cr64.i" + @echo "... cr64.s" + @echo "... data-io.o" + @echo "... data-io.i" + @echo "... data-io.s" + @echo "... dbesi0.o" + @echo "... dbesi0.i" + @echo "... dbesi0.s" + @echo "... fft4g32.o" + @echo "... fft4g32.i" + @echo "... fft4g32.s" + @echo "... fft4g64.o" + @echo "... fft4g64.i" + @echo "... fft4g64.s" + @echo "... filter.o" + @echo "... filter.i" + @echo "... filter.s" + @echo "... soxr-lsr.o" + @echo "... soxr-lsr.i" + @echo "... soxr-lsr.s" + @echo "... soxr.o" + @echo "... soxr.i" + @echo "... soxr.s" + @echo "... vr32.o" + @echo "... vr32.i" + @echo "... vr32.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/C/src/soxr-0.1.3/Release/src/cmake_install.cmake b/C/src/soxr-0.1.3/Release/src/cmake_install.cmake new file mode 100644 index 00000000..467d42f3 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/cmake_install.cmake @@ -0,0 +1,125 @@ +# Install script for directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set path to fallback-tool for dependency-resolution. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig/soxr.pc") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig" TYPE FILE FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/soxr.pc") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig/soxr-lsr.pc") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/pkgconfig" TYPE FILE FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/soxr-lsr.pc") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr.a") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib" TYPE STATIC_LIBRARY FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/libsoxr.a") + if(EXISTS "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr.a" AND + NOT IS_SYMLINK "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr.a") + execute_process(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr.a") + endif() +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include/soxr.h") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include" TYPE FILE FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h") +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr-lsr.a") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib" TYPE STATIC_LIBRARY FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/libsoxr-lsr.a") + if(EXISTS "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr-lsr.a" AND + NOT IS_SYMLINK "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr-lsr.a") + execute_process(COMMAND "/usr/bin/ranlib" "$ENV{DESTDIR}/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib/libsoxr-lsr.a") + endif() +endif() + +if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT) + list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include/soxr-lsr.h") + if(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION) + message(WARNING "ABSOLUTE path INSTALL DESTINATION : ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + if(CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION) + message(FATAL_ERROR "ABSOLUTE path INSTALL DESTINATION forbidden (by caller): ${CMAKE_ABSOLUTE_DESTINATION_FILES}") + endif() + file(INSTALL DESTINATION "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include" TYPE FILE FILES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr-lsr.h") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +if(CMAKE_INSTALL_LOCAL_ONLY) + file(WRITE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/src/install_local_manifest.txt" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() diff --git a/C/src/soxr-0.1.3/Release/src/soxr-lsr.pc b/C/src/soxr-0.1.3/Release/src/soxr-lsr.pc new file mode 100644 index 00000000..bcd8a44b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/soxr-lsr.pc @@ -0,0 +1,5 @@ +Name: soxr-lsr +Description: High quality, one-dimensional sample-rate conversion library (with libsamplerate-like bindings) +Version: 0.1.3 +Libs: -L/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib -lsoxr-lsr +Cflags: -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include diff --git a/C/src/soxr-0.1.3/Release/src/soxr.pc b/C/src/soxr-0.1.3/Release/src/soxr.pc new file mode 100644 index 00000000..e54e1436 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/src/soxr.pc @@ -0,0 +1,5 @@ +Name: soxr +Description: High quality, one-dimensional sample-rate conversion library +Version: 0.1.3 +Libs: -L/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/lib -lsoxr +Cflags: -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/include diff --git a/C/src/soxr-0.1.3/Release/tests/1-delay-clear b/C/src/soxr-0.1.3/Release/tests/1-delay-clear new file mode 100755 index 0000000000000000000000000000000000000000..d22d6b4ab8d8e749c27ac723508779170e931d62 GIT binary patch literal 206992 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 literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake new file mode 100644 index 00000000..d0088ee5 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c" "tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o" "gcc" "tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/build.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/build.make new file mode 100644 index 00000000..d5271248 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include tests/CMakeFiles/1-delay-clear.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include tests/CMakeFiles/1-delay-clear.dir/compiler_depend.make + +# Include the progress variables for this target. +include tests/CMakeFiles/1-delay-clear.dir/progress.make + +# Include the compile flags for this target's objects. +include tests/CMakeFiles/1-delay-clear.dir/flags.make + +tests/CMakeFiles/1-delay-clear.dir/codegen: +.PHONY : tests/CMakeFiles/1-delay-clear.dir/codegen + +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o: tests/CMakeFiles/1-delay-clear.dir/flags.make +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o: tests/CMakeFiles/1-delay-clear.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o -MF CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o.d -o CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c + +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/1-delay-clear.dir/1-delay-clear.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c > CMakeFiles/1-delay-clear.dir/1-delay-clear.c.i + +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/1-delay-clear.dir/1-delay-clear.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c -o CMakeFiles/1-delay-clear.dir/1-delay-clear.c.s + +# Object files for target 1-delay-clear +1__delay__clear_OBJECTS = \ +"CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o" + +# External object files for target 1-delay-clear +1__delay__clear_EXTERNAL_OBJECTS = + +tests/1-delay-clear: tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o +tests/1-delay-clear: tests/CMakeFiles/1-delay-clear.dir/build.make +tests/1-delay-clear: src/libsoxr.a +tests/1-delay-clear: tests/CMakeFiles/1-delay-clear.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable 1-delay-clear" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/1-delay-clear.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +tests/CMakeFiles/1-delay-clear.dir/build: tests/1-delay-clear +.PHONY : tests/CMakeFiles/1-delay-clear.dir/build + +tests/CMakeFiles/1-delay-clear.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -P CMakeFiles/1-delay-clear.dir/cmake_clean.cmake +.PHONY : tests/CMakeFiles/1-delay-clear.dir/clean + +tests/CMakeFiles/1-delay-clear.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : tests/CMakeFiles/1-delay-clear.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/cmake_clean.cmake new file mode 100644 index 00000000..20446d2d --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "1-delay-clear" + "1-delay-clear.pdb" + "CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o" + "CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/1-delay-clear.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.internal new file mode 100644 index 00000000..bcef9378 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.internal @@ -0,0 +1,122 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.make new file mode 100644 index 00000000..252dcc04 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.make @@ -0,0 +1,355 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/1-delay-clear.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.ts new file mode 100644 index 00000000..b88787dd --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for 1-delay-clear. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/depend.make new file mode 100644 index 00000000..8a3a06a1 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for 1-delay-clear. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/flags.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/link.txt b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/link.txt new file mode 100644 index 00000000..bdf57b2f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names "CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o" -o 1-delay-clear ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/progress.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/progress.make new file mode 100644 index 00000000..abadeb0c --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/1-delay-clear.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/CMakeDirectoryInformation.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..8c6d8a6f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/progress.marks b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/progress.marks new file mode 100644 index 00000000..2bd5a0a9 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/progress.marks @@ -0,0 +1 @@ +22 diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/DependInfo.cmake new file mode 100644 index 00000000..29b95a51 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/DependInfo.cmake @@ -0,0 +1,22 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/build.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/build.make new file mode 100644 index 00000000..45e45888 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/build.make @@ -0,0 +1,122 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Utility rule file for test-vectors. + +# Include any custom commands dependencies for this target. +include tests/CMakeFiles/test-vectors.dir/compiler_depend.make + +# Include the progress variables for this target. +include tests/CMakeFiles/test-vectors.dir/progress.make + +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-65537.s32 +tests/CMakeFiles/test-vectors: tests/ref-65537.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-192000.s32 +tests/CMakeFiles/test-vectors: tests/ref-192000.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-65537.s32 +tests/CMakeFiles/test-vectors: tests/ref-65537.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 +tests/CMakeFiles/test-vectors: tests/ref-192000.s32 +tests/CMakeFiles/test-vectors: tests/ref-192000.s32 +tests/CMakeFiles/test-vectors: tests/ref-44100.s32 + +tests/ref-192000.s32: tests/vector-gen +tests/ref-192000.s32: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --blue --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Generating ref-192000.s32" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && ./vector-gen 192000 1 16 0 22050 1 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/ref-192000.s32 + +tests/ref-44100.s32: tests/vector-gen +tests/ref-44100.s32: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --blue --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Generating ref-44100.s32" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && ./vector-gen 44100 1 16 0 22050 1 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/ref-44100.s32 + +tests/ref-65537.s32: tests/vector-gen +tests/ref-65537.s32: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --blue --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Generating ref-65537.s32" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && ./vector-gen 65537 1 16 0 22050 1 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/ref-65537.s32 + +tests/CMakeFiles/test-vectors.dir/codegen: +.PHONY : tests/CMakeFiles/test-vectors.dir/codegen + +test-vectors: tests/CMakeFiles/test-vectors +test-vectors: tests/ref-192000.s32 +test-vectors: tests/ref-44100.s32 +test-vectors: tests/ref-65537.s32 +test-vectors: tests/CMakeFiles/test-vectors.dir/build.make +.PHONY : test-vectors + +# Rule to build all files generated by this target. +tests/CMakeFiles/test-vectors.dir/build: test-vectors +.PHONY : tests/CMakeFiles/test-vectors.dir/build + +tests/CMakeFiles/test-vectors.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -P CMakeFiles/test-vectors.dir/cmake_clean.cmake +.PHONY : tests/CMakeFiles/test-vectors.dir/clean + +tests/CMakeFiles/test-vectors.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : tests/CMakeFiles/test-vectors.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/cmake_clean.cmake new file mode 100644 index 00000000..057dea6b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/test-vectors" + "ref-192000.s32" + "ref-44100.s32" + "ref-65537.s32" +) + +# Per-language clean rules from dependency scanning. +foreach(lang ) + include(CMakeFiles/test-vectors.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.make new file mode 100644 index 00000000..506f60ac --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty custom commands generated dependencies file for test-vectors. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.ts new file mode 100644 index 00000000..2a9622b8 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for custom commands dependencies management for test-vectors. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/progress.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/progress.make new file mode 100644 index 00000000..e6d9ab3a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/test-vectors.dir/progress.make @@ -0,0 +1,4 @@ +CMAKE_PROGRESS_1 = 20 +CMAKE_PROGRESS_2 = 21 +CMAKE_PROGRESS_3 = 22 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/DependInfo.cmake new file mode 100644 index 00000000..a9af00ef --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c" "tests/CMakeFiles/throughput.dir/throughput.c.o" "gcc" "tests/CMakeFiles/throughput.dir/throughput.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/build.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/build.make new file mode 100644 index 00000000..bf6154ed --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include tests/CMakeFiles/throughput.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include tests/CMakeFiles/throughput.dir/compiler_depend.make + +# Include the progress variables for this target. +include tests/CMakeFiles/throughput.dir/progress.make + +# Include the compile flags for this target's objects. +include tests/CMakeFiles/throughput.dir/flags.make + +tests/CMakeFiles/throughput.dir/codegen: +.PHONY : tests/CMakeFiles/throughput.dir/codegen + +tests/CMakeFiles/throughput.dir/throughput.c.o: tests/CMakeFiles/throughput.dir/flags.make +tests/CMakeFiles/throughput.dir/throughput.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c +tests/CMakeFiles/throughput.dir/throughput.c.o: tests/CMakeFiles/throughput.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object tests/CMakeFiles/throughput.dir/throughput.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT tests/CMakeFiles/throughput.dir/throughput.c.o -MF CMakeFiles/throughput.dir/throughput.c.o.d -o CMakeFiles/throughput.dir/throughput.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c + +tests/CMakeFiles/throughput.dir/throughput.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/throughput.dir/throughput.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c > CMakeFiles/throughput.dir/throughput.c.i + +tests/CMakeFiles/throughput.dir/throughput.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/throughput.dir/throughput.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c -o CMakeFiles/throughput.dir/throughput.c.s + +# Object files for target throughput +throughput_OBJECTS = \ +"CMakeFiles/throughput.dir/throughput.c.o" + +# External object files for target throughput +throughput_EXTERNAL_OBJECTS = + +tests/throughput: tests/CMakeFiles/throughput.dir/throughput.c.o +tests/throughput: tests/CMakeFiles/throughput.dir/build.make +tests/throughput: src/libsoxr.a +tests/throughput: tests/CMakeFiles/throughput.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable throughput" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/throughput.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +tests/CMakeFiles/throughput.dir/build: tests/throughput +.PHONY : tests/CMakeFiles/throughput.dir/build + +tests/CMakeFiles/throughput.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -P CMakeFiles/throughput.dir/cmake_clean.cmake +.PHONY : tests/CMakeFiles/throughput.dir/clean + +tests/CMakeFiles/throughput.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : tests/CMakeFiles/throughput.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/cmake_clean.cmake new file mode 100644 index 00000000..2b1cf24c --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/throughput.dir/throughput.c.o" + "CMakeFiles/throughput.dir/throughput.c.o.d" + "throughput" + "throughput.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/throughput.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.internal new file mode 100644 index 00000000..a8081fd5 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.internal @@ -0,0 +1,141 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/throughput.dir/throughput.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_select.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_clr.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_copy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_def.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_isset.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_setsize.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_zero.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_suseconds_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval64.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/time.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.make new file mode 100644 index 00000000..2cf84ef7 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.make @@ -0,0 +1,412 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/throughput.dir/throughput.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_select.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_clr.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_copy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_def.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_isset.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_setsize.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_zero.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_suseconds_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval64.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/time.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/soxr.h: + +soxr-config.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval64.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timespec.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_isset.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_time_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_clr.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/time.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_def.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_suseconds_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_clock_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_time.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_select.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_copy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_setsize.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/throughput.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_fd_zero.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/time.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.ts new file mode 100644 index 00000000..077edf01 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for throughput. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/depend.make new file mode 100644 index 00000000..82470b8c --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for throughput. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/flags.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/link.txt b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/link.txt new file mode 100644 index 00000000..791e51e5 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/throughput.dir/throughput.c.o -o throughput ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/progress.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/progress.make new file mode 100644 index 00000000..6c29f4fb --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/throughput.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 23 +CMAKE_PROGRESS_2 = 24 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake new file mode 100644 index 00000000..ddcd414b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c" "tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o" "gcc" "tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/build.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/build.make new file mode 100644 index 00000000..884a8983 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include tests/CMakeFiles/vector-cmp.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include tests/CMakeFiles/vector-cmp.dir/compiler_depend.make + +# Include the progress variables for this target. +include tests/CMakeFiles/vector-cmp.dir/progress.make + +# Include the compile flags for this target's objects. +include tests/CMakeFiles/vector-cmp.dir/flags.make + +tests/CMakeFiles/vector-cmp.dir/codegen: +.PHONY : tests/CMakeFiles/vector-cmp.dir/codegen + +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o: tests/CMakeFiles/vector-cmp.dir/flags.make +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o: tests/CMakeFiles/vector-cmp.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o -MF CMakeFiles/vector-cmp.dir/vector-cmp.c.o.d -o CMakeFiles/vector-cmp.dir/vector-cmp.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c + +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/vector-cmp.dir/vector-cmp.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c > CMakeFiles/vector-cmp.dir/vector-cmp.c.i + +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/vector-cmp.dir/vector-cmp.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c -o CMakeFiles/vector-cmp.dir/vector-cmp.c.s + +# Object files for target vector-cmp +vector__cmp_OBJECTS = \ +"CMakeFiles/vector-cmp.dir/vector-cmp.c.o" + +# External object files for target vector-cmp +vector__cmp_EXTERNAL_OBJECTS = + +tests/vector-cmp: tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o +tests/vector-cmp: tests/CMakeFiles/vector-cmp.dir/build.make +tests/vector-cmp: src/libsoxr.a +tests/vector-cmp: tests/CMakeFiles/vector-cmp.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable vector-cmp" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/vector-cmp.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +tests/CMakeFiles/vector-cmp.dir/build: tests/vector-cmp +.PHONY : tests/CMakeFiles/vector-cmp.dir/build + +tests/CMakeFiles/vector-cmp.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -P CMakeFiles/vector-cmp.dir/cmake_clean.cmake +.PHONY : tests/CMakeFiles/vector-cmp.dir/clean + +tests/CMakeFiles/vector-cmp.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : tests/CMakeFiles/vector-cmp.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/cmake_clean.cmake new file mode 100644 index 00000000..08829988 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/vector-cmp.dir/vector-cmp.c.o" + "CMakeFiles/vector-cmp.dir/vector-cmp.c.o.d" + "vector-cmp" + "vector-cmp.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/vector-cmp.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.internal new file mode 100644 index 00000000..ab07bc3d --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.internal @@ -0,0 +1,124 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.make new file mode 100644 index 00000000..a6e89cd8 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.make @@ -0,0 +1,361 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h: + +soxr-config.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stddef.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_wchar_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_size_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_rsize_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_ptrdiff_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_offsetof.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_null.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_header_macro.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stddef.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rsize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_string.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/__stddef_max_align_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/examples/examples-common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_errno_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_strings.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/errno.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-cmp.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_static_assert.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.ts new file mode 100644 index 00000000..2394ebec --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for vector-cmp. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/depend.make new file mode 100644 index 00000000..c31a1110 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for vector-cmp. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/flags.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/link.txt b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/link.txt new file mode 100644 index 00000000..cae696ed --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names "CMakeFiles/vector-cmp.dir/vector-cmp.c.o" -o vector-cmp ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/progress.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/progress.make new file mode 100644 index 00000000..9fd0bf53 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-cmp.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 25 +CMAKE_PROGRESS_2 = 26 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/DependInfo.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/DependInfo.cmake new file mode 100644 index 00000000..1c0cbcac --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/DependInfo.cmake @@ -0,0 +1,23 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c" "tests/CMakeFiles/vector-gen.dir/vector-gen.c.o" "gcc" "tests/CMakeFiles/vector-gen.dir/vector-gen.c.o.d" + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES + ) + +# Targets to which this target links which contain Fortran sources. +set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/build.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/build.make new file mode 100644 index 00000000..b9902d1f --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +# Include any dependencies generated for this target. +include tests/CMakeFiles/vector-gen.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include tests/CMakeFiles/vector-gen.dir/compiler_depend.make + +# Include the progress variables for this target. +include tests/CMakeFiles/vector-gen.dir/progress.make + +# Include the compile flags for this target's objects. +include tests/CMakeFiles/vector-gen.dir/flags.make + +tests/CMakeFiles/vector-gen.dir/codegen: +.PHONY : tests/CMakeFiles/vector-gen.dir/codegen + +tests/CMakeFiles/vector-gen.dir/vector-gen.c.o: tests/CMakeFiles/vector-gen.dir/flags.make +tests/CMakeFiles/vector-gen.dir/vector-gen.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c +tests/CMakeFiles/vector-gen.dir/vector-gen.c.o: tests/CMakeFiles/vector-gen.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object tests/CMakeFiles/vector-gen.dir/vector-gen.c.o" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT tests/CMakeFiles/vector-gen.dir/vector-gen.c.o -MF CMakeFiles/vector-gen.dir/vector-gen.c.o.d -o CMakeFiles/vector-gen.dir/vector-gen.c.o -c /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c + +tests/CMakeFiles/vector-gen.dir/vector-gen.c.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/vector-gen.dir/vector-gen.c.i" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c > CMakeFiles/vector-gen.dir/vector-gen.c.i + +tests/CMakeFiles/vector-gen.dir/vector-gen.c.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/vector-gen.dir/vector-gen.c.s" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c -o CMakeFiles/vector-gen.dir/vector-gen.c.s + +# Object files for target vector-gen +vector__gen_OBJECTS = \ +"CMakeFiles/vector-gen.dir/vector-gen.c.o" + +# External object files for target vector-gen +vector__gen_EXTERNAL_OBJECTS = + +tests/vector-gen: tests/CMakeFiles/vector-gen.dir/vector-gen.c.o +tests/vector-gen: tests/CMakeFiles/vector-gen.dir/build.make +tests/vector-gen: src/libsoxr.a +tests/vector-gen: tests/CMakeFiles/vector-gen.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable vector-gen" + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/vector-gen.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +tests/CMakeFiles/vector-gen.dir/build: tests/vector-gen +.PHONY : tests/CMakeFiles/vector-gen.dir/build + +tests/CMakeFiles/vector-gen.dir/clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests && $(CMAKE_COMMAND) -P CMakeFiles/vector-gen.dir/cmake_clean.cmake +.PHONY : tests/CMakeFiles/vector-gen.dir/clean + +tests/CMakeFiles/vector-gen.dir/depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/DependInfo.cmake "--color=$(COLOR)" +.PHONY : tests/CMakeFiles/vector-gen.dir/depend + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/cmake_clean.cmake b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/cmake_clean.cmake new file mode 100644 index 00000000..27555a3b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "CMakeFiles/vector-gen.dir/vector-gen.c.o" + "CMakeFiles/vector-gen.dir/vector-gen.c.o.d" + "vector-gen" + "vector-gen.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang C) + include(CMakeFiles/vector-gen.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.internal b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.internal new file mode 100644 index 00000000..dcd1a113 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.internal @@ -0,0 +1,103 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/vector-gen.dir/vector-gen.c.o + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/soxr-config.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.make new file mode 100644 index 00000000..d659967b --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.make @@ -0,0 +1,298 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +tests/CMakeFiles/vector-gen.dir/vector-gen.c.o: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h \ + /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h \ + /Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h \ + soxr-config.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h \ + /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h + + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/std-types.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/math-wrap.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdbool.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/resource.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/appleapiopts.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_ctermid.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_wchar_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uintptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint8_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_uid_t.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int8_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src/rint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_timeval.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigaltstack.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_pid_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_null.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_bounds.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ct_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_posix_availability.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_symbol_aliasing.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_id_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_attr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ssize_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/__endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_common.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/math.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc_type.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_intptr_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/signal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/arm/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/wait.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_ptrcheck.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/mach/machine/_structs.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libkern/arm/_OSByteOrder.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/malloc/_malloc.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_rune_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/alloca.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_abort.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_u_int64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_off_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uintmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternalLegacy.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_int32_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_va_list.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/endian.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_uint16_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_seek_set.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_types/_intmax_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_sigset_t.h: + +/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/vector-gen.c: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityInternal.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdint.h: + +/Library/Developer/CommandLineTools/usr/lib/clang/17/include/stdint.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_mode_t.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_printf.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_dev_t.h: + +soxr-config.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/AvailabilityVersions.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/arm/_mcontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_types/_ucontext.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/machine/limits.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/_pthread/_pthread_types.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdlib.h: + +/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/Availability.h: diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.ts b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.ts new file mode 100644 index 00000000..92626cb2 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for vector-gen. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/depend.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/depend.make new file mode 100644 index 00000000..22caba44 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for vector-gen. +# This may be replaced when dependencies are built. diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/flags.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/flags.make new file mode 100644 index 00000000..3fdbb651 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/flags.make @@ -0,0 +1,12 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# compile C with /usr/bin/cc +C_DEFINES = + +C_INCLUDES = -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release -I/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/src + +C_FLAGSarm64 = -O3 -DNDEBUG -arch arm64 + +C_FLAGS = -O3 -DNDEBUG -arch arm64 + diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/link.txt b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/link.txt new file mode 100644 index 00000000..01340b56 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/cc -O3 -DNDEBUG -arch arm64 -Wl,-search_paths_first -Wl,-headerpad_max_install_names "CMakeFiles/vector-gen.dir/vector-gen.c.o" -o vector-gen ../src/libsoxr.a -lm diff --git a/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/progress.make b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/progress.make new file mode 100644 index 00000000..8791cb65 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CMakeFiles/vector-gen.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 27 +CMAKE_PROGRESS_2 = 28 + diff --git a/C/src/soxr-0.1.3/Release/tests/CTestTestfile.cmake b/C/src/soxr-0.1.3/Release/tests/CTestTestfile.cmake new file mode 100644 index 00000000..578c1b56 --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/CTestTestfile.cmake @@ -0,0 +1,24 @@ +# CMake generated Testfile for +# Source directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests +# Build directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests +# +# This file includes the relevant testing commands required for +# testing this directory and lists subdirectories to be tested as well. +add_test(20-bit-perfect-44100-192000 "/opt/homebrew/bin/cmake" "-Dbits=20" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=192000" "-Dirate=44100" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(20-bit-perfect-44100-192000 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;53;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(20-bit-perfect-192000-44100 "/opt/homebrew/bin/cmake" "-Dbits=20" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=44100" "-Dirate=192000" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(20-bit-perfect-192000-44100 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;54;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(20-bit-perfect-44100-65537 "/opt/homebrew/bin/cmake" "-Dbits=20" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=65537" "-Dirate=44100" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(20-bit-perfect-44100-65537 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;53;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(20-bit-perfect-65537-44100 "/opt/homebrew/bin/cmake" "-Dbits=20" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=44100" "-Dirate=65537" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(20-bit-perfect-65537-44100 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;54;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(28-bit-perfect-44100-192000 "/opt/homebrew/bin/cmake" "-Dbits=28" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=192000" "-Dirate=44100" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(28-bit-perfect-44100-192000 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;53;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(28-bit-perfect-192000-44100 "/opt/homebrew/bin/cmake" "-Dbits=28" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=44100" "-Dirate=192000" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(28-bit-perfect-192000-44100 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;54;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(28-bit-perfect-44100-65537 "/opt/homebrew/bin/cmake" "-Dbits=28" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=65537" "-Dirate=44100" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(28-bit-perfect-44100-65537 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;53;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(28-bit-perfect-65537-44100 "/opt/homebrew/bin/cmake" "-Dbits=28" "-DBIN=./" "-DEXAMPLES_BIN=../examples/" "-DlenToSkip=1" "-Dorate=44100" "-Dirate=65537" "-Dlen=16" "-P" "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/cmp-test.cmake") +set_tests_properties(28-bit-perfect-65537-44100 PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;32;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;54;add_cmp_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") +add_test(1-delay-clear "./1-delay-clear") +set_tests_properties(1-delay-clear PROPERTIES _BACKTRACE_TRIPLES "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;62;add_test;/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests/CMakeLists.txt;0;") diff --git a/C/src/soxr-0.1.3/Release/tests/Makefile b/C/src/soxr-0.1.3/Release/tests/Makefile new file mode 100644 index 00000000..48d24ffd --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/Makefile @@ -0,0 +1,405 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 4.1 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /opt/homebrew/bin/cmake + +# The command to remove a file. +RM = /opt/homebrew/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3 + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..." + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && /opt/homebrew/bin/cpack --config ./CPackSourceConfig.cmake /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target test +test: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running tests..." + /opt/homebrew/bin/ctest $(ARGS) +.PHONY : test + +# Special rule for the target test +test/fast: test +.PHONY : test/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..." + /opt/homebrew/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..." + /opt/homebrew/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..." + /opt/homebrew/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..." + /opt/homebrew/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# The main all target +all: cmake_check_build_system + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests//CMakeFiles/progress.marks + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/all + $(CMAKE_COMMAND) -E cmake_progress_start /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +tests/CMakeFiles/1-delay-clear.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/1-delay-clear.dir/rule +.PHONY : tests/CMakeFiles/1-delay-clear.dir/rule + +# Convenience name for target. +1-delay-clear: tests/CMakeFiles/1-delay-clear.dir/rule +.PHONY : 1-delay-clear + +# fast build rule for target. +1-delay-clear/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/build +.PHONY : 1-delay-clear/fast + +# Convenience name for target. +tests/CMakeFiles/throughput.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/throughput.dir/rule +.PHONY : tests/CMakeFiles/throughput.dir/rule + +# Convenience name for target. +throughput: tests/CMakeFiles/throughput.dir/rule +.PHONY : throughput + +# fast build rule for target. +throughput/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/build +.PHONY : throughput/fast + +# Convenience name for target. +tests/CMakeFiles/vector-cmp.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/vector-cmp.dir/rule +.PHONY : tests/CMakeFiles/vector-cmp.dir/rule + +# Convenience name for target. +vector-cmp: tests/CMakeFiles/vector-cmp.dir/rule +.PHONY : vector-cmp + +# fast build rule for target. +vector-cmp/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/build +.PHONY : vector-cmp/fast + +# Convenience name for target. +tests/CMakeFiles/vector-gen.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/vector-gen.dir/rule +.PHONY : tests/CMakeFiles/vector-gen.dir/rule + +# Convenience name for target. +vector-gen: tests/CMakeFiles/vector-gen.dir/rule +.PHONY : vector-gen + +# fast build rule for target. +vector-gen/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/build +.PHONY : vector-gen/fast + +# Convenience name for target. +tests/CMakeFiles/test-vectors.dir/rule: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 tests/CMakeFiles/test-vectors.dir/rule +.PHONY : tests/CMakeFiles/test-vectors.dir/rule + +# Convenience name for target. +test-vectors: tests/CMakeFiles/test-vectors.dir/rule +.PHONY : test-vectors + +# fast build rule for target. +test-vectors/fast: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/test-vectors.dir/build.make tests/CMakeFiles/test-vectors.dir/build +.PHONY : test-vectors/fast + +1-delay-clear.o: 1-delay-clear.c.o +.PHONY : 1-delay-clear.o + +# target to build an object file +1-delay-clear.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.o +.PHONY : 1-delay-clear.c.o + +1-delay-clear.i: 1-delay-clear.c.i +.PHONY : 1-delay-clear.i + +# target to preprocess a source file +1-delay-clear.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.i +.PHONY : 1-delay-clear.c.i + +1-delay-clear.s: 1-delay-clear.c.s +.PHONY : 1-delay-clear.s + +# target to generate assembly for a file +1-delay-clear.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/1-delay-clear.dir/build.make tests/CMakeFiles/1-delay-clear.dir/1-delay-clear.c.s +.PHONY : 1-delay-clear.c.s + +throughput.o: throughput.c.o +.PHONY : throughput.o + +# target to build an object file +throughput.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/throughput.c.o +.PHONY : throughput.c.o + +throughput.i: throughput.c.i +.PHONY : throughput.i + +# target to preprocess a source file +throughput.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/throughput.c.i +.PHONY : throughput.c.i + +throughput.s: throughput.c.s +.PHONY : throughput.s + +# target to generate assembly for a file +throughput.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/throughput.dir/build.make tests/CMakeFiles/throughput.dir/throughput.c.s +.PHONY : throughput.c.s + +vector-cmp.o: vector-cmp.c.o +.PHONY : vector-cmp.o + +# target to build an object file +vector-cmp.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.o +.PHONY : vector-cmp.c.o + +vector-cmp.i: vector-cmp.c.i +.PHONY : vector-cmp.i + +# target to preprocess a source file +vector-cmp.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.i +.PHONY : vector-cmp.c.i + +vector-cmp.s: vector-cmp.c.s +.PHONY : vector-cmp.s + +# target to generate assembly for a file +vector-cmp.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-cmp.dir/build.make tests/CMakeFiles/vector-cmp.dir/vector-cmp.c.s +.PHONY : vector-cmp.c.s + +vector-gen.o: vector-gen.c.o +.PHONY : vector-gen.o + +# target to build an object file +vector-gen.c.o: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/vector-gen.c.o +.PHONY : vector-gen.c.o + +vector-gen.i: vector-gen.c.i +.PHONY : vector-gen.i + +# target to preprocess a source file +vector-gen.c.i: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/vector-gen.c.i +.PHONY : vector-gen.c.i + +vector-gen.s: vector-gen.c.s +.PHONY : vector-gen.s + +# target to generate assembly for a file +vector-gen.c.s: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(MAKE) $(MAKESILENT) -f tests/CMakeFiles/vector-gen.dir/build.make tests/CMakeFiles/vector-gen.dir/vector-gen.c.s +.PHONY : vector-gen.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... test" + @echo "... test-vectors" + @echo "... 1-delay-clear" + @echo "... throughput" + @echo "... vector-cmp" + @echo "... vector-gen" + @echo "... 1-delay-clear.o" + @echo "... 1-delay-clear.i" + @echo "... 1-delay-clear.s" + @echo "... throughput.o" + @echo "... throughput.i" + @echo "... throughput.s" + @echo "... vector-cmp.o" + @echo "... vector-cmp.i" + @echo "... vector-cmp.s" + @echo "... vector-gen.o" + @echo "... vector-gen.i" + @echo "... vector-gen.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/C/src/soxr-0.1.3/Release/tests/cmake_install.cmake b/C/src/soxr-0.1.3/Release/tests/cmake_install.cmake new file mode 100644 index 00000000..8ad78b0a --- /dev/null +++ b/C/src/soxr-0.1.3/Release/tests/cmake_install.cmake @@ -0,0 +1,45 @@ +# Install script for directory: /Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/tests + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set path to fallback-tool for dependency-resolution. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +if(CMAKE_INSTALL_LOCAL_ONLY) + file(WRITE "/Users/coissac/Sync/maison/Petite_maisons/src/pmomusic/C/src/soxr-0.1.3/Release/tests/install_local_manifest.txt" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") +endif() diff --git a/C/src/soxr-0.1.3/Release/tests/throughput b/C/src/soxr-0.1.3/Release/tests/throughput new file mode 100755 index 0000000000000000000000000000000000000000..6f7de4bf5ffc38bee844da3cba10d67b8a1ffd7b GIT binary patch literal 207048 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 APXGV_ literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/tests/vector-cmp b/C/src/soxr-0.1.3/Release/tests/vector-cmp new file mode 100755 index 0000000000000000000000000000000000000000..d40d2596416f2f63673151cdc7cfe8dc49d11855 GIT binary patch literal 33720 zcmeI5e{54#6vyxD+gLY{6`1>h+7(e4P6iP~7E#_{lT8RCFv29p+pX)mvaa2_PKJP# zUoxV`4GC%tf`1t8P(xsU;2*}J(To_vk0}1YU&j21|$>Xem_6WkrihR+lUh?RCZcq4WJdn$H@oCqG`| zb5mT(7VlcOw??|XwLaY+n(sz5Uu852`H4BAReC||@FrBs;-ZQoxv+fc3S(+obQ7S| zC81OiB&D^oK&5o~;+A39d>Y#7q8a_8o)`rqWza!+Yo9GCTe`TUxNH!3FkxKqNsiE9 zAT%C*|LC3&vxNxK_-K_6qL>x+55k`bpV(wWd*KuMp3OoKyV1~P(0HM?q}W2kN*ns8 z-=TIaVm2u4iy1A={uv&3^^BTzo*MWh_dsbJCuT>UIny)mK-aV#?;YQEa`7XG*`Nwk z&zzjD+xm2qUrTxjQGI@Ty%2erALXHa9xrs=xlpPz_QN9l87a5Mg7K_a*Bo#*6f7vf zxZKr7?iB&ds@^dUL^NHsou5)`^Xq1g;|&Y6Zjtz82Catb#b!N(C0FRZb&tB zZB5wU5^#EwEF`&eS4)*do<#HQVe~#p1D=EE}u~msD9r zp2M0gTCF10t=ARlu_~(>F>{M`Mb<{`^{{$(=Xo`&^L`Or?na&;R53fOX2xQ;Pw&o6 z5l!{Uq9O}za-iW^qGK~k>T?18E74|ulIRLgj*n+{E=N49imr>3i>8^C)Oz#Ew$%eB zbN%(t+a?yKh;g}UPW`+60~NS8XV5hkn})x}eB=r$qN_Ju`y^KpO?S#wb#tHsH}?!0 zBaL;wnq7Y$Im0H0buRk%KC$C;>Cc~CF75g9a?fAaFDr`c9gz(l=HAm}oAauyy{hQP z_H7qE`5gu5v(GA;Mk9xPq87n8cZ*4O>y=geCgQo0foD#;Sd`? zs!<80|My5V{rA=nJ&(sAi$%|bC$%DyZq>5I1egF5U;<2l2`~XBzyz286JP>NfC(@G zCcp%k025#WOn?b60Vco%m;e)C0!)AjFaajO1egF5U;<2l2`~XBzyz286JP>NfC(@G zCcp%k02BDH2w3on8HpuG?>|v#yk2by8ZR|jg7gkP#p%6mDx>di2X&W!m;e)C0!)Aj zFaajO1egF5U;<2l2`~XBzyz286JP>NfC(@GCcp%k025#WOn?b60Vco%m;e)C0!)Aj zFaajO1egF5U;<2l2`~XBzyz286JP>NfC(@GCcp%k025#WOn?b6fe{n1A;U6gBb1I2 zH@*b`0}_9zDb96`iEeB78h{oH>HQRZKtMsI@&FWvnJcJQmO`I{)}gJGvN=%W^!poy ztP1#Qg{<{8I=v|T&Z-&|%}!@MinV@sz$v81=Mu8f@Ad|2jSDGKj3U6XOoU#r{oPLqoQ04ZDyM*3guz9+I))1OsCKPA3>Sw)@PiMfQBvY5E_>K3c zC-^vLen|b}3I2iv|LFw3Ji({$Ef8z^&H{a7fxfRmYmo{yraF8*ng|=f-i|@)7)FA; z@7$Pf%=8UhVvtP+VzkOzg$W}z>BDoNz7k4;A#btSOgJ9*Ux}$W+Dv&KXZ8C0(;W?s z;_F|1dEA;DQA!EI+=H%p!34vk2ZaHsM7b<#oF$q?@pbn zHVKYh7$=fm%hv|cTr*?4^Knypz^Kc0Hz#i^`XHDzndF1?sG-7{g{x3BCya(1KEJ?Wd)?mvDz_O@%!FXC@mwJ84p literal 0 HcmV?d00001 diff --git a/C/src/soxr-0.1.3/Release/tests/vector-gen b/C/src/soxr-0.1.3/Release/tests/vector-gen new file mode 100755 index 0000000000000000000000000000000000000000..4ff1b35d38b11e80147f34704c309b57ee77fa0d GIT binary patch literal 33592 zcmeI5Yitx%6vyxEZrg2X>4H$8=yahs*h#N6#;+ivOZYP*FZ zjZ8I-Eqt&wn?Pce1{1Um_zH@AFfPIPL1M5ZKH>*M#F!G(5Rs5SZ9*5LW*5d@d`W*Gj^EY7VPQHM|Z-Nu?|=^_0qu)!TL@R>QDv z0&10{v|KMMV|9^A*%(e*hCj_$L}Qg0iTRc%(#ha;osg;fY-`oF$12LJChie4r7rSW zN-Tg}kG0e)zFG*A>*H1Kp=Ook_mE#qKC_um8Y4f0T5p#S2DLLtx05Cdk7Z4+Gr6Db zVw#__glfo4I=V^uzF5)T*1Do4P`jdje@i|2EDK4wj@2)l?zv*Ee!Od}@bh=_PCY^~ zH>pM{L@u2?SJ~=v(_V5sNKtits$U4=YjPgG&y$7ETSCfxd<{ZuqRY^xYN2{|?Qe_t zgUid7Q(b{tHApO>hVy@D3c)FtT0Zk)xsR0l2k5$wCW_=R1O!0fe@NiA-8Ot}ofaHj zWefiFkUe;{&=I`3J8kerb^74=fsDcN^IHE6yEgQTT@1M$M%*hz)M@y1Gs}oSLG}!` zXBzRHWM{EG+lbRojA$m?c}9FI**R?I8}TZ#v&jziHtD8r#Od+Vx2U+Nzmno#Y90E3 ztyYgM^63tzF*Y*qSiX@iJievPy5?%pMVe8NCpz?xZFzeRr3udss%KzLK-V&x^+iQB zde;0JUAUgp#rziCxqjr5rZv7MD1JE8r#oNozSPq*biHZAC)bPYBiFO3FNbo@bakq8 zYWHs`a65f8w@JTTDEjG{92L$Mot~XhAJ2FD^mC5~bkJ@2QBSzPOk@!Ot*Ht~#@dn|waz$W5aIe2q-#o*P#a^k&_ zxR(X5tt$=EI`qfv@~dKE;<6cWVJk@3=}9&*pNtdpNt>9ny^r1j{7Apox{s4veuwZo z#^9Eee+RJ`>Ns`a_f$4zaj8u7&d(K&sa{wh00JNY0w4eaAOHd&00JNY0w4eaAOHd& z00JNY0w4eaAOHd&00JNY0w4eaAOHd&00JNY0w4eaAOHd&00JNY0w4eaAOHd&00JNY z0{@PH%S?RA>oWN}FZ#mQOnhGLGOdrdOcllf1V8`;KmY_l00ck)1V8`;KmY_l00ck) z1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`;KmY_l00ck)1V8`; zKmY_l00ck)1V8`;KmY_l;6Eearp(((d2e#w>pbya0A!FPZ{Es#iBE{KX@lM54Pbem zMt>ln(dOqGZ62#FBQ2qztciphglq^u?GI72uQd?y3mFX8Q?M-%QaLp#X0yS6KwuX! z+GE@%gH6)k;je3t_+^v7rrzHwGJ`cVK8N;irvWTHJXcFNeEvM;Q(3fEE&IHOEwyYa zSxm=dpZ7OU_E)C(kEZyE@)BH_74KtzrhyKg?^P3opq+WU2HZBa^}H4Ot48aydbPd&x=6V7;YM1dr}pl6x7bzL zTiLU_{lyR7d|*x5+Vs{lt2q&Th+bbP|2C)v2!QB`Tni-C(d1}sp`Jl{C_w9 oym|B0Bkq+KuH+xTxa5c9WqaP + int main(int c, char * * v) { + float32x4_t a = vdupq_n_f32((float)c), b = vdupq_n_f32((float)!!v); + return !vgetq_lane_u32(vceqq_f32(a,b),0); + } + ") +else () + if (WIN32) # Safety for when mixed lib/app compilers (but performance hit) + set (GCC_WIN32_SIMD32_OPTS "-mincoming-stack-boundary=2") + endif () + + set (TRIAL_C_FLAGS + # x64 + " " + # MSVC x86 + "/arch:SSE /fp:fast -D__SSE__" + # Gcc x86 + "-msse -mfpmath=sse ${GCC_WIN32_SIMD32_OPTS}" + # Gcc x86 (old versions) + "-msse -mfpmath=sse" + ) + set (TEST_C_SOURCE " + #include + int main(int c, char * * v) { + __m128 a = _mm_set_ss((float)c), b = _mm_set_ss((float)!!v); + return _mm_comineq_ss(a,b); + } + ") +endif () + +include (FindCFlags) + +FindCFlags ("SIMD32" "FLOAT-32 (single-precision) SIMD vectorization" + "${TRIAL_C_FLAGS}" "${TEST_C_SOURCE}") diff --git a/C/src/soxr-0.1.3/cmake/Modules/FindSIMD64.cmake b/C/src/soxr-0.1.3/cmake/Modules/FindSIMD64.cmake new file mode 100644 index 00000000..d4126443 --- /dev/null +++ b/C/src/soxr-0.1.3/cmake/Modules/FindSIMD64.cmake @@ -0,0 +1,29 @@ +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# - Finds SIMD64 support +# +# The following variables are set: +# SIMD64_C_FLAGS - flags to add to the C compiler for this package. +# SIMD64_FOUND - true if support for this package is found. + +if (DEFINED SIMD64_C_FLAGS OR CMAKE_SYSTEM_PROCESSOR MATCHES "^arm") + set (TRIAL_C_FLAGS) +else () + set (TRIAL_C_FLAGS + "-mavx" # Gcc + "/arch:AVX" # MSVC + ) + set (TEST_C_SOURCE " + #ifndef __AVX__ + #error + #endif + #include + int main() {return 0;} + ") +endif () + +include (FindCFlags) + +FindCFlags ("SIMD64" "FLOAT-64 (double-precision) SIMD vectorization" + "${TRIAL_C_FLAGS}" "${TEST_C_SOURCE}") diff --git a/C/src/soxr-0.1.3/cmake/Modules/SetSystemProcessor.cmake b/C/src/soxr-0.1.3/cmake/Modules/SetSystemProcessor.cmake new file mode 100644 index 00000000..8e2c2921 --- /dev/null +++ b/C/src/soxr-0.1.3/cmake/Modules/SetSystemProcessor.cmake @@ -0,0 +1,37 @@ +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Sets CMAKE_SYSTEM_PROCESSOR for cross-compiling. + +macro (set_system_processor) + if (CMAKE_CROSSCOMPILING) + if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "" OR "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "unknown") + unset(CMAKE_SYSTEM_PROCESSOR) + endif () + if (NOT DEFINED CMAKE_SYSTEM_PROCESSOR) + include (CheckCSourceCompiles) + set (CPU_LINES + "#if defined __x86_64__ || defined _M_X64 /*\;x86_64\;*/" + "#if defined __i386__ || defined _M_IX86 /*\;x86_32\;*/" + "#if defined __arm__ || defined _M_ARM /*\;arm\;*/" + ) + foreach (CPU_LINE ${CPU_LINES}) + string (CONCAT CPU_SOURCE "${CPU_LINE}" " + int main() {return 0;} + #endif + ") + unset (SYSTEM_PROCESSOR_DETECTED CACHE) + check_c_source_compiles ("${CPU_SOURCE}" SYSTEM_PROCESSOR_DETECTED) + if (SYSTEM_PROCESSOR_DETECTED) + list (GET CPU_LINE 1 CMAKE_SYSTEM_PROCESSOR) + message (STATUS "CMAKE_SYSTEM_PROCESSOR is ${CMAKE_SYSTEM_PROCESSOR}") + break () + endif () + endforeach () + endif () + + # N.B. Will not overwrite existing cache variable: + set (CMAKE_SYSTEM_PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}" + CACHE STRING "Target system processor") + endif () +endmacro () diff --git a/C/src/soxr-0.1.3/deinstall.cmake.in b/C/src/soxr-0.1.3/deinstall.cmake.in new file mode 100644 index 00000000..307be501 --- /dev/null +++ b/C/src/soxr-0.1.3/deinstall.cmake.in @@ -0,0 +1,25 @@ +# SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + message (FATAL_ERROR "Cannot find install manifest") +endif () + +file (READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) +string (REGEX REPLACE "\n" ";" files "${files}") +foreach (file ${files}) + set (dest "$ENV{DESTDIR}${file}") + message (STATUS "Deinstalling \"${dest}\"") + if (EXISTS "${dest}" OR IS_SYMLINK "${dest}") + execute_process ( + COMMAND "@CMAKE_COMMAND@" -E remove "${dest}" + OUTPUT_VARIABLE rm_out + RESULT_VARIABLE rm_retval + ) + if (NOT ${rm_retval} EQUAL 0) + message (FATAL_ERROR "Problem when removing \"${dest}\"") + endif () + else () + message (STATUS "File \"${dest}\" does not exist.") + endif () +endforeach () diff --git a/C/src/soxr-0.1.3/examples/1-single-block.c b/C/src/soxr-0.1.3/examples/1-single-block.c new file mode 100644 index 00000000..3b919b45 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/1-single-block.c @@ -0,0 +1,50 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 1: `One-shot' resample a single block of data in memory. + * + * N.B. See example 2 for how to resample a stream (of blocks). + * + * Optional arguments are: INPUT-RATE OUTPUT-RATE + * + * With the default arguments, the output should produce lines similar to the + * following: + * + * 0.00 0.71 1.00 0.71 -0.00 -0.71 -1.00 -0.71 + * + * Gibbs effect may be seen at the ends of the resampled signal; this is because + * unlike a `real-world' signal, the synthetic input signal is not band-limited. + */ + +#include +#include "examples-common.h" + +const float in[] = { /* Input: 12 cycles of a sine wave with freq. = irate/4 */ + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1}; + +int main(int argc, char const * arg[]) +{ + double irate = argc > 1? atof(arg[1]) : 1; /* Default to interpolation */ + double orate = argc > 2? atof(arg[2]) : 2; /* by a factor of 2. */ + + size_t olen = (size_t)(AL(in) * orate / irate + .5); /* Assay output len. */ + float * out = malloc(sizeof(*out) * olen); /* Allocate output buffer. */ + size_t odone; + + soxr_error_t error = soxr_oneshot(irate, orate, 1, /* Rates and # of chans. */ + in, AL(in), NULL, /* Input. */ + out, olen, &odone, /* Output. */ + NULL, NULL, NULL); /* Default configuration.*/ + + unsigned i = 0; /* Print out the resampled data, */ + while (i++ < odone) + printf("%5.2f%c", out[i-1], " \n"[!(i&7) || i == odone]); + printf("%-26s %s\n", arg[0], soxr_strerror(error)); /* and reported result. */ + + if (argc > 3) /* Library version check: */ + printf("runtime=%s API="SOXR_THIS_VERSION_STR"\n", soxr_version()); + + free(out); /* Tidy up. */ + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/1a-lsr.c b/C/src/soxr-0.1.3/examples/1a-lsr.c new file mode 100644 index 00000000..6b50a8f5 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/1a-lsr.c @@ -0,0 +1,40 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 1a: Variant of example 1 using libsamplerate-like bindings. */ + +#include +#include "examples-common.h" + +float in[] = { /* Input: 12 cycles of a sine wave with freq. = irate/4 */ + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, + 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1, 0,1,0,-1}; + +int main(int argc, char const * arg[]) +{ + double irate = argc > 1? atof(arg[1]) : 1; /* Default to interpolation */ + double orate = argc > 2? atof(arg[2]) : 2; /* by a factor of 2. */ + + size_t olen = (size_t)(AL(in) * orate / irate + .5); /* Assay output len. */ + float * out = (float *)malloc(sizeof(*out) * olen); /* Allocate output buf. */ + + int error, i = 0; + SRC_DATA data; + + data.data_in = in; + data.data_out = out; + data.input_frames = AL(in); + data.output_frames = (int)olen; + data.src_ratio = orate / irate; + error = src_simple(&data, SRC_SINC_FASTEST, 1); + + while (i++ < data.output_frames_gen) /* Print out the resampled data, */ + printf("%5.2f%c", out[i-1], " \n"[!(i&7) || i == data.output_frames_gen]); + printf("%-26s %s\n", arg[0], src_strerror(error)); /* and reported result. */ + + if (argc > 3) /* Library version check: */ + printf("runtime=%s\n", src_get_version()); + + free(out); /* Tidy up. */ + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/2-stream.C b/C/src/soxr-0.1.3/examples/2-stream.C new file mode 100644 index 00000000..29c1bf62 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/2-stream.C @@ -0,0 +1,78 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 2: resample a raw, single-channel, floating-point data stream from + * stdin to stdout. + * + * The application uses the single function `soxr_process' for both input and + * output to/from the resampler; compared to the `input function' approach + * (illustrated in example 3) this requires that the application implements + * more logic, but one less function. + * + * Arguments are: INPUT-RATE OUTPUT-RATE + */ + +#include +#include "examples-common.h" + +int main(int argc, char const * arg[]) +{ + double const irate = argc > 1? atof(arg[1]) : 96000.; + double const orate = argc > 2? atof(arg[2]) : 44100.; + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples. */ + size_t const olen = (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const ilen = buf_total_len - olen; + size_t const osize = sizeof(float), isize = osize; + void * obuf = malloc(osize * olen); + void * ibuf = malloc(isize * ilen); + + size_t odone, written, need_input = 1; + soxr_error_t error; + + /* Create a stream resampler: */ + soxr_t soxr = soxr_create( + irate, orate, 1, /* Input rate, output rate, # of channels. */ + &error, /* To report any error during creation. */ + NULL, NULL, NULL); /* Use configuration defaults.*/ + + if (!error) { /* If all is well, run the resampler: */ + USE_STD_STDIO; + /* Resample in blocks: */ + do { + size_t ilen1 = 0; + + if (need_input) { + + /* Read one block into the buffer, ready to be resampled: */ + ilen1 = fread(ibuf, isize, ilen, stdin); + + if (!ilen1) { /* If the is no (more) input data available, */ + free(ibuf); /* set ibuf to NULL, to indicate end-of-input */ + ibuf = NULL; /* to the resampler. */ + } + } + + /* Copy data from the input buffer into the resampler, and resample + * to produce as much output as is possible to the given output buffer: */ + error = soxr_process(soxr, ibuf, ilen1, NULL, obuf, olen, &odone); + + written = fwrite(obuf, osize, odone, stdout); /* Consume output.*/ + + /* If the actual amount of data output is less than that requested, and + * we have not already reached the end of the input data, then supply some + * more input next time round the loop: */ + need_input = odone < olen && ibuf; + + } while (!error && (need_input || written)); + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; I/O: %s\n", arg[0], soxr_strerror(error), + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/3-options-input-fn.c b/C/src/soxr-0.1.3/examples/3-options-input-fn.c new file mode 100644 index 00000000..afd43b9f --- /dev/null +++ b/C/src/soxr-0.1.3/examples/3-options-input-fn.c @@ -0,0 +1,114 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 3: extends example 2 with multiple channels, multiple datatypes, + * and other options. + * + * The application provides an input function, called on demand by libsoxr, in + * response to calls to soxr_output(); compared to the `process' approach + * (illustrated in example 2) this requires that the application implements + * less logic, but one more function. + * + * The 11 arguments (which are optional, from last to first) are: + * INPUT-RATE As example 2 + * OUTPUT-RATE Ditto + * NUM-CHANNELS Number of interleaved channels + * IN-DATATYPE# 0:float32 1:float64 2:int32 3:int16 + * OUT-DATATYPE# Ditto; or 11 for un-dithered int16 + * Q-RECIPE Quality recipe (in hex) See soxr.h + * Q-FLAGS Quality flags (in hex) See soxr.h + * PASSBAND-END % + * STOPBAND-BEGIN % + * PHASE-RESPONSE [0,100] + * USE-THREADS 1 to use multi-threading (where available) + */ + +#include +#include "examples-common.h" + +typedef struct {void * ibuf; size_t isize;} input_context_t; + +static size_t input_fn(input_context_t * p, soxr_cbuf_t * buf, size_t len) +{ + /* Read one block into the buffer, ready to be input to the resampler: */ + len = fread(p->ibuf, p->isize, len, stdin); /* Actual len read may be less. */ + + /* Inform the resampler of the data's whereabouts (which could be anywhere, in + * a freshly malloc'd buffer, for example): */ + *buf = (!len && ferror(stdin))? NULL : p->ibuf; /* NULL if error occurred. */ + + return len; /* # of samples per channel to input. */ +} + +int main(int n, char const * arg[]) +{ + char const * const arg0 = n? --n, *arg++ : "", * engine = ""; + double const irate = n? --n, atof(*arg++) : 96000.; + double const orate = n? --n, atof(*arg++) : 44100.; + unsigned const chans = n? --n, (unsigned)atoi(*arg++) : 1; + soxr_datatype_t const itype = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned const ospec = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned long const q_recipe= n? --n, strtoul(*arg++, 0, 16) : SOXR_HQ; + unsigned long const q_flags = n? --n, strtoul(*arg++, 0, 16) : 0; + double const passband_end = n? --n, atof(*arg++) : 0; + double const stopband_begin = n? --n, atof(*arg++) : 0; + double const phase_response = n? --n, atof(*arg++) : -1; + int const use_threads = n? --n, atoi(*arg++) : 1; + soxr_datatype_t const otype = ospec & 3; + + soxr_quality_spec_t q_spec = soxr_quality_spec(q_recipe, q_flags); + soxr_io_spec_t io_spec = soxr_io_spec(itype, otype); + soxr_runtime_spec_t const runtime_spec = soxr_runtime_spec(!use_threads); + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples per channel. */ + size_t const osize = soxr_datatype_size(otype) * chans; + size_t const isize = soxr_datatype_size(itype) * chans; + size_t const olen0= (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const olen = min(max(olen0, 1), buf_total_len - 1); + size_t const ilen = buf_total_len - olen; + void * const obuf = malloc(osize * olen); + void * const ibuf = malloc(isize * ilen); + + input_context_t icontext; + size_t odone, clips = 0; + soxr_error_t error; + soxr_t soxr; + + /* Overrides (if given): */ + if (passband_end > 0) q_spec.passband_end = passband_end / 100; + if (stopband_begin > 0) q_spec.stopband_begin = stopband_begin / 100; + if (phase_response >=0) q_spec.phase_response = phase_response; + io_spec.flags = ospec & ~7u; + + /* Create a stream resampler: */ + soxr = soxr_create( + irate, orate, chans, /* Input rate, output rate, # of channels. */ + &error, /* To report any error during creation. */ + &io_spec, &q_spec, &runtime_spec); + + if (!error) { /* Register input_fn with the resampler: */ + icontext.ibuf = ibuf, icontext.isize = isize; + error = soxr_set_input_fn(soxr, (soxr_input_fn_t)input_fn, &icontext, ilen); + } + + if (!error) { /* If all is well, run the resampler: */ + engine = soxr_engine(soxr); + USE_STD_STDIO; + /* Resample in blocks: */ + do odone = soxr_output(soxr, obuf, olen); + while (fwrite(obuf, osize, odone, stdout)); /* Consume output. */ + + error = soxr_error(soxr); /* Check if any soxr error occurred. */ + clips = *soxr_num_clips(soxr); /* Can occur only with integer output. */ + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; %lu clips; I/O: %s (%s)\n", + arg0, soxr_strerror(error), (long unsigned)clips, + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error", engine); + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/4-split-channels.c b/C/src/soxr-0.1.3/examples/4-split-channels.c new file mode 100644 index 00000000..a9022ce0 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/4-split-channels.c @@ -0,0 +1,161 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 4: variant of examples 2 & 3, demonstrating I/O with split channels. + * + * Note that, for convenience of the demonstration, split-channel data is + * made available by deinterleaving data sourced from and sent to + * interleaved file-streams; this adds a lot of code to the example that, + * for purposes of understanding how to use split-channels, may safely be + * ignored. In a real application, the channel-data might never be + * interleaved; for example, the split-channel data output from the + * resampler might be sent directly to digital-to-analogue converters. + * + * Note also (not shown in the examples) that split/interleaved channels may + * be used for input and output independently. + * + * Arguments are as example 3. + */ + +#include +#include "examples-common.h" + + + +#define DEINTERLEAVE(T) do { \ + unsigned i; \ + size_t j; \ + T * const * dest = (T * const *)dest0; \ + T const * src = src0; \ + if (ch == 1) memcpy(dest[0], src, n * sizeof(dest[0][0])); \ + else for (j = 0; j < n; ++j) for (i = 0; i < ch; ++i) dest[i][j] = *src++; \ + return; \ +} while (0) + +static void deinterleave(soxr_datatype_t data_type, + void * const * dest0, + void const * src0, + size_t n, unsigned ch) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: DEINTERLEAVE(float); + case SOXR_FLOAT64: DEINTERLEAVE(double); + case SOXR_INT32 : DEINTERLEAVE(int32_t); + case SOXR_INT16 : DEINTERLEAVE(int16_t); + default: break; + } +} + +#define INTERLEAVE(T) do { \ + unsigned i; \ + size_t j; \ + T * dest = dest0; \ + T const * const * src = (T const * const *)src0; \ + if (ch == 1) memcpy(dest, src[0], n * sizeof(dest[0])); \ + else for (j = 0; j < n; ++j) for (i = 0; i < ch; ++i) *dest++ = src[i][j]; \ + return; \ +} while (0) + +static void interleave(soxr_datatype_t data_type, void * dest0, + void * const * src0, size_t n, unsigned ch) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: INTERLEAVE(float); + case SOXR_FLOAT64: INTERLEAVE(double); + case SOXR_INT32 : INTERLEAVE(int32_t); + case SOXR_INT16 : INTERLEAVE(int16_t); + default: break; + } +} + +int main(int n, char const * arg[]) +{ + char const * const arg0 = n? --n, *arg++ : ""; + double const irate = n? --n, atof(*arg++) : 96000.; + double const orate = n? --n, atof(*arg++) : 44100.; + unsigned const chans = n? --n, (unsigned)atoi(*arg++) : 1; + soxr_datatype_t const itype = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned const ospec = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned long const q_recipe= n? --n, strtoul(*arg++, 0, 16) : SOXR_HQ; + unsigned long const q_flags = n? --n, strtoul(*arg++, 0, 16) : 0; + double const passband_end = n? --n, atof(*arg++) : 0; + double const stopband_begin = n? --n, atof(*arg++) : 0; + double const phase_response = n? --n, atof(*arg++) : -1; + int const use_threads = n? --n, atoi(*arg++) : 1; + soxr_datatype_t const otype = ospec & 3; + + soxr_quality_spec_t q_spec = soxr_quality_spec(q_recipe, q_flags); + soxr_io_spec_t io_spec=soxr_io_spec(itype|SOXR_SPLIT, otype|SOXR_SPLIT); + soxr_runtime_spec_t const runtime_spec = soxr_runtime_spec(!use_threads); + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples per channel. */ + size_t const osize = soxr_datatype_size(otype) * chans; + size_t const isize = soxr_datatype_size(itype) * chans; + size_t const olen = (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const ilen = buf_total_len - olen; + + /* For split channels: */ + void * * const obuf_ptrs = malloc(sizeof(void *) * chans); + void * * ibuf_ptrs = malloc(sizeof(void *) * chans); + char * const obufs = malloc(osize * olen), * optr = obufs; + char * const ibufs = malloc(isize * ilen), * iptr = ibufs; + + /* For interleaved channels: */ + char * const obuf = malloc(osize * olen); + char * const ibuf = malloc(isize * ilen); + + size_t odone, written, need_input = 1, clips = 0; + soxr_error_t error; + soxr_t soxr; + unsigned i; + + /* Overrides (if given): */ + if (passband_end > 0) q_spec.passband_end = passband_end / 100; + if (stopband_begin > 0) q_spec.stopband_begin = stopband_begin / 100; + if (phase_response >=0) q_spec.phase_response = phase_response; + io_spec.flags = ospec & ~7u; + + soxr = soxr_create( + irate, orate, chans, &error, &io_spec, &q_spec, &runtime_spec); + + for (i = 0; i < chans; ++i) { + ibuf_ptrs[i] = iptr; + obuf_ptrs[i] = optr; + iptr += ilen * soxr_datatype_size(itype); + optr += olen * soxr_datatype_size(otype); + } + + if (!error) { + USE_STD_STDIO; + + do { + size_t ilen1 = 0; + + if (need_input) { + if (!(ilen1 = fread(ibuf, isize, ilen, stdin))) + free(ibuf_ptrs), ibuf_ptrs = 0; /* If none available, don't retry. */ + else deinterleave(itype, ibuf_ptrs, ibuf, ilen1, chans); + } + + error = soxr_process(soxr, ibuf_ptrs, ilen1, NULL, obuf_ptrs, olen, &odone); + interleave(otype, obuf, obuf_ptrs, odone, chans); /* Consume output... */ + written = fwrite(obuf, osize, odone, stdout); + + need_input = odone < olen && ibuf_ptrs; + + } while (!error && (need_input || written)); + + clips = *soxr_num_clips(soxr); /* Can occur only with integer output. */ + } + /* Tidy up: */ + soxr_delete(soxr); + free(obuf), free(ibuf), free(obufs), free(ibufs); + free(obuf_ptrs), free(ibuf_ptrs); + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; %lu clips; I/O: %s\n", + arg0, soxr_strerror(error), (long unsigned)clips, + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/5-variable-rate.c b/C/src/soxr-0.1.3/examples/5-variable-rate.c new file mode 100644 index 00000000..1a1c63f5 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/5-variable-rate.c @@ -0,0 +1,93 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Example 5: Variable-rate resampling. A test signal (held in a buffer) is + * resampled over a wide range of octaves. Resampled data is sent to stdout as + * raw, float32 samples. Choices of 2 test-signals and of 2 ways of varying + * the sample-rate are combined in a command-line option: + * + * Usage: ./5-variable-rate [0|1|2|3] + */ + +#include +#include "examples-common.h" + +#define OCTAVES 5 /* Resampling range. ± */ +#define OLEN 16 /* Output length in seconds. */ +#define FS 44100 /* Output sampling rate in Hz. */ + +/* For output pos in [0,1], returns an ioratio in the 2^±OCTAVES range: */ +static double ioratio(double pos, int fm) +{ + if (fm) /* fm: non-0 for a fast-changing ioratio, 0 for a slow sweep. */ + pos = .5 - cos(pos * 2 * M_PI) * .4 + sin(pos * OLEN * 20 * M_PI) * .05; + return pow(2, 2 * OCTAVES * pos - OCTAVES); +} + +int main(int argc, char *arg[]) +{ + int opt = argc <= 1? 2 : (atoi(arg[1]) & 3), saw = opt & 1, fm = opt & 2; + float ibuf[10 << OCTAVES], obuf[AL(ibuf)]; + int i, wl = 2 << OCTAVES; + size_t ilen = AL(ibuf), need_input = 1, written; + size_t odone, total_odone, total_olen = OLEN * FS; + size_t olen1 = fm? 10 : AL(obuf); /* Small block-len if fast-changing ratio */ + soxr_error_t error; + + /* When creating a var-rate resampler, q_spec must be set as follows: */ + soxr_quality_spec_t q_spec = soxr_quality_spec(SOXR_HQ, SOXR_VR); + + /* The ratio of the given input rate and output rates must equate to the + * maximum I/O ratio that will be used: */ + soxr_t soxr = soxr_create(1 << OCTAVES, 1, 1, &error, NULL, &q_spec, NULL); + + if (!error) { + USE_STD_STDIO; + + /* Generate input signal, sine or saw, with wave-length = wl: */ + for (i = 0; i < (int)ilen; ++i) + ibuf[i] = (float)(saw? (i%wl)/(wl-1.)-.5 : .9 * sin(2 * M_PI * i / wl)); + + /* Set the initial resampling ratio (N.B. 3rd parameter = 0): */ + soxr_set_io_ratio(soxr, ioratio(0, fm), 0); + + /* Resample in blocks of size olen1: */ + for (total_odone = 0; !error && total_odone < total_olen;) { + + /* The last block might be shorter: */ + size_t block_len = min(olen1, total_olen - total_odone); + + /* Determine the position in [0,1] of the end of the current block: */ + double pos = (double)(total_odone + block_len) / (double)total_olen; + + /* Calculate an ioratio for this position and instruct the resampler to + * move smoothly to the new value, over the course of outputting the next + * 'block_len' samples (or give 0 for an instant change instead): */ + soxr_set_io_ratio(soxr, ioratio(pos, fm), block_len); + + /* Output the block of samples, supplying input samples as needed: */ + do { + size_t len = need_input? ilen : 0; + error = soxr_process(soxr, ibuf, len, NULL, obuf, block_len, &odone); + written = fwrite(obuf, sizeof(float), odone, stdout); + + /* Update counters for the current block and for the total length: */ + block_len -= odone; + total_odone += odone; + + /* If soxr_process did not provide the complete block, we must call it + * again, supplying more input samples: */ + need_input = block_len != 0; + + } while (need_input && !error && written == odone); + + /* Now that the block for the current ioratio is complete, go back + * round the main `for' loop in order to process the next block. */ + } + soxr_delete(soxr); + } + /* Diagnostics: */ + fprintf(stderr, "%-26s %s; I/O: %s\n", arg[0], soxr_strerror(error), + ferror(stdin) || ferror(stdout)? strerror(errno) : "no error"); + return !!error; +} diff --git a/C/src/soxr-0.1.3/examples/CMakeLists.txt b/C/src/soxr-0.1.3/examples/CMakeLists.txt new file mode 100644 index 00000000..c8c17c96 --- /dev/null +++ b/C/src/soxr-0.1.3/examples/CMakeLists.txt @@ -0,0 +1,36 @@ +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${PROJECT_C_FLAGS}") +set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PROJECT_CXX_FLAGS}") +link_libraries (${PROJECT_NAME} ${LIBM_LIBRARIES}) + +if (${BUILD_EXAMPLES} OR ${BUILD_TESTS}) + set (SOURCES 3-options-input-fn) + if (${WITH_LSR_BINDINGS}) + set (LSR_SOURCES 1a-lsr) + endif () +endif () + +if (${BUILD_EXAMPLES}) + list (APPEND SOURCES 1-single-block 2-stream 4-split-channels) + if (${WITH_VR32}) + list (APPEND SOURCES 5-variable-rate) + endif () +endif () + +foreach (fe ${SOURCES} ${LSR_SOURCES}) + get_filename_component (f ${fe} NAME_WE) + add_executable (${f} ${fe}) + if (${f} STREQUAL "1a-lsr") + target_link_libraries (${f} soxr-lsr) + endif () +endforeach () + +if (${BUILD_TESTS} AND ${WITH_LSR_BINDINGS}) + add_test (lsr-bindings ${BIN}1a-lsr) +endif () + +file (GLOB INSTALL_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*.[cCh]) +install (FILES ${INSTALL_SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/README + DESTINATION ${DOC_INSTALL_DIR}/examples) diff --git a/C/src/soxr-0.1.3/examples/README b/C/src/soxr-0.1.3/examples/README new file mode 100644 index 00000000..a58939be --- /dev/null +++ b/C/src/soxr-0.1.3/examples/README @@ -0,0 +1,20 @@ +SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + +These simple examples show the different ways that an application may +interface with soxr. Note that real-world applications may also have to +deal with file-formats, codecs, (more sophisticated) dithering, etc., which +are not covered here. + +With the library installed, the examples may be built using commands similar +to the following. On unix-like systems: + + cc 1-single-block.c -lsoxr + cc 1a-lsr.c -lsoxr-lsr + +or, with MSVC on MS-Windows: + + cl 1-single-block.c -I"C:/Program Files/soxr/include" "C:/Program Files/soxr/lib/soxr.lib" + cl 1a-lsr.c -I"C:/Program Files/soxr/include" "C:/Program Files/soxr/lib/soxr-lsr.lib" + +IDEs may hide such commands behind configuration screens and build menus -- +where applicable, consult your IDE's user-manual. diff --git a/C/src/soxr-0.1.3/examples/examples-common.h b/C/src/soxr-0.1.3/examples/examples-common.h new file mode 100644 index 00000000..fc8ed82e --- /dev/null +++ b/C/src/soxr-0.1.3/examples/examples-common.h @@ -0,0 +1,47 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Common includes etc. for the examples. */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 + /* Work-around for broken file-I/O on MS-Windows: */ + #include + #include + #define USE_STD_STDIO _setmode(_fileno(stdout), _O_BINARY), \ + _setmode(_fileno(stdin ), _O_BINARY) +#else + #define USE_STD_STDIO +#endif + +#undef int16_t +#define int16_t short + +#undef int32_t +#if LONG_MAX > 2147483647L + #define int32_t int +#elif LONG_MAX < 2147483647L + #error this programme requires that 'long int' has at least 32-bits +#else + #define int32_t long +#endif + +#undef min +#define min(x,y) ((x)<(y)?(x):(y)) + +#undef max +#define max(x,y) ((x)>(y)?(x):(y)) + +#undef AL +#define AL(a) (sizeof(a)/sizeof((a)[0])) /* Array Length */ + +#undef M_PI /* Sometimes missing, so ensure that it is defined: */ +#define M_PI 3.14159265358979323846 diff --git a/C/src/soxr-0.1.3/go b/C/src/soxr-0.1.3/go new file mode 100755 index 00000000..786ed46d --- /dev/null +++ b/C/src/soxr-0.1.3/go @@ -0,0 +1,21 @@ +#!/bin/sh +set -e + +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +case "$1" in -j*) j="$1"; shift;; esac # Support -jX for parallel build/test + +test x"$1" = x && build=Release || build="$1" + +rm -f CMakeCache.txt # Prevent interference from any in-tree build + +mkdir -p "$build" +cd "$build" + +cmake -DCMAKE_INSTALL_PREFIX=$(pwd)/../../.. \ + -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ + -Wno-dev -DCMAKE_BUILD_TYPE="$build" \ + -DBUILD_SHARED_LIBS=OFF -DWITH_OPENMP=OFF .. +make $j +ctest $j || echo "FAILURE details in $build/Testing/Temporary/LastTest.log" diff --git a/C/src/soxr-0.1.3/go.bat b/C/src/soxr-0.1.3/go.bat new file mode 100644 index 00000000..aabff75e --- /dev/null +++ b/C/src/soxr-0.1.3/go.bat @@ -0,0 +1,27 @@ +@echo off +rem SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +rem Licence for this file: LGPL v2.1 See LICENCE for details. + +set build=%1 +if x%build% == x set build=Release + +rem Prevent interference from any in-tree build +del/f CMakeCache.txt + +mkdir %build% +cd %build% + +cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=%build% -Wno-dev .. +if errorlevel 1 goto end + +nmake +if errorlevel 1 goto end + +nmake test +if errorlevel 1 goto error +goto end + +:error +echo FAILURE details in Testing\Temporary\LastTest.log + +:end diff --git a/C/src/soxr-0.1.3/inst-check b/C/src/soxr-0.1.3/inst-check new file mode 100755 index 00000000..8cf64b76 --- /dev/null +++ b/C/src/soxr-0.1.3/inst-check @@ -0,0 +1,25 @@ +#!/bin/sh +set -e +# SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Sanity-check of library installed on unix-like system + +# This script checks the installation of the entire library (including lsr). +# +# Distros using three separate packages can do the following (in order): +# +# * Install soxr pkg (i.e. basically, just the shared object) +# * ./inst-check-soxr +# * Install soxr-lsr pkg (i.e. basically, just the shared object) +# * ./inst-check-soxr-lsr +# * Install the -dev pkg (i.e. examples, headers, & pkg-config) +# * ./inst-check PATH-OF-INSTALLED-EXAMPLES-DIR (e.g. /usr/share/doc/libsoxr/examples) + +# Where are the example source files: +src=$1 +test x$src = x && src=/usr/local/share/doc/libsoxr/examples + +dir="$(dirname $(readlink -f $0))" +$dir/inst-check-soxr $src +$dir/inst-check-soxr-lsr $src diff --git a/C/src/soxr-0.1.3/inst-check-soxr b/C/src/soxr-0.1.3/inst-check-soxr new file mode 100755 index 00000000..5f923b84 --- /dev/null +++ b/C/src/soxr-0.1.3/inst-check-soxr @@ -0,0 +1,52 @@ +#!/bin/sh +set -e +# SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Sanity-check of sub-library installed on unix-like system + +arg="$1" # path to installed examples (if dev pkg installed); otherwise omitted +dir="$(dirname $(readlink -f $0))" + +# Find the examples: +src="$arg" +test x"$src" = x && src="$dir/examples" +cd $src + +# Somewhere to put the binaries: +tmp=`mktemp -d` + +build_examples() { + if [ x"$arg" = x ]; then + echo "Examples in `pwd`; using local headers:" # for when dev pkg not installed + libs=-l$1 + cflags=-I$dir/src + else + echo "Examples in `pwd`; using pkg-config:" + libs=$(pkg-config --libs $1) + cflags=$(pkg-config --cflags $1) + fi + for f in ?$2-*.[cC]; do + cc=cc; echo $f | grep -q C$ && cc=c++ + out=$tmp/`echo $f | sed "s/.[cC]$//"` + cmd="$cc $cflags -o $out $f $libs -lm" + echo $cmd; $cmd + done +} + +# Determine library: +if [ `basename $0` = inst-check-soxr ]; then + build_examples soxr + gen="dd if=/dev/urandom count=1000" + $tmp/1-single-block 1 2 . + $gen 2> /dev/null | $tmp/2-stream 2>&1 >$tmp/stdout + $gen 2> /dev/null | $tmp/3-options-input-fn 6 7 2 2 0 2>&1 >$tmp/stdout + $gen 2> /dev/null | $tmp/4-split-channels 7 6 2 2 3 2>&1 >$tmp/stdout # Clipping expected here + $gen 2> /dev/null | $tmp/5-variable-rate 2>&1 >$tmp/stdout +else + build_examples soxr-lsr a # lsr has 'a' suffix on example number. + $tmp/1a-lsr 1 2 . +fi + +# Tidy up: +rm -rf $tmp diff --git a/C/src/soxr-0.1.3/inst-check-soxr-lsr b/C/src/soxr-0.1.3/inst-check-soxr-lsr new file mode 120000 index 00000000..ec971fb7 --- /dev/null +++ b/C/src/soxr-0.1.3/inst-check-soxr-lsr @@ -0,0 +1 @@ +inst-check-soxr \ No newline at end of file diff --git a/C/src/soxr-0.1.3/msvc/README b/C/src/soxr-0.1.3/msvc/README new file mode 100644 index 00000000..5b7f60a5 --- /dev/null +++ b/C/src/soxr-0.1.3/msvc/README @@ -0,0 +1,22 @@ +SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + +Cmake is the recommended way to configure, build (as either a DLL or a static +library), and install libsoxr for general use on MS-Windows, as on other OSs. + +However, building within MS Visual Studio is also possible, as exemplified by +the accompanying files: + + * soxr-config.h Pre-configured for a modern Win32 system. + + * libsoxr.vcproj Builds the library as a DLL, per above. + + * libsoxr.sln, Build an example exe using the above. + example1.vcproj + +The following notes apply to adaptation of these files: + + * For a system without AVX support, set WITH_CR64S to 0 in + soxr-config.h and exclude the three files ...64s.c from the build. + + * If changing libsoxr.vcproj to build a static library, then also + remove the preprocessor definition: SOXR_DLL. diff --git a/C/src/soxr-0.1.3/msvc/example1.vcproj b/C/src/soxr-0.1.3/msvc/example1.vcproj new file mode 100644 index 00000000..1523855c --- /dev/null +++ b/C/src/soxr-0.1.3/msvc/example1.vcproj @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/C/src/soxr-0.1.3/msvc/libsoxr.sln b/C/src/soxr-0.1.3/msvc/libsoxr.sln new file mode 100644 index 00000000..bb3e9c74 --- /dev/null +++ b/C/src/soxr-0.1.3/msvc/libsoxr.sln @@ -0,0 +1,29 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual C++ Express 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "example1", "example1.vcproj", "{CA28595B-B14F-45FD-BA56-FBDFFB70FFC4}" + ProjectSection(ProjectDependencies) = postProject + {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB} = {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsoxr", "libsoxr.vcproj", "{4916B0C1-2F99-433A-B88A-A99CB4E1E0AB}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Release|Win32 = Release|Win32 + Debug|Win32 = Debug|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {CA28595B-B14F-45FD-BA56-FBDFFB70FFC4}.Release|Win32.ActiveCfg = Release|Win32 + {CA28595B-B14F-45FD-BA56-FBDFFB70FFC4}.Release|Win32.Build.0 = Release|Win32 + {CA28595B-B14F-45FD-BA56-FBDFFB70FFC4}.Debug|Win32.ActiveCfg = Debug|Win32 + {CA28595B-B14F-45FD-BA56-FBDFFB70FFC4}.Debug|Win32.Build.0 = Debug|Win32 + {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB}.Release|Win32.ActiveCfg = Release|Win32 + {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB}.Release|Win32.Build.0 = Release|Win32 + {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB}.Debug|Win32.ActiveCfg = Debug|Win32 + {4916B0C1-2F99-433A-B88A-A99CB4E1E0AB}.Debug|Win32.Build.0 = Debug|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/C/src/soxr-0.1.3/msvc/libsoxr.vcproj b/C/src/soxr-0.1.3/msvc/libsoxr.vcproj new file mode 100644 index 00000000..65ee42dc --- /dev/null +++ b/C/src/soxr-0.1.3/msvc/libsoxr.vcproj @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/C/src/soxr-0.1.3/msvc/soxr-config.h b/C/src/soxr-0.1.3/msvc/soxr-config.h new file mode 100644 index 00000000..89f7a91f --- /dev/null +++ b/C/src/soxr-0.1.3/msvc/soxr-config.h @@ -0,0 +1,30 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* N.B. Pre-configured for modern MS-Windows systems. However, the normal + * procedure is to use the cmake configuration and build system. See INSTALL. */ + +#if !defined soxr_config_included +#define soxr_config_included + +#define AVCODEC_FOUND 0 +#define AVUTIL_FOUND 0 +#define WITH_PFFFT 1 + +#define HAVE_FENV_H 1 +#define HAVE_STDBOOL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_LRINT 1 +#define HAVE_BIGENDIAN 0 + +#define WITH_CR32 1 +#define WITH_CR32S 1 +#define WITH_CR64 1 +#define WITH_CR64S 1 +#define WITH_VR32 1 + +#define WITH_HI_PREC_CLOCK 1 +#define WITH_FLOAT_STD_PREC_CLOCK 0 +#define WITH_DEV_TRACE 1 + +#endif diff --git a/C/src/soxr-0.1.3/multi-arch b/C/src/soxr-0.1.3/multi-arch new file mode 100755 index 00000000..288b5780 --- /dev/null +++ b/C/src/soxr-0.1.3/multi-arch @@ -0,0 +1,31 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +rm -f CMakeCache.txt # Prevent interference from any in-tree build + +j=-j4 +build=Release + +for n in \ + cc: \ + clang: \ + arm-linux-gnueabi-gcc:Linux \ + x86_64-w64-mingw32-gcc:Windows \ + i686-w64-mingw32-gcc:Windows \ + ; do + compiler=$(echo $n | sed 's/:.*//') + system=$(echo $n | sed 's/.*://') + dir=$build-$compiler + which $compiler > /dev/null || echo $compiler not found && ( + echo "***" $dir + mkdir -p $dir + cd $dir + cmake -DCMAKE_BUILD_TYPE=$build -DCMAKE_C_COMPILER=$compiler -DCMAKE_SYSTEM_NAME="$system" -DBUILD_SHARED_LIBS=OFF -DWITH_OPENMP=OFF .. + make $j && [ /$system = / ] && ctest -j || true + cd tests + ../../tests/throughput-test && SOXR_THROUGHPUT_GAIN=.6 ../../tests/throughput-test 2 3 || true + ) +done diff --git a/C/src/soxr-0.1.3/soxr-config.h.in b/C/src/soxr-0.1.3/soxr-config.h.in new file mode 100644 index 00000000..00b3b457 --- /dev/null +++ b/C/src/soxr-0.1.3/soxr-config.h.in @@ -0,0 +1,27 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_config_included +#define soxr_config_included + +#cmakedefine01 AVCODEC_FOUND +#cmakedefine01 AVUTIL_FOUND +#cmakedefine01 WITH_PFFFT + +#cmakedefine01 HAVE_FENV_H +#cmakedefine01 HAVE_STDBOOL_H +#cmakedefine01 HAVE_STDINT_H +#cmakedefine01 HAVE_LRINT +#cmakedefine01 HAVE_BIGENDIAN + +#cmakedefine01 WITH_CR32 +#cmakedefine01 WITH_CR32S +#cmakedefine01 WITH_CR64 +#cmakedefine01 WITH_CR64S +#cmakedefine01 WITH_VR32 + +#cmakedefine01 WITH_HI_PREC_CLOCK +#cmakedefine01 WITH_FLOAT_STD_PREC_CLOCK +#cmakedefine01 WITH_DEV_TRACE + +#endif diff --git a/C/src/soxr-0.1.3/src/CMakeLists.txt b/C/src/soxr-0.1.3/src/CMakeLists.txt new file mode 100644 index 00000000..bb01a0d7 --- /dev/null +++ b/C/src/soxr-0.1.3/src/CMakeLists.txt @@ -0,0 +1,129 @@ +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + + + +# Can generate vr-coefs.h but it complicates cross-compiling & non-cmake builds + +if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/vr-coefs.h) + include_directories(${CMAKE_CURRENT_BINARY_DIR}) + set_property(SOURCE vr32.c + APPEND PROPERTY OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/vr-coefs.h) + add_executable (vr-coefs vr-coefs.c) + target_link_libraries (vr-coefs ${LIBM_LIBRARIES}) + ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vr-coefs.h + COMMAND vr-coefs > ${CMAKE_CURRENT_BINARY_DIR}/vr-coefs.h + DEPENDS vr-coefs) +endif () + + + +add_definitions (${PROJECT_C_FLAGS} -DSOXR_LIB) + + + +# Libsoxr configuration: + +set (RDFT32 fft4g32) +if (AVCODEC_FOUND) + set (RDFT32 avfft32) + set (RDFT32S avfft32s) +elseif (WITH_PFFFT) + #set (RDFT32 pffft32) + set (RDFT32S pffft32s) +elseif (WITH_CR32S) + set (RDFT32S fft4g32s) + if (NOT WITH_CR32) + list (APPEND RDFT32S fft4g32) + endif () +endif () + +set (SOURCES ${PROJECT_NAME}.c data-io) + +if (WITH_CR32 OR WITH_CR32S OR WITH_CR64 OR WITH_CR64S) + list (APPEND SOURCES dbesi0 filter fft4g64 cr) +endif () + +if (WITH_CR32) + list (APPEND SOURCES cr32 ${RDFT32}) +endif () + +if (WITH_CR64) + list (APPEND SOURCES cr64) +endif () + +if (WITH_VR32) + list (APPEND SOURCES vr32) +endif () + +if (WITH_CR32S) + foreach (source cr32s ${RDFT32S} util32s) + list (APPEND SOURCES ${source}) + set_property (SOURCE ${source} + APPEND_STRING PROPERTY COMPILE_FLAGS ${SIMD32_C_FLAGS}) + endforeach () +endif () + +if (WITH_CR64S) + foreach (source cr64s pffft64s util64s) + list (APPEND SOURCES ${source}) + set_property (SOURCE ${source} + APPEND_STRING PROPERTY COMPILE_FLAGS ${SIMD64_C_FLAGS}) + endforeach () +endif () + + + +# Libsoxr: + +add_library (${PROJECT_NAME} ${LIB_TYPE} ${SOURCES}) +target_link_libraries (${PROJECT_NAME} PRIVATE ${LIBS} ${LIBM_LIBRARIES}) +set_target_properties (${PROJECT_NAME} PROPERTIES + VERSION "${SO_VERSION}" + SOVERSION ${SO_VERSION_MAJOR} + INSTALL_NAME_DIR ${LIB_INSTALL_DIR} + LINK_INTERFACE_LIBRARIES "" + PUBLIC_HEADER "${PROJECT_NAME}.h") +if (BUILD_FRAMEWORK) + set_target_properties (${PROJECT_NAME} PROPERTIES FRAMEWORK TRUE) +elseif (NOT WIN32) + set (TARGET_PCS ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc) + configure_file (${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc.in ${TARGET_PCS}) + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) +endif () + + + +# LSR bindings: + +if (WITH_LSR_BINDINGS) + set (LSR ${PROJECT_NAME}-lsr) + set (LSR_SO_VERSION 0.1.9) + set (LSR_SO_VERSION_MAJOR 0) + add_library (${LSR} ${LIB_TYPE} ${LSR}) + target_link_libraries (${LSR} ${PROJECT_NAME}) + set_target_properties (${LSR} PROPERTIES + VERSION "${LSR_SO_VERSION}" + SOVERSION ${LSR_SO_VERSION_MAJOR} + INSTALL_NAME_DIR ${LIB_INSTALL_DIR} + LINK_INTERFACE_LIBRARIES "" + PUBLIC_HEADER "${LSR}.h") + if (BUILD_FRAMEWORK) + set_target_properties (${LSR} PROPERTIES FRAMEWORK TRUE) + elseif (NOT WIN32) + set (TARGET_PCS "${TARGET_PCS} ${CMAKE_CURRENT_BINARY_DIR}/${LSR}.pc") + configure_file (${CMAKE_CURRENT_SOURCE_DIR}/${LSR}.pc.in ${CMAKE_CURRENT_BINARY_DIR}/${LSR}.pc) + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${LSR}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) + endif () +endif () + + + +# Installation (from build from source): + +install (TARGETS ${PROJECT_NAME} ${LSR} + FRAMEWORK DESTINATION ${FRAMEWORK_INSTALL_DIR} + LIBRARY DESTINATION ${LIB_INSTALL_DIR} + RUNTIME DESTINATION ${BIN_INSTALL_DIR} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} + PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}) diff --git a/C/src/soxr-0.1.3/src/aliases.h b/C/src/soxr-0.1.3/src/aliases.h new file mode 100644 index 00000000..d1a392f6 --- /dev/null +++ b/C/src/soxr-0.1.3/src/aliases.h @@ -0,0 +1,39 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if defined SOXR_LIB + +#define lsx_bessel_I_0 _soxr_bessel_I_0 +#define lsx_cdft_f _soxr_cdft_f +#define lsx_cdft _soxr_cdft +#define lsx_clear_fft_cache_f _soxr_clear_fft_cache_f +#define lsx_clear_fft_cache _soxr_clear_fft_cache +#define lsx_ddct_f _soxr_ddct_f +#define lsx_ddct _soxr_ddct +#define lsx_ddst_f _soxr_ddst_f +#define lsx_ddst _soxr_ddst +#define lsx_design_lpf _soxr_design_lpf +#define lsx_dfct_f _soxr_dfct_f +#define lsx_dfct _soxr_dfct +#define lsx_dfst_f _soxr_dfst_f +#define lsx_dfst _soxr_dfst +#define lsx_fir_to_phase _soxr_fir_to_phase +#define lsx_f_resp _soxr_f_resp +#define lsx_init_fft_cache_f _soxr_init_fft_cache_f +#define lsx_init_fft_cache _soxr_init_fft_cache +#define lsx_inv_f_resp _soxr_inv_f_resp +#define lsx_kaiser_beta _soxr_kaiser_beta +#define lsx_kaiser_params _soxr_kaiser_params +#define lsx_make_lpf _soxr_make_lpf +#define lsx_ordered_convolve_f _soxr_ordered_convolve_f +#define lsx_ordered_convolve _soxr_ordered_convolve +#define lsx_ordered_partial_convolve_f _soxr_ordered_partial_convolve_f +#define lsx_ordered_partial_convolve _soxr_ordered_partial_convolve +#define lsx_rdft_f _soxr_rdft_f +#define lsx_rdft _soxr_rdft +#define lsx_safe_cdft_f _soxr_safe_cdft_f +#define lsx_safe_cdft _soxr_safe_cdft +#define lsx_safe_rdft_f _soxr_safe_rdft_f +#define lsx_safe_rdft _soxr_safe_rdft + +#endif diff --git a/C/src/soxr-0.1.3/src/avfft32.c b/C/src/soxr-0.1.3/src/avfft32.c new file mode 100644 index 00000000..fe651f5d --- /dev/null +++ b/C/src/soxr-0.1.3/src/avfft32.c @@ -0,0 +1,33 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include +#include +#include "filter.h" +#include "rdft_t.h" + +static void * forward_setup(int len) {return av_rdft_init((int)(log(len)/log(2)+.5),DFT_R2C);} +static void * backward_setup(int len) {return av_rdft_init((int)(log(len)/log(2)+.5),IDFT_C2R);} +static void rdft(int length, void * setup, float * h) {av_rdft_calc(setup, h); (void)length;} +static int multiplier(void) {return 2;} +static void nothing(void) {} +static int flags(void) {return 0;} + +fn_t _soxr_rdft32_cb[] = { + (fn_t)forward_setup, + (fn_t)backward_setup, + (fn_t)av_rdft_end, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)_soxr_ordered_convolve_f, + (fn_t)_soxr_ordered_partial_convolve_f, + (fn_t)multiplier, + (fn_t)nothing, + (fn_t)malloc, + (fn_t)calloc, + (fn_t)free, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/avfft32s.c b/C/src/soxr-0.1.3/src/avfft32s.c new file mode 100644 index 00000000..5a7e62db --- /dev/null +++ b/C/src/soxr-0.1.3/src/avfft32s.c @@ -0,0 +1,32 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include +#include "util32s.h" +#include "rdft_t.h" + +static void * forward_setup(int len) {return av_rdft_init((int)(log(len)/log(2)+.5),DFT_R2C);} +static void * backward_setup(int len) {return av_rdft_init((int)(log(len)/log(2)+.5),IDFT_C2R);} +static void rdft(int length, void * setup, float * h) {av_rdft_calc(setup, h); (void)length;} +static int multiplier(void) {return 2;} +static void nothing(void) {} +static int flags(void) {return RDFT_IS_SIMD;} + +fn_t _soxr_rdft32s_cb[] = { + (fn_t)forward_setup, + (fn_t)backward_setup, + (fn_t)av_rdft_end, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)rdft, + (fn_t)ORDERED_CONVOLVE_SIMD, + (fn_t)ORDERED_PARTIAL_CONVOLVE_SIMD, + (fn_t)multiplier, + (fn_t)nothing, + (fn_t)SIMD_ALIGNED_MALLOC, + (fn_t)SIMD_ALIGNED_CALLOC, + (fn_t)SIMD_ALIGNED_FREE, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/ccrw2.h b/C/src/soxr-0.1.3/src/ccrw2.h new file mode 100644 index 00000000..09331a4b --- /dev/null +++ b/C/src/soxr-0.1.3/src/ccrw2.h @@ -0,0 +1,75 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Concurrent Control with "Readers" and "Writers", P.J. Courtois et al, 1971 */ + +#if !defined soxr_ccrw2_included +#define soxr_ccrw2_included + +#if defined SOXR_LIB +#include "internal.h" +#endif + +#if defined _OPENMP + +#include + +typedef struct { + int readcount, writecount; /* initial value = 0 */ + omp_lock_t mutex_1, mutex_2, mutex_3, w, r; /* initial value = 1 */ +} ccrw2_t; /* Problem #2: `writers-preference' */ + +#define ccrw2_become_reader(p) do {\ + omp_set_lock(&p.mutex_3);\ + omp_set_lock(&p.r);\ + omp_set_lock(&p.mutex_1);\ + if (++p.readcount == 1) omp_set_lock(&p.w);\ + omp_unset_lock(&p.mutex_1);\ + omp_unset_lock(&p.r);\ + omp_unset_lock(&p.mutex_3);\ +} while (0) +#define ccrw2_cease_reading(p) do {\ + omp_set_lock(&p.mutex_1);\ + if (!--p.readcount) omp_unset_lock(&p.w);\ + omp_unset_lock(&p.mutex_1);\ +} while (0) +#define ccrw2_become_writer(p) do {\ + omp_set_lock(&p.mutex_2);\ + if (++p.writecount == 1) omp_set_lock(&p.r);\ + omp_unset_lock(&p.mutex_2);\ + omp_set_lock(&p.w);\ +} while (0) +#define ccrw2_cease_writing(p) do {\ + omp_unset_lock(&p.w);\ + omp_set_lock(&p.mutex_2);\ + if (!--p.writecount) omp_unset_lock(&p.r);\ + omp_unset_lock(&p.mutex_2);\ +} while (0) +#define ccrw2_init(p) do {\ + omp_init_lock(&p.mutex_1);\ + omp_init_lock(&p.mutex_2);\ + omp_init_lock(&p.mutex_3);\ + omp_init_lock(&p.w);\ + omp_init_lock(&p.r);\ +} while (0) +#define ccrw2_clear(p) do {\ + omp_destroy_lock(&p.r);\ + omp_destroy_lock(&p.w);\ + omp_destroy_lock(&p.mutex_3);\ + omp_destroy_lock(&p.mutex_2);\ + omp_destroy_lock(&p.mutex_1);\ +} while (0) + +#else + +typedef int ccrw2_t; +#define ccrw2_become_reader(x) (void)(x) +#define ccrw2_cease_reading(x) (void)(x) +#define ccrw2_become_writer(x) (void)(x) +#define ccrw2_cease_writing(x) (void)(x) +#define ccrw2_init(x) (void)(x) +#define ccrw2_clear(x) (void)(x) + +#endif /* _OPENMP */ + +#endif diff --git a/C/src/soxr-0.1.3/src/cr-core.c b/C/src/soxr-0.1.3/src/cr-core.c new file mode 100644 index 00000000..159a5d97 --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr-core.c @@ -0,0 +1,314 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. + * + * Constant-rate resampling engine-specific code. */ + +#include +#include +#include +#include + +#include "filter.h" + +#if defined SOXR_LIB + #include "internal.h" + #include "cr.h" + #if CORE_TYPE & CORE_DBL + typedef double sample_t; + #if CORE_TYPE & CORE_SIMD_DFT + #define RDFT_CB _soxr_rdft64s_cb + #else + #define RDFT_CB _soxr_rdft64_cb + #endif + #else + typedef float sample_t; + #if CORE_TYPE & CORE_SIMD_DFT + #define RDFT_CB _soxr_rdft32s_cb + #else + #define RDFT_CB _soxr_rdft32_cb + #endif + #endif + + #if CORE_TYPE & (CORE_SIMD_POLY|CORE_SIMD_HALF|CORE_SIMD_DFT) + #if CORE_TYPE & CORE_DBL + #include "util64s.h" + #include "dev64s.h" + #else + #include "util32s.h" + #include "dev32s.h" + #endif + #endif + + extern fn_t RDFT_CB[]; +#else + #define RDFT_CB 0 +#endif + + + +static void cubic_stage_fn(stage_t * p, fifo_t * output_fifo) +{ + sample_t const * input = stage_read_p(p); + int num_in = min(stage_occupancy(p), p->input_size); + int i, max_num_out = 1 + (int)(num_in * p->out_in_ratio); + sample_t * output = fifo_reserve(output_fifo, max_num_out); + + for (i = 0; p->at.integer < num_in; ++i, p->at.whole += p->step.whole) { + sample_t const * s = input + p->at.integer; + double x = p->at.fraction * (1 / MULT32); + double b = .5*(s[1]+s[-1])-*s, a = (1/6.)*(s[2]-s[1]+s[-1]-*s-4*b); + double c = s[1]-*s-a-b; + output[i] = (sample_t)(p->mult * (((a*x + b)*x + c)*x + *s)); + } + assert(max_num_out - i >= 0); + fifo_trim_by(output_fifo, max_num_out - i); + fifo_read(&p->fifo, p->at.integer, NULL); + p->at.integer = 0; +} + + + +#if defined __AVX__ + #define DEFINED_AVX 1 +#else + #define DEFINED_AVX 0 +#endif + +#if defined __x86_64__ || defined _M_X64 || defined i386 || defined _M_IX86 + #define DEFINED_X86 1 +#else + #define DEFINED_X86 0 +#endif + +#if defined __arm__ + #define DEFINED_ARM 1 +#else + #define DEFINED_ARM 0 +#endif + + + +#if CORE_TYPE & CORE_DBL + #define SIMD_AVX ((CORE_TYPE & CORE_SIMD_HALF) && DEFINED_AVX) + #define SIMD_SSE 0 +#else + #define SIMD_SSE ((CORE_TYPE & CORE_SIMD_HALF) && DEFINED_X86) + #define SIMD_AVX 0 +#endif + +#define SIMD_NEON ((CORE_TYPE & CORE_SIMD_HALF) && DEFINED_ARM) + + + +#include "half-coefs.h" + +#if !(CORE_TYPE & CORE_SIMD_HALF) +#define FUNCTION_H h7 +#define CONVOLVE ____ __ _ +#include "half-fir.h" +#endif + +#define FUNCTION_H h8 +#define CONVOLVE ____ ____ +#include "half-fir.h" + +#define FUNCTION_H h9 +#define CONVOLVE ____ ____ _ +#include "half-fir.h" + +#if CORE_TYPE & CORE_DBL + #define FUNCTION_H h10 + #define CONVOLVE ____ ____ __ + #include "half-fir.h" + + #define FUNCTION_H h11 + #define CONVOLVE ____ ____ __ _ + #include "half-fir.h" + + #define FUNCTION_H h12 + #define CONVOLVE ____ ____ ____ + #include "half-fir.h" + + #define FUNCTION_H h13 + #define CONVOLVE ____ ____ ____ _ + #include "half-fir.h" +#endif + +static half_fir_info_t const half_firs[] = { +#if !(CORE_TYPE & CORE_SIMD_HALF) + { 7, half_fir_coefs_7 , h7 , 0 , 120.65f}, +#endif + { 8, half_fir_coefs_8 , h8 , 0 , 136.51f}, + { 9, half_fir_coefs_9 , h9 , 0 , 152.32f}, +#if CORE_TYPE & CORE_DBL + {10, half_fir_coefs_10, h10, 0 , 168.08f}, + {11, half_fir_coefs_11, h11, 0 , 183.79f}, + {12, half_fir_coefs_12, h12, 0 , 199.46f}, + {13, half_fir_coefs_13, h13, 0 , 215.12f}, +#endif +}; + +#undef SIMD_AVX +#undef SIMD_NEON +#undef SIMD_SSE + + + +#if CORE_TYPE & CORE_DBL + #define SIMD_AVX ((CORE_TYPE & CORE_SIMD_POLY) && DEFINED_AVX) + #define SIMD_SSE 0 +#else + #define SIMD_SSE ((CORE_TYPE & CORE_SIMD_POLY) && DEFINED_X86) + #define SIMD_AVX 0 +#endif + +#define SIMD_NEON ((CORE_TYPE & CORE_SIMD_POLY) && DEFINED_ARM) + + + +#define COEFS (sample_t * __restrict)p->shared->poly_fir_coefs +#define VAR_LENGTH p->n +#define VAR_CONVOLVE(n) while (j < (n)) _ +#define VAR_POLY_PHASE_BITS p->phase_bits + + + +#define FUNCTION vpoly0 +#define FIR_LENGTH VAR_LENGTH +#define CONVOLVE(n) VAR_CONVOLVE(n) +#include "poly-fir0.h" + +#define FUNCTION vpoly1 +#define COEF_INTERP 1 +#define PHASE_BITS VAR_POLY_PHASE_BITS +#define FIR_LENGTH VAR_LENGTH +#define CONVOLVE(n) VAR_CONVOLVE(n) +#include "poly-fir.h" + +#define FUNCTION vpoly2 +#define COEF_INTERP 2 +#define PHASE_BITS VAR_POLY_PHASE_BITS +#define FIR_LENGTH VAR_LENGTH +#define CONVOLVE(n) VAR_CONVOLVE(n) +#include "poly-fir.h" + +#define FUNCTION vpoly3 +#define COEF_INTERP 3 +#define PHASE_BITS VAR_POLY_PHASE_BITS +#define FIR_LENGTH VAR_LENGTH +#define CONVOLVE(n) VAR_CONVOLVE(n) +#include "poly-fir.h" + + + +#if !(CORE_TYPE & CORE_SIMD_POLY) + +#define poly_fir_convolve_U100 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +#define FUNCTION U100_0 +#define FIR_LENGTH U100_l +#define CONVOLVE(n) poly_fir_convolve_U100 +#include "poly-fir0.h" + +#define u100_l 11 +#define poly_fir_convolve_u100 _ _ _ _ _ _ _ _ _ _ _ +#define FUNCTION u100_0 +#define FIR_LENGTH u100_l +#define CONVOLVE(n) poly_fir_convolve_u100 +#include "poly-fir0.h" + +#define FUNCTION u100_1 +#define COEF_INTERP 1 +#define PHASE_BITS 8 +#define FIR_LENGTH u100_l +#define CONVOLVE(n) poly_fir_convolve_u100 +#include "poly-fir.h" + +#define FUNCTION u100_2 +#define COEF_INTERP 2 +#define PHASE_BITS 6 +#define FIR_LENGTH u100_l +#define CONVOLVE(n) poly_fir_convolve_u100 +#include "poly-fir.h" + +#endif + +#define u100_1_b 8 +#define u100_2_b 6 + + + +static poly_fir_t const poly_firs[] = { + {-1, {{0, vpoly0}, { 7.2f, vpoly1}, {5.0f, vpoly2}}}, + {-1, {{0, vpoly0}, { 9.4f, vpoly1}, {6.7f, vpoly2}}}, + {-1, {{0, vpoly0}, {12.4f, vpoly1}, {7.8f, vpoly2}}}, + {-1, {{0, vpoly0}, {13.6f, vpoly1}, {9.3f, vpoly2}}}, + {-1, {{0, vpoly0}, {10.5f, vpoly2}, {8.4f, vpoly3}}}, + {-1, {{0, vpoly0}, {11.85f,vpoly2}, {9.0f, vpoly3}}}, + + {-1, {{0, vpoly0}, { 8.0f, vpoly1}, {5.3f, vpoly2}}}, + {-1, {{0, vpoly0}, { 8.6f, vpoly1}, {5.7f, vpoly2}}}, + {-1, {{0, vpoly0}, {10.6f, vpoly1}, {6.75f,vpoly2}}}, + {-1, {{0, vpoly0}, {12.6f, vpoly1}, {8.6f, vpoly2}}}, + {-1, {{0, vpoly0}, { 9.6f, vpoly2}, {7.6f, vpoly3}}}, + {-1, {{0, vpoly0}, {11.4f, vpoly2}, {8.65f,vpoly3}}}, + +#if CORE_TYPE & CORE_SIMD_POLY + {10.62f, {{0, vpoly0}, {0, 0}, {0, 0}}}, + {-1, {{0, vpoly0}, {u100_1_b, vpoly1}, {u100_2_b, vpoly2}}}, +#else + {10.62f, {{U100_l, U100_0}, {0, 0}, {0, 0}}}, + {11.28f, {{u100_l, u100_0}, {u100_1_b, u100_1}, {u100_2_b, u100_2}}}, +#endif + {-1, {{0, vpoly0}, { 9, vpoly1}, { 6, vpoly2}}}, + {-1, {{0, vpoly0}, { 11, vpoly1}, { 7, vpoly2}}}, + {-1, {{0, vpoly0}, { 13, vpoly1}, { 8, vpoly2}}}, + {-1, {{0, vpoly0}, { 10, vpoly2}, { 8, vpoly3}}}, + {-1, {{0, vpoly0}, { 12, vpoly2}, { 9, vpoly3}}}, +}; + + + +static cr_core_t const cr_core = { + +#if CORE_TYPE & CORE_SIMD_POLY + {SIMD_ALIGNED_MALLOC, SIMD_ALIGNED_CALLOC, SIMD_ALIGNED_FREE}, +#else + {malloc, calloc, free}, +#endif + half_firs, array_length(half_firs), + 0, 0, + cubic_stage_fn, + poly_firs, RDFT_CB +}; + + + +#if defined SOXR_LIB + +#include "soxr.h" + +static char const * rate_create(void * channel, void * shared, double io_ratio, + soxr_quality_spec_t * q_spec, soxr_runtime_spec_t * r_spec, double scale) +{ + return _soxr_init(channel, shared, io_ratio, q_spec, r_spec, scale, + &cr_core, CORE_TYPE); +} + + + +static char const * id(void) {return CORE_STR;} + +fn_t RATE_CB[] = { + (fn_t)_soxr_input, + (fn_t)_soxr_process, + (fn_t)_soxr_output, + (fn_t)_soxr_flush, + (fn_t)_soxr_close, + (fn_t)_soxr_delay, + (fn_t)_soxr_sizes, + (fn_t)rate_create, + (fn_t)0, + (fn_t)id, +}; + +#endif diff --git a/C/src/soxr-0.1.3/src/cr.c b/C/src/soxr-0.1.3/src/cr.c new file mode 100644 index 00000000..4122db3c --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr.c @@ -0,0 +1,588 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. + * + * Constant-rate resampling common code. */ + +#include +#include +#include +#include + +#include "filter.h" + +#if defined SOXR_LIB + #include "internal.h" + #define STATIC +#endif + +#include "cr.h" + +#define num_coefs4 ((core_flags&CORE_SIMD_POLY)? ((num_coefs+3)&~3) : num_coefs) + +#define coef_coef(C,T,x) \ + C((T*)result, interp_order, num_coefs4, j, x, num_coefs4 - 1 - i) + +#define STORE(C,T) { \ + if (interp_order > 2) coef_coef(C,T,3) = (T)d; \ + if (interp_order > 1) coef_coef(C,T,2) = (T)c; \ + if (interp_order > 0) coef_coef(C,T,1) = (T)b; \ + coef_coef(C,T,0) = (T)f0;} + +static real * prepare_poly_fir_coefs(double const * coefs, int num_coefs, + int num_phases, int interp_order, double multiplier, + core_flags_t core_flags, alloc_t const * mem) +{ + int i, j, length = num_coefs4 * num_phases * (interp_order + 1); + real * result = mem->calloc(1,(size_t)length << LOG2_SIZEOF_REAL(core_flags)); + double fm1 = coefs[0], f1 = 0, f2 = 0; + + for (i = num_coefs - 1; i >= 0; --i) + for (j = num_phases - 1; j >= 0; --j) { + double f0 = fm1, b = 0, c = 0, d = 0; /* = 0 to kill compiler warning */ + int pos = i * num_phases + j - 1; + fm1 = pos > 0 ? coefs[pos - 1] * multiplier : 0; + switch (interp_order) { + case 1: b = f1 - f0; break; + case 2: b = f1 - (.5 * (f2+f0) - f1) - f0; c = .5 * (f2+f0) - f1; break; + case 3: c=.5*(f1+fm1)-f0;d=(1/6.)*(f2-f1+fm1-f0-4*c);b=f1-f0-d-c; break; + default: assert(!interp_order); + } + switch (core_flags & 3) { + case 0: if (WITH_CR32 ) STORE(coef , float ); break; + case 1: if (WITH_CR64 ) STORE(coef , double); break; + case 2: if (WITH_CR32S) STORE(coef4, float ); break; + default:if (WITH_CR64S) STORE(coef4, double); break; + } + f2 = f1, f1 = f0; + } + return result; +} + +#undef STORE +#undef coef_coef + +#define IS_FLOAT32 (WITH_CR32 || WITH_CR32S) && \ + (!(WITH_CR64 || WITH_CR64S) || sizeof_real == sizeof(float)) +#define WITH_FLOAT64 WITH_CR64 || WITH_CR64S + +static void dft_stage_fn(stage_t * p, fifo_t * output_fifo) +{ + real * output, * dft_out; + int i, j, num_in = max(0, fifo_occupancy(&p->fifo)); + rate_shared_t const * s = p->shared; + dft_filter_t const * f = &s->dft_filter[p->dft_filter_num]; + int const overlap = f->num_taps - 1; + + if (p->at.integer + p->L * num_in >= f->dft_length) { + fn_t const * const RDFT_CB = p->rdft_cb; + size_t const sizeof_real = sizeof(char) << LOG2_SIZEOF_REAL(p->core_flags); + div_t divd = div(f->dft_length - overlap - p->at.integer + p->L - 1, p->L); + real const * input = fifo_read_ptr(&p->fifo); + fifo_read(&p->fifo, divd.quot, NULL); + num_in -= divd.quot; + + output = fifo_reserve(output_fifo, f->dft_length); + dft_out = (p->core_flags & CORE_SIMD_DFT)? p->dft_out : output; + + if (lsx_is_power_of_2(p->L)) { /* F-domain */ + int portion = f->dft_length / p->L; + memcpy(dft_out, input, (unsigned)portion * sizeof_real); + rdft_oforward(portion, f->dft_forward_setup, dft_out, p->dft_scratch); + if (IS_FLOAT32) { +#define dft_out ((float *)dft_out) + for (i = portion + 2; i < (portion << 1); i += 2) /* Mirror image. */ + dft_out[i] = dft_out[(portion << 1) - i], + dft_out[i+1] = -dft_out[(portion << 1) - i + 1]; + dft_out[portion] = dft_out[1]; + dft_out[portion + 1] = 0; + dft_out[1] = dft_out[0]; +#undef dft_out + } + else if (WITH_FLOAT64) { +#define dft_out ((double *)dft_out) + for (i = portion + 2; i < (portion << 1); i += 2) /* Mirror image. */ + dft_out[i] = dft_out[(portion << 1) - i], + dft_out[i+1] = -dft_out[(portion << 1) - i + 1]; + dft_out[portion] = dft_out[1]; + dft_out[portion + 1] = 0; + dft_out[1] = dft_out[0]; +#undef dft_out + } + + for (portion <<= 1; i < f->dft_length; i += portion, portion <<= 1) { + memcpy((char *)dft_out + (size_t)i * sizeof_real, dft_out, (size_t)portion * sizeof_real); + if (IS_FLOAT32) + #define dft_out ((float *)dft_out) + dft_out[i + 1] = 0; + #undef dft_out + else if (WITH_FLOAT64) + #define dft_out ((double *)dft_out) + dft_out[i + 1] = 0; + #undef dft_out + } + if (p->step.integer > 0) + rdft_reorder_back(f->dft_length, f->dft_backward_setup, dft_out, p->dft_scratch); + } else { + if (p->L == 1) + memcpy(dft_out, input, (size_t)f->dft_length * sizeof_real); + else { + memset(dft_out, 0, (size_t)f->dft_length * sizeof_real); + if (IS_FLOAT32) + for (j = 0, i = p->at.integer; i < f->dft_length; ++j, i += p->L) + ((float *)dft_out)[i] = ((float *)input)[j]; + else if (WITH_FLOAT64) + for (j = 0, i = p->at.integer; i < f->dft_length; ++j, i += p->L) + ((double *)dft_out)[i] = ((double *)input)[j]; + p->at.integer = p->L - 1 - divd.rem; + } + if (p->step.integer > 0) + rdft_forward(f->dft_length, f->dft_forward_setup, dft_out, p->dft_scratch); + else + rdft_oforward(f->dft_length, f->dft_forward_setup, dft_out, p->dft_scratch); + } + + if (p->step.integer > 0) { + rdft_convolve(f->dft_length, f->dft_backward_setup, dft_out, f->coefs); + rdft_backward(f->dft_length, f->dft_backward_setup, dft_out, p->dft_scratch); + if ((p->core_flags & CORE_SIMD_DFT) && p->step.integer == 1) + memcpy(output, dft_out, (size_t)f->dft_length * sizeof_real); + if (p->step.integer != 1) { + if (IS_FLOAT32) + for (j = 0, i = p->remM; i < f->dft_length - overlap; ++j, + i += p->step.integer) + ((float *)output)[j] = ((float *)dft_out)[i]; + else if (WITH_FLOAT64) + for (j = 0, i = p->remM; i < f->dft_length - overlap; ++j, + i += p->step.integer) + ((double *)output)[j] = ((double *)dft_out)[i]; + p->remM = i - (f->dft_length - overlap); + fifo_trim_by(output_fifo, f->dft_length - j); + } + else fifo_trim_by(output_fifo, overlap); + } + else { /* F-domain */ + int m = -p->step.integer; + rdft_convolve_portion(f->dft_length >> m, dft_out, f->coefs); + rdft_obackward(f->dft_length >> m, f->dft_backward_setup, dft_out, p->dft_scratch); + if (p->core_flags & CORE_SIMD_DFT) + memcpy(output, dft_out, (size_t)(f->dft_length >> m) * sizeof_real); + fifo_trim_by(output_fifo, (((1 << m) - 1) * f->dft_length + overlap) >>m); + } + (void)RDFT_CB; + } + p->input_size = (f->dft_length - p->at.integer + p->L - 1) / p->L; +} + +/* Set to 4 x nearest power of 2 or half of that */ +/* if danger of causing too many cache misses. */ +static int set_dft_length(int num_taps, int min, int large) +{ + double d = log((double)num_taps) / log(2.); + return 1 << range_limit((int)(d + 2.77), min, max((int)(d + 1.77), large)); +} + +static void dft_stage_init( + unsigned instance, double Fp, double Fs, double Fn, double att, + double phase_response, stage_t * p, int L, int M, double * multiplier, + unsigned min_dft_size, unsigned large_dft_size, core_flags_t core_flags, + fn_t const * RDFT_CB) +{ + dft_filter_t * f = &p->shared->dft_filter[instance]; + int num_taps = 0, dft_length = f->dft_length, i, offset; + bool f_domain_m = abs(3-M) == 1 && Fs <= 1; + size_t const sizeof_real = sizeof(char) << LOG2_SIZEOF_REAL(core_flags); + + if (!dft_length) { + int k = phase_response == 50 && lsx_is_power_of_2(L) && Fn == L? L << 1 : 4; + double m, * h = lsx_design_lpf(Fp, Fs, Fn, att, &num_taps, -k, -1.); + + if (phase_response != 50) + lsx_fir_to_phase(&h, &num_taps, &f->post_peak, phase_response); + else f->post_peak = num_taps / 2; + + dft_length = set_dft_length(num_taps, (int)min_dft_size, (int)large_dft_size); + f->coefs = rdft_calloc((size_t)dft_length, sizeof_real); + offset = dft_length - num_taps + 1; + m = (1. / dft_length) * rdft_multiplier() * L * *multiplier; + if (IS_FLOAT32) for (i = 0; i < num_taps; ++i) + ((float *)f->coefs)[(i + offset) & (dft_length - 1)] =(float)(h[i] * m); + else if (WITH_FLOAT64) for (i = 0; i < num_taps; ++i) + ((double *)f->coefs)[(i + offset) & (dft_length - 1)] = h[i] * m; + free(h); + } + + if (rdft_flags() & RDFT_IS_SIMD) + p->dft_out = rdft_malloc(sizeof_real * (size_t)dft_length); + if (rdft_flags() & RDFT_NEEDS_SCRATCH) + p->dft_scratch = rdft_malloc(2 * sizeof_real * (size_t)dft_length); + + if (!f->dft_length) { + void * coef_setup = rdft_forward_setup(dft_length); + int Lp = lsx_is_power_of_2(L)? L : 1; + int Mp = f_domain_m? M : 1; + f->dft_forward_setup = rdft_forward_setup(dft_length / Lp); + f->dft_backward_setup = rdft_backward_setup(dft_length / Mp); + if (Mp == 1) + rdft_forward(dft_length, coef_setup, f->coefs, p->dft_scratch); + else + rdft_oforward(dft_length, coef_setup, f->coefs, p->dft_scratch); + rdft_delete_setup(coef_setup); + f->num_taps = num_taps; + f->dft_length = dft_length; + lsx_debug("fir_len=%i dft_length=%i Fp=%g Fs=%g Fn=%g att=%g %i/%i", + num_taps, dft_length, Fp, Fs, Fn, att, L, M); + } + *multiplier = 1; + p->out_in_ratio = (double)L / M; + p->core_flags = core_flags; + p->rdft_cb = RDFT_CB; + p->fn = dft_stage_fn; + p->preload = f->post_peak / L; + p->at.integer = f->post_peak % L; + p->L = L; + p->step.integer = f_domain_m? -M/2 : M; + p->dft_filter_num = instance; + p->block_len = f->dft_length - (f->num_taps - 1); + p->phase0 = p->at.integer / p->L; + p->input_size = (f->dft_length - p->at.integer + p->L - 1) / p->L; +} + +static struct half_fir_info const * find_half_fir( + struct half_fir_info const * firs, size_t len, double att) +{ + size_t i; + for (i = 0; i + 1 < len && att > firs[i].att; ++i); + return &firs[i]; +} + +#define have_pre_stage (preM * preL != 1) +#define have_arb_stage (arbM * arbL != 1) +#define have_post_stage (postM * postL != 1) + +#include "soxr.h" + +STATIC char const * _soxr_init( + rate_t * const p, /* Per audio channel. */ + rate_shared_t * const shared, /* By channels undergoing same rate change. */ + double const io_ratio, /* Input rate divided by output rate. */ + soxr_quality_spec_t const * const q_spec, + soxr_runtime_spec_t const * const r_spec, + double multiplier, /* Linear gain to apply during conversion. */ + cr_core_t const * const core, + core_flags_t const core_flags) +{ + size_t const sizeof_real = sizeof(char) << LOG2_SIZEOF_REAL(core_flags); + double const tolerance = 1 + 1e-5; + + double bits = q_spec->precision; + rolloff_t const rolloff = (rolloff_t)(q_spec->flags & 3); + int interpolator = (int)(r_spec->flags & 3) - 1; + double const Fp0 = q_spec->passband_end, Fs0 = q_spec->stopband_begin; + double const phase_response = q_spec->phase_response, tbw0 = Fs0-Fp0; + + bool const maintain_3dB_pt = !!(q_spec->flags & SOXR_MAINTAIN_3DB_PT); + double tbw_tighten = 1, alpha; + #define tighten(x) (Fs0-(Fs0-(x))*tbw_tighten) + + double arbM = io_ratio, Fn1, Fp1 = Fp0, Fs1 = Fs0, bits1 = min(bits,33); + double att = (bits1 + 1) * linear_to_dB(2.), attArb = att; /* +1: pass+stop */ + int preL = 1, preM = 1, shr = 0, arbL = 1, postL = 1, postM = 1; + bool upsample=false, rational=false, iOpt=!(r_spec->flags&SOXR_NOSMALLINTOPT); + bool lq_bits= (q_spec->flags & SOXR_PROMOTE_TO_LQ)? bits <= 16 : bits == 16; + bool lq_Fp0 = (q_spec->flags & SOXR_PROMOTE_TO_LQ)? Fp0<=lq_bw0 : Fp0==lq_bw0; + int n = 0, i, mode = lq_bits && rolloff == rolloff_medium? io_ratio > 1 || + phase_response != 50 || !lq_Fp0 || Fs0 != 1 : ((int)ceil(bits1) - 6) / 4; + struct half_fir_info const * half_fir_info; + stage_t * s; + + if (io_ratio < 1 && Fs0 - 1 > 1 - Fp0 / tolerance) + return "imaging greater than rolloff"; + if (.002 / tolerance > tbw0 || tbw0 > .5 * tolerance) + return "transition bandwidth not in [0.2,50] % of nyquist"; + if (.5 / tolerance > Fp0 || Fs0 > 1.5 * tolerance) + return "transition band not within [50,150] % of nyquist"; + if (bits!=0 && (15 > bits || bits > 33)) + return "precision not in [15,33] bits"; + if (io_ratio <= 0) + return "resampling factor not positive"; + if (0 > phase_response || phase_response > 100) + return "phase response not in [0=min-phase,100=max-phase] %"; + + p->core = core; + p->io_ratio = io_ratio; + if (bits!=0) while (!n++) { /* Determine stages: */ + int try, L, M, x, maxL = interpolator > 0? 1 : mode? 2048 : + (int)ceil(r_spec->coef_size_kbytes * 1000. / (U100_l * (int)sizeof_real)); + double d, epsilon = 0, frac; + upsample = arbM < 1; + for (i = (int)(.5 * arbM), shr = 0; i >>= 1; arbM *= .5, ++shr); + preM = upsample || (arbM > 1.5 && arbM < 2); + postM = 1 + (arbM > 1 && preM), arbM /= postM; + preL = 1 + (!preM && arbM < 2) + (upsample && mode), arbM *= preL; + if ((frac = arbM - (int)arbM)!=0) + epsilon = fabs(floor(frac * MULT32 + .5) / (frac * MULT32) - 1); + for (i = 1, rational = frac==0; i <= maxL && !rational; ++i) { + d = frac * i, try = (int)(d + .5); + if ((rational = fabs(try / d - 1) <= epsilon)) { /* No long doubles! */ + if (try == i) + arbM = ceil(arbM), shr += x = arbM > 3, arbM /= 1 + x; + else arbM = i * (int)arbM + try, arbL = i; + } + } + L = preL * arbL, M = (int)(arbM * postM), x = (L|M)&1, L >>= !x, M >>= !x; + if (iOpt && postL == 1 && (d = preL * arbL / arbM) > 4 && d != 5) { + for (postL = 4, i = (int)(d / 16); (i >>= 1) && postL < 256; postL <<= 1); + arbM = arbM * postL / arbL / preL, arbL = 1, n = 0; + } else if (rational && (max(L, M) < 3 + 2 * iOpt || L * M < 6 * iOpt)) + preL = L, preM = M, arbM = arbL = postM = 1; + if (!mode && (!rational || !n)) + ++mode, n = 0; + } + + p->num_stages = shr + have_pre_stage + have_arb_stage + have_post_stage; + if (!p->num_stages && multiplier != 1) { + bits = arbL = 0; /* Use cubic_stage in this case. */ + ++p->num_stages; + } + p->stages = calloc((size_t)p->num_stages + 1, sizeof(*p->stages)); + if (!p->stages) + return "out of memory"; + for (i = 0; i < p->num_stages; ++i) { + p->stages[i].num = i; + p->stages[i].shared = shared; + p->stages[i].input_size = 8192; + } + p->stages[0].is_input = true; + + alpha = postM / (io_ratio * (postL << 0)); + + if ((n = p->num_stages) > 1) { /* Att. budget: */ + if (have_arb_stage) + att += linear_to_dB(2.), attArb = att, --n; + att += linear_to_dB((double)n); + } + + half_fir_info = find_half_fir(core->half_firs, core->half_firs_len, att); + for (i = 0, s = p->stages; i < shr; ++i, ++s) { + s->fn = half_fir_info->fn; + s->coefs = half_fir_info->coefs; + s->n = half_fir_info->num_coefs; + s->pre_post = 4 * s->n; + s->preload = s->pre = s->pre_post >> 1; + } + + if (have_pre_stage) { + if (maintain_3dB_pt && have_post_stage) { /* Trans. bands overlapping. */ + double x = tbw0 * lsx_inv_f_resp(-3., att); + x = -lsx_f_resp(x / (max(2 * alpha - Fs0, alpha) - Fp0), att); + if (x > .035) { + tbw_tighten = ((4.3074e-3 - 3.9121e-4 * x) * x - .040009) * x + 1.0014; + lsx_debug("tbw_tighten=%g (%gdB)", tbw_tighten, x); + } + } + Fn1 = preM? max(preL, preM) : arbM / arbL; + dft_stage_init(0, tighten(Fp1), Fs1, Fn1, att, phase_response, s++, preL, + max(preM, 1), &multiplier, r_spec->log2_min_dft_size, + r_spec->log2_large_dft_size, core_flags, core->rdft_cb); + Fp1 /= Fn1, Fs1 /= Fn1; + } + + if (bits==0 && have_arb_stage) { /* `Quick' cubic arb stage: */ + s->fn = core->cubic_stage_fn; + s->mult = multiplier, multiplier = 1; + s->step.whole = (int64_t)(arbM * MULT32 + .5); + s->pre_post = max(3, s->step.integer); + s->preload = s->pre = 1; + s->out_in_ratio = MULT32 / (double)s->step.whole; + } + else if (have_arb_stage) { /* Higher quality arb stage: */ + static const float rolloffs[] = {-.01f, -.3f, 0, -.103f}; + poly_fir_t const * f = &core->poly_firs[6*(upsample+!!preM)+mode-!upsample]; + int order, num_coefs = (int)f->interp[0].scalar, phase_bits, phases; + size_t coefs_size; + double at, Fp = Fp1, Fs, Fn, mult = upsample? 1 : arbM / arbL; + poly_fir1_t const * f1; + + if (!upsample && preM) + Fn = 2 * mult, Fs = 3 + fabs(Fs1 - 1); + else Fn = 1, Fs = 2 - (mode? Fp1 + (Fs1 - Fp1) * .7 : Fs1); + + if (mode) + Fp = Fs - (Fs - Fp) / (1 - lsx_inv_f_resp(rolloffs[rolloff], attArb)); + + i = (interpolator < 0? !rational : max(interpolator, !rational)) - 1; + do { + f1 = &f->interp[++i]; + assert(f1->fn); + if (i) + arbM /= arbL, arbL = 1, rational = false; + phase_bits = (int)ceil(f1->scalar - log(mult)/log(2.)); + phases = !rational? (1 << phase_bits) : arbL; + if (f->interp[0].scalar==0) { + int phases0 = max(phases, 19), n0 = 0; + lsx_design_lpf(Fp, Fs, -Fn, attArb, &n0, phases0, f->beta); + num_coefs = n0 / phases0 + 1, num_coefs += num_coefs & !preM; + } + if ((num_coefs & 1) && rational && (arbL & 1)) + phases <<= 1, arbL <<= 1, arbM *= 2; + at = arbL * (s->phase0 = .5 * (num_coefs & 1)); + order = i + (i && mode > 4); + coefs_size = (size_t)(num_coefs4 * phases * (order+1)) * sizeof_real; + } while (interpolator < 0 && i < 2 && f->interp[i+1].fn && + coefs_size / 1000 > r_spec->coef_size_kbytes); + + if (!s->shared->poly_fir_coefs) { + int num_taps = num_coefs * phases - 1; + double * coefs = lsx_design_lpf( + Fp, Fs, Fn, attArb, &num_taps, phases, f->beta); + s->shared->poly_fir_coefs = prepare_poly_fir_coefs( + coefs, num_coefs, phases, order, multiplier, core_flags, &core->mem); + lsx_debug("fir_len=%i phases=%i coef_interp=%i size=%.3gk", + num_coefs, phases, order, (double)coefs_size / 1000.); + free(coefs); + } + multiplier = 1; + s->fn = f1->fn; + s->pre_post = num_coefs4 - 1; + s->preload = ((num_coefs - 1) >> 1) + (num_coefs4 - num_coefs); + s->n = num_coefs4; + s->phase_bits = phase_bits; + s->L = arbL; + s->use_hi_prec_clock = + mode>1 && (q_spec->flags & SOXR_HI_PREC_CLOCK) && !rational; +#if WITH_FLOAT_STD_PREC_CLOCK + if (order && !s->use_hi_prec_clock) { + s->at.flt = at; + s->step.flt = arbM; + s->out_in_ratio = (double)(arbL / s->step.flt); + } else +#endif + { + s->at.whole = (int64_t)(at * MULT32 + .5); +#if WITH_HI_PREC_CLOCK + if (s->use_hi_prec_clock) { + double M = arbM * MULT32; + s->at.fix.ls.parts.ms = 0x80000000ul; + s->step.whole = (int64_t)M; + M -= (double)s->step.whole; + M *= MULT32 * MULT32; + s->step.fix.ls.all = (uint64_t)M; + } else +#endif + s->step.whole = (int64_t)(arbM * MULT32 + .5); + s->out_in_ratio = MULT32 * arbL / (double)s->step.whole; + } + ++s; + } + + if (have_post_stage) + dft_stage_init(1, tighten(Fp0 / (upsample? alpha : 1)), upsample? max(2 - + Fs0 / alpha, 1) : Fs0, (double)max(postL, postM), att, phase_response, + s++, postL, postM, &multiplier, r_spec->log2_min_dft_size, + r_spec->log2_large_dft_size, core_flags, core->rdft_cb); + + lsx_debug("%g: >>%i %i/%i %i/%g %i/%i (%x)", 1/io_ratio, + shr, preL, preM, arbL, arbM, postL, postM, core_flags); + + for (i = 0, s = p->stages; i < p->num_stages; ++i, ++s) { + fifo_create(&s->fifo, (int)sizeof_real); + memset(fifo_reserve(&s->fifo, s->preload), 0, + sizeof_real * (size_t)s->preload); + lsx_debug_more("%5i|%-5i preload=%i remL=%i", + s->pre, s->pre_post-s->pre, s->preload, s->at.integer); + } + fifo_create(&s->fifo, (int)sizeof_real); + return 0; +} + +static bool stage_process(stage_t * stage, bool flushing) +{ + fifo_t * fifo = &stage->fifo; + bool done = false; + int want; + while (!done && (want = stage->input_size - fifo_occupancy(fifo)) > 0) { + if (stage->is_input) { + if (flushing) + memset(fifo_reserve(fifo, want), 0, fifo->item_size * (size_t)want); + else done = true; + } + else done = stage_process(stage - 1, flushing); + } + stage->fn(stage, &stage[1].fifo); + return done && fifo_occupancy(fifo) < stage->input_size; +} + +STATIC void _soxr_process(rate_t * p, size_t olen) +{ + int const n = p->flushing? min(-(int)p->samples_out, (int)olen) : (int)olen; + stage_t * stage = &p->stages[p->num_stages]; + fifo_t * fifo = &stage->fifo; + bool done = false; + while (!done && fifo_occupancy(fifo) < (int)n) + done = stage->is_input || stage_process(stage - 1, p->flushing); +} + +STATIC real * _soxr_input(rate_t * p, real const * samples, size_t n) +{ + if (p->flushing) + return 0; + p->samples_in += (int64_t)n; + return fifo_write(&p->stages[0].fifo, (int)n, samples); +} + +STATIC real const * _soxr_output(rate_t * p, real * samples, size_t * n0) +{ + fifo_t * fifo = &p->stages[p->num_stages].fifo; + int n = p->flushing? min(-(int)p->samples_out, (int)*n0) : (int)*n0; + p->samples_out += n = min(n, fifo_occupancy(fifo)); + return fifo_read(fifo, (int)(*n0 = (size_t)n), samples); +} + +STATIC void _soxr_flush(rate_t * p) +{ + if (p->flushing) return; + p->samples_out -= (int64_t)((double)p->samples_in / p->io_ratio + .5); + p->samples_in = 0; + p->flushing = true; +} + +STATIC void _soxr_close(rate_t * p) +{ + if (p->stages) { + fn_t const * const RDFT_CB = p->core->rdft_cb; + rate_shared_t * shared = p->stages[0].shared; + int i; + + for (i = 0; i <= p->num_stages; ++i) { + stage_t * s = &p->stages[i]; + rdft_free(s->dft_scratch); + rdft_free(s->dft_out); + fifo_delete(&s->fifo); + } + if (shared) { + for (i = 0; i < 2; ++i) { + dft_filter_t * f= &shared->dft_filter[i]; + rdft_free(f->coefs); + rdft_delete_setup(f->dft_forward_setup); + rdft_delete_setup(f->dft_backward_setup); + } + p->core->mem.free(shared->poly_fir_coefs); + memset(shared, 0, sizeof(*shared)); + } + free(p->stages); + (void)RDFT_CB; + } +} + +#if defined SOXR_LIB +STATIC double _soxr_delay(rate_t * p) +{ + return (double)p->samples_in / p->io_ratio - (double)p->samples_out; +} + +STATIC void _soxr_sizes(size_t * shared, size_t * channel) +{ + *shared = sizeof(rate_shared_t); + *channel = sizeof(rate_t); +} +#endif diff --git a/C/src/soxr-0.1.3/src/cr.h b/C/src/soxr-0.1.3/src/cr.h new file mode 100644 index 00000000..d6e86379 --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr.h @@ -0,0 +1,178 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_cr_included +#define soxr_cr_included + +#define FIFO_SIZE_T int +#include "fifo.h" + +typedef void real; /* float or double */ +struct stage; +typedef void (* stage_fn_t)(struct stage * input, fifo_t * output); +typedef struct half_fir_info { + int num_coefs; + real const * coefs; + stage_fn_t fn, dfn; + float att; +} half_fir_info_t; +typedef struct {float scalar; stage_fn_t fn;} poly_fir1_t; +typedef struct {float beta; poly_fir1_t interp[3];} poly_fir_t; + +#define U100_l 42 +#define MULT32 (65536. * 65536.) + +/* Conceptually: coef_p is &coefs[num_phases][fir_len][interp_order+1]: */ +#define coef(coef_p, interp_order, fir_len, phase_num, coef_interp_num, fir_coef_num) (coef_p)[\ + (fir_len) * ((interp_order) + 1) * (phase_num) + \ + ((interp_order) + 1) * (fir_coef_num) + \ + ((interp_order) - (coef_interp_num))] + +/* Conceptually: coef_p is &coefs[num_phases][fir_len/4][interp_order+1][4]: */ +#define coef4(coef_p, interp_order, fir_len, phase_num, coef_interp_num, fir_coef_num) (coef_p)[\ + (fir_len) * ((interp_order) + 1) * (phase_num) + \ + ((interp_order) + 1) * ((fir_coef_num) & ~3) + \ + 4 * ((interp_order) - (coef_interp_num)) + \ + ((fir_coef_num) & 3)] + +typedef union { /* Int64 in parts */ + #if HAVE_BIGENDIAN + struct {int32_t ms; uint32_t ls;} parts; + #else + struct {uint32_t ls; int32_t ms;} parts; + #endif + int64_t all; +} int64p_t; + +typedef union { /* Uint64 in parts */ + #if HAVE_BIGENDIAN + struct {uint32_t ms, ls;} parts; + #else + struct {uint32_t ls, ms;} parts; + #endif + uint64_t all; +} uint64p_t; + +typedef struct { + int dft_length, num_taps, post_peak; + void * dft_forward_setup, * dft_backward_setup; + real * coefs; +} dft_filter_t; + +typedef struct { /* So generated filter coefs may be shared between channels */ + real * poly_fir_coefs; + dft_filter_t dft_filter[2]; +} rate_shared_t; + +typedef double float_step_t; /* Or long double or __float128. */ + +typedef union { /* Fixed point arithmetic */ + struct {uint64p_t ls; int64p_t ms;} fix; /* Hi-prec has ~96 bits. */ + float_step_t flt; +} step_t; + +#define integer fix.ms.parts.ms +#define fraction fix.ms.parts.ls +#define whole fix.ms.all + +#define CORE_DBL 1 +#define CORE_SIMD_POLY 2 +#define CORE_SIMD_HALF 4 +#define CORE_SIMD_DFT 8 +#define LOG2_SIZEOF_REAL(core_flags) (2 + ((core_flags) & 1)) + +typedef int core_flags_t; + +#if defined SOXR_LIB +#include "rdft_t.h" +#else +typedef void fn_t; +#endif + +typedef struct stage { + int num; + + /* Common to all stage types: */ + core_flags_t core_flags; + stage_fn_t fn; + fifo_t fifo; + int pre; /* Number of past samples to store */ + int pre_post; /* pre + number of future samples to store */ + int preload; /* Number of zero samples to pre-load the fifo */ + double out_in_ratio; /* For buffer management. */ + int input_size; + bool is_input; + + /* For a stage with variable (run-time generated) filter coefs: */ + fn_t const * rdft_cb; + rate_shared_t * shared; + unsigned dft_filter_num; /* Which, if any, of the 2 DFT filters to use */ + real * dft_scratch; + float * dft_out; + real const * coefs; + + /* For a stage with variable L/M: */ + step_t at, step; + bool use_hi_prec_clock; + int L, remM; + int n, phase_bits, block_len; + double mult, phase0; +} stage_t; + +#define stage_occupancy(s) max(0, fifo_occupancy(&(s)->fifo) - (s)->pre_post) +#define stage_read_p(s) ((sample_t *)fifo_read_ptr(&(s)->fifo) + (s)->pre) + +#define lq_bw0 (1385/2048.) /* ~.67625, FP exact. */ + +typedef enum {rolloff_small, rolloff_medium, rolloff_none} rolloff_t; + +typedef struct { + void * (* alloc)(size_t); + void * (* calloc)(size_t, size_t); + void (* free)(void *); +} alloc_t; + +typedef struct { + alloc_t mem; + half_fir_info_t const * half_firs; + size_t half_firs_len; + half_fir_info_t const * doub_firs; + size_t doub_firs_len; + stage_fn_t cubic_stage_fn; + poly_fir_t const * poly_firs; + fn_t * rdft_cb; +} cr_core_t; + +typedef struct rate rate_t; +struct rate { + cr_core_t const * core; + double io_ratio; + int64_t samples_in, samples_out; + int num_stages, flushing; + stage_t * stages; +}; + +#if defined SOXR_LIB + +#include "soxr.h" + +char const * _soxr_init( + rate_t * const p, /* Per audio channel. */ + rate_shared_t * const shared, /* Between channels (undergoing same rate change)*/ + double const io_ratio, /* Input rate divided by output rate. */ + soxr_quality_spec_t const * const q_spec, + soxr_runtime_spec_t const * const r_spec, + double multiplier, /* Linear gain to apply during conversion. 1 */ + cr_core_t const * const core, + core_flags_t const); + +void _soxr_process(struct rate * p, size_t olen); +real * _soxr_input(struct rate * p, real const * samples, size_t n); +real const * _soxr_output(struct rate * p, real * samples, size_t * n0); +void _soxr_flush(struct rate * p); +void _soxr_close(struct rate * p); +double _soxr_delay(struct rate * p); +void _soxr_sizes(size_t * shared, size_t * channel); +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/cr32.c b/C/src/soxr-0.1.3/src/cr32.c new file mode 100644 index 00000000..b9eb264d --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr32.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define RATE_CB _soxr_rate32_cb +#define CORE_STR "cr32" + +#define CORE_TYPE 0 +#include "cr-core.c" diff --git a/C/src/soxr-0.1.3/src/cr32s.c b/C/src/soxr-0.1.3/src/cr32s.c new file mode 100644 index 00000000..5de2a433 --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr32s.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define RATE_CB _soxr_rate32s_cb +#define CORE_STR "cr32s" + +#define CORE_TYPE (CORE_SIMD_POLY|CORE_SIMD_HALF|CORE_SIMD_DFT) +#include "cr-core.c" diff --git a/C/src/soxr-0.1.3/src/cr64.c b/C/src/soxr-0.1.3/src/cr64.c new file mode 100644 index 00000000..518cdd76 --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr64.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define RATE_CB _soxr_rate64_cb +#define CORE_STR "cr64" + +#define CORE_TYPE CORE_DBL +#include "cr-core.c" diff --git a/C/src/soxr-0.1.3/src/cr64s.c b/C/src/soxr-0.1.3/src/cr64s.c new file mode 100644 index 00000000..5dcd6f10 --- /dev/null +++ b/C/src/soxr-0.1.3/src/cr64s.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define RATE_CB _soxr_rate64s_cb +#define CORE_STR "cr64s" + +#define CORE_TYPE (CORE_DBL|CORE_SIMD_POLY|CORE_SIMD_HALF|CORE_SIMD_DFT) +#include "cr-core.c" diff --git a/C/src/soxr-0.1.3/src/data-io.c b/C/src/soxr-0.1.3/src/data-io.c new file mode 100644 index 00000000..fb616758 --- /dev/null +++ b/C/src/soxr-0.1.3/src/data-io.c @@ -0,0 +1,223 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include +#include + +#include "data-io.h" +#include "internal.h" + + + +#define DEINTERLEAVE_FROM(T,flag) do { \ + unsigned i; \ + size_t j; \ + T const * src = *src0; \ + if (ch > 1) for (j = 0; j < n; ++j) \ + for (i = 0; i < ch; ++i) dest[i][j] = (DEINTERLEAVE_TO)*src++; \ + else if (flag) memcpy(dest[0], src, n * sizeof(T)), src = &src[n]; \ + else for (j = 0; j < n; dest[0][j++] = (DEINTERLEAVE_TO)*src++); \ + *src0 = src; \ +} while (0) + + + +#if WITH_CR64 || WITH_CR64S +void _soxr_deinterleave(double * * dest, /* Round/clipping not needed here */ + soxr_datatype_t data_type, void const * * src0, size_t n, unsigned ch) +{ +#define DEINTERLEAVE_TO double + switch (data_type & 3) { + case SOXR_FLOAT32: DEINTERLEAVE_FROM(float, 0); break; + case SOXR_FLOAT64: DEINTERLEAVE_FROM(double, 1); break; + case SOXR_INT32: DEINTERLEAVE_FROM(int32_t, 0); break; + case SOXR_INT16: DEINTERLEAVE_FROM(int16_t, 0); break; + default: break; + } +} +#endif + + + +#if WITH_CR32 || WITH_CR32S || WITH_VR32 +void _soxr_deinterleave_f(float * * dest, /* Round/clipping not needed here */ + soxr_datatype_t data_type, void const * * src0, size_t n, unsigned ch) +{ +#undef DEINTERLEAVE_TO +#define DEINTERLEAVE_TO float + switch (data_type & 3) { + case SOXR_FLOAT32: DEINTERLEAVE_FROM(float, 1); break; + case SOXR_FLOAT64: DEINTERLEAVE_FROM(double, 0); break; + case SOXR_INT32: DEINTERLEAVE_FROM(int32_t, 0); break; + case SOXR_INT16: DEINTERLEAVE_FROM(int16_t, 0); break; + default: break; + } +} +#endif + + + +#include "rint.h" + + + +#if defined FE_INVALID && defined FPU_RINT32 && defined __STDC_VERSION__ + #if __STDC_VERSION__ >= 199901L + #pragma STDC FENV_ACCESS ON + #endif +#endif + +#if WITH_CR64 || WITH_CR64S +#define FLOATX double + +#define LSX_RINT_CLIP_2 lsx_rint32_clip_2 +#define LSX_RINT_CLIP lsx_rint32_clip +#define RINT_CLIP rint32_clip +#define RINT rint32D +#if defined FPU_RINT32 + #define FPU_RINT +#endif +#define RINT_T int32_t +#define RINT_MAX 2147483647L +#include "rint-clip.h" + +#define LSX_RINT_CLIP_2 lsx_rint16_clip_2 +#define LSX_RINT_CLIP lsx_rint16_clip +#define RINT_CLIP rint16_clip +#define RINT rint16D +#if defined FPU_RINT16 + #define FPU_RINT +#endif +#define RINT_T int16_t +#define RINT_MAX 32767 +#include "rint-clip.h" + +#define LSX_RINT_CLIP_2 lsx_rint16_clip_2_dither +#define LSX_RINT_CLIP lsx_rint16_clip_dither +#define RINT_CLIP rint16_clip_dither +#define RINT rint16D +#if defined FPU_RINT16 + #define FPU_RINT +#endif +#define RINT_T int16_t +#define RINT_MAX 32767 +#define DITHER +#include "rint-clip.h" + +#undef FLOATX +#endif + + + +#if WITH_CR32 || WITH_CR32S || WITH_VR32 +#define FLOATX float + +#define LSX_RINT_CLIP_2 lsx_rint32_clip_2_f +#define LSX_RINT_CLIP lsx_rint32_clip_f +#define RINT_CLIP rint32_clip_f +#define RINT rint32F +#if defined FPU_RINT32 + #define FPU_RINT +#endif +#define RINT_T int32_t +#define RINT_MAX 2147483647L +#include "rint-clip.h" + +#define LSX_RINT_CLIP_2 lsx_rint16_clip_2_f +#define LSX_RINT_CLIP lsx_rint16_clip_f +#define RINT_CLIP rint16_clip_f +#define RINT rint16F +#if defined FPU_RINT16 + #define FPU_RINT +#endif +#define RINT_T int16_t +#define RINT_MAX 32767 +#include "rint-clip.h" + +#define LSX_RINT_CLIP_2 lsx_rint16_clip_2_dither_f +#define LSX_RINT_CLIP lsx_rint16_clip_dither_f +#define RINT_CLIP rint16_clip_dither_f +#define RINT rint16D +#if defined FPU_RINT16 + #define FPU_RINT +#endif +#define RINT_T int16_t +#define RINT_MAX 32767 +#define DITHER +#include "rint-clip.h" + +#undef FLOATX +#endif + +#if defined FE_INVALID && defined FPU_RINT32 && defined __STDC_VERSION__ + #if __STDC_VERSION__ >= 199901L + #pragma STDC FENV_ACCESS OFF + #endif +#endif + + + +#define INTERLEAVE_TO(T,flag) do { \ + unsigned i; \ + size_t j; \ + T * dest = *dest0; \ + if (ch > 1) \ + for (j = 0; j < n; ++j) for (i = 0; i < ch; ++i) *dest++ = (T)src[i][j]; \ + else if (flag) memcpy(dest, src[0], n * sizeof(T)), dest = &dest[n]; \ + else for (j = 0; j < n; *dest++ = (T)src[0][j++]); \ + *dest0 = dest; \ + return 0; \ +} while (0) + +#if WITH_CR64 || WITH_CR64S +size_t /* clips */ _soxr_interleave(soxr_datatype_t data_type, void * * dest0, + double const * const * src, size_t n, unsigned ch, unsigned long * seed) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: INTERLEAVE_TO(float, 0); + case SOXR_FLOAT64: INTERLEAVE_TO(double, 1); + + case SOXR_INT32: if (ch == 1) + return lsx_rint32_clip(dest0, src[0], n); + return lsx_rint32_clip_2(dest0, src, ch, n); + + case SOXR_INT16: if (seed) { + if (ch == 1) + return lsx_rint16_clip_dither(dest0, src[0], n, seed); + return lsx_rint16_clip_2_dither(dest0, src, ch, n, seed); + } + if (ch == 1) + return lsx_rint16_clip(dest0, src[0], n); + return lsx_rint16_clip_2(dest0, src, ch, n); + default: break; + } + return 0; +} +#endif + +#if WITH_CR32 || WITH_CR32S || WITH_VR32 +size_t /* clips */ _soxr_interleave_f(soxr_datatype_t data_type, void * * dest0, + float const * const * src, size_t n, unsigned ch, unsigned long * seed) +{ + switch (data_type & 3) { + case SOXR_FLOAT32: INTERLEAVE_TO(float, 1); + case SOXR_FLOAT64: INTERLEAVE_TO(double, 0); + + case SOXR_INT32: if (ch == 1) + return lsx_rint32_clip_f(dest0, src[0], n); + return lsx_rint32_clip_2_f(dest0, src, ch, n); + + case SOXR_INT16: if (seed) { + if (ch == 1) + return lsx_rint16_clip_dither_f(dest0, src[0], n, seed); + return lsx_rint16_clip_2_dither_f(dest0, src, ch, n, seed); + } + if (ch == 1) + return lsx_rint16_clip_f(dest0, src[0], n); + return lsx_rint16_clip_2_f(dest0, src, ch, n); + default: break; + } + return 0; +} +#endif diff --git a/C/src/soxr-0.1.3/src/data-io.h b/C/src/soxr-0.1.3/src/data-io.h new file mode 100644 index 00000000..83a0a133 --- /dev/null +++ b/C/src/soxr-0.1.3/src/data-io.h @@ -0,0 +1,39 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_data_io_included +#define soxr_data_io_included + +#include "soxr.h" + +void _soxr_deinterleave( + double * * dest, + soxr_datatype_t data_type, + void const * * src0, + size_t n, + unsigned ch); + +void _soxr_deinterleave_f( + float * * dest, + soxr_datatype_t data_type, + void const * * src0, + size_t n, + unsigned ch); + +size_t /* clips */ _soxr_interleave( + soxr_datatype_t data_type, + void * * dest, + double const * const * src, + size_t n, + unsigned ch, + unsigned long * seed); + +size_t /* clips */ _soxr_interleave_f( + soxr_datatype_t data_type, + void * * dest, + float const * const * src, + size_t n, + unsigned ch, + unsigned long * seed); + +#endif diff --git a/C/src/soxr-0.1.3/src/dbesi0.c b/C/src/soxr-0.1.3/src/dbesi0.c new file mode 100644 index 00000000..654216eb --- /dev/null +++ b/C/src/soxr-0.1.3/src/dbesi0.c @@ -0,0 +1,149 @@ +/* Copyright(C) 1996 Takuya OOURA + +You may use, copy, modify this code for any purpose and +without fee. + +Package home: http://www.kurims.kyoto-u.ac.jp/~ooura/bessel.html +*/ + +#include "filter.h" +#define dbesi0 lsx_bessel_I_0 + +/* Bessel I_0(x) function in double precision */ + +#include + +double dbesi0(double x) +{ + int k; + double w, t, y; + static double a[65] = { + 8.5246820682016865877e-11, 2.5966600546497407288e-9, + 7.9689994568640180274e-8, 1.9906710409667748239e-6, + 4.0312469446528002532e-5, 6.4499871606224265421e-4, + 0.0079012345761930579108, 0.071111111109207045212, + 0.444444444444724909, 1.7777777777777532045, + 4.0000000000000011182, 3.99999999999999998, + 1.0000000000000000001, + 1.1520919130377195927e-10, 2.2287613013610985225e-9, + 8.1903951930694585113e-8, 1.9821560631611544984e-6, + 4.0335461940910133184e-5, 6.4495330974432203401e-4, + 0.0079013012611467520626, 0.071111038160875566622, + 0.44444450319062699316, 1.7777777439146450067, + 4.0000000132337935071, 3.9999999968569015366, + 1.0000000003426703174, + 1.5476870780515238488e-10, 1.2685004214732975355e-9, + 9.2776861851114223267e-8, 1.9063070109379044378e-6, + 4.0698004389917945832e-5, 6.4370447244298070713e-4, + 0.0079044749458444976958, 0.071105052411749363882, + 0.44445280640924755082, 1.7777694934432109713, + 4.0000055808824003386, 3.9999977081165740932, + 1.0000004333949319118, + 2.0675200625006793075e-10, -6.1689554705125681442e-10, + 1.2436765915401571654e-7, 1.5830429403520613423e-6, + 4.2947227560776583326e-5, 6.3249861665073441312e-4, + 0.0079454472840953930811, 0.070994327785661860575, + 0.44467219586283000332, 1.7774588182255374745, + 4.0003038986252717972, 3.9998233869142057195, + 1.0000472932961288324, + 2.7475684794982708655e-10, -3.8991472076521332023e-9, + 1.9730170483976049388e-7, 5.9651531561967674521e-7, + 5.1992971474748995357e-5, 5.7327338675433770752e-4, + 0.0082293143836530412024, 0.069990934858728039037, + 0.44726764292723985087, 1.7726685170014087784, + 4.0062907863712704432, 3.9952750700487845355, + 1.0016354346654179322 + }; + static double b[70] = { + 6.7852367144945531383e-8, 4.6266061382821826854e-7, + 6.9703135812354071774e-6, 7.6637663462953234134e-5, + 7.9113515222612691636e-4, 0.0073401204731103808981, + 0.060677114958668837046, 0.43994941411651569622, + 2.7420017097661750609, 14.289661921740860534, + 59.820609640320710779, 188.78998681199150629, + 399.8731367825601118, 427.56411572180478514, + 1.8042097874891098754e-7, 1.2277164312044637357e-6, + 1.8484393221474274861e-5, 2.0293995900091309208e-4, + 0.0020918539850246207459, 0.019375315654033949297, + 0.15985869016767185908, 1.1565260527420641724, + 7.1896341224206072113, 37.354773811947484532, + 155.80993164266268457, 489.5211371158540918, + 1030.9147225169564806, 1093.5883545113746958, + 4.8017305613187493564e-7, 3.261317843912380074e-6, + 4.9073137508166159639e-5, 5.3806506676487583755e-4, + 0.0055387918291051866561, 0.051223717488786549025, + 0.42190298621367914765, 3.0463625987357355872, + 18.895299447327733204, 97.915189029455461554, + 407.13940115493494659, 1274.3088990480582632, + 2670.9883037012547506, 2815.7166284662544712, + 1.2789926338424623394e-6, 8.6718263067604918916e-6, + 1.3041508821299929489e-4, 0.001428224737372747892, + 0.014684070635768789378, 0.13561403190404185755, + 1.1152592585977393953, 8.0387088559465389038, + 49.761318895895479206, 257.2684232313529138, + 1066.8543146269566231, 3328.3874581009636362, + 6948.8586598121634874, 7288.4893398212481055, + 3.409350368197032893e-6, 2.3079025203103376076e-5, + 3.4691373283901830239e-4, 0.003794994977222908545, + 0.038974209677945602145, 0.3594948380414878371, + 2.9522878893539528226, 21.246564609514287056, + 131.28727387146173141, 677.38107093296675421, + 2802.3724744545046518, 8718.5731420798254081, + 18141.348781638832286, 18948.925349296308859 + }; + static double c[45] = { + 2.5568678676452702768e-15, 3.0393953792305924324e-14, + 6.3343751991094840009e-13, 1.5041298011833009649e-11, + 4.4569436918556541414e-10, 1.746393051427167951e-8, + 1.0059224011079852317e-6, 1.0729838945088577089e-4, + 0.05150322693642527738, + 5.2527963991711562216e-15, 7.202118481421005641e-15, + 7.2561421229904797156e-13, 1.482312146673104251e-11, + 4.4602670450376245434e-10, 1.7463600061788679671e-8, + 1.005922609132234756e-6, 1.0729838937545111487e-4, + 0.051503226936437300716, + 1.3365917359358069908e-14, -1.2932643065888544835e-13, + 1.7450199447905602915e-12, 1.0419051209056979788e-11, + 4.58047881980598326e-10, 1.7442405450073548966e-8, + 1.0059461453281292278e-6, 1.0729837434500161228e-4, + 0.051503226940658446941, + 5.3771611477352308649e-14, -1.1396193006413731702e-12, + 1.2858641335221653409e-11, -5.9802086004570057703e-11, + 7.3666894305929510222e-10, 1.6731837150730356448e-8, + 1.0070831435812128922e-6, 1.0729733111203704813e-4, + 0.051503227360726294675, + 3.7819492084858931093e-14, -4.8600496888588034879e-13, + 1.6898350504817224909e-12, 4.5884624327524255865e-11, + 1.2521615963377513729e-10, 1.8959658437754727957e-8, + 1.0020716710561353622e-6, 1.073037119856927559e-4, + 0.05150322383300230775 + }; + + w = fabs(x); + if (w < 8.5) { + t = w * w * 0.0625; + k = 13 * ((int) t); + y = (((((((((((a[k] * t + a[k + 1]) * t + + a[k + 2]) * t + a[k + 3]) * t + a[k + 4]) * t + + a[k + 5]) * t + a[k + 6]) * t + a[k + 7]) * t + + a[k + 8]) * t + a[k + 9]) * t + a[k + 10]) * t + + a[k + 11]) * t + a[k + 12]; + } else if (w < 12.5) { + k = (int) w; + t = w - k; + k = 14 * (k - 8); + y = ((((((((((((b[k] * t + b[k + 1]) * t + + b[k + 2]) * t + b[k + 3]) * t + b[k + 4]) * t + + b[k + 5]) * t + b[k + 6]) * t + b[k + 7]) * t + + b[k + 8]) * t + b[k + 9]) * t + b[k + 10]) * t + + b[k + 11]) * t + b[k + 12]) * t + b[k + 13]; + } else { + t = 60 / w; + k = 9 * ((int) t); + y = ((((((((c[k] * t + c[k + 1]) * t + + c[k + 2]) * t + c[k + 3]) * t + c[k + 4]) * t + + c[k + 5]) * t + c[k + 6]) * t + c[k + 7]) * t + + c[k + 8]) * sqrt(t) * exp(w); + } + return y; +} diff --git a/C/src/soxr-0.1.3/src/dev32s.h b/C/src/soxr-0.1.3/src/dev32s.h new file mode 100644 index 00000000..7edae868 --- /dev/null +++ b/C/src/soxr-0.1.3/src/dev32s.h @@ -0,0 +1,54 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_dev32s_included +#define soxr_dev32s_included + +#if defined __GNUC__ + #define SIMD_INLINE(T) static __inline T __attribute__((always_inline)) + #define vAlign __attribute__((aligned (16))) +#elif defined _MSC_VER + #define SIMD_INLINE(T) static __forceinline T + #define vAlign __declspec(align(16)) +#endif + +#if defined __x86_64__ || defined _M_X64 || defined i386 || defined _M_IX86 + +#include + +#define vZero() _mm_setzero_ps() +#define vSet1(a) _mm_set_ss(a) +#define vMul(a,b) _mm_mul_ps(a,b) +#define vAdd(a,b) _mm_add_ps(a,b) +#define vMac(a,b,c) vAdd(vMul(a,b),c) +#define vLds(a) _mm_set1_ps(a) +#define vLd(a) _mm_load_ps(a) +#define vLdu(a) _mm_loadu_ps(a) + +typedef __m128 v4_t; + +SIMD_INLINE(void) vStorSum(float * a, v4_t b) { + v4_t t = vAdd(_mm_movehl_ps(b, b), b); + _mm_store_ss(a, vAdd(t, _mm_shuffle_ps(t,t,1)));} + +#elif defined __arm__ + +#include + +#define vZero() vdupq_n_f32(0) +#define vMul(a,b) vmulq_f32(a,b) +#define vAdd(a,b) vaddq_f32(a,b) +#define vMac(a,b,c) vmlaq_f32(c,a,b) +#define vLds(a) vld1q_dup_f32(&(a)) +#define vLd(a) vld1q_f32(a) +#define vLdu(a) vld1q_f32(a) + +typedef float32x4_t v4_t; + +SIMD_INLINE(void) vStorSum(float * a, v4_t b) { + float32x2_t t = vadd_f32(vget_high_f32(b), vget_low_f32(b)); + *a = vget_lane_f32(vpadd_f32(t, t), 0);} + +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/dev64s.h b/C/src/soxr-0.1.3/src/dev64s.h new file mode 100644 index 00000000..4672210d --- /dev/null +++ b/C/src/soxr-0.1.3/src/dev64s.h @@ -0,0 +1,42 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_dev64s_included +#define soxr_dev64s_included + +#if defined __GNUC__ + #define SIMD_INLINE(T) static __inline T __attribute__((always_inline)) + #define vAlign __attribute__((aligned (32))) +#elif defined _MSC_VER + #define SIMD_INLINE(T) static __forceinline T + #define vAlign __declspec(align(32)) +#else + #define SIMD_INLINE(T) static __inline T +#endif + +#if defined __x86_64__ || defined _M_X64 || defined i386 || defined _M_IX86 + +#include + +#if defined __AVX__ + +#define vZero() _mm256_setzero_pd() +#define vSet1(a) _mm256_set_pd(0,0,0,a) +#define vMul(a,b) _mm256_mul_pd(a,b) +#define vAdd(a,b) _mm256_add_pd(a,b) +#define vMac(a,b,c) vAdd(vMul(a,b),c) /* Note: gcc -mfma will `fuse' these */ +#define vLds(a) _mm256_set1_pd(a) +#define vLd(a) _mm256_load_pd(a) +#define vLdu(a) _mm256_loadu_pd(a) + +typedef __m256d v4_t; + +SIMD_INLINE(void) vStorSum(double * a, v4_t b) { + b = _mm256_hadd_pd(b, _mm256_permute2f128_pd(b,b,1)); + _mm_store_sd(a, _mm256_castpd256_pd128(_mm256_hadd_pd(b,b)));} + +#endif + +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/fft4g.c b/C/src/soxr-0.1.3/src/fft4g.c new file mode 100644 index 00000000..cf6293a0 --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g.c @@ -0,0 +1,1346 @@ +/* Copyright Takuya OOURA, 1996-2001. + +You may use, copy, modify and distribute this code for any +purpose (include commercial use) and without fee. Please +refer to this package when you modify this code. + +Package home: http://www.kurims.kyoto-u.ac.jp/~ooura/fft.html + +Fast Fourier/Cosine/Sine Transform + dimension :one + data length :power of 2 + decimation :frequency + radix :4, 2 + data :inplace + table :use +functions + cdft: Complex Discrete Fourier Transform + rdft: Real Discrete Fourier Transform + ddct: Discrete Cosine Transform + ddst: Discrete Sine Transform + dfct: Cosine Transform of RDFT (Real Symmetric DFT) + dfst: Sine Transform of RDFT (Real Anti-symmetric DFT) +function prototypes + void cdft(int, int, double *, int *, double *); + void rdft(int, int, double *, int *, double *); + void ddct(int, int, double *, int *, double *); + void ddst(int, int, double *, int *, double *); + void dfct(int, double *, double *, int *, double *); + void dfst(int, double *, double *, int *, double *); + + +-------- Complex DFT (Discrete Fourier Transform) -------- + [definition] + + X[k] = sum_j=0^n-1 x[j]*exp(2*pi*i*j*k/n), 0<=k + X[k] = sum_j=0^n-1 x[j]*exp(-2*pi*i*j*k/n), 0<=k + ip[0] = 0; // first time only + cdft(2*n, 1, a, ip, w); + + ip[0] = 0; // first time only + cdft(2*n, -1, a, ip, w); + [parameters] + 2*n :data length (int) + n >= 1, n = power of 2 + a[0...2*n-1] :input/output data (double *) + input data + a[2*j] = Re(x[j]), + a[2*j+1] = Im(x[j]), 0<=j= 2+sqrt(n) + strictly, + length of ip >= + 2+(1<<(int)(log(n+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n/2-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + cdft(2*n, -1, a, ip, w); + is + cdft(2*n, 1, a, ip, w); + for (j = 0; j <= 2 * n - 1; j++) { + a[j] *= 1.0 / n; + } + . + + +-------- Real DFT / Inverse of Real DFT -------- + [definition] + RDFT + R[k] = sum_j=0^n-1 a[j]*cos(2*pi*j*k/n), 0<=k<=n/2 + I[k] = sum_j=0^n-1 a[j]*sin(2*pi*j*k/n), 0 IRDFT (excluding scale) + a[k] = (R[0] + R[n/2]*cos(pi*k))/2 + + sum_j=1^n/2-1 R[j]*cos(2*pi*j*k/n) + + sum_j=1^n/2-1 I[j]*sin(2*pi*j*k/n), 0<=k + ip[0] = 0; // first time only + rdft(n, 1, a, ip, w); + + ip[0] = 0; // first time only + rdft(n, -1, a, ip, w); + [parameters] + n :data length (int) + n >= 2, n = power of 2 + a[0...n-1] :input/output data (double *) + + output data + a[2*k] = R[k], 0<=k + input data + a[2*j] = R[j], 0<=j= 2+sqrt(n/2) + strictly, + length of ip >= + 2+(1<<(int)(log(n/2+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n/2-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + rdft(n, 1, a, ip, w); + is + rdft(n, -1, a, ip, w); + for (j = 0; j <= n - 1; j++) { + a[j] *= 2.0 / n; + } + . + + +-------- DCT (Discrete Cosine Transform) / Inverse of DCT -------- + [definition] + IDCT (excluding scale) + C[k] = sum_j=0^n-1 a[j]*cos(pi*j*(k+1/2)/n), 0<=k DCT + C[k] = sum_j=0^n-1 a[j]*cos(pi*(j+1/2)*k/n), 0<=k + ip[0] = 0; // first time only + ddct(n, 1, a, ip, w); + + ip[0] = 0; // first time only + ddct(n, -1, a, ip, w); + [parameters] + n :data length (int) + n >= 2, n = power of 2 + a[0...n-1] :input/output data (double *) + output data + a[k] = C[k], 0<=k= 2+sqrt(n/2) + strictly, + length of ip >= + 2+(1<<(int)(log(n/2+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n*5/4-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + ddct(n, -1, a, ip, w); + is + a[0] *= 0.5; + ddct(n, 1, a, ip, w); + for (j = 0; j <= n - 1; j++) { + a[j] *= 2.0 / n; + } + . + + +-------- DST (Discrete Sine Transform) / Inverse of DST -------- + [definition] + IDST (excluding scale) + S[k] = sum_j=1^n A[j]*sin(pi*j*(k+1/2)/n), 0<=k DST + S[k] = sum_j=0^n-1 a[j]*sin(pi*(j+1/2)*k/n), 0 + ip[0] = 0; // first time only + ddst(n, 1, a, ip, w); + + ip[0] = 0; // first time only + ddst(n, -1, a, ip, w); + [parameters] + n :data length (int) + n >= 2, n = power of 2 + a[0...n-1] :input/output data (double *) + + input data + a[j] = A[j], 0 + output data + a[k] = S[k], 0= 2+sqrt(n/2) + strictly, + length of ip >= + 2+(1<<(int)(log(n/2+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n*5/4-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + ddst(n, -1, a, ip, w); + is + a[0] *= 0.5; + ddst(n, 1, a, ip, w); + for (j = 0; j <= n - 1; j++) { + a[j] *= 2.0 / n; + } + . + + +-------- Cosine Transform of RDFT (Real Symmetric DFT) -------- + [definition] + C[k] = sum_j=0^n a[j]*cos(pi*j*k/n), 0<=k<=n + [usage] + ip[0] = 0; // first time only + dfct(n, a, t, ip, w); + [parameters] + n :data length - 1 (int) + n >= 2, n = power of 2 + a[0...n] :input/output data (double *) + output data + a[k] = C[k], 0<=k<=n + t[0...n/2] :work area (double *) + ip[0...*] :work area for bit reversal (int *) + length of ip >= 2+sqrt(n/4) + strictly, + length of ip >= + 2+(1<<(int)(log(n/4+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n*5/8-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + a[0] *= 0.5; + a[n] *= 0.5; + dfct(n, a, t, ip, w); + is + a[0] *= 0.5; + a[n] *= 0.5; + dfct(n, a, t, ip, w); + for (j = 0; j <= n; j++) { + a[j] *= 2.0 / n; + } + . + + +-------- Sine Transform of RDFT (Real Anti-symmetric DFT) -------- + [definition] + S[k] = sum_j=1^n-1 a[j]*sin(pi*j*k/n), 0= 2, n = power of 2 + a[0...n-1] :input/output data (double *) + output data + a[k] = S[k], 0= 2+sqrt(n/4) + strictly, + length of ip >= + 2+(1<<(int)(log(n/4+0.5)/log(2))/2). + ip[0],ip[1] are pointers of the cos/sin table. + w[0...n*5/8-1] :cos/sin table (double *) + w[],ip[] are initialized if ip[0] == 0. + [remark] + Inverse of + dfst(n, a, t, ip, w); + is + dfst(n, a, t, ip, w); + for (j = 1; j <= n - 1; j++) { + a[j] *= 2.0 / n; + } + . + + +Appendix : + The cos/sin table is recalculated when the larger table required. + w[] and ip[] are compatible with all routines. +*/ + + +#include "math-wrap.h" +#include "fft4g.h" + +#ifdef FFT4G_FLOAT + #define double float + #define one_half 0.5f + + #define sin(x) sinf(x) + #define cos(x) cosf(x) + #define atan(x) atanf(x) + + #define cdft lsx_cdft_f + #define rdft lsx_rdft_f + #define ddct lsx_ddct_f + #define ddst lsx_ddst_f + #define dfct lsx_dfct_f + #define dfst lsx_dfst_f +#else + #define one_half 0.5 + #define cdft lsx_cdft + #define rdft lsx_rdft + #define ddct lsx_ddct + #define ddst lsx_ddst + #define dfct lsx_dfct + #define dfst lsx_dfst +#endif + +static void bitrv2conj(int n, int *ip, double *a); +static void bitrv2(int n, int *ip, double *a); +static void cft1st(int n, double *a, double const *w); +static void cftbsub(int n, double *a, double const *w); +static void cftfsub(int n, double *a, double const *w); +static void cftmdl(int n, int l, double *a, double const *w); +static void dctsub(int n, double *a, int nc, double const *c); +static void dstsub(int n, double *a, int nc, double const *c); +static void makect(int nc, int *ip, double *c); +static void makewt(int nw, int *ip, double *w); +static void rftbsub(int n, double *a, int nc, double const *c); +static void rftfsub(int n, double *a, int nc, double const *c); + + +void cdft(int n, int isgn, double *a, int *ip, double *w) +{ + if (n > (ip[0] << 2)) { + makewt(n >> 2, ip, w); + } + if (n > 4) { + if (isgn >= 0) { + bitrv2(n, ip + 2, a); + cftfsub(n, a, w); + } else { + bitrv2conj(n, ip + 2, a); + cftbsub(n, a, w); + } + } else if (n == 4) { + cftfsub(n, a, w); + } +} + + +void rdft(int n, int isgn, double *a, int *ip, double *w) +{ + int nw, nc; + double xi; + + nw = ip[0]; + if (n > (nw << 2)) { + nw = n >> 2; + makewt(nw, ip, w); + } + nc = ip[1]; + if (n > (nc << 2)) { + nc = n >> 2; + makect(nc, ip, w + nw); + } + if (isgn >= 0) { + if (n > 4) { + bitrv2(n, ip + 2, a); + cftfsub(n, a, w); + rftfsub(n, a, nc, w + nw); + } else if (n == 4) { + cftfsub(n, a, w); + } + xi = a[0] - a[1]; + a[0] += a[1]; + a[1] = xi; + } else { + a[1] = one_half * (a[0] - a[1]); + a[0] -= a[1]; + if (n > 4) { + rftbsub(n, a, nc, w + nw); + bitrv2(n, ip + 2, a); + cftbsub(n, a, w); + } else if (n == 4) { + cftfsub(n, a, w); + } + } +} + + +void ddct(int n, int isgn, double *a, int *ip, double *w) +{ + int j, nw, nc; + double xr; + + nw = ip[0]; + if (n > (nw << 2)) { + nw = n >> 2; + makewt(nw, ip, w); + } + nc = ip[1]; + if (n > nc) { + nc = n; + makect(nc, ip, w + nw); + } + if (isgn < 0) { + xr = a[n - 1]; + for (j = n - 2; j >= 2; j -= 2) { + a[j + 1] = a[j] - a[j - 1]; + a[j] += a[j - 1]; + } + a[1] = a[0] - xr; + a[0] += xr; + if (n > 4) { + rftbsub(n, a, nc, w + nw); + bitrv2(n, ip + 2, a); + cftbsub(n, a, w); + } else if (n == 4) { + cftfsub(n, a, w); + } + } + dctsub(n, a, nc, w + nw); + if (isgn >= 0) { + if (n > 4) { + bitrv2(n, ip + 2, a); + cftfsub(n, a, w); + rftfsub(n, a, nc, w + nw); + } else if (n == 4) { + cftfsub(n, a, w); + } + xr = a[0] - a[1]; + a[0] += a[1]; + for (j = 2; j < n; j += 2) { + a[j - 1] = a[j] - a[j + 1]; + a[j] += a[j + 1]; + } + a[n - 1] = xr; + } +} + + +void ddst(int n, int isgn, double *a, int *ip, double *w) +{ + int j, nw, nc; + double xr; + + nw = ip[0]; + if (n > (nw << 2)) { + nw = n >> 2; + makewt(nw, ip, w); + } + nc = ip[1]; + if (n > nc) { + nc = n; + makect(nc, ip, w + nw); + } + if (isgn < 0) { + xr = a[n - 1]; + for (j = n - 2; j >= 2; j -= 2) { + a[j + 1] = -a[j] - a[j - 1]; + a[j] -= a[j - 1]; + } + a[1] = a[0] + xr; + a[0] -= xr; + if (n > 4) { + rftbsub(n, a, nc, w + nw); + bitrv2(n, ip + 2, a); + cftbsub(n, a, w); + } else if (n == 4) { + cftfsub(n, a, w); + } + } + dstsub(n, a, nc, w + nw); + if (isgn >= 0) { + if (n > 4) { + bitrv2(n, ip + 2, a); + cftfsub(n, a, w); + rftfsub(n, a, nc, w + nw); + } else if (n == 4) { + cftfsub(n, a, w); + } + xr = a[0] - a[1]; + a[0] += a[1]; + for (j = 2; j < n; j += 2) { + a[j - 1] = -a[j] - a[j + 1]; + a[j] -= a[j + 1]; + } + a[n - 1] = -xr; + } +} + + +void dfct(int n, double *a, double *t, int *ip, double *w) +{ + int j, k, l, m, mh, nw, nc; + double xr, xi, yr, yi; + + nw = ip[0]; + if (n > (nw << 3)) { + nw = n >> 3; + makewt(nw, ip, w); + } + nc = ip[1]; + if (n > (nc << 1)) { + nc = n >> 1; + makect(nc, ip, w + nw); + } + m = n >> 1; + yi = a[m]; + xi = a[0] + a[n]; + a[0] -= a[n]; + t[0] = xi - yi; + t[m] = xi + yi; + if (n > 2) { + mh = m >> 1; + for (j = 1; j < mh; j++) { + k = m - j; + xr = a[j] - a[n - j]; + xi = a[j] + a[n - j]; + yr = a[k] - a[n - k]; + yi = a[k] + a[n - k]; + a[j] = xr; + a[k] = yr; + t[j] = xi - yi; + t[k] = xi + yi; + } + t[mh] = a[mh] + a[n - mh]; + a[mh] -= a[n - mh]; + dctsub(m, a, nc, w + nw); + if (m > 4) { + bitrv2(m, ip + 2, a); + cftfsub(m, a, w); + rftfsub(m, a, nc, w + nw); + } else if (m == 4) { + cftfsub(m, a, w); + } + a[n - 1] = a[0] - a[1]; + a[1] = a[0] + a[1]; + for (j = m - 2; j >= 2; j -= 2) { + a[2 * j + 1] = a[j] + a[j + 1]; + a[2 * j - 1] = a[j] - a[j + 1]; + } + l = 2; + m = mh; + while (m >= 2) { + dctsub(m, t, nc, w + nw); + if (m > 4) { + bitrv2(m, ip + 2, t); + cftfsub(m, t, w); + rftfsub(m, t, nc, w + nw); + } else if (m == 4) { + cftfsub(m, t, w); + } + a[n - l] = t[0] - t[1]; + a[l] = t[0] + t[1]; + k = 0; + for (j = 2; j < m; j += 2) { + k += l << 2; + a[k - l] = t[j] - t[j + 1]; + a[k + l] = t[j] + t[j + 1]; + } + l <<= 1; + mh = m >> 1; + for (j = 0; j < mh; j++) { + k = m - j; + t[j] = t[m + k] - t[m + j]; + t[k] = t[m + k] + t[m + j]; + } + t[mh] = t[m + mh]; + m = mh; + } + a[l] = t[0]; + a[n] = t[2] - t[1]; + a[0] = t[2] + t[1]; + } else { + a[1] = a[0]; + a[2] = t[0]; + a[0] = t[1]; + } +} + + +void dfst(int n, double *a, double *t, int *ip, double *w) +{ + int j, k, l, m, mh, nw, nc; + double xr, xi, yr, yi; + + nw = ip[0]; + if (n > (nw << 3)) { + nw = n >> 3; + makewt(nw, ip, w); + } + nc = ip[1]; + if (n > (nc << 1)) { + nc = n >> 1; + makect(nc, ip, w + nw); + } + if (n > 2) { + m = n >> 1; + mh = m >> 1; + for (j = 1; j < mh; j++) { + k = m - j; + xr = a[j] + a[n - j]; + xi = a[j] - a[n - j]; + yr = a[k] + a[n - k]; + yi = a[k] - a[n - k]; + a[j] = xr; + a[k] = yr; + t[j] = xi + yi; + t[k] = xi - yi; + } + t[0] = a[mh] - a[n - mh]; + a[mh] += a[n - mh]; + a[0] = a[m]; + dstsub(m, a, nc, w + nw); + if (m > 4) { + bitrv2(m, ip + 2, a); + cftfsub(m, a, w); + rftfsub(m, a, nc, w + nw); + } else if (m == 4) { + cftfsub(m, a, w); + } + a[n - 1] = a[1] - a[0]; + a[1] = a[0] + a[1]; + for (j = m - 2; j >= 2; j -= 2) { + a[2 * j + 1] = a[j] - a[j + 1]; + a[2 * j - 1] = -a[j] - a[j + 1]; + } + l = 2; + m = mh; + while (m >= 2) { + dstsub(m, t, nc, w + nw); + if (m > 4) { + bitrv2(m, ip + 2, t); + cftfsub(m, t, w); + rftfsub(m, t, nc, w + nw); + } else if (m == 4) { + cftfsub(m, t, w); + } + a[n - l] = t[1] - t[0]; + a[l] = t[0] + t[1]; + k = 0; + for (j = 2; j < m; j += 2) { + k += l << 2; + a[k - l] = -t[j] - t[j + 1]; + a[k + l] = t[j] - t[j + 1]; + } + l <<= 1; + mh = m >> 1; + for (j = 1; j < mh; j++) { + k = m - j; + t[j] = t[m + k] + t[m + j]; + t[k] = t[m + k] - t[m + j]; + } + t[0] = t[m + mh]; + m = mh; + } + a[l] = t[0]; + } + a[0] = 0; +} + + +/* -------- initializing routines -------- */ + + +static void makewt(int nw, int *ip, double *w) +{ + int j, nwh; + double delta, x, y; + + ip[0] = nw; + ip[1] = 1; + if (nw > 2) { + nwh = nw >> 1; + delta = atan(1.0) / (double)nwh; + w[0] = 1; + w[1] = 0; + w[nwh] = cos(delta * (double)nwh); + w[nwh + 1] = w[nwh]; + if (nwh > 2) { + for (j = 2; j < nwh; j += 2) { + x = cos(delta * (double)j); + y = sin(delta * (double)j); + w[j] = x; + w[j + 1] = y; + w[nw - j] = y; + w[nw - j + 1] = x; + } + bitrv2(nw, ip + 2, w); + } + } +} + + +static void makect(int nc, int *ip, double *c) +{ + int j, nch; + double delta; + + ip[1] = nc; + if (nc > 1) { + nch = nc >> 1; + delta = atan(1.0) / (double)nch; + c[0] = cos(delta * (double)nch); + c[nch] = one_half * c[0]; + for (j = 1; j < nch; j++) { + c[j] = one_half * cos(delta * (double)j); + c[nc - j] = one_half * sin(delta * (double)j); + } + } +} + + +/* -------- child routines -------- */ + + +static void bitrv2(int n, int *ip0, double *a) +{ + int j, j1, k, k1, l, m, m2, ip[1024]; + double xr, xi, yr, yi; + + (void)ip0; + ip[0] = 0; + l = n; + m = 1; + while ((m << 3) < l) { + l >>= 1; + for (j = 0; j < m; j++) { + ip[m + j] = ip[j] + l; + } + m <<= 1; + } + m2 = 2 * m; + if ((m << 3) == l) { + for (k = 0; k < m; k++) { + for (j = 0; j < k; j++) { + j1 = 2 * j + ip[k]; + k1 = 2 * k + ip[j]; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += 2 * m2; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 -= m2; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += 2 * m2; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + } + j1 = 2 * k + m2 + ip[k]; + k1 = j1 + m2; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + } + } else { + for (k = 1; k < m; k++) { + for (j = 0; j < k; j++) { + j1 = 2 * j + ip[k]; + k1 = 2 * k + ip[j]; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += m2; + xr = a[j1]; + xi = a[j1 + 1]; + yr = a[k1]; + yi = a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + } + } + } +} + + +static void bitrv2conj(int n, int *ip0, double *a) +{ + int j, j1, k, k1, l, m, m2, ip[512]; + double xr, xi, yr, yi; + + (void)ip0; + ip[0] = 0; + l = n; + m = 1; + while ((m << 3) < l) { + l >>= 1; + for (j = 0; j < m; j++) { + ip[m + j] = ip[j] + l; + } + m <<= 1; + } + m2 = 2 * m; + if ((m << 3) == l) { + for (k = 0; k < m; k++) { + for (j = 0; j < k; j++) { + j1 = 2 * j + ip[k]; + k1 = 2 * k + ip[j]; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += 2 * m2; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 -= m2; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += 2 * m2; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + } + k1 = 2 * k + ip[k]; + a[k1 + 1] = -a[k1 + 1]; + j1 = k1 + m2; + k1 = j1 + m2; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + k1 += m2; + a[k1 + 1] = -a[k1 + 1]; + } + } else { + a[1] = -a[1]; + a[m2 + 1] = -a[m2 + 1]; + for (k = 1; k < m; k++) { + for (j = 0; j < k; j++) { + j1 = 2 * j + ip[k]; + k1 = 2 * k + ip[j]; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + j1 += m2; + k1 += m2; + xr = a[j1]; + xi = -a[j1 + 1]; + yr = a[k1]; + yi = -a[k1 + 1]; + a[j1] = yr; + a[j1 + 1] = yi; + a[k1] = xr; + a[k1 + 1] = xi; + } + k1 = 2 * k + ip[k]; + a[k1 + 1] = -a[k1 + 1]; + a[k1 + m2 + 1] = -a[k1 + m2 + 1]; + } + } +} + + +static void cftfsub(int n, double *a, double const *w) +{ + int j, j1, j2, j3, l; + double x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i; + + l = 2; + if (n > 8) { + cft1st(n, a, w); + l = 8; + while ((l << 2) < n) { + cftmdl(n, l, a, w); + l <<= 2; + } + } + if ((l << 2) == n) { + for (j = 0; j < l; j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = a[j + 1] + a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = a[j + 1] - a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + a[j2] = x0r - x2r; + a[j2 + 1] = x0i - x2i; + a[j1] = x1r - x3i; + a[j1 + 1] = x1i + x3r; + a[j3] = x1r + x3i; + a[j3 + 1] = x1i - x3r; + } + } else { + for (j = 0; j < l; j += 2) { + j1 = j + l; + x0r = a[j] - a[j1]; + x0i = a[j + 1] - a[j1 + 1]; + a[j] += a[j1]; + a[j + 1] += a[j1 + 1]; + a[j1] = x0r; + a[j1 + 1] = x0i; + } + } +} + + +static void cftbsub(int n, double *a, double const *w) +{ + int j, j1, j2, j3, l; + double x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i; + + l = 2; + if (n > 8) { + cft1st(n, a, w); + l = 8; + while ((l << 2) < n) { + cftmdl(n, l, a, w); + l <<= 2; + } + } + if ((l << 2) == n) { + for (j = 0; j < l; j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = -a[j + 1] - a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = -a[j + 1] + a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i - x2i; + a[j2] = x0r - x2r; + a[j2 + 1] = x0i + x2i; + a[j1] = x1r - x3i; + a[j1 + 1] = x1i - x3r; + a[j3] = x1r + x3i; + a[j3 + 1] = x1i + x3r; + } + } else { + for (j = 0; j < l; j += 2) { + j1 = j + l; + x0r = a[j] - a[j1]; + x0i = -a[j + 1] + a[j1 + 1]; + a[j] += a[j1]; + a[j + 1] = -a[j + 1] - a[j1 + 1]; + a[j1] = x0r; + a[j1 + 1] = x0i; + } + } +} + + +static void cft1st(int n, double *a, double const *w) +{ + int j, k1, k2; + double wk1r, wk1i, wk2r, wk2i, wk3r, wk3i; + double x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i; + + x0r = a[0] + a[2]; + x0i = a[1] + a[3]; + x1r = a[0] - a[2]; + x1i = a[1] - a[3]; + x2r = a[4] + a[6]; + x2i = a[5] + a[7]; + x3r = a[4] - a[6]; + x3i = a[5] - a[7]; + a[0] = x0r + x2r; + a[1] = x0i + x2i; + a[4] = x0r - x2r; + a[5] = x0i - x2i; + a[2] = x1r - x3i; + a[3] = x1i + x3r; + a[6] = x1r + x3i; + a[7] = x1i - x3r; + wk1r = w[2]; + x0r = a[8] + a[10]; + x0i = a[9] + a[11]; + x1r = a[8] - a[10]; + x1i = a[9] - a[11]; + x2r = a[12] + a[14]; + x2i = a[13] + a[15]; + x3r = a[12] - a[14]; + x3i = a[13] - a[15]; + a[8] = x0r + x2r; + a[9] = x0i + x2i; + a[12] = x2i - x0i; + a[13] = x0r - x2r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[10] = wk1r * (x0r - x0i); + a[11] = wk1r * (x0r + x0i); + x0r = x3i + x1r; + x0i = x3r - x1i; + a[14] = wk1r * (x0i - x0r); + a[15] = wk1r * (x0i + x0r); + k1 = 0; + for (j = 16; j < n; j += 16) { + k1 += 2; + k2 = 2 * k1; + wk2r = w[k1]; + wk2i = w[k1 + 1]; + wk1r = w[k2]; + wk1i = w[k2 + 1]; + wk3r = wk1r - 2 * wk2i * wk1i; + wk3i = 2 * wk2i * wk1r - wk1i; + x0r = a[j] + a[j + 2]; + x0i = a[j + 1] + a[j + 3]; + x1r = a[j] - a[j + 2]; + x1i = a[j + 1] - a[j + 3]; + x2r = a[j + 4] + a[j + 6]; + x2i = a[j + 5] + a[j + 7]; + x3r = a[j + 4] - a[j + 6]; + x3i = a[j + 5] - a[j + 7]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + x0r -= x2r; + x0i -= x2i; + a[j + 4] = wk2r * x0r - wk2i * x0i; + a[j + 5] = wk2r * x0i + wk2i * x0r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[j + 2] = wk1r * x0r - wk1i * x0i; + a[j + 3] = wk1r * x0i + wk1i * x0r; + x0r = x1r + x3i; + x0i = x1i - x3r; + a[j + 6] = wk3r * x0r - wk3i * x0i; + a[j + 7] = wk3r * x0i + wk3i * x0r; + wk1r = w[k2 + 2]; + wk1i = w[k2 + 3]; + wk3r = wk1r - 2 * wk2r * wk1i; + wk3i = 2 * wk2r * wk1r - wk1i; + x0r = a[j + 8] + a[j + 10]; + x0i = a[j + 9] + a[j + 11]; + x1r = a[j + 8] - a[j + 10]; + x1i = a[j + 9] - a[j + 11]; + x2r = a[j + 12] + a[j + 14]; + x2i = a[j + 13] + a[j + 15]; + x3r = a[j + 12] - a[j + 14]; + x3i = a[j + 13] - a[j + 15]; + a[j + 8] = x0r + x2r; + a[j + 9] = x0i + x2i; + x0r -= x2r; + x0i -= x2i; + a[j + 12] = -wk2i * x0r - wk2r * x0i; + a[j + 13] = -wk2i * x0i + wk2r * x0r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[j + 10] = wk1r * x0r - wk1i * x0i; + a[j + 11] = wk1r * x0i + wk1i * x0r; + x0r = x1r + x3i; + x0i = x1i - x3r; + a[j + 14] = wk3r * x0r - wk3i * x0i; + a[j + 15] = wk3r * x0i + wk3i * x0r; + } +} + + +static void cftmdl(int n, int l, double *a, double const *w) +{ + int j, j1, j2, j3, k, k1, k2, m, m2; + double wk1r, wk1i, wk2r, wk2i, wk3r, wk3i; + double x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i; + + m = l << 2; + for (j = 0; j < l; j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = a[j + 1] + a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = a[j + 1] - a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + a[j2] = x0r - x2r; + a[j2 + 1] = x0i - x2i; + a[j1] = x1r - x3i; + a[j1 + 1] = x1i + x3r; + a[j3] = x1r + x3i; + a[j3 + 1] = x1i - x3r; + } + wk1r = w[2]; + for (j = m; j < l + m; j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = a[j + 1] + a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = a[j + 1] - a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + a[j2] = x2i - x0i; + a[j2 + 1] = x0r - x2r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[j1] = wk1r * (x0r - x0i); + a[j1 + 1] = wk1r * (x0r + x0i); + x0r = x3i + x1r; + x0i = x3r - x1i; + a[j3] = wk1r * (x0i - x0r); + a[j3 + 1] = wk1r * (x0i + x0r); + } + k1 = 0; + m2 = 2 * m; + for (k = m2; k < n; k += m2) { + k1 += 2; + k2 = 2 * k1; + wk2r = w[k1]; + wk2i = w[k1 + 1]; + wk1r = w[k2]; + wk1i = w[k2 + 1]; + wk3r = wk1r - 2 * wk2i * wk1i; + wk3i = 2 * wk2i * wk1r - wk1i; + for (j = k; j < l + k; j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = a[j + 1] + a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = a[j + 1] - a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + x0r -= x2r; + x0i -= x2i; + a[j2] = wk2r * x0r - wk2i * x0i; + a[j2 + 1] = wk2r * x0i + wk2i * x0r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[j1] = wk1r * x0r - wk1i * x0i; + a[j1 + 1] = wk1r * x0i + wk1i * x0r; + x0r = x1r + x3i; + x0i = x1i - x3r; + a[j3] = wk3r * x0r - wk3i * x0i; + a[j3 + 1] = wk3r * x0i + wk3i * x0r; + } + wk1r = w[k2 + 2]; + wk1i = w[k2 + 3]; + wk3r = wk1r - 2 * wk2r * wk1i; + wk3i = 2 * wk2r * wk1r - wk1i; + for (j = k + m; j < l + (k + m); j += 2) { + j1 = j + l; + j2 = j1 + l; + j3 = j2 + l; + x0r = a[j] + a[j1]; + x0i = a[j + 1] + a[j1 + 1]; + x1r = a[j] - a[j1]; + x1i = a[j + 1] - a[j1 + 1]; + x2r = a[j2] + a[j3]; + x2i = a[j2 + 1] + a[j3 + 1]; + x3r = a[j2] - a[j3]; + x3i = a[j2 + 1] - a[j3 + 1]; + a[j] = x0r + x2r; + a[j + 1] = x0i + x2i; + x0r -= x2r; + x0i -= x2i; + a[j2] = -wk2i * x0r - wk2r * x0i; + a[j2 + 1] = -wk2i * x0i + wk2r * x0r; + x0r = x1r - x3i; + x0i = x1i + x3r; + a[j1] = wk1r * x0r - wk1i * x0i; + a[j1 + 1] = wk1r * x0i + wk1i * x0r; + x0r = x1r + x3i; + x0i = x1i - x3r; + a[j3] = wk3r * x0r - wk3i * x0i; + a[j3 + 1] = wk3r * x0i + wk3i * x0r; + } + } +} + + +static void rftfsub(int n, double *a, int nc, double const *c) +{ + int j, k, kk, ks, m; + double wkr, wki, xr, xi, yr, yi; + + m = n >> 1; + ks = 2 * nc / m; + kk = 0; + for (j = 2; j < m; j += 2) { + k = n - j; + kk += ks; + wkr = one_half - c[nc - kk]; + wki = c[kk]; + xr = a[j] - a[k]; + xi = a[j + 1] + a[k + 1]; + yr = wkr * xr - wki * xi; + yi = wkr * xi + wki * xr; + a[j] -= yr; + a[j + 1] -= yi; + a[k] += yr; + a[k + 1] -= yi; + } +} + + +static void rftbsub(int n, double *a, int nc, double const *c) +{ + int j, k, kk, ks, m; + double wkr, wki, xr, xi, yr, yi; + + a[1] = -a[1]; + m = n >> 1; + ks = 2 * nc / m; + kk = 0; + for (j = 2; j < m; j += 2) { + k = n - j; + kk += ks; + wkr = one_half - c[nc - kk]; + wki = c[kk]; + xr = a[j] - a[k]; + xi = a[j + 1] + a[k + 1]; + yr = wkr * xr + wki * xi; + yi = wkr * xi - wki * xr; + a[j] -= yr; + a[j + 1] = yi - a[j + 1]; + a[k] += yr; + a[k + 1] = yi - a[k + 1]; + } + a[m + 1] = -a[m + 1]; +} + + +static void dctsub(int n, double *a, int nc, double const *c) +{ + int j, k, kk, ks, m; + double wkr, wki, xr; + + m = n >> 1; + ks = nc / n; + kk = 0; + for (j = 1; j < m; j++) { + k = n - j; + kk += ks; + wkr = c[kk] - c[nc - kk]; + wki = c[kk] + c[nc - kk]; + xr = wki * a[j] - wkr * a[k]; + a[j] = wkr * a[j] + wki * a[k]; + a[k] = xr; + } + a[m] *= c[0]; +} + + +static void dstsub(int n, double *a, int nc, double const *c) +{ + int j, k, kk, ks, m; + double wkr, wki, xr; + + m = n >> 1; + ks = nc / n; + kk = 0; + for (j = 1; j < m; j++) { + k = n - j; + kk += ks; + wkr = c[kk] - c[nc - kk]; + wki = c[kk] + c[nc - kk]; + xr = wki * a[k] - wkr * a[j]; + a[k] = wkr * a[k] + wki * a[j]; + a[j] = xr; + } + a[m] *= c[0]; +} diff --git a/C/src/soxr-0.1.3/src/fft4g.h b/C/src/soxr-0.1.3/src/fft4g.h new file mode 100644 index 00000000..0f906abc --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g.h @@ -0,0 +1,23 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +void lsx_cdft(int, int, double *, int *, double *); +void lsx_rdft(int, int, double *, int *, double *); +void lsx_ddct(int, int, double *, int *, double *); +void lsx_ddst(int, int, double *, int *, double *); +void lsx_dfct(int, double *, double *, int *, double *); +void lsx_dfst(int, double *, double *, int *, double *); + +void lsx_cdft_f(int, int, float *, int *, float *); +void lsx_rdft_f(int, int, float *, int *, float *); +void lsx_ddct_f(int, int, float *, int *, float *); +void lsx_ddst_f(int, int, float *, int *, float *); +void lsx_dfct_f(int, float *, float *, int *, float *); +void lsx_dfst_f(int, float *, float *, int *, float *); + +#define dft_br_len(l) (2ul + (1ul << (int)(log(l / 2 + .5) / log(2.)) / 2)) +#define dft_sc_len(l) ((unsigned long)l / 2) + +/* Over-allocate h by 2 to use these macros */ +#define LSX_PACK(h, n) h[1] = h[n] +#define LSX_UNPACK(h, n) h[n] = h[1], h[n + 1] = h[1] = 0; diff --git a/C/src/soxr-0.1.3/src/fft4g32.c b/C/src/soxr-0.1.3/src/fft4g32.c new file mode 100644 index 00000000..7a31ba4b --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g32.c @@ -0,0 +1,36 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include "filter.h" +#define FFT4G_FLOAT +#include "fft4g.c" +#include "soxr-config.h" + +#if WITH_CR32 +#include "rdft_t.h" +static void * null(void) {return 0;} +static void forward (int length, void * setup, double * H) {lsx_safe_rdft_f(length, 1, H); (void)setup;} +static void backward(int length, void * setup, double * H) {lsx_safe_rdft_f(length, -1, H); (void)setup;} +static int multiplier(void) {return 2;} +static void nothing(void) {} +static int flags(void) {return 0;} + +fn_t _soxr_rdft32_cb[] = { + (fn_t)null, + (fn_t)null, + (fn_t)nothing, + (fn_t)forward, + (fn_t)forward, + (fn_t)backward, + (fn_t)backward, + (fn_t)_soxr_ordered_convolve_f, + (fn_t)_soxr_ordered_partial_convolve_f, + (fn_t)multiplier, + (fn_t)nothing, + (fn_t)malloc, + (fn_t)calloc, + (fn_t)free, + (fn_t)flags, +}; +#endif diff --git a/C/src/soxr-0.1.3/src/fft4g32s.c b/C/src/soxr-0.1.3/src/fft4g32s.c new file mode 100644 index 00000000..8ce9726e --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g32s.c @@ -0,0 +1,31 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include "filter.h" +#include "util32s.h" +#include "rdft_t.h" + +static void * null(void) {return 0;} +static void nothing(void) {} +static void forward (int length, void * setup, float * H) {lsx_safe_rdft_f(length, 1, H); (void)setup;} +static void backward(int length, void * setup, float * H) {lsx_safe_rdft_f(length, -1, H); (void)setup;} +static int multiplier(void) {return 2;} +static int flags(void) {return RDFT_IS_SIMD;} + +fn_t _soxr_rdft32s_cb[] = { + (fn_t)null, + (fn_t)null, + (fn_t)nothing, + (fn_t)forward, + (fn_t)forward, + (fn_t)backward, + (fn_t)backward, + (fn_t)ORDERED_CONVOLVE_SIMD, + (fn_t)ORDERED_PARTIAL_CONVOLVE_SIMD, + (fn_t)multiplier, + (fn_t)nothing, + (fn_t)SIMD_ALIGNED_MALLOC, + (fn_t)SIMD_ALIGNED_CALLOC, + (fn_t)SIMD_ALIGNED_FREE, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/fft4g64.c b/C/src/soxr-0.1.3/src/fft4g64.c new file mode 100644 index 00000000..0018516a --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g64.c @@ -0,0 +1,35 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include "filter.h" +#include "fft4g.c" +#include "soxr-config.h" + +#if WITH_CR64 +static void * null(void) {return 0;} +static void nothing(void) {} +static void forward (int length, void * setup, double * H) {lsx_safe_rdft(length, 1, H); (void)setup;} +static void backward(int length, void * setup, double * H) {lsx_safe_rdft(length, -1, H); (void)setup;} +static int multiplier(void) {return 2;} +static int flags(void) {return 0;} + +typedef void (* fn_t)(void); +fn_t _soxr_rdft64_cb[] = { + (fn_t)null, + (fn_t)null, + (fn_t)nothing, + (fn_t)forward, + (fn_t)forward, + (fn_t)backward, + (fn_t)backward, + (fn_t)_soxr_ordered_convolve, + (fn_t)_soxr_ordered_partial_convolve, + (fn_t)multiplier, + (fn_t)nothing, + (fn_t)malloc, + (fn_t)calloc, + (fn_t)free, + (fn_t)flags, +}; +#endif diff --git a/C/src/soxr-0.1.3/src/fft4g_cache.h b/C/src/soxr-0.1.3/src/fft4g_cache.h new file mode 100644 index 00000000..d776c16c --- /dev/null +++ b/C/src/soxr-0.1.3/src/fft4g_cache.h @@ -0,0 +1,92 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +static int * LSX_FFT_BR; +static DFT_FLOAT * LSX_FFT_SC; +static int FFT_LEN = -1; +static ccrw2_t FFT_CACHE_CCRW; + +void LSX_INIT_FFT_CACHE(void) +{ + if (FFT_LEN >= 0) + return; + assert(LSX_FFT_BR == NULL); + assert(LSX_FFT_SC == NULL); + assert(FFT_LEN == -1); + ccrw2_init(FFT_CACHE_CCRW); + FFT_LEN = 0; +} + +void LSX_CLEAR_FFT_CACHE(void) +{ + assert(FFT_LEN >= 0); + ccrw2_clear(FFT_CACHE_CCRW); + free(LSX_FFT_BR); + free(LSX_FFT_SC); + LSX_FFT_SC = NULL; + LSX_FFT_BR = NULL; + FFT_LEN = -1; +} + +static bool UPDATE_FFT_CACHE(int len) +{ + LSX_INIT_FFT_CACHE(); + assert(lsx_is_power_of_2(len)); + assert(FFT_LEN >= 0); + ccrw2_become_reader(FFT_CACHE_CCRW); + if (len > FFT_LEN) { + ccrw2_cease_reading(FFT_CACHE_CCRW); + ccrw2_become_writer(FFT_CACHE_CCRW); + if (len > FFT_LEN) { + int old_n = FFT_LEN; + FFT_LEN = len; + LSX_FFT_BR = realloc(LSX_FFT_BR, dft_br_len(FFT_LEN) * sizeof(*LSX_FFT_BR)); + LSX_FFT_SC = realloc(LSX_FFT_SC, dft_sc_len(FFT_LEN) * sizeof(*LSX_FFT_SC)); + if (!old_n) { + LSX_FFT_BR[0] = 0; +#if SOXR_LIB + atexit(LSX_CLEAR_FFT_CACHE); +#endif + } + return true; + } + ccrw2_cease_writing(FFT_CACHE_CCRW); + ccrw2_become_reader(FFT_CACHE_CCRW); + } + return false; +} + +static void DONE_WITH_FFT_CACHE(bool is_writer) +{ + if (is_writer) + ccrw2_cease_writing(FFT_CACHE_CCRW); + else ccrw2_cease_reading(FFT_CACHE_CCRW); +} + +void LSX_SAFE_RDFT(int len, int type, DFT_FLOAT * d) +{ + bool is_writer = UPDATE_FFT_CACHE(len); + LSX_RDFT(len, type, d, LSX_FFT_BR, LSX_FFT_SC); + DONE_WITH_FFT_CACHE(is_writer); +} + +void LSX_SAFE_CDFT(int len, int type, DFT_FLOAT * d) +{ + bool is_writer = UPDATE_FFT_CACHE(len); + LSX_CDFT(len, type, d, LSX_FFT_BR, LSX_FFT_SC); + DONE_WITH_FFT_CACHE(is_writer); +} + +#undef UPDATE_FFT_CACHE +#undef LSX_SAFE_RDFT +#undef LSX_SAFE_CDFT +#undef LSX_RDFT +#undef LSX_INIT_FFT_CACHE +#undef LSX_FFT_SC +#undef LSX_FFT_BR +#undef LSX_CLEAR_FFT_CACHE +#undef LSX_CDFT +#undef FFT_LEN +#undef FFT_CACHE_CCRW +#undef DONE_WITH_FFT_CACHE +#undef DFT_FLOAT diff --git a/C/src/soxr-0.1.3/src/fifo.h b/C/src/soxr-0.1.3/src/fifo.h new file mode 100644 index 00000000..33af9fe6 --- /dev/null +++ b/C/src/soxr-0.1.3/src/fifo.h @@ -0,0 +1,125 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#ifndef soxr_fifo_included +#define soxr_fifo_included + +#if !defined FIFO_SIZE_T +#define FIFO_SIZE_T size_t +#endif + +#if !defined FIFO_REALLOC +#include + #define FIFO_REALLOC(a,b,c) realloc(a,b) + #undef FIFO_FREE + #define FIFO_FREE free + #undef FIFO_MALLOC + #define FIFO_MALLOC malloc +#endif + +typedef struct { + char * data; + size_t allocation; /* Number of bytes allocated for data. */ + size_t item_size; /* Size of each item in data */ + size_t begin; /* Offset of the first byte to read. */ + size_t end; /* 1 + Offset of the last byte byte to read. */ +} fifo_t; + +#if !defined FIFO_MIN + #define FIFO_MIN 0x4000 +#endif + +#if !defined UNUSED + #define UNUSED +#endif + +UNUSED static void fifo_clear(fifo_t * f) +{ + f->end = f->begin = 0; +} + +UNUSED static void * fifo_reserve(fifo_t * f, FIFO_SIZE_T n0) +{ + size_t n = (size_t)n0; + n *= f->item_size; + + if (f->begin == f->end) + fifo_clear(f); + + while (1) { + if (f->end + n <= f->allocation) { + void *p = f->data + f->end; + + f->end += n; + return p; + } + if (f->begin > FIFO_MIN) { + memmove(f->data, f->data + f->begin, f->end - f->begin); + f->end -= f->begin; + f->begin = 0; + continue; + } + f->data = FIFO_REALLOC(f->data, f->allocation + n, f->allocation); + f->allocation += n; + if (!f->data) + return 0; + } +} + +UNUSED static void * fifo_write(fifo_t * f, FIFO_SIZE_T n0, void const * data) +{ + size_t n = (size_t)n0; + void * s = fifo_reserve(f, n0); + if (data) + memcpy(s, data, n * f->item_size); + return s; +} + +UNUSED static void fifo_trim_to(fifo_t * f, FIFO_SIZE_T n0) +{ + size_t n = (size_t)n0; + n *= f->item_size; + f->end = f->begin + n; +} + +UNUSED static void fifo_trim_by(fifo_t * f, FIFO_SIZE_T n0) +{ + size_t n = (size_t)n0; + n *= f->item_size; + f->end -= n; +} + +UNUSED static FIFO_SIZE_T fifo_occupancy(fifo_t * f) +{ + return (FIFO_SIZE_T)((f->end - f->begin) / f->item_size); +} + +UNUSED static void * fifo_read(fifo_t * f, FIFO_SIZE_T n0, void * data) +{ + size_t n = (size_t)n0; + char * ret = f->data + f->begin; + n *= f->item_size; + if (n > (f->end - f->begin)) + return NULL; + if (data) + memcpy(data, ret, (size_t)n); + f->begin += n; + return ret; +} + +#define fifo_read_ptr(f) fifo_read(f, (FIFO_SIZE_T)0, NULL) + +UNUSED static void fifo_delete(fifo_t * f) +{ + FIFO_FREE(f->data); +} + +UNUSED static int fifo_create(fifo_t * f, FIFO_SIZE_T item_size) +{ + f->item_size = (size_t)item_size; + f->allocation = FIFO_MIN; + fifo_clear(f); + return !(f->data = FIFO_MALLOC(f->allocation)); +} + +#endif diff --git a/C/src/soxr-0.1.3/src/filter.c b/C/src/soxr-0.1.3/src/filter.c new file mode 100644 index 00000000..019d24d9 --- /dev/null +++ b/C/src/soxr-0.1.3/src/filter.c @@ -0,0 +1,277 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include "filter.h" + +#include "math-wrap.h" +#include +#include +#include + +#include "fft4g.h" +#include "ccrw2.h" + +#if 1 || WITH_CR64 || WITH_CR64S /* Always need this, for lsx_fir_to_phase. */ +#define DFT_FLOAT double +#define DONE_WITH_FFT_CACHE done_with_fft_cache +#define FFT_CACHE_CCRW fft_cache_ccrw +#define FFT_LEN fft_len +#define LSX_CDFT lsx_cdft +#define LSX_CLEAR_FFT_CACHE lsx_clear_fft_cache +#define LSX_FFT_BR lsx_fft_br +#define LSX_FFT_SC lsx_fft_sc +#define LSX_INIT_FFT_CACHE lsx_init_fft_cache +#define LSX_RDFT lsx_rdft +#define LSX_SAFE_CDFT lsx_safe_cdft +#define LSX_SAFE_RDFT lsx_safe_rdft +#define UPDATE_FFT_CACHE update_fft_cache +#include "fft4g_cache.h" +#endif + +#if (WITH_CR32 && !AVCODEC_FOUND) || (WITH_CR32S && !AVCODEC_FOUND && !WITH_PFFFT) +#define DFT_FLOAT float +#define DONE_WITH_FFT_CACHE done_with_fft_cache_f +#define FFT_CACHE_CCRW fft_cache_ccrw_f +#define FFT_LEN fft_len_f +#define LSX_CDFT lsx_cdft_f +#define LSX_CLEAR_FFT_CACHE lsx_clear_fft_cache_f +#define LSX_FFT_BR lsx_fft_br_f +#define LSX_FFT_SC lsx_fft_sc_f +#define LSX_INIT_FFT_CACHE lsx_init_fft_cache_f +#define LSX_RDFT lsx_rdft_f +#define LSX_SAFE_CDFT lsx_safe_cdft_f +#define LSX_SAFE_RDFT lsx_safe_rdft_f +#define UPDATE_FFT_CACHE update_fft_cache_f +#include "fft4g_cache.h" +#endif + +#if WITH_CR64 || WITH_CR64S || !SOXR_LIB +#define DFT_FLOAT double +#define ORDERED_CONVOLVE lsx_ordered_convolve +#define ORDERED_PARTIAL_CONVOLVE lsx_ordered_partial_convolve +#include "rdft.h" +#endif + +#if WITH_CR32 +#define DFT_FLOAT float +#define ORDERED_CONVOLVE lsx_ordered_convolve_f +#define ORDERED_PARTIAL_CONVOLVE lsx_ordered_partial_convolve_f +#include "rdft.h" +#endif + +double lsx_kaiser_beta(double att, double tr_bw) +{ + if (att >= 60) { + static const double coefs[][4] = { + {-6.784957e-10,1.02856e-05,0.1087556,-0.8988365+.001}, + {-6.897885e-10,1.027433e-05,0.10876,-0.8994658+.002}, + {-1.000683e-09,1.030092e-05,0.1087677,-0.9007898+.003}, + {-3.654474e-10,1.040631e-05,0.1087085,-0.8977766+.006}, + {8.106988e-09,6.983091e-06,0.1091387,-0.9172048+.015}, + {9.519571e-09,7.272678e-06,0.1090068,-0.9140768+.025}, + {-5.626821e-09,1.342186e-05,0.1083999,-0.9065452+.05}, + {-9.965946e-08,5.073548e-05,0.1040967,-0.7672778+.085}, + {1.604808e-07,-5.856462e-05,0.1185998,-1.34824+.1}, + {-1.511964e-07,6.363034e-05,0.1064627,-0.9876665+.18}, + }; + double realm = log(tr_bw/.0005)/log(2.); + double const * c0 = coefs[range_limit( (int)realm, 0, (int)array_length(coefs)-1)]; + double const * c1 = coefs[range_limit(1+(int)realm, 0, (int)array_length(coefs)-1)]; + double b0 = ((c0[0]*att + c0[1])*att + c0[2])*att + c0[3]; + double b1 = ((c1[0]*att + c1[1])*att + c1[2])*att + c1[3]; + return b0 + (b1 - b0) * (realm - (int)realm); + } + if (att > 50 ) return .1102 * (att - 8.7); + if (att > 20.96) return .58417 * pow(att -20.96, .4) + .07886 * (att - 20.96); + return 0; +} + +double * lsx_make_lpf( + int num_taps, double Fc, double beta, double rho, double scale) +{ + int i, m = num_taps - 1; + double * h = malloc((size_t)num_taps * sizeof(*h)); + double mult = scale / lsx_bessel_I_0(beta), mult1 = 1 / (.5 * m + rho); + assert(Fc >= 0 && Fc <= 1); + lsx_debug("make_lpf(n=%i Fc=%.7g beta=%g rho=%g scale=%g)", + num_taps, Fc, beta, rho, scale); + + if (h) for (i = 0; i <= m / 2; ++i) { + double z = i - .5 * m, x = z * M_PI, y = z * mult1; + h[i] = x!=0? sin(Fc * x) / x : Fc; + h[i] *= lsx_bessel_I_0(beta * sqrt(1 - y * y)) * mult; + if (m - i != i) + h[m - i] = h[i]; + } + return h; +} + +void lsx_kaiser_params(double att, double Fc, double tr_bw, double * beta, int * num_taps) +{ + *beta = *beta < 0? lsx_kaiser_beta(att, tr_bw * .5 / Fc): *beta; + att = att < 60? (att - 7.95) / (2.285 * M_PI * 2) : + ((.0007528358-1.577737e-05**beta)**beta+.6248022)**beta+.06186902; + *num_taps = !*num_taps? (int)ceil(att/tr_bw + 1) : *num_taps; +} + +double * lsx_design_lpf( + double Fp, /* End of pass-band */ + double Fs, /* Start of stop-band */ + double Fn, /* Nyquist freq; e.g. 0.5, 1, PI */ + double att, /* Stop-band attenuation in dB */ + int * num_taps, /* 0: value will be estimated */ + int k, /* >0: number of phases; <0: num_taps = 1 (mod -k) */ + double beta) /* <0: value will be estimated */ +{ + int n = *num_taps, phases = max(k, 1), modulo = max(-k, 1); + double tr_bw, Fc, rho = phases == 1? .5 : att < 120? .63 : .75; + + lsx_debug_more("./sinctest %-12.7g %-12.7g %g 0 %-5g %i %i 50 %g %g -4 >1", + Fp, Fs, Fn, att, *num_taps, k, beta, rho); + + Fp /= fabs(Fn), Fs /= fabs(Fn); /* Normalise to Fn = 1 */ + tr_bw = .5 * (Fs - Fp); /* Transition band-width: 6dB to stop points */ + tr_bw /= phases, Fs /= phases; + tr_bw = min(tr_bw, .5 * Fs); + Fc = Fs - tr_bw; + assert(Fc - tr_bw >= 0); + lsx_kaiser_params(att, Fc, tr_bw, &beta, num_taps); + if (!n) + *num_taps = phases > 1? *num_taps / phases * phases + phases - 1 : + (*num_taps + modulo - 2) / modulo * modulo + 1; + return Fn < 0? 0 : lsx_make_lpf(*num_taps, Fc, beta, rho, (double)phases); +} + +static double safe_log(double x) +{ + assert(x >= 0); + if (x!=0) + return log(x); + lsx_debug("log(0)"); + return -26; +} + +void lsx_fir_to_phase(double * * h, int * len, int * post_len, double phase) +{ + double * pi_wraps, * work, phase1 = (phase > 50 ? 100 - phase : phase) / 50; + int i, work_len, begin, end, imp_peak = 0, peak = 0; + double imp_sum = 0, peak_imp_sum = 0; + double prev_angle2 = 0, cum_2pi = 0, prev_angle1 = 0, cum_1pi = 0; + + for (i = *len, work_len = 2 * 2 * 8; i > 1; work_len <<= 1, i >>= 1); + + work = calloc((size_t)work_len + 2, sizeof(*work)); /* +2: (UN)PACK */ + pi_wraps = malloc((((size_t)work_len + 2) / 2) * sizeof(*pi_wraps)); + + memcpy(work, *h, (size_t)*len * sizeof(*work)); + lsx_safe_rdft(work_len, 1, work); /* Cepstral: */ + LSX_UNPACK(work, work_len); + + for (i = 0; i <= work_len; i += 2) { + double angle = atan2(work[i + 1], work[i]); + double detect = 2 * M_PI; + double delta = angle - prev_angle2; + double adjust = detect * ((delta < -detect * .7) - (delta > detect * .7)); + prev_angle2 = angle; + cum_2pi += adjust; + angle += cum_2pi; + detect = M_PI; + delta = angle - prev_angle1; + adjust = detect * ((delta < -detect * .7) - (delta > detect * .7)); + prev_angle1 = angle; + cum_1pi += fabs(adjust); /* fabs for when 2pi and 1pi have combined */ + pi_wraps[i >> 1] = cum_1pi; + + work[i] = safe_log(sqrt(sqr(work[i]) + sqr(work[i + 1]))); + work[i + 1] = 0; + } + LSX_PACK(work, work_len); + lsx_safe_rdft(work_len, -1, work); + for (i = 0; i < work_len; ++i) work[i] *= 2. / work_len; + + for (i = 1; i < work_len / 2; ++i) { /* Window to reject acausal components */ + work[i] *= 2; + work[i + work_len / 2] = 0; + } + lsx_safe_rdft(work_len, 1, work); + + for (i = 2; i < work_len; i += 2) /* Interpolate between linear & min phase */ + work[i + 1] = phase1 * i / work_len * pi_wraps[work_len >> 1] + + (1 - phase1) * (work[i + 1] + pi_wraps[i >> 1]) - pi_wraps[i >> 1]; + + work[0] = exp(work[0]), work[1] = exp(work[1]); + for (i = 2; i < work_len; i += 2) { + double x = exp(work[i]); + work[i ] = x * cos(work[i + 1]); + work[i + 1] = x * sin(work[i + 1]); + } + + lsx_safe_rdft(work_len, -1, work); + for (i = 0; i < work_len; ++i) work[i] *= 2. / work_len; + + /* Find peak pos. */ + for (i = 0; i <= (int)(pi_wraps[work_len >> 1] / M_PI + .5); ++i) { + imp_sum += work[i]; + if (fabs(imp_sum) > fabs(peak_imp_sum)) { + peak_imp_sum = imp_sum; + peak = i; + } + if (work[i] > work[imp_peak]) /* For debug check only */ + imp_peak = i; + } + while (peak && fabs(work[peak-1]) > fabs(work[peak]) && work[peak-1] * work[peak] > 0) + --peak; + + if (phase1==0) + begin = 0; + else if (phase1 == 1) + begin = peak - *len / 2; + else { + begin = (int)((.997 - (2 - phase1) * .22) * *len + .5); + end = (int)((.997 + (0 - phase1) * .22) * *len + .5); + begin = peak - (begin & ~3); + end = peak + 1 + ((end + 3) & ~3); + *len = end - begin; + *h = realloc(*h, (size_t)*len * sizeof(**h)); + } + for (i = 0; i < *len; ++i) (*h)[i] = + work[(begin + (phase > 50 ? *len - 1 - i : i) + work_len) & (work_len - 1)]; + *post_len = phase > 50 ? peak - begin : begin + *len - (peak + 1); + + lsx_debug("nPI=%g peak-sum@%i=%g (val@%i=%g); len=%i post=%i (%g%%)", + pi_wraps[work_len >> 1] / M_PI, peak, peak_imp_sum, imp_peak, + work[imp_peak], *len, *post_len, 100 - 100. * *post_len / (*len - 1)); + free(pi_wraps), free(work); +} + +#define F_x(F,expr) static double F(double x) {return expr;} +F_x(sinePhi, ((2.0517e-07*x-1.1303e-04)*x+.023154)*x+.55924 ) +F_x(sinePsi, ((9.0667e-08*x-5.6114e-05)*x+.013658)*x+1.0977 ) +F_x(sinePow, log(.5)/log(sin(x*.5)) ) +#define dB_to_linear(x) exp((x) * (M_LN10 * 0.05)) + +double lsx_f_resp(double t, double a) +{ + double x; + if (t > (a <= 160? .8 : .82)) { + double a1 = a+15; + double p = .00035*a+.375; + double w = 1/(1-.597)*asin(pow((a1-10.6)/a1,1/p)); + double c = 1+asin(pow(1-a/a1,1/p))/w; + return a1*(pow(sin((c-t)*w),p)-1); + } + if (t > .5) + x = sinePsi(a), x = pow(sin((1-t) * x), sinePow(x)); + else + x = sinePhi(a), x = 1 - pow(sin(t * x), sinePow(x)); + return linear_to_dB(x); +} + +double lsx_inv_f_resp(double drop, double a) +{ + double x = sinePhi(a), s; + drop = dB_to_linear(drop); + s = drop > .5 ? 1 - drop : drop; + x = asin(pow(s, 1/sinePow(x))) / x; + return drop > .5? x : 1 -x; +} diff --git a/C/src/soxr-0.1.3/src/filter.h b/C/src/soxr-0.1.3/src/filter.h new file mode 100644 index 00000000..ccb3ba83 --- /dev/null +++ b/C/src/soxr-0.1.3/src/filter.h @@ -0,0 +1,44 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_filter_included +#define soxr_filter_included + +#include "aliases.h" + +double lsx_bessel_I_0(double x); +void lsx_init_fft_cache(void); +void lsx_clear_fft_cache(void); +void lsx_init_fft_cache_f(void); +void lsx_clear_fft_cache_f(void); +#define lsx_is_power_of_2(x) !(x < 2 || (x & (x - 1))) +void lsx_safe_rdft(int len, int type, double * d); +void lsx_safe_cdft(int len, int type, double * d); +void lsx_safe_rdft_f(int len, int type, float * d); +void lsx_safe_cdft_f(int len, int type, float * d); +void lsx_ordered_convolve(int n, void * not_used, double * a, const double * b); +void lsx_ordered_convolve_f(int n, void * not_used, float * a, const float * b); +void lsx_ordered_partial_convolve(int n, double * a, const double * b); +void lsx_ordered_partial_convolve_f(int n, float * a, const float * b); + +double lsx_kaiser_beta(double att, double tr_bw); +double * lsx_make_lpf(int num_taps, double Fc, double beta, double rho, + double scale); +void lsx_kaiser_params(double att, double Fc, double tr_bw, double * beta, int * num_taps); +double * lsx_design_lpf( + double Fp, /* End of pass-band */ + double Fs, /* Start of stop-band */ + double Fn, /* Nyquist freq; e.g. 0.5, 1, PI; < 0: dummy run */ + double att, /* Stop-band attenuation in dB */ + int * num_taps, /* 0: value will be estimated */ + int k, /* >0: number of phases; <0: num_taps = 1 (mod -k) */ + double beta); /* <0: value will be estimated */ + +void lsx_fir_to_phase(double * * h, int * len, + int * post_len, double phase0); + +double lsx_f_resp(double t, double a); +double lsx_inv_f_resp(double drop, double a); +#define lsx_to_3dB(a) (1 - lsx_inv_f_resp(-3., a)) + +#endif diff --git a/C/src/soxr-0.1.3/src/half-coefs.h b/C/src/soxr-0.1.3/src/half-coefs.h new file mode 100644 index 00000000..a5a0882b --- /dev/null +++ b/C/src/soxr-0.1.3/src/half-coefs.h @@ -0,0 +1,75 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if defined __GNUC__ + #pragma GCC system_header +#elif defined __SUNPRO_C + #pragma disable_warn +#elif defined _MSC_VER + #pragma warning(push, 1) +#endif + +#if CORE_TYPE & CORE_SIMD_HALF + #define VALIGN vAlign +#else + #define VALIGN +#endif + +#if !(CORE_TYPE & CORE_SIMD_HALF) +static VALIGN const sample_t half_fir_coefs_7[] = { + 3.1062656496657370e-01, -8.4998810699955796e-02, 3.4007044621123500e-02, +-1.2839903789829387e-02, 3.9899380181723145e-03, -8.9355202017945374e-04, + 1.0918292424806546e-04, +}; +#endif + +static VALIGN const sample_t half_fir_coefs_8[] = { + 3.1154652365332069e-01, -8.7344917685739543e-02, 3.6814458353637280e-02, +-1.5189204581464479e-02, 5.4540855610738801e-03, -1.5643862626630416e-03, + 3.1816575906323303e-04, -3.4799449225005688e-05, +}; + +static VALIGN const sample_t half_fir_coefs_9[] = { + 3.1227034755311189e-01, -8.9221517147969526e-02, 3.9139704015071934e-02, +-1.7250558515852023e-02, 6.8589440230476112e-03, -2.3045049636430419e-03, + 6.0963740543348963e-04, -1.1323803957431231e-04, 1.1197769991000046e-05, +}; + +#if CORE_TYPE & CORE_DBL +static VALIGN const sample_t half_fir_coefs_10[] = { + 3.1285456012000523e-01, -9.0756740799292787e-02, 4.1096398104193160e-02, +-1.9066319572525220e-02, 8.1840569787684902e-03, -3.0766876176359834e-03, + 9.6396524429277980e-04, -2.3585679989922018e-04, 4.0252189026627833e-05, +-3.6298196342497932e-06, +}; + +static VALIGN const sample_t half_fir_coefs_11[] = { + 3.1333588822574199e-01, -9.2035898673019811e-02, 4.2765169698406408e-02, +-2.0673580894964429e-02, 9.4225426824512421e-03, -3.8563379950013192e-03, + 1.3634742159642453e-03, -3.9874150714431009e-04, 9.0586723632664806e-05, +-1.4285617244076783e-05, 1.1834642946400529e-06, +}; + +static VALIGN const sample_t half_fir_coefs_12[] = { + 3.1373928463345568e-01, -9.3118180335301962e-02, 4.4205005881659098e-02, +-2.2103860986973051e-02, 1.0574689371162864e-02, -4.6276428065385065e-03, + 1.7936153397572132e-03, -5.9617527051353237e-04, 1.6314517495669067e-04, +-3.4555126770115446e-05, 5.0617615610782593e-06, -3.8768958592971409e-07, +}; + +static VALIGN const sample_t half_fir_coefs_13[] = { + 3.1408224847888910e-01, -9.4045836332667387e-02, 4.5459878763259978e-02, +-2.3383369012219993e-02, 1.1644273044890753e-02, -5.3806714579057013e-03, + 2.2429072878264022e-03, -8.2204347506606424e-04, 2.5724946477840893e-04, +-6.6072709864248668e-05, 1.3099163296288644e-05, -1.7907147069136000e-06, + 1.2750825595240592e-07, +}; +#endif + +#undef VALIGN + +#if defined __SUNPRO_C + #pragma enable_warn +#elif defined _MSC_VER + #pragma warning(pop) +#endif diff --git a/C/src/soxr-0.1.3/src/half-fir.h b/C/src/soxr-0.1.3/src/half-fir.h new file mode 100644 index 00000000..782be1bc --- /dev/null +++ b/C/src/soxr-0.1.3/src/half-fir.h @@ -0,0 +1,61 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Decimate by 2 using a FIR with odd length (LEN). */ +/* Input must be preceded and followed by LEN >> 1 samples. */ + +#define COEFS ((sample_t const *)p->coefs) + +#if SIMD_SSE + #define BEGINNING v4_t sum, q1, q2, t + #define ____ \ + q1 = _mm_shuffle_ps(t=vLdu(input+2*j),vLdu(input+2*j+4),_MM_SHUFFLE(3,1,3,1)); \ + q2 = _mm_shuffle_ps(vLdu(input-2*j-4),vLdu(input-2*j-8),_MM_SHUFFLE(1,3,1,3)); \ + sum = vAdd(j? sum : vMul(vSet1(.5), t), vMul(vAdd(q1, q2), vLd(COEFS+j))); \ + j += 4; + #define __ \ + q1 = _mm_shuffle_ps(vLdu(input+2*j), vLdu(input-2*j-4), _MM_SHUFFLE(1,3,3,1)); \ + q2 = _mm_loadl_pi(q2, (__m64*)(COEFS+j)), q2 = _mm_movelh_ps(q2, q2); \ + sum = vAdd(sum, vMul(q1, q2)); \ + j += 2; + #define _ \ + q1 = _mm_add_ss(_mm_load_ss(input+2*j+1), _mm_load_ss(input-2*j-1)); \ + sum = _mm_add_ss(sum, _mm_mul_ss(q1, _mm_load_ss(COEFS+j))); \ + ++j; + #define END vStorSum(output+i, sum) +/* #elif SIMD_AVX; No good solution found. */ +/* #elif SIMD_NEON; No need: gcc -O3 does a good job by itself. */ +#else + #define BEGINNING sample_t sum = input[0] * .5f + #define ____ __ __ + #define __ _ _ + #define _ sum += (input[-(2*j +1)] + input[(2*j +1)]) * COEFS[j], ++j; + #define END output[i] = sum +#endif + + + +static void FUNCTION_H(stage_t * p, fifo_t * output_fifo) +{ + sample_t const * __restrict input = stage_read_p(p); + int num_in = min(stage_occupancy(p), p->input_size); + int i, num_out = (num_in + 1) >> 1; + sample_t * __restrict output = fifo_reserve(output_fifo, num_out); + + for (i = 0; i < num_out; ++i, input += 2) { + int j = 0; + BEGINNING; CONVOLVE; END; + } + fifo_read(&p->fifo, 2 * num_out, NULL); +} + + + +#undef _ +#undef __ +#undef ____ +#undef BEGINNING +#undef END +#undef COEFS +#undef CONVOLVE +#undef FUNCTION_H diff --git a/C/src/soxr-0.1.3/src/internal.h b/C/src/soxr-0.1.3/src/internal.h new file mode 100644 index 00000000..08924d50 --- /dev/null +++ b/C/src/soxr-0.1.3/src/internal.h @@ -0,0 +1,84 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_internal_included +#define soxr_internal_included + +#include "std-types.h" + + + +#undef min +#undef max +#define min(a, b) ((a) <= (b) ? (a) : (b)) +#define max(a, b) ((a) >= (b) ? (a) : (b)) + + + +#define range_limit(x, lower, upper) (min(max(x, lower), upper)) +#define linear_to_dB(x) (log10(x) * 20) +#define array_length(a) (sizeof(a)/sizeof(a[0])) +#if !defined AL +#define AL(a) array_length(a) +#endif +#define iAL(a) (int)AL(a) +#define sqr(a) ((a) * (a)) + + + +#if defined __GNUC__ + #define UNUSED __attribute__ ((unused)) +#else + #define UNUSED +#endif + + + +#if !WITH_DEV_TRACE + #ifdef __GNUC__ + void lsx_dummy(char const *, ...); + #else + static __inline void lsx_dummy(char const * x, ...) {} + #endif + #define lsx_debug if(0) lsx_dummy + #define lsx_debug_more lsx_debug +#else + extern int _soxr_trace_level; + void _soxr_trace(char const * fmt, ...); + #define lsx_debug if (_soxr_trace_level > 0) _soxr_trace + #define lsx_debug_more if (_soxr_trace_level > 1) _soxr_trace +#endif + + + +/* soxr_quality_spec_t.flags: */ + +#define SOXR_ROLLOFF_LSR2Q 3u /* Reserved for internal use. */ +#define SOXR_ROLLOFF_MASK 3u /* For masking these bits. */ +#define SOXR_MAINTAIN_3DB_PT 4u /* Reserved for internal use. */ +#define SOXR_PROMOTE_TO_LQ 64u /* Reserved for internal use. */ + + + +/* soxr_runtime_spec_t.flags: */ + +#define SOXR_STRICT_BUFFERING 4u /* Reserved for future use. */ +#define SOXR_NOSMALLINTOPT 8u /* For test purposes only. */ + + + +/* soxr_quality_spec recipe: */ + +#define SOXR_PRECISIONQ 11 /* Quality specified by the precision parameter. */ + +#define SOXR_PHASE_MASK 0x30 /* For masking these bits. */ + + + +/* soxr_quality_spec flags: */ + +#define RESET_ON_CLEAR (1u<<31) + + + +#endif diff --git a/C/src/soxr-0.1.3/src/math-wrap.h b/C/src/soxr-0.1.3/src/math-wrap.h new file mode 100644 index 00000000..8a526f13 --- /dev/null +++ b/C/src/soxr-0.1.3/src/math-wrap.h @@ -0,0 +1,31 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_math_wrap_included +#define soxr_math_wrap_included + +#include + +#if defined __STRICT_ANSI__ + #define sinf(x) (float)sin ((double)(x)) + #define cosf(x) (float)cos ((double)(x)) + #define atanf(x) (float)atan((double)(x)) +#endif + +#if !defined M_PI + #define M_PI 3.141592653589793238462643383279502884 +#endif + +#if !defined M_LN10 + #define M_LN10 2.302585092994045684017991454684364208 +#endif + +#if !defined M_SQRT2 + #define M_SQRT2 1.414213562373095048801688724209698079 +#endif + +#if !defined M_LN2 + #define M_LN2 0.693147180559945309417232121458176568 +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/pffft-avx.h b/C/src/soxr-0.1.3/src/pffft-avx.h new file mode 100644 index 00000000..ace19b57 --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft-avx.h @@ -0,0 +1,40 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* AVX support macros */ + +#if !defined soxr_avx_included +#define soxr_avx_included + +#include + +typedef __m256d v4sf; +#define VZERO() _mm256_setzero_pd() +#define VMUL(a,b) _mm256_mul_pd(a,b) +#define VADD(a,b) _mm256_add_pd(a,b) +#define VMADD(a,b,c) VADD(VMUL(a,b),c) /* Note: gcc -mfma will `fuse' these */ +#define VSUB(a,b) _mm256_sub_pd(a,b) +#define LD_PS1(p) _mm256_set1_pd(p) +#define INTERLEAVE2(in1, in2, out1, out2) {v4sf \ + t1 = _mm256_unpacklo_pd(in1, in2), \ + t2 = _mm256_unpackhi_pd(in1, in2); \ + out1 = _mm256_permute2f128_pd(t1,t2,0x20); \ + out2 = _mm256_permute2f128_pd(t1,t2,0x31); } +#define UNINTERLEAVE2(in1, in2, out1, out2) {v4sf \ + t1 = _mm256_permute2f128_pd(in1,in2,0x20), \ + t2 = _mm256_permute2f128_pd(in1,in2,0x31); \ + out1 = _mm256_unpacklo_pd(t1, t2); \ + out2 = _mm256_unpackhi_pd(t1, t2);} +#define VTRANSPOSE4(x0,x1,x2,x3) {v4sf \ + t0 = _mm256_shuffle_pd(x0,x1, 0x0), \ + t2 = _mm256_shuffle_pd(x0,x1, 0xf), \ + t1 = _mm256_shuffle_pd(x2,x3, 0x0), \ + t3 = _mm256_shuffle_pd(x2,x3, 0xf); \ + x0 = _mm256_permute2f128_pd(t0,t1, 0x20); \ + x1 = _mm256_permute2f128_pd(t2,t3, 0x20); \ + x2 = _mm256_permute2f128_pd(t0,t1, 0x31); \ + x3 = _mm256_permute2f128_pd(t2,t3, 0x31);} +#define VSWAPHL(a,b) _mm256_permute2f128_pd(b, a, 0x30) +#define VALIGNED(ptr) ((((long)(ptr)) & 0x1F) == 0) + +#endif diff --git a/C/src/soxr-0.1.3/src/pffft-wrap.c b/C/src/soxr-0.1.3/src/pffft-wrap.c new file mode 100644 index 00000000..c920f06e --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft-wrap.c @@ -0,0 +1,110 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined PFFT_MACROS_ONLY + +#include "math-wrap.h" + +#if PFFFT_DOUBLE + #include "util64s.h" +#else + #include "util32s.h" + #define sin(x) sinf(x) + #define cos(x) cosf(x) +#endif + +#define pffft_aligned_free SIMD_ALIGNED_FREE +#define pffft_aligned_malloc SIMD_ALIGNED_MALLOC +#define pffft_aligned_calloc SIMD_ALIGNED_CALLOC + +#undef inline +#define inline __inline + +#endif + + + +#include "pffft.c" + + + +#if !defined PFFT_MACROS_ONLY + +#if !defined PFFFT_SIMD_DISABLE + +static void pffft_zconvolve(PFFFT_Setup *s, const float *a, const float *b, float *ab) { + int i, Ncvec = s->Ncvec; + const v4sf * /*RESTRICT*/ va = (const v4sf*)a; + const v4sf * RESTRICT vb = (const v4sf*)b; + v4sf * /*RESTRICT*/ vab = (v4sf*)ab; + + float ar, ai, br, bi; + +#ifdef __arm__ + __builtin_prefetch(va); + __builtin_prefetch(vb); + __builtin_prefetch(va+2); + __builtin_prefetch(vb+2); + __builtin_prefetch(va+4); + __builtin_prefetch(vb+4); + __builtin_prefetch(va+6); + __builtin_prefetch(vb+6); +#endif + + assert(VALIGNED(a) && VALIGNED(b) && VALIGNED(ab)); + ar = ((v4sf_union*)va)[0].f[0]; + ai = ((v4sf_union*)va)[1].f[0]; + br = ((v4sf_union*)vb)[0].f[0]; + bi = ((v4sf_union*)vb)[1].f[0]; + + for (i=0; i < Ncvec; i += 2) { + v4sf ar, ai, br, bi; + ar = va[2*i+0]; ai = va[2*i+1]; + br = vb[2*i+0]; bi = vb[2*i+1]; + VCPLXMUL(ar, ai, br, bi); + vab[2*i+0] = ar; + vab[2*i+1] = ai; + ar = va[2*i+2]; ai = va[2*i+3]; + br = vb[2*i+2]; bi = vb[2*i+3]; + VCPLXMUL(ar, ai, br, bi); + vab[2*i+2] = ar; + vab[2*i+3] = ai; + } + if (s->transform == PFFFT_REAL) { + ((v4sf_union*)vab)[0].f[0] = ar*br; + ((v4sf_union*)vab)[1].f[0] = ai*bi; + } +} + +#else + +static void pffft_zconvolve(PFFFT_Setup *s, const float *a, const float *b, float *ab) { + int i, Ncvec = s->Ncvec; + + if (s->transform == PFFFT_REAL) { + /* take care of the fftpack ordering */ + ab[0] = a[0]*b[0]; + ab[2*Ncvec-1] = a[2*Ncvec-1]*b[2*Ncvec-1]; + ++ab; ++a; ++b; --Ncvec; + } + for (i=0; i < Ncvec; ++i) { + float ar, ai, br, bi; + ar = a[2*i+0]; ai = a[2*i+1]; + br = b[2*i+0]; bi = b[2*i+1]; + VCPLXMUL(ar, ai, br, bi); + ab[2*i+0] = ar; + ab[2*i+1] = ai; + } +} + +#endif + +#include + +static void pffft_reorder_back(int length, void * setup, float * data, float * work) +{ + memcpy(work, data, (unsigned)length * sizeof(*work)); + pffft_zreorder(setup, work, data, PFFFT_BACKWARD); +} + +#endif diff --git a/C/src/soxr-0.1.3/src/pffft.c b/C/src/soxr-0.1.3/src/pffft.c new file mode 100644 index 00000000..46c841e7 --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft.c @@ -0,0 +1,1946 @@ +/* https://bitbucket.org/jpommier/pffft/raw/483453d8f7661058e74aa4e7cf5c27bcd7887e7a/pffft.c + * with minor changes for libsoxr. */ + +/* Copyright (c) 2013 Julien Pommier ( pommier@modartt.com ) + + Based on original fortran 77 code from FFTPACKv4 from NETLIB + (http://www.netlib.org/fftpack), authored by Dr Paul Swarztrauber + of NCAR, in 1985. + + As confirmed by the NCAR fftpack software curators, the following + FFTPACKv5 license applies to FFTPACKv4 sources. My changes are + released under the same terms. + + FFTPACK license: + + http://www.cisl.ucar.edu/css/software/fftpack5/ftpk.html + + Copyright (c) 2004 the University Corporation for Atmospheric + Research ("UCAR"). All rights reserved. Developed by NCAR's + Computational and Information Systems Laboratory, UCAR, + www.cisl.ucar.edu. + + Redistribution and use of the Software in source and binary forms, + with or without modification, is permitted provided that the + following conditions are met: + + - Neither the names of NCAR's Computational and Information Systems + Laboratory, the University Corporation for Atmospheric Research, + nor the names of its sponsors or contributors may be used to + endorse or promote products derived from this Software without + specific prior written permission. + + - Redistributions of source code must retain the above copyright + notices, this list of conditions, and the disclaimer below. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the disclaimer below in the + documentation and/or other materials provided with the + distribution. + + THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE + SOFTWARE. + + + PFFFT : a Pretty Fast FFT. + + This file is largerly based on the original FFTPACK implementation, modified in + order to take advantage of SIMD instructions of modern CPUs. +*/ + +/* + ChangeLog: + - 2011/10/02, version 1: This is the very first release of this file. +*/ + +#include "pffft.h" +#include +#include +#include +#include + +/* detect compiler flavour */ +#if defined(_MSC_VER) +# define COMPILER_MSVC +#elif defined(__GNUC__) +# define COMPILER_GCC +#endif + +#if defined(COMPILER_GCC) +# define ALWAYS_INLINE(return_type) inline return_type __attribute__ ((always_inline)) +# define NEVER_INLINE(return_type) return_type __attribute__ ((noinline)) +# define RESTRICT __restrict +# define VLA_ARRAY_ON_STACK(type__, varname__, size__) type__ varname__[size__]; +#elif defined(COMPILER_MSVC) +# define ALWAYS_INLINE(return_type) __forceinline return_type +# define NEVER_INLINE(return_type) __declspec(noinline) return_type +# define RESTRICT __restrict +# define VLA_ARRAY_ON_STACK(type__, varname__, size__) type__ *varname__ = (type__*)_alloca(size__ * sizeof(type__)) +#endif + + +/* + vector support macros: the rest of the code is independant of + SSE/Altivec/NEON -- adding support for other platforms with 4-element + vectors should be limited to these macros +*/ + + +/* define PFFFT_SIMD_DISABLE if you want to use scalar code instead of simd code */ +/*#define PFFFT_SIMD_DISABLE */ + +/* + Altivec support macros +*/ +#if !defined(PFFFT_SIMD_DISABLE) && (defined(__ppc__) || defined(__ppc64__)) +typedef vector float v4sf; +# define SIMD_SZ 4 +# define VZERO() ((vector float) vec_splat_u8(0)) +# define VMUL(a,b) vec_madd(a,b, VZERO()) +# define VADD(a,b) vec_add(a,b) +# define VMADD(a,b,c) vec_madd(a,b,c) +# define VSUB(a,b) vec_sub(a,b) +inline v4sf ld_ps1(const float *p) { v4sf v=vec_lde(0,p); return vec_splat(vec_perm(v, v, vec_lvsl(0, p)), 0); } +# define LD_PS1(p) ld_ps1(&p) +# define INTERLEAVE2(in1, in2, out1, out2) { v4sf tmp__ = vec_mergeh(in1, in2); out2 = vec_mergel(in1, in2); out1 = tmp__; } +# define UNINTERLEAVE2(in1, in2, out1, out2) { \ + vector unsigned char vperm1 = (vector unsigned char)(0,1,2,3,8,9,10,11,16,17,18,19,24,25,26,27); \ + vector unsigned char vperm2 = (vector unsigned char)(4,5,6,7,12,13,14,15,20,21,22,23,28,29,30,31); \ + v4sf tmp__ = vec_perm(in1, in2, vperm1); out2 = vec_perm(in1, in2, vperm2); out1 = tmp__; \ + } +# define VTRANSPOSE4(x0,x1,x2,x3) { \ + v4sf y0 = vec_mergeh(x0, x2); \ + v4sf y1 = vec_mergel(x0, x2); \ + v4sf y2 = vec_mergeh(x1, x3); \ + v4sf y3 = vec_mergel(x1, x3); \ + x0 = vec_mergeh(y0, y2); \ + x1 = vec_mergel(y0, y2); \ + x2 = vec_mergeh(y1, y3); \ + x3 = vec_mergel(y1, y3); \ + } +# define VSWAPHL(a,b) vec_perm(a,b, (vector unsigned char)(16,17,18,19,20,21,22,23,8,9,10,11,12,13,14,15)) +# define VALIGNED(ptr) ((((long)(ptr)) & 0xF) == 0) + +/* + SSE1 support macros +*/ +#elif !defined(PFFFT_SIMD_DISABLE) && (defined(__x86_64__) || defined(_M_X64) || defined(i386) || defined(_M_IX86)) + +# define SIMD_SZ 4 /* 4 floats by simd vector -- this is pretty much hardcoded in the preprocess/finalize functions anyway so you will have to work if you want to enable AVX with its 256-bit vectors. */ + +#if !PFFFT_DOUBLE +#include +typedef __m128 v4sf; +# define VZERO() _mm_setzero_ps() +# define VMUL(a,b) _mm_mul_ps(a,b) +# define VADD(a,b) _mm_add_ps(a,b) +# define VMADD(a,b,c) _mm_add_ps(_mm_mul_ps(a,b), c) +# define VSUB(a,b) _mm_sub_ps(a,b) +# define LD_PS1(p) _mm_set1_ps(p) +# define INTERLEAVE2(in1, in2, out1, out2) { v4sf tmp__ = _mm_unpacklo_ps(in1, in2); out2 = _mm_unpackhi_ps(in1, in2); out1 = tmp__; } +# define UNINTERLEAVE2(in1, in2, out1, out2) { v4sf tmp__ = _mm_shuffle_ps(in1, in2, _MM_SHUFFLE(2,0,2,0)); out2 = _mm_shuffle_ps(in1, in2, _MM_SHUFFLE(3,1,3,1)); out1 = tmp__; } +# define VTRANSPOSE4(x0,x1,x2,x3) _MM_TRANSPOSE4_PS(x0,x1,x2,x3) +# define VSWAPHL(a,b) _mm_shuffle_ps(b, a, _MM_SHUFFLE(3,2,1,0)) +# define VALIGNED(ptr) ((((long)(ptr)) & 0xF) == 0) + +#else +#include "pffft-avx.h" +#endif + +/* + ARM NEON support macros +*/ +#elif !defined(PFFFT_SIMD_DISABLE) && defined(__arm__) +# include +typedef float32x4_t v4sf; +# define SIMD_SZ 4 +# define VZERO() vdupq_n_f32(0) +# define VMUL(a,b) vmulq_f32(a,b) +# define VADD(a,b) vaddq_f32(a,b) +# define VMADD(a,b,c) vmlaq_f32(c,a,b) +# define VSUB(a,b) vsubq_f32(a,b) +# define LD_PS1(p) vld1q_dup_f32(&(p)) +# define INTERLEAVE2(in1, in2, out1, out2) { float32x4x2_t tmp__ = vzipq_f32(in1,in2); out1=tmp__.val[0]; out2=tmp__.val[1]; } +# define UNINTERLEAVE2(in1, in2, out1, out2) { float32x4x2_t tmp__ = vuzpq_f32(in1,in2); out1=tmp__.val[0]; out2=tmp__.val[1]; } +# define VTRANSPOSE4(x0,x1,x2,x3) { \ + float32x4x2_t t0_ = vzipq_f32(x0, x2); \ + float32x4x2_t t1_ = vzipq_f32(x1, x3); \ + float32x4x2_t u0_ = vzipq_f32(t0_.val[0], t1_.val[0]); \ + float32x4x2_t u1_ = vzipq_f32(t0_.val[1], t1_.val[1]); \ + x0 = u0_.val[0]; x1 = u0_.val[1]; x2 = u1_.val[0]; x3 = u1_.val[1]; \ + } +/* marginally faster version */ +/*# define VTRANSPOSE4(x0,x1,x2,x3) { asm("vtrn.32 %q0, %q1;\n vtrn.32 %q2,%q3\n vswp %f0,%e2\n vswp %f1,%e3" : "+w"(x0), "+w"(x1), "+w"(x2), "+w"(x3)::); } */ +# define VSWAPHL(a,b) vcombine_f32(vget_low_f32(b), vget_high_f32(a)) +# define VALIGNED(ptr) ((((long)(ptr)) & 0x3) == 0) +#else +# if !defined(PFFFT_SIMD_DISABLE) +# warning "building with simd disabled !\n"; +# define PFFFT_SIMD_DISABLE /* fallback to scalar code */ +# endif +#endif + +#if PFFFT_DOUBLE +#define float double +#endif + +/* fallback mode for situations where SSE/Altivec are not available, use scalar mode instead */ +#ifdef PFFFT_SIMD_DISABLE +typedef float v4sf; +# define SIMD_SZ 1 +# define VZERO() 0.f +# define VMUL(a,b) ((a)*(b)) +# define VADD(a,b) ((a)+(b)) +# define VMADD(a,b,c) ((a)*(b)+(c)) +# define VSUB(a,b) ((a)-(b)) +# define LD_PS1(p) (p) +# define VALIGNED(ptr) ((((long)(ptr)) & 0x3) == 0) +#endif + +/* shortcuts for complex multiplcations */ +#define VCPLXMUL(ar,ai,br,bi) { v4sf tmp; tmp=VMUL(ar,bi); ar=VMUL(ar,br); ar=VSUB(ar,VMUL(ai,bi)); ai=VMUL(ai,br); ai=VADD(ai,tmp); } +#define VCPLXMULCONJ(ar,ai,br,bi) { v4sf tmp; tmp=VMUL(ar,bi); ar=VMUL(ar,br); ar=VADD(ar,VMUL(ai,bi)); ai=VMUL(ai,br); ai=VSUB(ai,tmp); } +#ifndef SVMUL +/* multiply a scalar with a vector */ +#define SVMUL(f,v) VMUL(LD_PS1(f),v) +#endif + +#if !defined PFFT_MACROS_ONLY + +#if !defined(PFFFT_SIMD_DISABLE) +typedef union v4sf_union { + v4sf v; + float f[4]; +} v4sf_union; + +#if 0 +#include + +#define assertv4(v,f0,f1,f2,f3) assert(v.f[0] == (f0) && v.f[1] == (f1) && v.f[2] == (f2) && v.f[3] == (f3)) + +/* detect bugs with the vector support macros */ +void validate_pffft_simd(void); +void validate_pffft_simd(void) { + float f[16] = { 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }; + v4sf_union a0, a1, a2, a3, t, u; + memcpy(a0.f, f, 4*sizeof(float)); + memcpy(a1.f, f+4, 4*sizeof(float)); + memcpy(a2.f, f+8, 4*sizeof(float)); + memcpy(a3.f, f+12, 4*sizeof(float)); + + t = a0; u = a1; t.v = VZERO(); + printf("VZERO=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); assertv4(t, 0, 0, 0, 0); + t.v = VADD(a1.v, a2.v); + printf("VADD(4:7,8:11)=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); assertv4(t, 12, 14, 16, 18); + t.v = VMUL(a1.v, a2.v); + printf("VMUL(4:7,8:11)=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); assertv4(t, 32, 45, 60, 77); + t.v = VMADD(a1.v, a2.v,a0.v); + printf("VMADD(4:7,8:11,0:3)=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); assertv4(t, 32, 46, 62, 80); + INTERLEAVE2(a1.v,a2.v,t.v,u.v); + printf("INTERLEAVE2(4:7,8:11)=[%2g %2g %2g %2g] [%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3], u.f[0], u.f[1], u.f[2], u.f[3]); + assertv4(t, 4, 8, 5, 9); assertv4(u, 6, 10, 7, 11); + UNINTERLEAVE2(a1.v,a2.v,t.v,u.v); + printf("UNINTERLEAVE2(4:7,8:11)=[%2g %2g %2g %2g] [%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3], u.f[0], u.f[1], u.f[2], u.f[3]); + assertv4(t, 4, 6, 8, 10); assertv4(u, 5, 7, 9, 11); + + t.v=LD_PS1(f[15]); + printf("LD_PS1(15)=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); + assertv4(t, 15, 15, 15, 15); + t.v = VSWAPHL(a1.v, a2.v); + printf("VSWAPHL(4:7,8:11)=[%2g %2g %2g %2g]\n", t.f[0], t.f[1], t.f[2], t.f[3]); + assertv4(t, 8, 9, 6, 7); + VTRANSPOSE4(a0.v, a1.v, a2.v, a3.v); + printf("VTRANSPOSE4(0:3,4:7,8:11,12:15)=[%2g %2g %2g %2g] [%2g %2g %2g %2g] [%2g %2g %2g %2g] [%2g %2g %2g %2g]\n", + a0.f[0], a0.f[1], a0.f[2], a0.f[3], a1.f[0], a1.f[1], a1.f[2], a1.f[3], + a2.f[0], a2.f[1], a2.f[2], a2.f[3], a3.f[0], a3.f[1], a3.f[2], a3.f[3]); + assertv4(a0, 0, 4, 8, 12); assertv4(a1, 1, 5, 9, 13); assertv4(a2, 2, 6, 10, 14); assertv4(a3, 3, 7, 11, 15); +} +#endif +#endif /*!PFFFT_SIMD_DISABLE */ + +#if 0 +/* SSE and co like 16-bytes aligned pointers */ +#define MALLOC_V4SF_ALIGNMENT 64 /* with a 64-byte alignment, we are even aligned on L2 cache lines... */ +void *pffft_aligned_malloc(size_t nb_bytes) { + void *p, *p0 = malloc(nb_bytes + MALLOC_V4SF_ALIGNMENT); + if (!p0) return (void *) 0; + p = (void *) (((size_t) p0 + MALLOC_V4SF_ALIGNMENT) & (~((size_t) (MALLOC_V4SF_ALIGNMENT-1)))); + *((void **) p - 1) = p0; + return p; +} + +void pffft_aligned_free(void *p) { + if (p) free(*((void **) p - 1)); +} + +int pffft_simd_size() { return SIMD_SZ; } +#endif + +/* + passf2 and passb2 has been merged here, fsign = -1 for passf2, +1 for passb2 +*/ +static NEVER_INLINE(void) passf2_ps(int ido, int l1, const v4sf *cc, v4sf *ch, const float *wa1, float fsign) { + int k, i; + int l1ido = l1*ido; + if (ido <= 2) { + for (k=0; k < l1ido; k += ido, ch += ido, cc+= 2*ido) { + ch[0] = VADD(cc[0], cc[ido+0]); + ch[l1ido] = VSUB(cc[0], cc[ido+0]); + ch[1] = VADD(cc[1], cc[ido+1]); + ch[l1ido + 1] = VSUB(cc[1], cc[ido+1]); + } + } else { + for (k=0; k < l1ido; k += ido, ch += ido, cc += 2*ido) { + for (i=0; i 2); + for (k=0; k< l1ido; k += ido, cc+= 3*ido, ch +=ido) { + for (i=0; i 2); + for (k = 0; k < l1; ++k, cc += 5*ido, ch += ido) { + for (i = 0; i < ido-1; i += 2) { + ti5 = VSUB(cc_ref(i , 2), cc_ref(i , 5)); + ti2 = VADD(cc_ref(i , 2), cc_ref(i , 5)); + ti4 = VSUB(cc_ref(i , 3), cc_ref(i , 4)); + ti3 = VADD(cc_ref(i , 3), cc_ref(i , 4)); + tr5 = VSUB(cc_ref(i-1, 2), cc_ref(i-1, 5)); + tr2 = VADD(cc_ref(i-1, 2), cc_ref(i-1, 5)); + tr4 = VSUB(cc_ref(i-1, 3), cc_ref(i-1, 4)); + tr3 = VADD(cc_ref(i-1, 3), cc_ref(i-1, 4)); + ch_ref(i-1, 1) = VADD(cc_ref(i-1, 1), VADD(tr2, tr3)); + ch_ref(i , 1) = VADD(cc_ref(i , 1), VADD(ti2, ti3)); + cr2 = VADD(cc_ref(i-1, 1), VADD(SVMUL(tr11, tr2),SVMUL(tr12, tr3))); + ci2 = VADD(cc_ref(i , 1), VADD(SVMUL(tr11, ti2),SVMUL(tr12, ti3))); + cr3 = VADD(cc_ref(i-1, 1), VADD(SVMUL(tr12, tr2),SVMUL(tr11, tr3))); + ci3 = VADD(cc_ref(i , 1), VADD(SVMUL(tr12, ti2),SVMUL(tr11, ti3))); + cr5 = VADD(SVMUL(ti11, tr5), SVMUL(ti12, tr4)); + ci5 = VADD(SVMUL(ti11, ti5), SVMUL(ti12, ti4)); + cr4 = VSUB(SVMUL(ti12, tr5), SVMUL(ti11, tr4)); + ci4 = VSUB(SVMUL(ti12, ti5), SVMUL(ti11, ti4)); + dr3 = VSUB(cr3, ci4); + dr4 = VADD(cr3, ci4); + di3 = VADD(ci3, cr4); + di4 = VSUB(ci3, cr4); + dr5 = VADD(cr2, ci5); + dr2 = VSUB(cr2, ci5); + di5 = VSUB(ci2, cr5); + di2 = VADD(ci2, cr5); + wr1=wa1[i], wi1=fsign*wa1[i+1], wr2=wa2[i], wi2=fsign*wa2[i+1]; + wr3=wa3[i], wi3=fsign*wa3[i+1], wr4=wa4[i], wi4=fsign*wa4[i+1]; + VCPLXMUL(dr2, di2, LD_PS1(wr1), LD_PS1(wi1)); + ch_ref(i - 1, 2) = dr2; + ch_ref(i, 2) = di2; + VCPLXMUL(dr3, di3, LD_PS1(wr2), LD_PS1(wi2)); + ch_ref(i - 1, 3) = dr3; + ch_ref(i, 3) = di3; + VCPLXMUL(dr4, di4, LD_PS1(wr3), LD_PS1(wi3)); + ch_ref(i - 1, 4) = dr4; + ch_ref(i, 4) = di4; + VCPLXMUL(dr5, di5, LD_PS1(wr4), LD_PS1(wi4)); + ch_ref(i - 1, 5) = dr5; + ch_ref(i, 5) = di5; + } + } +#undef ch_ref +#undef cc_ref +} +#endif + +static NEVER_INLINE(void) radf2_ps(int ido, int l1, const v4sf * RESTRICT cc, v4sf * RESTRICT ch, const float *wa1) { + static const float minus_one = -1.f; + int i, k, l1ido = l1*ido; + for (k=0; k < l1ido; k += ido) { + v4sf a = cc[k], b = cc[k + l1ido]; + ch[2*k] = VADD(a, b); + ch[2*(k+ido)-1] = VSUB(a, b); + } + if (ido < 2) return; + if (ido != 2) { + for (k=0; k < l1ido; k += ido) { + for (i=2; i 5) { + wa[i1-1] = wa[i-1]; + wa[i1] = wa[i]; + } + } + l1 = l2; + } +} /* cffti1 */ + + +static +v4sf *cfftf1_ps(int n, const v4sf *input_readonly, v4sf *work1, v4sf *work2, const float *wa, const int *ifac, int isign) { + v4sf *in = (v4sf*)input_readonly; + v4sf *out = (in == work2 ? work1 : work2); + int nf = ifac[1], k1; + int l1 = 1; + int iw = 0; + assert(in != out && work1 != work2); + for (k1=2; k1<=nf+1; k1++) { + int ip = ifac[k1]; + int l2 = ip*l1; + int ido = n / l2; + int idot = ido + ido; + switch (ip) { +#if 0 + case 5: { + int ix2 = iw + idot; + int ix3 = ix2 + idot; + int ix4 = ix3 + idot; + passf5_ps(idot, l1, in, out, &wa[iw], &wa[ix2], &wa[ix3], &wa[ix4], (float)isign); + } break; +#endif + case 4: { + int ix2 = iw + idot; + int ix3 = ix2 + idot; + passf4_ps(idot, l1, in, out, &wa[iw], &wa[ix2], &wa[ix3], (float)isign); + } break; + case 2: { + passf2_ps(idot, l1, in, out, &wa[iw], (float)isign); + } break; +#if 0 + case 3: { + int ix2 = iw + idot; + passf3_ps(idot, l1, in, out, &wa[iw], &wa[ix2], (float)isign); + } break; +#endif + default: + assert(0); + } + l1 = l2; + iw += (ip - 1)*idot; + if (out == work2) { + out = work1; in = work2; + } else { + out = work2; in = work1; + } + } + + return in; /* this is in fact the output .. */ +} + + +struct PFFFT_Setup { + int N; + int Ncvec; /* nb of complex simd vectors (N/4 if PFFFT_COMPLEX, N/8 if PFFFT_REAL) */ + int ifac[15]; + pffft_transform_t transform; + v4sf *data; /* allocated room for twiddle coefs */ + float *e; /* points into 'data' , N/4*3 elements */ + float *twiddle; /* points into 'data', N/4 elements */ +}; + +static +PFFFT_Setup *pffft_new_setup(int N, pffft_transform_t transform) { + PFFFT_Setup *s = (PFFFT_Setup*)malloc(sizeof(PFFFT_Setup)); + int k, m; + if (!s) return s; + /* unfortunately, the fft size must be a multiple of 16 for complex FFTs + and 32 for real FFTs -- a lot of stuff would need to be rewritten to + handle other cases (or maybe just switch to a scalar fft, I don't know..) */ + if (transform == PFFFT_REAL) { assert((N%(2*SIMD_SZ*SIMD_SZ))==0 && N>0); } + if (transform == PFFFT_COMPLEX) { assert((N%(SIMD_SZ*SIMD_SZ))==0 && N>0); } + /*assert((N % 32) == 0); */ + s->N = N; + s->transform = transform; + /* nb of complex simd vectors */ + s->Ncvec = (transform == PFFFT_REAL ? N/2 : N)/SIMD_SZ; + s->data = (v4sf*)pffft_aligned_malloc(2*(size_t)s->Ncvec * sizeof(v4sf)); + if (!s->data) {free(s); return 0;} + s->e = (float*)s->data; + s->twiddle = (float*)(s->data + (2*s->Ncvec*(SIMD_SZ-1))/SIMD_SZ); + + if (transform == PFFFT_REAL) { + for (k=0; k < s->Ncvec; ++k) { + int i = k/SIMD_SZ; + int j = k%SIMD_SZ; + for (m=0; m < SIMD_SZ-1; ++m) { + float A = (float)(-2*M_PI*(m+1)*k / N); + s->e[(2*(i*3 + m) + 0) * SIMD_SZ + j] = cos(A); + s->e[(2*(i*3 + m) + 1) * SIMD_SZ + j] = sin(A); + } + } + rffti1_ps(N/SIMD_SZ, s->twiddle, s->ifac); + } else { + for (k=0; k < s->Ncvec; ++k) { + int i = k/SIMD_SZ; + int j = k%SIMD_SZ; + for (m=0; m < SIMD_SZ-1; ++m) { + float A = (float)(-2*M_PI*(m+1)*k / N); + s->e[(2*(i*3 + m) + 0)*SIMD_SZ + j] = cos(A); + s->e[(2*(i*3 + m) + 1)*SIMD_SZ + j] = sin(A); + } + } + cffti1_ps(N/SIMD_SZ, s->twiddle, s->ifac); + } + + /* check that N is decomposable with allowed prime factors */ + for (k=0, m=1; k < s->ifac[1]; ++k) { m *= s->ifac[2+k]; } + if (m != N/SIMD_SZ) { + pffft_destroy_setup(s); s = 0; + } + + return s; +} + + +static +void pffft_destroy_setup(PFFFT_Setup *s) { + if (!s) return; + pffft_aligned_free(s->data); + free(s); +} + +#if !defined(PFFFT_SIMD_DISABLE) + +/* [0 0 1 2 3 4 5 6 7 8] -> [0 8 7 6 5 4 3 2 1] */ +static void reversed_copy(int N, const v4sf *in, int in_stride, v4sf *out) { + v4sf g0, g1; + int k; + INTERLEAVE2(in[0], in[1], g0, g1); in += in_stride; + + *--out = VSWAPHL(g0, g1); /* [g0l, g0h], [g1l g1h] -> [g1l, g0h] */ + for (k=1; k < N; ++k) { + v4sf h0, h1; + INTERLEAVE2(in[0], in[1], h0, h1); in += in_stride; + *--out = VSWAPHL(g1, h0); + *--out = VSWAPHL(h0, h1); + g1 = h1; + } + *--out = VSWAPHL(g1, g0); +} + +static void unreversed_copy(int N, const v4sf *in, v4sf *out, int out_stride) { + v4sf g0, g1, h0, h1; + int k; + g0 = g1 = in[0]; ++in; + for (k=1; k < N; ++k) { + h0 = *in++; h1 = *in++; + g1 = VSWAPHL(g1, h0); + h0 = VSWAPHL(h0, h1); + UNINTERLEAVE2(h0, g1, out[0], out[1]); out += out_stride; + g1 = h1; + } + h0 = *in++; h1 = g0; + g1 = VSWAPHL(g1, h0); + h0 = VSWAPHL(h0, h1); + UNINTERLEAVE2(h0, g1, out[0], out[1]); +} + +static +void pffft_zreorder(PFFFT_Setup *setup, const float *in, float *out, pffft_direction_t direction) { + int k, N = setup->N, Ncvec = setup->Ncvec; + const v4sf *vin = (const v4sf*)in; + v4sf *vout = (v4sf*)out; + assert(in != out); + if (setup->transform == PFFFT_REAL) { + int k, dk = N/32; + if (direction == PFFFT_FORWARD) { + for (k=0; k < dk; ++k) { + INTERLEAVE2(vin[k*8 + 0], vin[k*8 + 1], vout[2*(0*dk + k) + 0], vout[2*(0*dk + k) + 1]); + INTERLEAVE2(vin[k*8 + 4], vin[k*8 + 5], vout[2*(2*dk + k) + 0], vout[2*(2*dk + k) + 1]); + } + reversed_copy(dk, vin+2, 8, (v4sf*)(out + N/2)); + reversed_copy(dk, vin+6, 8, (v4sf*)(out + N)); + } else { + for (k=0; k < dk; ++k) { + UNINTERLEAVE2(vin[2*(0*dk + k) + 0], vin[2*(0*dk + k) + 1], vout[k*8 + 0], vout[k*8 + 1]); + UNINTERLEAVE2(vin[2*(2*dk + k) + 0], vin[2*(2*dk + k) + 1], vout[k*8 + 4], vout[k*8 + 5]); + } + unreversed_copy(dk, (v4sf*)(in + N/4), (v4sf*)(out + N - 6*SIMD_SZ), -8); + unreversed_copy(dk, (v4sf*)(in + 3*N/4), (v4sf*)(out + N - 2*SIMD_SZ), -8); + } + } else { + if (direction == PFFFT_FORWARD) { + for (k=0; k < Ncvec; ++k) { + int kk = (k/4) + (k%4)*(Ncvec/4); + INTERLEAVE2(vin[k*2], vin[k*2+1], vout[kk*2], vout[kk*2+1]); + } + } else { + for (k=0; k < Ncvec; ++k) { + int kk = (k/4) + (k%4)*(Ncvec/4); + UNINTERLEAVE2(vin[kk*2], vin[kk*2+1], vout[k*2], vout[k*2+1]); + } + } + } +} + +static +void pffft_cplx_finalize(int Ncvec, const v4sf *in, v4sf *out, const v4sf *e) { + int k, dk = Ncvec/SIMD_SZ; /* number of 4x4 matrix blocks */ + v4sf r0, i0, r1, i1, r2, i2, r3, i3; + v4sf sr0, dr0, sr1, dr1, si0, di0, si1, di1; + assert(in != out); + for (k=0; k < dk; ++k) { + r0 = in[8*k+0]; i0 = in[8*k+1]; + r1 = in[8*k+2]; i1 = in[8*k+3]; + r2 = in[8*k+4]; i2 = in[8*k+5]; + r3 = in[8*k+6]; i3 = in[8*k+7]; + VTRANSPOSE4(r0,r1,r2,r3); + VTRANSPOSE4(i0,i1,i2,i3); + VCPLXMUL(r1,i1,e[k*6+0],e[k*6+1]); + VCPLXMUL(r2,i2,e[k*6+2],e[k*6+3]); + VCPLXMUL(r3,i3,e[k*6+4],e[k*6+5]); + + sr0 = VADD(r0,r2); dr0 = VSUB(r0, r2); + sr1 = VADD(r1,r3); dr1 = VSUB(r1, r3); + si0 = VADD(i0,i2); di0 = VSUB(i0, i2); + si1 = VADD(i1,i3); di1 = VSUB(i1, i3); + + /* + transformation for each column is: + + [1 1 1 1 0 0 0 0] [r0] + [1 0 -1 0 0 -1 0 1] [r1] + [1 -1 1 -1 0 0 0 0] [r2] + [1 0 -1 0 0 1 0 -1] [r3] + [0 0 0 0 1 1 1 1] * [i0] + [0 1 0 -1 1 0 -1 0] [i1] + [0 0 0 0 1 -1 1 -1] [i2] + [0 -1 0 1 1 0 -1 0] [i3] + */ + + r0 = VADD(sr0, sr1); i0 = VADD(si0, si1); + r1 = VADD(dr0, di1); i1 = VSUB(di0, dr1); + r2 = VSUB(sr0, sr1); i2 = VSUB(si0, si1); + r3 = VSUB(dr0, di1); i3 = VADD(di0, dr1); + + *out++ = r0; *out++ = i0; *out++ = r1; *out++ = i1; + *out++ = r2; *out++ = i2; *out++ = r3; *out++ = i3; + } +} + +static +void pffft_cplx_preprocess(int Ncvec, const v4sf *in, v4sf *out, const v4sf *e) { + int k, dk = Ncvec/SIMD_SZ; /* number of 4x4 matrix blocks */ + v4sf r0, i0, r1, i1, r2, i2, r3, i3; + v4sf sr0, dr0, sr1, dr1, si0, di0, si1, di1; + assert(in != out); + for (k=0; k < dk; ++k) { + r0 = in[8*k+0]; i0 = in[8*k+1]; + r1 = in[8*k+2]; i1 = in[8*k+3]; + r2 = in[8*k+4]; i2 = in[8*k+5]; + r3 = in[8*k+6]; i3 = in[8*k+7]; + + sr0 = VADD(r0,r2); dr0 = VSUB(r0, r2); + sr1 = VADD(r1,r3); dr1 = VSUB(r1, r3); + si0 = VADD(i0,i2); di0 = VSUB(i0, i2); + si1 = VADD(i1,i3); di1 = VSUB(i1, i3); + + r0 = VADD(sr0, sr1); i0 = VADD(si0, si1); + r1 = VSUB(dr0, di1); i1 = VADD(di0, dr1); + r2 = VSUB(sr0, sr1); i2 = VSUB(si0, si1); + r3 = VADD(dr0, di1); i3 = VSUB(di0, dr1); + + VCPLXMULCONJ(r1,i1,e[k*6+0],e[k*6+1]); + VCPLXMULCONJ(r2,i2,e[k*6+2],e[k*6+3]); + VCPLXMULCONJ(r3,i3,e[k*6+4],e[k*6+5]); + + VTRANSPOSE4(r0,r1,r2,r3); + VTRANSPOSE4(i0,i1,i2,i3); + + *out++ = r0; *out++ = i0; *out++ = r1; *out++ = i1; + *out++ = r2; *out++ = i2; *out++ = r3; *out++ = i3; + } +} + + +static ALWAYS_INLINE(void) pffft_real_finalize_4x4(const v4sf *in0, const v4sf *in1, const v4sf *in, + const v4sf *e, v4sf *out) { + v4sf r0, i0, r1, i1, r2, i2, r3, i3; + v4sf sr0, dr0, sr1, dr1, si0, di0, si1, di1; + r0 = *in0; i0 = *in1; + r1 = *in++; i1 = *in++; r2 = *in++; i2 = *in++; r3 = *in++; i3 = *in++; + VTRANSPOSE4(r0,r1,r2,r3); + VTRANSPOSE4(i0,i1,i2,i3); + + /* + transformation for each column is: + + [1 1 1 1 0 0 0 0] [r0] + [1 0 -1 0 0 -1 0 1] [r1] + [1 0 -1 0 0 1 0 -1] [r2] + [1 -1 1 -1 0 0 0 0] [r3] + [0 0 0 0 1 1 1 1] * [i0] + [0 -1 0 1 -1 0 1 0] [i1] + [0 -1 0 1 1 0 -1 0] [i2] + [0 0 0 0 -1 1 -1 1] [i3] + */ + + /*cerr << "matrix initial, before e , REAL:\n 1: " << r0 << "\n 1: " << r1 << "\n 1: " << r2 << "\n 1: " << r3 << "\n"; */ + /*cerr << "matrix initial, before e, IMAG :\n 1: " << i0 << "\n 1: " << i1 << "\n 1: " << i2 << "\n 1: " << i3 << "\n"; */ + + VCPLXMUL(r1,i1,e[0],e[1]); + VCPLXMUL(r2,i2,e[2],e[3]); + VCPLXMUL(r3,i3,e[4],e[5]); + + /*cerr << "matrix initial, real part:\n 1: " << r0 << "\n 1: " << r1 << "\n 1: " << r2 << "\n 1: " << r3 << "\n"; */ + /*cerr << "matrix initial, imag part:\n 1: " << i0 << "\n 1: " << i1 << "\n 1: " << i2 << "\n 1: " << i3 << "\n"; */ + + sr0 = VADD(r0,r2); dr0 = VSUB(r0,r2); + sr1 = VADD(r1,r3); dr1 = VSUB(r3,r1); + si0 = VADD(i0,i2); di0 = VSUB(i0,i2); + si1 = VADD(i1,i3); di1 = VSUB(i3,i1); + + r0 = VADD(sr0, sr1); + r3 = VSUB(sr0, sr1); + i0 = VADD(si0, si1); + i3 = VSUB(si1, si0); + r1 = VADD(dr0, di1); + r2 = VSUB(dr0, di1); + i1 = VSUB(dr1, di0); + i2 = VADD(dr1, di0); + + *out++ = r0; + *out++ = i0; + *out++ = r1; + *out++ = i1; + *out++ = r2; + *out++ = i2; + *out++ = r3; + *out++ = i3; + +} + +static NEVER_INLINE(void) pffft_real_finalize(int Ncvec, const v4sf *in, v4sf *out, const v4sf *e) { + int k, dk = Ncvec/SIMD_SZ; /* number of 4x4 matrix blocks */ + /* fftpack order is f0r f1r f1i f2r f2i ... f(n-1)r f(n-1)i f(n)r */ + + v4sf_union cr, ci, *uout = (v4sf_union*)out; + v4sf save = in[7], zero=VZERO(); + float xr0, xi0, xr1, xi1, xr2, xi2, xr3, xi3; + static const float s = (float)(M_SQRT2/2); + + cr.v = in[0]; ci.v = in[Ncvec*2-1]; + assert(in != out); + pffft_real_finalize_4x4(&zero, &zero, in+1, e, out); + + /* + [cr0 cr1 cr2 cr3 ci0 ci1 ci2 ci3] + + [Xr(1)] ] [1 1 1 1 0 0 0 0] + [Xr(N/4) ] [0 0 0 0 1 s 0 -s] + [Xr(N/2) ] [1 0 -1 0 0 0 0 0] + [Xr(3N/4)] [0 0 0 0 1 -s 0 s] + [Xi(1) ] [1 -1 1 -1 0 0 0 0] + [Xi(N/4) ] [0 0 0 0 0 -s -1 -s] + [Xi(N/2) ] [0 -1 0 1 0 0 0 0] + [Xi(3N/4)] [0 0 0 0 0 -s 1 -s] + */ + + xr0=(cr.f[0]+cr.f[2]) + (cr.f[1]+cr.f[3]); uout[0].f[0] = xr0; + xi0=(cr.f[0]+cr.f[2]) - (cr.f[1]+cr.f[3]); uout[1].f[0] = xi0; + xr2=(cr.f[0]-cr.f[2]); uout[4].f[0] = xr2; + xi2=(cr.f[3]-cr.f[1]); uout[5].f[0] = xi2; + xr1= ci.f[0] + s*(ci.f[1]-ci.f[3]); uout[2].f[0] = xr1; + xi1=-ci.f[2] - s*(ci.f[1]+ci.f[3]); uout[3].f[0] = xi1; + xr3= ci.f[0] - s*(ci.f[1]-ci.f[3]); uout[6].f[0] = xr3; + xi3= ci.f[2] - s*(ci.f[1]+ci.f[3]); uout[7].f[0] = xi3; + + for (k=1; k < dk; ++k) { + v4sf save_next = in[8*k+7]; + pffft_real_finalize_4x4(&save, &in[8*k+0], in + 8*k+1, + e + k*6, out + k*8); + save = save_next; + } + +} + +static ALWAYS_INLINE(void) pffft_real_preprocess_4x4(const v4sf *in, + const v4sf *e, v4sf *out, int first) { + v4sf r0=in[0], i0=in[1], r1=in[2], i1=in[3], r2=in[4], i2=in[5], r3=in[6], i3=in[7]; + /* + transformation for each column is: + + [1 1 1 1 0 0 0 0] [r0] + [1 0 0 -1 0 -1 -1 0] [r1] + [1 -1 -1 1 0 0 0 0] [r2] + [1 0 0 -1 0 1 1 0] [r3] + [0 0 0 0 1 -1 1 -1] * [i0] + [0 -1 1 0 1 0 0 1] [i1] + [0 0 0 0 1 1 -1 -1] [i2] + [0 1 -1 0 1 0 0 1] [i3] + */ + + v4sf sr0 = VADD(r0,r3), dr0 = VSUB(r0,r3); + v4sf sr1 = VADD(r1,r2), dr1 = VSUB(r1,r2); + v4sf si0 = VADD(i0,i3), di0 = VSUB(i0,i3); + v4sf si1 = VADD(i1,i2), di1 = VSUB(i1,i2); + + r0 = VADD(sr0, sr1); + r2 = VSUB(sr0, sr1); + r1 = VSUB(dr0, si1); + r3 = VADD(dr0, si1); + i0 = VSUB(di0, di1); + i2 = VADD(di0, di1); + i1 = VSUB(si0, dr1); + i3 = VADD(si0, dr1); + + VCPLXMULCONJ(r1,i1,e[0],e[1]); + VCPLXMULCONJ(r2,i2,e[2],e[3]); + VCPLXMULCONJ(r3,i3,e[4],e[5]); + + VTRANSPOSE4(r0,r1,r2,r3); + VTRANSPOSE4(i0,i1,i2,i3); + + if (!first) { + *out++ = r0; + *out++ = i0; + } + *out++ = r1; + *out++ = i1; + *out++ = r2; + *out++ = i2; + *out++ = r3; + *out++ = i3; +} + +static NEVER_INLINE(void) pffft_real_preprocess(int Ncvec, const v4sf *in, v4sf *out, const v4sf *e) { + int k, dk = Ncvec/SIMD_SZ; /* number of 4x4 matrix blocks */ + /* fftpack order is f0r f1r f1i f2r f2i ... f(n-1)r f(n-1)i f(n)r */ + + v4sf_union Xr, Xi, *uout = (v4sf_union*)out; + float cr0, ci0, cr1, ci1, cr2, ci2, cr3, ci3; + static const float s = (float)M_SQRT2; + assert(in != out); + for (k=0; k < 4; ++k) { + Xr.f[k] = ((float*)in)[8*k]; + Xi.f[k] = ((float*)in)[8*k+4]; + } + + pffft_real_preprocess_4x4(in, e, out+1, 1); /* will write only 6 values */ + + /* + [Xr0 Xr1 Xr2 Xr3 Xi0 Xi1 Xi2 Xi3] + + [cr0] [1 0 2 0 1 0 0 0] + [cr1] [1 0 0 0 -1 0 -2 0] + [cr2] [1 0 -2 0 1 0 0 0] + [cr3] [1 0 0 0 -1 0 2 0] + [ci0] [0 2 0 2 0 0 0 0] + [ci1] [0 s 0 -s 0 -s 0 -s] + [ci2] [0 0 0 0 0 -2 0 2] + [ci3] [0 -s 0 s 0 -s 0 -s] + */ + for (k=1; k < dk; ++k) { + pffft_real_preprocess_4x4(in+8*k, e + k*6, out-1+k*8, 0); + } + + cr0=(Xr.f[0]+Xi.f[0]) + 2*Xr.f[2]; uout[0].f[0] = cr0; + cr1=(Xr.f[0]-Xi.f[0]) - 2*Xi.f[2]; uout[0].f[1] = cr1; + cr2=(Xr.f[0]+Xi.f[0]) - 2*Xr.f[2]; uout[0].f[2] = cr2; + cr3=(Xr.f[0]-Xi.f[0]) + 2*Xi.f[2]; uout[0].f[3] = cr3; + ci0= 2*(Xr.f[1]+Xr.f[3]); uout[2*Ncvec-1].f[0] = ci0; + ci1= s*(Xr.f[1]-Xr.f[3]) - s*(Xi.f[1]+Xi.f[3]); uout[2*Ncvec-1].f[1] = ci1; + ci2= 2*(Xi.f[3]-Xi.f[1]); uout[2*Ncvec-1].f[2] = ci2; + ci3=-s*(Xr.f[1]-Xr.f[3]) - s*(Xi.f[1]+Xi.f[3]); uout[2*Ncvec-1].f[3] = ci3; +} + + +static +void pffft_transform_internal(PFFFT_Setup *setup, const float *finput, float *foutput, v4sf *scratch, + pffft_direction_t direction, int ordered) { + int k, Ncvec = setup->Ncvec; + int nf_odd = (setup->ifac[1] & 1); + +#if 0 + /* temporary buffer is allocated on the stack if the scratch pointer is NULL */ + int stack_allocate = (scratch == 0 ? Ncvec*2 : 1); + VLA_ARRAY_ON_STACK(v4sf, scratch_on_stack, stack_allocate); +#endif + + const v4sf *vinput = (const v4sf*)finput; + v4sf *voutput = (v4sf*)foutput; + v4sf *buff[2]; + int ib = (nf_odd ^ ordered ? 1 : 0); + buff[0] = voutput; buff[1] = scratch; + + assert(VALIGNED(finput) && VALIGNED(foutput)); + + /*assert(finput != foutput); */ + if (direction == PFFFT_FORWARD) { + ib = !ib; + if (setup->transform == PFFFT_REAL) { + ib = (rfftf1_ps(Ncvec*2, vinput, buff[ib], buff[!ib], + setup->twiddle, &setup->ifac[0]) == buff[0] ? 0 : 1); + pffft_real_finalize(Ncvec, buff[ib], buff[!ib], (v4sf*)setup->e); + } else { + v4sf *tmp = buff[ib]; + for (k=0; k < Ncvec; ++k) { + UNINTERLEAVE2(vinput[k*2], vinput[k*2+1], tmp[k*2], tmp[k*2+1]); + } + ib = (cfftf1_ps(Ncvec, buff[ib], buff[!ib], buff[ib], + setup->twiddle, &setup->ifac[0], -1) == buff[0] ? 0 : 1); + pffft_cplx_finalize(Ncvec, buff[ib], buff[!ib], (v4sf*)setup->e); + } + if (ordered) { + pffft_zreorder(setup, (float*)buff[!ib], (float*)buff[ib], PFFFT_FORWARD); + } else ib = !ib; + } else { + if (vinput == buff[ib]) { + ib = !ib; /* may happen when finput == foutput */ + } + if (ordered) { + pffft_zreorder(setup, (float*)vinput, (float*)buff[ib], PFFFT_BACKWARD); + vinput = buff[ib]; ib = !ib; + } + if (setup->transform == PFFFT_REAL) { + pffft_real_preprocess(Ncvec, vinput, buff[ib], (v4sf*)setup->e); + ib = (rfftb1_ps(Ncvec*2, buff[ib], buff[0], buff[1], + setup->twiddle, &setup->ifac[0]) == buff[0] ? 0 : 1); + } else { + pffft_cplx_preprocess(Ncvec, vinput, buff[ib], (v4sf*)setup->e); + ib = (cfftf1_ps(Ncvec, buff[ib], buff[0], buff[1], + setup->twiddle, &setup->ifac[0], +1) == buff[0] ? 0 : 1); + for (k=0; k < Ncvec; ++k) { + INTERLEAVE2(buff[ib][k*2], buff[ib][k*2+1], buff[ib][k*2], buff[ib][k*2+1]); + } + } + } + + if (buff[ib] != voutput) { + /* extra copy required -- this situation should only happen when finput == foutput */ + assert(finput==foutput); + for (k=0; k < Ncvec; ++k) { + v4sf a = buff[ib][2*k], b = buff[ib][2*k+1]; + voutput[2*k] = a; voutput[2*k+1] = b; + } + ib = !ib; + } + assert(buff[ib] == voutput); +} + +#if 0 +void pffft_zconvolve_accumulate(PFFFT_Setup *s, const float *a, const float *b, float *ab, float scaling) { + int Ncvec = s->Ncvec; + const v4sf * RESTRICT va = (const v4sf*)a; + const v4sf * RESTRICT vb = (const v4sf*)b; + v4sf * RESTRICT vab = (v4sf*)ab; + +#ifdef __arm__ + __builtin_prefetch(va); + __builtin_prefetch(vb); + __builtin_prefetch(vab); + __builtin_prefetch(va+2); + __builtin_prefetch(vb+2); + __builtin_prefetch(vab+2); + __builtin_prefetch(va+4); + __builtin_prefetch(vb+4); + __builtin_prefetch(vab+4); + __builtin_prefetch(va+6); + __builtin_prefetch(vb+6); + __builtin_prefetch(vab+6); +# ifndef __clang__ +# define ZCONVOLVE_USING_INLINE_NEON_ASM +# endif +#endif + + float ar, ai, br, bi, abr, abi; +#ifndef ZCONVOLVE_USING_INLINE_ASM + v4sf vscal = LD_PS1(scaling); + int i; +#endif + + assert(VALIGNED(a) && VALIGNED(b) && VALIGNED(ab)); + ar = ((v4sf_union*)va)[0].f[0]; + ai = ((v4sf_union*)va)[1].f[0]; + br = ((v4sf_union*)vb)[0].f[0]; + bi = ((v4sf_union*)vb)[1].f[0]; + abr = ((v4sf_union*)vab)[0].f[0]; + abi = ((v4sf_union*)vab)[1].f[0]; + +#ifdef ZCONVOLVE_USING_INLINE_ASM /* inline asm version, unfortunately miscompiled by clang 3.2, at least on ubuntu.. so this will be restricted to gcc */ + const float *a_ = a, *b_ = b; float *ab_ = ab; + int N = Ncvec; + asm volatile("mov r8, %2 \n" + "vdup.f32 q15, %4 \n" + "1: \n" + "pld [%0,#64] \n" + "pld [%1,#64] \n" + "pld [%2,#64] \n" + "pld [%0,#96] \n" + "pld [%1,#96] \n" + "pld [%2,#96] \n" + "vld1.f32 {q0,q1}, [%0,:128]! \n" + "vld1.f32 {q4,q5}, [%1,:128]! \n" + "vld1.f32 {q2,q3}, [%0,:128]! \n" + "vld1.f32 {q6,q7}, [%1,:128]! \n" + "vld1.f32 {q8,q9}, [r8,:128]! \n" + + "vmul.f32 q10, q0, q4 \n" + "vmul.f32 q11, q0, q5 \n" + "vmul.f32 q12, q2, q6 \n" + "vmul.f32 q13, q2, q7 \n" + "vmls.f32 q10, q1, q5 \n" + "vmla.f32 q11, q1, q4 \n" + "vld1.f32 {q0,q1}, [r8,:128]! \n" + "vmls.f32 q12, q3, q7 \n" + "vmla.f32 q13, q3, q6 \n" + "vmla.f32 q8, q10, q15 \n" + "vmla.f32 q9, q11, q15 \n" + "vmla.f32 q0, q12, q15 \n" + "vmla.f32 q1, q13, q15 \n" + "vst1.f32 {q8,q9},[%2,:128]! \n" + "vst1.f32 {q0,q1},[%2,:128]! \n" + "subs %3, #2 \n" + "bne 1b \n" + : "+r"(a_), "+r"(b_), "+r"(ab_), "+r"(N) : "r"(scaling) : "r8", "q0","q1","q2","q3","q4","q5","q6","q7","q8","q9", "q10","q11","q12","q13","q15","memory"); +#else /* default routine, works fine for non-arm cpus with current compilers */ + for (i=0; i < Ncvec; i += 2) { + v4sf ar, ai, br, bi; + ar = va[2*i+0]; ai = va[2*i+1]; + br = vb[2*i+0]; bi = vb[2*i+1]; + VCPLXMUL(ar, ai, br, bi); + vab[2*i+0] = VMADD(ar, vscal, vab[2*i+0]); + vab[2*i+1] = VMADD(ai, vscal, vab[2*i+1]); + ar = va[2*i+2]; ai = va[2*i+3]; + br = vb[2*i+2]; bi = vb[2*i+3]; + VCPLXMUL(ar, ai, br, bi); + vab[2*i+2] = VMADD(ar, vscal, vab[2*i+2]); + vab[2*i+3] = VMADD(ai, vscal, vab[2*i+3]); + } +#endif + if (s->transform == PFFFT_REAL) { + ((v4sf_union*)vab)[0].f[0] = abr + ar*br*scaling; + ((v4sf_union*)vab)[1].f[0] = abi + ai*bi*scaling; + } +} +#endif + + +#else /* defined(PFFFT_SIMD_DISABLE) */ + +/* standard routine using scalar floats, without SIMD stuff. */ + +#define pffft_zreorder_nosimd pffft_zreorder +static +void pffft_zreorder_nosimd(PFFFT_Setup *setup, const float *in, float *out, pffft_direction_t direction) { + int k, N = setup->N; + if (setup->transform == PFFFT_COMPLEX) { + for (k=0; k < 2*N; ++k) out[k] = in[k]; + return; + } + else if (direction == PFFFT_FORWARD) { + float x_N = in[N-1]; + for (k=N-1; k > 1; --k) out[k] = in[k-1]; + out[0] = in[0]; + out[1] = x_N; + } else { + float x_N = in[1]; + for (k=1; k < N-1; ++k) out[k] = in[k+1]; + out[0] = in[0]; + out[N-1] = x_N; + } +} + +#define pffft_transform_internal_nosimd pffft_transform_internal +static +void pffft_transform_internal_nosimd(PFFFT_Setup *setup, const float *input, float *output, float *scratch, + pffft_direction_t direction, int ordered) { + int Ncvec = setup->Ncvec; + int nf_odd = (setup->ifac[1] & 1); + +#if 0 + /* temporary buffer is allocated on the stack if the scratch pointer is NULL */ + int stack_allocate = (scratch == 0 ? Ncvec*2 : 1); + VLA_ARRAY_ON_STACK(v4sf, scratch_on_stack, stack_allocate); +#endif + float *buff[2]; + int ib; + /* if (scratch == 0) scratch = scratch_on_stack; */ + buff[0] = output; buff[1] = scratch; + + if (setup->transform == PFFFT_COMPLEX) ordered = 0; /* it is always ordered. */ + ib = (nf_odd ^ ordered ? 1 : 0); + + if (direction == PFFFT_FORWARD) { + if (setup->transform == PFFFT_REAL) { + ib = (rfftf1_ps(Ncvec*2, input, buff[ib], buff[!ib], + setup->twiddle, &setup->ifac[0]) == buff[0] ? 0 : 1); + } else { + ib = (cfftf1_ps(Ncvec, input, buff[ib], buff[!ib], + setup->twiddle, &setup->ifac[0], -1) == buff[0] ? 0 : 1); + } + if (ordered) { + pffft_zreorder(setup, buff[ib], buff[!ib], PFFFT_FORWARD); ib = !ib; + } + } else { + if (input == buff[ib]) { + ib = !ib; /* may happen when finput == foutput */ + } + if (ordered) { + pffft_zreorder(setup, input, buff[!ib], PFFFT_BACKWARD); + input = buff[!ib]; + } + if (setup->transform == PFFFT_REAL) { + ib = (rfftb1_ps(Ncvec*2, input, buff[ib], buff[!ib], + setup->twiddle, &setup->ifac[0]) == buff[0] ? 0 : 1); + } else { + ib = (cfftf1_ps(Ncvec, input, buff[ib], buff[!ib], + setup->twiddle, &setup->ifac[0], +1) == buff[0] ? 0 : 1); + } + } + if (buff[ib] != output) { + int k; + /* extra copy required -- this situation should happens only when finput == foutput */ + assert(input==output); + for (k=0; k < Ncvec; ++k) { + float a = buff[ib][2*k], b = buff[ib][2*k+1]; + output[2*k] = a; output[2*k+1] = b; + } + ib = !ib; + } + assert(buff[ib] == output); +} + +#if 0 +#define pffft_zconvolve_accumulate_nosimd pffft_zconvolve_accumulate +void pffft_zconvolve_accumulate_nosimd(PFFFT_Setup *s, const float *a, const float *b, + float *ab, float scaling) { + int i, Ncvec = s->Ncvec; + + if (s->transform == PFFFT_REAL) { + /* take care of the fftpack ordering */ + ab[0] += a[0]*b[0]*scaling; + ab[2*Ncvec-1] += a[2*Ncvec-1]*b[2*Ncvec-1]*scaling; + ++ab; ++a; ++b; --Ncvec; + } + for (i=0; i < Ncvec; ++i) { + float ar, ai, br, bi; + ar = a[2*i+0]; ai = a[2*i+1]; + br = b[2*i+0]; bi = b[2*i+1]; + VCPLXMUL(ar, ai, br, bi); + ab[2*i+0] += ar*scaling; + ab[2*i+1] += ai*scaling; + } +} +#endif + +#endif /* defined(PFFFT_SIMD_DISABLE) */ + +static +void pffft_transform(PFFFT_Setup *setup, const float *input, float *output, float *work, pffft_direction_t direction) { + pffft_transform_internal(setup, input, output, (v4sf*)work, direction, 0); +} + +static +void pffft_transform_ordered(PFFFT_Setup *setup, const float *input, float *output, float *work, pffft_direction_t direction) { + pffft_transform_internal(setup, input, output, (v4sf*)work, direction, 1); +} + +#endif diff --git a/C/src/soxr-0.1.3/src/pffft.h b/C/src/soxr-0.1.3/src/pffft.h new file mode 100644 index 00000000..63522cac --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft.h @@ -0,0 +1,197 @@ +/* https://bitbucket.org/jpommier/pffft/raw/483453d8f7661058e74aa4e7cf5c27bcd7887e7a/pffft.h + * with minor changes for libsoxr. */ + +#if !defined PFFT_MACROS_ONLY + +/* Copyright (c) 2013 Julien Pommier ( pommier@modartt.com ) + + Based on original fortran 77 code from FFTPACKv4 from NETLIB, + authored by Dr Paul Swarztrauber of NCAR, in 1985. + + As confirmed by the NCAR fftpack software curators, the following + FFTPACKv5 license applies to FFTPACKv4 sources. My changes are + released under the same terms. + + FFTPACK license: + + http://www.cisl.ucar.edu/css/software/fftpack5/ftpk.html + + Copyright (c) 2004 the University Corporation for Atmospheric + Research ("UCAR"). All rights reserved. Developed by NCAR's + Computational and Information Systems Laboratory, UCAR, + www.cisl.ucar.edu. + + Redistribution and use of the Software in source and binary forms, + with or without modification, is permitted provided that the + following conditions are met: + + - Neither the names of NCAR's Computational and Information Systems + Laboratory, the University Corporation for Atmospheric Research, + nor the names of its sponsors or contributors may be used to + endorse or promote products derived from this Software without + specific prior written permission. + + - Redistributions of source code must retain the above copyright + notices, this list of conditions, and the disclaimer below. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the disclaimer below in the + documentation and/or other materials provided with the + distribution. + + THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE + SOFTWARE. +*/ + +/* + PFFFT : a Pretty Fast FFT. + + This is basically an adaptation of the single precision fftpack + (v4) as found on netlib taking advantage of SIMD instruction found + on cpus such as intel x86 (SSE1), powerpc (Altivec), and arm (NEON). + + For architectures where no SIMD instruction is available, the code + falls back to a scalar version. + + Restrictions: + + - 1D transforms only, with 32-bit single precision. + + - supports only transforms for inputs of length N of the form + N=(2^a)*(3^b)*(5^c), a >= 5, b >=0, c >= 0 (32, 48, 64, 96, 128, + 144, 160, etc are all acceptable lengths). Performance is best for + 128<=N<=8192. + + - all (float*) pointers in the functions below are expected to + have an "simd-compatible" alignment, that is 16 bytes on x86 and + powerpc CPUs. + + You can allocate such buffers with the functions + pffft_aligned_malloc / pffft_aligned_free (or with stuff like + posix_memalign..) + +*/ + +#ifndef PFFFT_H +#define PFFFT_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#if PFFFT_DOUBLE +#define float double +#endif + + /* opaque struct holding internal stuff (precomputed twiddle factors) + this struct can be shared by many threads as it contains only + read-only data. + */ + typedef struct PFFFT_Setup PFFFT_Setup; + + /* direction of the transform */ + typedef enum { PFFFT_FORWARD, PFFFT_BACKWARD } pffft_direction_t; + + /* type of transform */ + typedef enum { PFFFT_REAL, PFFFT_COMPLEX } pffft_transform_t; + + /* + prepare for performing transforms of size N -- the returned + PFFFT_Setup structure is read-only so it can safely be shared by + multiple concurrent threads. + */ + static + PFFFT_Setup *pffft_new_setup(int N, pffft_transform_t transform); + static + void pffft_destroy_setup(PFFFT_Setup *); + /* + Perform a Fourier transform , The z-domain data is stored in the + most efficient order for transforming it back, or using it for + convolution. If you need to have its content sorted in the + "usual" way, that is as an array of interleaved complex numbers, + either use pffft_transform_ordered , or call pffft_zreorder after + the forward fft, and before the backward fft. + + Transforms are not scaled: PFFFT_BACKWARD(PFFFT_FORWARD(x)) = N*x. + Typically you will want to scale the backward transform by 1/N. + + The 'work' pointer should point to an area of N (2*N for complex + fft) floats, properly aligned. If 'work' is NULL, then stack will + be used instead (this is probably the best strategy for small + FFTs, say for N < 16384). + + input and output may alias. + */ + static + void pffft_transform(PFFFT_Setup *setup, const float *input, float *output, float *work, pffft_direction_t direction); + + /* + Similar to pffft_transform, but makes sure that the output is + ordered as expected (interleaved complex numbers). This is + similar to calling pffft_transform and then pffft_zreorder. + + input and output may alias. + */ + static + void pffft_transform_ordered(PFFFT_Setup *setup, const float *input, float *output, float *work, pffft_direction_t direction); + + /* + call pffft_zreorder(.., PFFFT_FORWARD) after pffft_transform(..., + PFFFT_FORWARD) if you want to have the frequency components in + the correct "canonical" order, as interleaved complex numbers. + + (for real transforms, both 0-frequency and half frequency + components, which are real, are assembled in the first entry as + F(0)+i*F(n/2+1). Note that the original fftpack did place + F(n/2+1) at the end of the arrays). + + input and output should not alias. + */ + static + void pffft_zreorder(PFFFT_Setup *setup, const float *input, float *output, pffft_direction_t direction); + + /* + Perform a multiplication of the frequency components of dft_a and + dft_b and accumulate them into dft_ab. The arrays should have + been obtained with pffft_transform(.., PFFFT_FORWARD) and should + *not* have been reordered with pffft_zreorder (otherwise just + perform the operation yourself as the dft coefs are stored as + interleaved complex numbers). + + the operation performed is: dft_ab += (dft_a * fdt_b)*scaling + + The dft_a, dft_b and dft_ab pointers may alias. + */ + void pffft_zconvolve_accumulate(PFFFT_Setup *setup, const float *dft_a, const float *dft_b, float *dft_ab, float scaling); + + /* + the float buffers must have the correct alignment (16-byte boundary + on intel and powerpc). This function may be used to obtain such + correctly aligned buffers. + */ +#if 0 + void *pffft_aligned_malloc(size_t nb_bytes); + void pffft_aligned_free(void *); + + /* return 4 or 1 wether support SSE/Altivec instructions was enable when building pffft.c */ + int pffft_simd_size(); +#endif + +#undef float + +#ifdef __cplusplus +} +#endif + +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/pffft32.c b/C/src/soxr-0.1.3/src/pffft32.c new file mode 100644 index 00000000..f4808094 --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft32.c @@ -0,0 +1,39 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define SIMD_ALIGNED_FREE free +#define SIMD_ALIGNED_MALLOC malloc +#define PFFFT_SIMD_DISABLE +#define PFFFT_DOUBLE 0 +#include "pffft-wrap.c" + +#include "filter.h" +#include "rdft_t.h" + +static void * setup(int len) {return pffft_new_setup(len, PFFFT_REAL);} +static void delete_setup(void * setup) {pffft_destroy_setup(setup);} +static void forward (int length, void * setup, float * h, float * scratch) {pffft_transform (setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void oforward (int length, void * setup, float * h, float * scratch) {pffft_transform_ordered(setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void backward (int length, void * setup, float * H, float * scratch) {pffft_transform (setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void obackward(int length, void * setup, float * H, float * scratch) {pffft_transform_ordered(setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void convolve(int length, void * setup, float * H, float const * with) { pffft_zconvolve(setup, H, with, H); (void)length;} +static int multiplier(void) {return 1;} +static int flags(void) {return RDFT_NEEDS_SCRATCH;} + +fn_t _soxr_rdft32_cb[] = { + (fn_t)setup, + (fn_t)setup, + (fn_t)delete_setup, + (fn_t)forward, + (fn_t)oforward, + (fn_t)backward, + (fn_t)obackward, + (fn_t)convolve, + (fn_t)_soxr_ordered_partial_convolve_f, + (fn_t)multiplier, + (fn_t)pffft_reorder_back, + (fn_t)malloc, + (fn_t)calloc, + (fn_t)free, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/pffft32s.c b/C/src/soxr-0.1.3/src/pffft32s.c new file mode 100644 index 00000000..7798a45c --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft32s.c @@ -0,0 +1,34 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define PFFFT_DOUBLE 0 +#include "pffft-wrap.c" + +#include "rdft_t.h" + +static void * setup(int len) {return pffft_new_setup(len, PFFFT_REAL);} +static void forward (int length, void * setup, float * h, float * scratch) {pffft_transform (setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void oforward (int length, void * setup, float * h, float * scratch) {pffft_transform_ordered(setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void backward (int length, void * setup, float * H, float * scratch) {pffft_transform (setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void obackward(int length, void * setup, float * H, float * scratch) {pffft_transform_ordered(setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void convolve(int length, void * setup, float * H, float const * with) {pffft_zconvolve(setup, H, with, H); (void)length;} +static int multiplier(void) {return 1;} +static int flags(void) {return RDFT_IS_SIMD | RDFT_NEEDS_SCRATCH;} + +fn_t _soxr_rdft32s_cb[] = { + (fn_t)setup, + (fn_t)setup, + (fn_t)pffft_destroy_setup, + (fn_t)forward, + (fn_t)oforward, + (fn_t)backward, + (fn_t)obackward, + (fn_t)convolve, + (fn_t)ORDERED_PARTIAL_CONVOLVE_SIMD, + (fn_t)multiplier, + (fn_t)pffft_reorder_back, + (fn_t)SIMD_ALIGNED_MALLOC, + (fn_t)SIMD_ALIGNED_CALLOC, + (fn_t)SIMD_ALIGNED_FREE, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/pffft64s.c b/C/src/soxr-0.1.3/src/pffft64s.c new file mode 100644 index 00000000..7c37c9d4 --- /dev/null +++ b/C/src/soxr-0.1.3/src/pffft64s.c @@ -0,0 +1,34 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define PFFFT_DOUBLE 1 +#include "pffft-wrap.c" + +#include "rdft_t.h" + +static void * setup(int len) {return pffft_new_setup(len, PFFFT_REAL);} +static void forward (int length, void * setup, double * h, double * scratch) {pffft_transform (setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void oforward (int length, void * setup, double * h, double * scratch) {pffft_transform_ordered(setup, h, h, scratch, PFFFT_FORWARD); (void)length;} +static void backward (int length, void * setup, double * H, double * scratch) {pffft_transform (setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void obackward(int length, void * setup, double * H, double * scratch) {pffft_transform_ordered(setup, H, H, scratch, PFFFT_BACKWARD);(void)length;} +static void convolve(int length, void * setup, double * H, double const * with) {pffft_zconvolve(setup, H, with, H); (void)length;} +static int multiplier(void) {return 1;} +static int flags(void) {return RDFT_IS_SIMD | RDFT_NEEDS_SCRATCH;} + +fn_t _soxr_rdft64s_cb[] = { + (fn_t)setup, + (fn_t)setup, + (fn_t)pffft_destroy_setup, + (fn_t)forward, + (fn_t)oforward, + (fn_t)backward, + (fn_t)obackward, + (fn_t)convolve, + (fn_t)ORDERED_PARTIAL_CONVOLVE_SIMD, + (fn_t)multiplier, + (fn_t)pffft_reorder_back, + (fn_t)SIMD_ALIGNED_MALLOC, + (fn_t)SIMD_ALIGNED_CALLOC, + (fn_t)SIMD_ALIGNED_FREE, + (fn_t)flags, +}; diff --git a/C/src/soxr-0.1.3/src/poly-fir.h b/C/src/soxr-0.1.3/src/poly-fir.h new file mode 100644 index 00000000..d138e030 --- /dev/null +++ b/C/src/soxr-0.1.3/src/poly-fir.h @@ -0,0 +1,150 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Resample using an interpolated poly-phase FIR with length LEN. */ +/* Input must be followed by FIR_LENGTH-1 samples. */ + +#if COEF_INTERP != 1 && COEF_INTERP != 2 && COEF_INTERP != 3 + #error COEF_INTERP +#endif + +#if SIMD_AVX || SIMD_SSE || SIMD_NEON + #define N (FIR_LENGTH>>2) + + #if COEF_INTERP == 1 + #define _ sum=vMac(vMac(b,X,a),vLdu(in+j*4),sum), ++j; + #elif COEF_INTERP == 2 + #define _ sum=vMac(vMac(vMac(c,X,b),X,a),vLdu(in+j*4),sum), ++j; + #else + #define _ sum=vMac(vMac(vMac(vMac(d,X,c),X,b),X,a),vLdu(in+j*4),sum), ++j; + #endif + + #define a coefs[(COEF_INTERP+1)*(N*phase+j)+(COEF_INTERP-0)] + #define b coefs[(COEF_INTERP+1)*(N*phase+j)+(COEF_INTERP-1)] + #define c coefs[(COEF_INTERP+1)*(N*phase+j)+(COEF_INTERP-2)] + #define d coefs[(COEF_INTERP+1)*(N*phase+j)+(COEF_INTERP-3)] + + #define BEGINNING v4_t X = vLds(x), sum = vZero(); \ + v4_t const * const __restrict coefs = (v4_t *)COEFS + #define END vStorSum(output+i, sum) + #define cc(n) case n: core(n); break + #define CORE(n) switch (n) {cc(2); cc(3); cc(4); cc(5); cc(6); default: core(n);} +#else + #define N FIR_LENGTH + + #if COEF_INTERP == 1 + #define _ sum += (b*x + a)*in[j], ++j; + #elif COEF_INTERP == 2 + #define _ sum += ((c*x + b)*x + a)*in[j], ++j; + #else + #define _ sum += (((d*x + c)*x + b)*x + a)*in[j], ++j; + #endif + + #define a (coef(COEFS, COEF_INTERP, N, phase, 0,j)) + #define b (coef(COEFS, COEF_INTERP, N, phase, 1,j)) + #define c (coef(COEFS, COEF_INTERP, N, phase, 2,j)) + #define d (coef(COEFS, COEF_INTERP, N, phase, 3,j)) + + #define BEGINNING sample_t sum = 0 + #define END output[i] = sum + #define CORE(n) core(n) +#endif + + + +#define floatPrecCore(n) { \ + float_step_t at = p->at.flt; \ + for (i = 0; (int)at < num_in; ++i, at += p->step.flt) { \ + sample_t const * const __restrict in = input + (int)at; \ + float_step_t frac = at - (int)at; \ + int phase = (int)(frac * (1 << PHASE_BITS)); \ + sample_t x = (sample_t)(frac * (1 << PHASE_BITS) - phase); \ + int j = 0; \ + BEGINNING; CONVOLVE(n); END; \ + } \ + fifo_read(&p->fifo, (int)at, NULL); \ + p->at.flt = at - (int)at; } /* Could round to 1 in some cirmcumstances. */ + + + +#define highPrecCore(n) { \ + step_t at; at.fix = p->at.fix; \ + for (i = 0; at.integer < num_in; ++i, \ + at.fix.ls.all += p->step.fix.ls.all, \ + at.whole += p->step.whole + (at.fix.ls.all < p->step.fix.ls.all)) { \ + sample_t const * const __restrict in = input + at.integer; \ + uint32_t frac = at.fraction; \ + int phase = (int)(frac >> (32 - PHASE_BITS)); /* High-order bits */ \ + /* Low-order bits, scaled to [0,1): */ \ + sample_t x = (sample_t)((frac << PHASE_BITS) * (1 / MULT32)); \ + int j = 0; \ + BEGINNING; CONVOLVE(n); END; \ + } \ + fifo_read(&p->fifo, at.integer, NULL); \ + p->at.whole = at.fraction; \ + p->at.fix.ls = at.fix.ls; } + + + +#define stdPrecCore(n) { \ + int64p_t at; at.all = p->at.whole; \ + for (i = 0; at.parts.ms < num_in; ++i, at.all += p->step.whole) { \ + sample_t const * const __restrict in = input + at.parts.ms; \ + uint32_t const frac = at.parts.ls; \ + int phase = (int)(frac >> (32 - PHASE_BITS)); /* high-order bits */ \ + /* Low-order bits, scaled to [0,1): */ \ + sample_t x = (sample_t)((frac << PHASE_BITS) * (1 / MULT32)); \ + int j = 0; \ + BEGINNING; CONVOLVE(n); END; \ + } \ + fifo_read(&p->fifo, at.parts.ms, NULL); \ + p->at.whole = at.parts.ls; } + + + +#if WITH_FLOAT_STD_PREC_CLOCK + #define SPCORE floatPrecCore +#else + #define SPCORE stdPrecCore +#endif + + + +#if WITH_HI_PREC_CLOCK + #define core(n) if (p->use_hi_prec_clock) highPrecCore(n) else SPCORE(n) +#else + #define core(n) SPCORE(n) +#endif + + + +static void FUNCTION(stage_t * p, fifo_t * output_fifo) +{ + sample_t const * input = stage_read_p(p); + int num_in = min(stage_occupancy(p), p->input_size); + int i, max_num_out = 1 + (int)(num_in * p->out_in_ratio); + sample_t * const __restrict output = fifo_reserve(output_fifo, max_num_out); + + CORE(N); + assert(max_num_out - i >= 0); + fifo_trim_by(output_fifo, max_num_out - i); +} + + + +#undef _ +#undef a +#undef b +#undef c +#undef d +#undef CORE +#undef cc +#undef core +#undef COEF_INTERP +#undef N +#undef BEGINNING +#undef END +#undef CONVOLVE +#undef FIR_LENGTH +#undef FUNCTION +#undef PHASE_BITS diff --git a/C/src/soxr-0.1.3/src/poly-fir0.h b/C/src/soxr-0.1.3/src/poly-fir0.h new file mode 100644 index 00000000..76fca2d6 --- /dev/null +++ b/C/src/soxr-0.1.3/src/poly-fir0.h @@ -0,0 +1,56 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Resample using a non-interpolated poly-phase FIR with length LEN. */ +/* Input must be followed by FIR_LENGTH-1 samples. */ + +#if SIMD_AVX || SIMD_SSE || SIMD_NEON + #define N (FIR_LENGTH>>2) + #define BEGINNING v4_t sum = vZero(); \ + v4_t const * const __restrict coefs = (v4_t *)COEFS + N * rem; + #define _ sum = vMac(vLdu(at+j*4), coefs[j], sum), ++j; + #define END vStorSum(output+i, sum) + #define cc(n) case n: core(n); break + #define CORE(n) switch (n) {cc(2); cc(3); cc(4); cc(5); cc(6); default: core(n);} +#else + #define N FIR_LENGTH + #define BEGINNING sample_t sum = 0; \ + sample_t const * const __restrict coefs = (sample_t *)COEFS + N * rem; + #define _ sum += coefs[j]*at[j], ++j; + #define END output[i] = sum + #define CORE(n) core(n) +#endif + +#define core(n) \ + for (i = 0; at < num_in * p->L; ++i, at += step) { \ + int const div = at / p->L, rem = at % p->L; \ + sample_t const * const __restrict at = input + div; \ + int j = 0; BEGINNING; CONVOLVE(n); END;} + +static void FUNCTION(stage_t * p, fifo_t * output_fifo) +{ + int num_in = min(stage_occupancy(p), p->input_size); + if (num_in) { + sample_t const * input = stage_read_p(p); + int at = p->at.integer, step = p->step.integer; + int i, num_out = (num_in * p->L - at + step - 1) / step; + sample_t * __restrict output = fifo_reserve(output_fifo, num_out); + + CORE(N); + assert(i == num_out); + fifo_read(&p->fifo, at / p->L, NULL); + p->at.integer = at % p->L; + } +} + +#undef _ +#undef CORE +#undef cc +#undef core +#undef N +#undef BEGINNING +#undef MIDDLE +#undef END +#undef CONVOLVE +#undef FIR_LENGTH +#undef FUNCTION diff --git a/C/src/soxr-0.1.3/src/rdft.h b/C/src/soxr-0.1.3/src/rdft.h new file mode 100644 index 00000000..59ba1741 --- /dev/null +++ b/C/src/soxr-0.1.3/src/rdft.h @@ -0,0 +1,31 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +void ORDERED_CONVOLVE(int n, void * not_used, DFT_FLOAT * a, const DFT_FLOAT * b) +{ + int i; + a[0] *= b[0]; + a[1] *= b[1]; + for (i = 2; i < n; i += 2) { + DFT_FLOAT tmp = a[i]; + a[i ] = b[i ] * tmp - b[i+1] * a[i+1]; + a[i+1] = b[i+1] * tmp + b[i ] * a[i+1]; + } + (void)not_used; +} + +void ORDERED_PARTIAL_CONVOLVE(int n, DFT_FLOAT * a, const DFT_FLOAT * b) +{ + int i; + a[0] *= b[0]; + for (i = 2; i < n; i += 2) { + DFT_FLOAT tmp = a[i]; + a[i ] = b[i ] * tmp - b[i+1] * a[i+1]; + a[i+1] = b[i+1] * tmp + b[i ] * a[i+1]; + } + a[1] = b[i] * a[i] - b[i+1] * a[i+1]; +} + +#undef ORDERED_CONVOLVE +#undef ORDERED_PARTIAL_CONVOLVE +#undef DFT_FLOAT diff --git a/C/src/soxr-0.1.3/src/rdft_t.h b/C/src/soxr-0.1.3/src/rdft_t.h new file mode 100644 index 00000000..293d9c37 --- /dev/null +++ b/C/src/soxr-0.1.3/src/rdft_t.h @@ -0,0 +1,24 @@ +/* SoX Resampler Library Copyright (c) 2007-13 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +typedef void (* fn_t)(void); + +#define rdft_forward_setup (*(void * (*)(int))RDFT_CB[0]) +#define rdft_backward_setup (*(void * (*)(int))RDFT_CB[1]) +#define rdft_delete_setup (*(void (*)(void *))RDFT_CB[2]) +#define rdft_forward (*(void (*)(int, void *, void *, void *))RDFT_CB[3]) +#define rdft_oforward (*(void (*)(int, void *, void *, void *))RDFT_CB[4]) +#define rdft_backward (*(void (*)(int, void *, void *, void *))RDFT_CB[5]) +#define rdft_obackward (*(void (*)(int, void *, void *, void *))RDFT_CB[6]) +#define rdft_convolve (*(void (*)(int, void *, void *, void const *))RDFT_CB[7]) +#define rdft_convolve_portion (*(void (*)(int, void *, void const *))RDFT_CB[8]) +#define rdft_multiplier (*(int (*)(void))RDFT_CB[9]) +#define rdft_reorder_back (*(void (*)(int, void *, void *, void *))RDFT_CB[10]) +#define rdft_malloc (*(void * (*)(size_t))RDFT_CB[11]) +#define rdft_calloc (*(void * (*)(size_t, size_t))RDFT_CB[12]) +#define rdft_free (*(void (*)(void *))RDFT_CB[13]) +#define rdft_flags (*(int (*)(void))RDFT_CB[14]) + +/* Flag templates: */ +#define RDFT_IS_SIMD 1 +#define RDFT_NEEDS_SCRATCH 2 diff --git a/C/src/soxr-0.1.3/src/rint-clip.h b/C/src/soxr-0.1.3/src/rint-clip.h new file mode 100644 index 00000000..bfb64584 --- /dev/null +++ b/C/src/soxr-0.1.3/src/rint-clip.h @@ -0,0 +1,158 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if defined DITHER + +#define DITHERING + (1./32)*(int)(((ran1>>=3)&31)-((ran2>>=3)&31)) +#define DITHER_RAND (seed = 1664525UL * seed + 1013904223UL) >> 3 +#define DITHER_VARS unsigned long ran1 = DITHER_RAND, ran2 = DITHER_RAND +#define SEED_ARG , unsigned long * seed0 +#define SAVE_SEED *seed0 = seed +#define COPY_SEED unsigned long seed = *seed0; +#define COPY_SEED1 unsigned long seed1 = seed +#define PASS_SEED1 , &seed1 +#define PASS_SEED , &seed +#define FLOATD double + +#else + +#define DITHERING +#define DITHER_VARS +#define SEED_ARG +#define SAVE_SEED +#define COPY_SEED +#define COPY_SEED1 +#define PASS_SEED1 +#define PASS_SEED +#define FLOATD FLOATX + +#endif + +#define DO_16 _;_;_;_;_;_;_;_;_;_;_;_;_;_;_;_ + + + +#if defined FE_INVALID && defined FPU_RINT +static void RINT_CLIP(RINT_T * const dest, FLOATX const * const src, + unsigned stride, size_t i, size_t const n, size_t * const clips SEED_ARG) +{ + COPY_SEED + DITHER_VARS; + for (; i < n; ++i) { + FLOATD const d = src[i] DITHERING; + RINT(dest[stride * i], d); + if (fe_test_invalid()) { + fe_clear_invalid(); + dest[stride * i] = d > 0? RINT_MAX : -RINT_MAX - 1; + ++*clips; + } + } + SAVE_SEED; +} +#endif + + + +static size_t LSX_RINT_CLIP(void * * const dest0, FLOATX const * const src, + size_t const n SEED_ARG) +{ + size_t i, clips = 0; + RINT_T * dest = *dest0; + COPY_SEED +#if defined FE_INVALID && defined FPU_RINT +#define _ RINT(dest[i], src[i] DITHERING); ++i + for (i = 0; i < (n & ~15u);) { + COPY_SEED1; + DITHER_VARS; + DO_16; + if (fe_test_invalid()) { + fe_clear_invalid(); + RINT_CLIP(dest, src, 1, i - 16, i, &clips PASS_SEED1); + } + } + RINT_CLIP(dest, src, 1, i, n, &clips PASS_SEED); +#else +#define _ d = src[i] DITHERING, dest[i++] = (RINT_T)(d > 0? \ + d+.5 >= N? ++clips, N-1 : d+.5 : d-.5 <= -N-1? ++clips, -N:d-.5) + const double N = 1. + RINT_MAX; + double d; + for (i = 0; i < (n & ~15u);) { + DITHER_VARS; + DO_16; + } + { + DITHER_VARS; + for (; i < n; _); + } +#endif + SAVE_SEED; + *dest0 = dest + n; + return clips; +} +#undef _ + + + +static size_t LSX_RINT_CLIP_2(void * * dest0, FLOATX const * const * srcs, + unsigned const stride, size_t const n SEED_ARG) +{ + unsigned j; + size_t i, clips = 0; + RINT_T * dest = *dest0; + COPY_SEED +#if defined FE_INVALID && defined FPU_RINT +#define _ RINT(dest[stride * i], src[i] DITHERING); ++i + for (j = 0; j < stride; ++j, ++dest) { + FLOATX const * const src = srcs[j]; + for (i = 0; i < (n & ~15u);) { + COPY_SEED1; + DITHER_VARS; + DO_16; + if (fe_test_invalid()) { + fe_clear_invalid(); + RINT_CLIP(dest, src, stride, i - 16, i, &clips PASS_SEED1); + } + } + RINT_CLIP(dest, src, stride, i, n, &clips PASS_SEED); + } +#else +#define _ d = src[i] DITHERING, dest[stride * i++] = (RINT_T)(d > 0? \ + d+.5 >= N? ++clips, N-1 : d+.5 : d-.5 <= -N-1? ++clips, -N:d-.5) + const double N = 1. + RINT_MAX; + double d; + for (j = 0; j < stride; ++j, ++dest) { + FLOATX const * const src = srcs[j]; + for (i = 0; i < (n & ~15u);) { + DITHER_VARS; + DO_16; + } + { + DITHER_VARS; + for (; i < n; _); + } + } +#endif + SAVE_SEED; + *dest0 = dest + stride * (n - 1); + return clips; +} +#undef _ + +#undef FLOATD +#undef PASS_SEED +#undef PASS_SEED1 +#undef COPY_SEED1 +#undef COPY_SEED +#undef SAVE_SEED +#undef SEED_ARG +#undef DITHER_VARS +#undef DITHERING +#undef DITHER + +#undef RINT_MAX +#undef RINT_T +#undef FPU_RINT +#undef RINT +#undef RINT_CLIP +#undef LSX_RINT_CLIP +#undef LSX_RINT_CLIP_2 diff --git a/C/src/soxr-0.1.3/src/rint.h b/C/src/soxr-0.1.3/src/rint.h new file mode 100644 index 00000000..2f1dfbed --- /dev/null +++ b/C/src/soxr-0.1.3/src/rint.h @@ -0,0 +1,102 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_rint_included +#define soxr_rint_included + +#include "std-types.h" + +/* For x86, compiler-supplied versions of these functions (where available) + * can have poor performance (e.g. mingw32), so prefer these asm versions: */ + +#if defined __GNUC__ && (defined __i386__ || defined __x86_64__) + #define FPU_RINT32 + #define FPU_RINT16 + #define rint32D(a,b) __asm__ __volatile__("fistpl %0": "=m"(a): "t"(b): "st") + #define rint16D(a,b) __asm__ __volatile__("fistps %0": "=m"(a): "t"(b): "st") + #define rint32F rint32D + #define rint16F rint16D + #define FE_INVALID 1 + static __inline int fe_test_invalid(void) { + int status_word; + __asm__ __volatile__("fnstsw %%ax": "=a"(status_word)); + return status_word & FE_INVALID; + } + static __inline int fe_clear_invalid(void) { + int32_t status[7]; + __asm__ __volatile__("fnstenv %0": "=m"(status)); + status[1] &= ~FE_INVALID; + __asm__ __volatile__("fldenv %0": : "m"(*status)); + return 0; + } +#elif defined _MSC_VER && defined _M_IX86 + #define FPU_RINT32 + #define FPU_RINT16 + #define rint_fn(N,Y,X) \ + static __inline void N(Y *y, X x) {Y t; {__asm fld x __asm fistp t} *y=t;} + rint_fn(rint32d, int32_t, double) + rint_fn(rint32f, int32_t, float ) + rint_fn(rint16d, int16_t, double) + rint_fn(rint16f, int16_t, float ) + #define rint32D(y,x) rint32d(&(y),x) + #define rint32F(y,x) rint32f(&(y),x) + #define rint16D(y,x) rint16d(&(y),x) + #define rint16F(y,x) rint16f(&(y),x) + #define FE_INVALID 1 + static __inline int fe_test_invalid(void) { + short status_word; + __asm fnstsw status_word + return status_word & FE_INVALID; + } + static __inline int fe_clear_invalid(void) { + int32_t status[7]; + __asm fnstenv status + status[1] &= ~FE_INVALID; + __asm fldenv status + return 0; + } +#elif defined _MSC_VER && defined _M_X64 + #include + #include + #define FPU_RINT32 + #define FPU_RINT16 + static __inline void rint32d(int32_t *y, double x) { + *y = _mm_cvtsd_si32(_mm_load_sd(&x));} + static __inline void rint32f(int32_t *y, float x) { + *y = _mm_cvtss_si32(_mm_load_ss(&x));} + static __inline void rint16d(int16_t *y, double x) { + x = x*65536+32738; *y = (int16_t)(_mm_cvtsd_si32(_mm_load_sd(&x)) >> 16);} + #define rint32D(y,x) rint32d(&(y),x) + #define rint32F(y,x) rint32f(&(y),x) + #define rint16D(y,x) rint16d(&(y),x) + #define rint16F(y,x) rint16d(&(y),(double)(x)) + #define FE_INVALID 1 + #define fe_test_invalid() (_statusfp() & _SW_INVALID) + #define fe_clear_invalid _clearfp /* Note: clears all. */ +#elif HAVE_LRINT && LONG_MAX == 2147483647L && HAVE_FENV_H + #include + #include + #define FPU_RINT32 + #define rint32D(y,x) ((y)=lrint(x)) + #define rint32F(y,x) ((y)=lrintf(x)) + #define fe_test_invalid() fetestexcept(FE_INVALID) + #define fe_clear_invalid() feclearexcept(FE_INVALID) +#endif + +#if !defined FPU_RINT32 + #define rint32D(y,x) ((y)=(int32_t)((x) < 0? x - .5 : x + .5)) + #define rint32F(y,x) rint32D(y,(double)(x)) +#endif + +#if !defined FPU_RINT16 + #define rint16D(y,x) ((y)=(int16_t)((x) < 0? x - .5 : x + .5)) + #define rint16F(y,x) rint16D(y,(double)(x)) +#endif + +static __inline int32_t rint32(double input) { + int32_t result; rint32D(result, input); return result;} + +static __inline int16_t rint16(double input) { + int16_t result; rint16D(result, input); return result;} + +#endif diff --git a/C/src/soxr-0.1.3/src/samplerate.h b/C/src/soxr-0.1.3/src/samplerate.h new file mode 100644 index 00000000..911cc5d0 --- /dev/null +++ b/C/src/soxr-0.1.3/src/samplerate.h @@ -0,0 +1 @@ +#include "soxr-lsr.h" diff --git a/C/src/soxr-0.1.3/src/soxr-lsr.c b/C/src/soxr-0.1.3/src/soxr-lsr.c new file mode 100644 index 00000000..58ab50a2 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr-lsr.c @@ -0,0 +1,198 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Wrapper mostly compatible with `libsamplerate'. */ + +#include +#include +#include "soxr.h" +#include "soxr-lsr.h" +#include "rint.h" + + + +SRC_STATE *src_new(SRC_SRCTYPE id, int channels, SRC_ERROR * error) +{ + return src_callback_new(0, id, channels, error, 0); +} + + + +SRC_ERROR src_process(SRC_STATE *p, SRC_DATA * io) +{ + size_t idone , odone; + + if (!p || !io) return -1; + + soxr_set_error( + p, soxr_set_io_ratio(p, 1/io->src_ratio, (size_t)io->output_frames)); + + soxr_process(p, io->data_in, /* hack: */ + (size_t)(io->end_of_input? ~io->input_frames : io->input_frames), + &idone, io->data_out, (size_t)io->output_frames, &odone); + + io->input_frames_used = (long)idone, io->output_frames_gen = (long)odone; + return -!!soxr_error(p); +} + + + +SRC_ERROR src_set_ratio(SRC_STATE * p, double oi_ratio) +{ + return -!!soxr_set_io_ratio(p, 1/oi_ratio, 0); +} + + + +SRC_ERROR src_reset(SRC_STATE * p) +{ + return -!!soxr_clear(p); +} + + + +SRC_ERROR src_error(SRC_STATE * p) +{ + return -!!soxr_error(p); +} + + + +SRC_STATE * src_delete(SRC_STATE * p) +{ + soxr_delete(p); + return 0; +} + + + +SRC_STATE *src_callback_new(src_callback_t fn, + SRC_SRCTYPE id, int channels, SRC_ERROR * error0, void * p) +{ + soxr_quality_spec_t q_spec = soxr_quality_spec(SOXR_LSR0Q + (unsigned)id, 0); + char const * e = getenv("SOXR_LSR_NUM_THREADS"); + soxr_runtime_spec_t r_spec = soxr_runtime_spec(!(e && atoi(e) != 1)); + soxr_error_t error; + soxr_t soxr = 0; + + assert (channels > 0); + soxr = soxr_create(0, 0, (unsigned)channels, &error, 0, &q_spec, &r_spec); + + if (soxr) + error = soxr_set_input_fn(soxr, (soxr_input_fn_t)fn, p, 0); + + if (error0) + *error0 = -!!error; + + return soxr; +} + + + +long src_callback_read(SRC_STATE *p, double oi_ratio, long olen, float * obuf) +{ + if (!p || olen < 0) return -1; + + soxr_set_error(p, soxr_set_io_ratio(p, 1/oi_ratio, (size_t)olen)); + return (long)soxr_output(p, obuf, (size_t)olen); +} + + + +SRC_ERROR src_simple(SRC_DATA * io, SRC_SRCTYPE id, int channels) +{ + size_t idone, odone; + soxr_error_t error; + soxr_quality_spec_t q_spec = soxr_quality_spec(SOXR_LSR0Q + (unsigned)id, 0); + char const * e = getenv("SOXR_LSR_NUM_THREADS"); + soxr_runtime_spec_t r_spec = soxr_runtime_spec(!(e && atoi(e) != 1)); + + if (!io || channels<=0 || io->input_frames<0 || io->output_frames<0) return-1; + + error = soxr_oneshot(1, io->src_ratio, (unsigned)channels, io->data_in, + (size_t)io->input_frames, &idone, io->data_out, (size_t)io->output_frames, + &odone, 0, &q_spec, &r_spec); + + io->input_frames_used = (long)idone, io->output_frames_gen = (long)odone; + + return -!!error; +} + + + +char const * src_get_name(SRC_SRCTYPE id) +{ + static char const * const names[] = { + "LSR best sinc", "LSR medium sinc", "LSR fastest sinc", + "LSR ZOH", "LSR linear", "SoX VHQ"}; + + return (unsigned)id < 5u + !getenv("SOXR_LSR_STRICT")? names[id] : 0; +} + + + +char const * src_get_description(SRC_SRCTYPE id) +{ + return src_get_name(id); +} + + + +char const * src_get_version(void) +{ + return soxr_version(); +} + + + +char const * src_strerror(SRC_ERROR error) +{ + return error == 1? "Placeholder." : error ? "soxr error" : soxr_strerror(0); +} + + + +int src_is_valid_ratio(double oi_ratio) +{ + return getenv("SOXR_LSR_STRICT")? + oi_ratio >= 1./256 && oi_ratio <= 256 : oi_ratio > 0; +} + + + +void src_short_to_float_array(short const * src, float * dest, int len) +{ + assert (src && dest); + + while (len--) dest[len] = (float)(src[len] * (1 / (1. + SHRT_MAX))); +} + + + +void src_float_to_short_array(float const * src, short * dest, int len) +{ + double d, N = 1. + SHRT_MAX; + assert (src && dest); + + while (len--) d = src[len] * N, dest[len] = + (short)(d > N - 1? (short)(N - 1) : d < -N? (short)-N : rint16(d)); +} + + + +void src_int_to_float_array(int const * src, float * dest, int len) +{ + assert (src && dest); + while (len--) dest[len] = (float)(src[len] * (1 / (32768. * 65536.))); +} + + + +void src_float_to_int_array(float const * src, int * dest, int len) +{ + double d, N = 32768. * 65536.; /* N.B. int32, not int! (Also above fn.) */ + assert (src && dest); + + while (len--) d = src[len] * N, dest[len] = + d >= N - 1? (int)(N - 1) : d < -N? (int)(-N) : rint32(d); +} diff --git a/C/src/soxr-0.1.3/src/soxr-lsr.h b/C/src/soxr-0.1.3/src/soxr-lsr.h new file mode 100644 index 00000000..b1cc2470 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr-lsr.h @@ -0,0 +1,78 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or (at + * your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser + * General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* Wrapper compatible with `libsamplerate' (constant-rate). + * (Libsoxr's native API can be found in soxr.h). */ + +#if !defined SAMPLERATE_H +#define SAMPLERATE_H +#if defined __cplusplus + extern "C" { +#endif + +#if defined SOXR_DLL + #if defined soxr_lsr_EXPORTS + #define SOXR __declspec(dllexport) + #else + #define SOXR __declspec(dllimport) + #endif +#elif defined SOXR_VISIBILITY && defined __GNUC__ && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1) + #define SOXR __attribute__ ((visibility("default"))) +#else + #define SOXR +#endif + +typedef float SRC_SAMPLE; +enum SRC_SRCTYPE_e {SRC_SINC_BEST_QUALITY, SRC_SINC_MEDIUM_QUALITY, + SRC_SINC_FASTEST, SRC_ZERO_ORDER_HOLD, SRC_LINEAR}; +typedef int SRC_SRCTYPE; +typedef int SRC_ERROR; +typedef long (* src_callback_t)(void *, SRC_SAMPLE * *); +typedef struct soxr SRC_STATE; +typedef struct SRC_DATA { + SRC_SAMPLE * data_in, * data_out; + long input_frames, output_frames; + long input_frames_used, output_frames_gen; + int end_of_input; + double src_ratio; +} SRC_DATA; +SOXR SRC_STATE * src_new(SRC_SRCTYPE, int num_channels, SRC_ERROR *); +SOXR SRC_ERROR src_process (SRC_STATE *, SRC_DATA *); +SOXR SRC_ERROR src_set_ratio(SRC_STATE *, double); +SOXR SRC_ERROR src_reset (SRC_STATE *); +SOXR SRC_ERROR src_error (SRC_STATE *); +SOXR SRC_STATE * src_delete (SRC_STATE *); +SOXR SRC_STATE * src_callback_new( + src_callback_t, SRC_SRCTYPE, int, SRC_ERROR *, void *); +SOXR long src_callback_read( + SRC_STATE *, double src_ratio, long, SRC_SAMPLE *); +SOXR SRC_ERROR src_simple(SRC_DATA *, SRC_SRCTYPE, int); +SOXR char const * src_get_name(SRC_SRCTYPE); +SOXR char const * src_get_description(SRC_SRCTYPE); +SOXR char const * src_get_version(void); +SOXR char const * src_strerror(SRC_ERROR); +SOXR int src_is_valid_ratio(double); +SOXR void src_short_to_float_array(short const *, float *, int); +SOXR void src_float_to_short_array(float const *, short *, int); +SOXR void src_int_to_float_array(int const *, float *, int); +SOXR void src_float_to_int_array(float const *, int *, int); + +#undef SOXR +#if defined __cplusplus + } +#endif +#endif diff --git a/C/src/soxr-0.1.3/src/soxr-lsr.pc.in b/C/src/soxr-0.1.3/src/soxr-lsr.pc.in new file mode 100644 index 00000000..7b757576 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr-lsr.pc.in @@ -0,0 +1,5 @@ +Name: ${LSR} +Description: ${DESCRIPTION_SUMMARY} (with libsamplerate-like bindings) +Version: ${PROJECT_VERSION} +Libs: -L${LIB_INSTALL_DIR} -l${LSR} +Cflags: -I${INCLUDE_INSTALL_DIR} diff --git a/C/src/soxr-0.1.3/src/soxr.c b/C/src/soxr-0.1.3/src/soxr.c new file mode 100644 index 00000000..c2861ac7 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr.c @@ -0,0 +1,842 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include +#include +#include + +#include "soxr.h" +#include "data-io.h" +#include "internal.h" + +#if AVUTIL_FOUND + #include +#endif + + + +#if WITH_DEV_TRACE + +#include +#include + +int _soxr_trace_level; + +void _soxr_trace(char const * fmt, ...) +{ + va_list args; + va_start(args, fmt); + vfprintf(stderr, fmt, args); + fputc('\n', stderr); + va_end(args); +} + +#endif + + + +char const * soxr_version(void) +{ + return "libsoxr-" SOXR_THIS_VERSION_STR; +} + + + + +typedef void sample_t; /* float or double */ +typedef void (* fn_t)(void); +typedef fn_t control_block_t[10]; + +#define resampler_input (*(sample_t * (*)(void *, sample_t * samples, size_t n))p->control_block[0]) +#define resampler_process (*(void (*)(void *, size_t))p->control_block[1]) +#define resampler_output (*(sample_t const * (*)(void *, sample_t * samples, size_t * n))p->control_block[2]) +#define resampler_flush (*(void (*)(void *))p->control_block[3]) +#define resampler_close (*(void (*)(void *))p->control_block[4]) +#define resampler_delay (*(double (*)(void *))p->control_block[5]) +#define resampler_sizes (*(void (*)(size_t * shared, size_t * channel))p->control_block[6]) +#define resampler_create (*(char const * (*)(void * channel, void * shared, double io_ratio, soxr_quality_spec_t * q_spec, soxr_runtime_spec_t * r_spec, double scale))p->control_block[7]) +#define resampler_set_io_ratio (*(void (*)(void *, double io_ratio, size_t len))p->control_block[8]) +#define resampler_id (*(char const * (*)(void))p->control_block[9]) + +typedef void * resampler_t; /* For one channel. */ +typedef void * resampler_shared_t; /* Between channels. */ +typedef void (* deinterleave_t)(sample_t * * dest, + soxr_datatype_t data_type, void const * * src0, size_t n, unsigned ch); +typedef size_t (* interleave_t)(soxr_datatype_t data_type, void * * dest, + sample_t const * const * src, size_t, unsigned, unsigned long *); + +struct soxr { + unsigned num_channels; + double io_ratio; + soxr_error_t error; + soxr_quality_spec_t q_spec; + soxr_io_spec_t io_spec; + soxr_runtime_spec_t runtime_spec; + + void * input_fn_state; + soxr_input_fn_t input_fn; + size_t max_ilen; + + resampler_shared_t shared; + resampler_t * resamplers; + control_block_t control_block; + deinterleave_t deinterleave; + interleave_t interleave; + + void * * channel_ptrs; + size_t clips; + unsigned long seed; + int flushing; +}; + + + +#if WITH_CR32 || WITH_CR32S || WITH_CR64 || WITH_CR64S + #include "filter.h" +#else + #define lsx_to_3dB(x) ((x)/(x)) +#endif + + + +soxr_quality_spec_t soxr_quality_spec(unsigned long recipe, unsigned long flags) +{ + soxr_quality_spec_t spec, * p = &spec; + unsigned q = recipe & 0xf; /* TODO: move to soxr-lsr.c: */ + unsigned quality = q > SOXR_LSR2Q+2? SOXR_VHQ : q > SOXR_LSR2Q? SOXR_QQ : q; + double rej; + memset(p, 0, sizeof(*p)); + if (quality > SOXR_PRECISIONQ) { + p->e = "invalid quality type"; + return spec; + } + flags |= quality < SOXR_LSR0Q ? RESET_ON_CLEAR : 0; + p->phase_response = "\62\31\144"[(recipe & 0x30)>>4]; + p->stopband_begin = 1; + p->precision = + quality == SOXR_QQ ? 0 : + quality <= SOXR_16_BITQ ? 16 : + quality <= SOXR_32_BITQ ? 4 + quality * 4 : + quality <= SOXR_LSR2Q ? 55 - quality * 4 : /* TODO: move to soxr-lsr.c */ + 0; + rej = p->precision * linear_to_dB(2.); + p->flags = flags; + if (quality <= SOXR_32_BITQ || quality == SOXR_PRECISIONQ) { + #define LOW_Q_BW0 (1385 / 2048.) /* 0.67625 rounded to be a FP exact. */ + p->passband_end = quality == 1? LOW_Q_BW0 : 1 - .05 / lsx_to_3dB(rej); + if (quality <= 2) + p->flags &= ~SOXR_ROLLOFF_NONE, p->flags |= SOXR_ROLLOFF_MEDIUM; + } + else { /* TODO: move to soxr-lsr.c */ + static float const bw[] = {.931f, .832f, .663f}; + p->passband_end = bw[quality - SOXR_LSR0Q]; + if (quality == SOXR_LSR2Q) { + p->flags &= ~SOXR_ROLLOFF_NONE; + p->flags |= SOXR_ROLLOFF_LSR2Q | SOXR_PROMOTE_TO_LQ; + } + } + if (recipe & SOXR_STEEP_FILTER) + p->passband_end = 1 - .01 / lsx_to_3dB(rej); + return spec; +} + + + +char const * soxr_engine(soxr_t p) +{ + return resampler_id(); +} + + + +size_t * soxr_num_clips(soxr_t p) +{ + return &p->clips; +} + + + +soxr_error_t soxr_error(soxr_t p) +{ + return p->error; +} + + + +soxr_runtime_spec_t soxr_runtime_spec(unsigned num_threads) +{ + soxr_runtime_spec_t spec, * p = &spec; + memset(p, 0, sizeof(*p)); + p->log2_min_dft_size = 10; + p->log2_large_dft_size = 17; + p->coef_size_kbytes = 400; + p->num_threads = num_threads; + return spec; +} + + + +soxr_io_spec_t soxr_io_spec( + soxr_datatype_t itype, + soxr_datatype_t otype) +{ + soxr_io_spec_t spec, * p = &spec; + memset(p, 0, sizeof(*p)); + if ((itype | otype) >= SOXR_SPLIT * 2) + p->e = "invalid io datatype(s)"; + else { + p->itype = itype; + p->otype = otype; + p->scale = 1; + } + return spec; +} + + + +#if (WITH_CR32S && WITH_CR32) || (WITH_CR64S && WITH_CR64) + #if defined __GNUC__ && defined __x86_64__ + #define CPUID(type, eax_, ebx_, ecx_, edx_) \ + __asm__ __volatile__ ( \ + "cpuid \n\t" \ + : "=a" (eax_), "=b" (ebx_), "=c" (ecx_), "=d" (edx_) \ + : "a" (type), "c" (0)); + #elif defined __GNUC__ && defined __i386__ + #define CPUID(type, eax_, ebx_, ecx_, edx_) \ + __asm__ __volatile__ ( \ + "mov %%ebx, %%edi \n\t" \ + "cpuid \n\t" \ + "xchg %%edi, %%ebx \n\t" \ + : "=a" (eax_), "=D" (ebx_), "=c" (ecx_), "=d" (edx_) \ + : "a" (type), "c" (0)); + #elif defined _M_X64 && defined _MSC_VER && _MSC_VER > 1500 + void __cpuidex(int CPUInfo[4], int info_type, int ecxvalue); + #pragma intrinsic(__cpuidex) + #define CPUID(type, eax_, ebx_, ecx_, edx_) do { \ + int regs[4]; \ + __cpuidex(regs, type, 0); \ + eax_ = regs[0], ebx_ = regs[1], ecx_ = regs[2], edx_ = regs[3]; \ + } while(0) + #elif defined _M_X64 && defined _MSC_VER + void __cpuidex(int CPUInfo[4], int info_type); + #pragma intrinsic(__cpuidex) + #define CPUID(type, eax_, ebx_, ecx_, edx_) do { \ + int regs[4]; \ + __cpuidex(regs, type); \ + eax_ = regs[0], ebx_ = regs[1], ecx_ = regs[2], edx_ = regs[3]; \ + } while(0) + #elif defined _M_IX86 && defined _MSC_VER + #define CPUID(type, eax_, ebx_, ecx_, edx_) \ + __asm pushad \ + __asm mov eax, type \ + __asm xor ecx, ecx \ + __asm cpuid \ + __asm mov eax_, eax \ + __asm mov ebx_, ebx \ + __asm mov ecx_, ecx \ + __asm mov edx_, edx \ + __asm popad + #endif +#endif + + + +#if WITH_CR32S && WITH_CR32 + static bool cpu_has_simd32(void) + { + #if defined __x86_64__ || defined _M_X64 + return true; + #elif defined __i386__ || defined _M_IX86 + enum {SSE = 1 << 25, SSE2 = 1 << 26}; + unsigned eax_, ebx_, ecx_, edx_; + CPUID(1, eax_, ebx_, ecx_, edx_); + return (edx_ & (SSE|SSE2)) != 0; + #elif defined AV_CPU_FLAG_NEON + return !!(av_get_cpu_flags() & AV_CPU_FLAG_NEON); + #else + return false; + #endif + } + + static bool should_use_simd32(void) + { + char const * e; + return ((e = getenv("SOXR_USE_SIMD" )))? !!atoi(e) : + ((e = getenv("SOXR_USE_SIMD32")))? !!atoi(e) : cpu_has_simd32(); + } +#else + #define should_use_simd32() true +#endif + + + +#if WITH_CR64S && WITH_CR64 + #if defined __GNUC__ + #define XGETBV(type, eax_, edx_) \ + __asm__ __volatile__ ( \ + ".byte 0x0f, 0x01, 0xd0\n" \ + : "=a"(eax_), "=d"(edx_) : "c" (type)); + #elif defined _M_X64 && defined _MSC_FULL_VER && _MSC_FULL_VER >= 160040219 + #include + #define XGETBV(type, eax_, edx_) do { \ + union {uint64_t x; uint32_t y[2];} a = {_xgetbv(0)}; \ + eax_ = a.y[0], edx_ = a.y[1]; \ + } while(0) + #elif defined _M_IX86 && defined _MSC_VER + #define XGETBV(type, eax_, edx_) \ + __asm pushad \ + __asm mov ecx, type \ + __asm _emit 0x0f \ + __asm _emit 0x01 \ + __asm _emit 0xd0 \ + __asm mov eax_, eax \ + __asm mov edx_, edx \ + __asm popad + #else + #define XGETBV(type, eax_, edx_) eax_ = edx_ = 0 + #endif + + static bool cpu_has_simd64(void) + { + enum {OSXSAVE = 1 << 27, AVX = 1 << 28}; + unsigned eax_, ebx_, ecx_, edx_; + CPUID(1, eax_, ebx_, ecx_, edx_); + if ((ecx_ & (OSXSAVE|AVX)) == (OSXSAVE|AVX)) { + XGETBV(0, eax_, edx_); + return (eax_ & 6) == 6; + } + return false; + } + + static bool should_use_simd64(void) + { + char const * e; + return ((e = getenv("SOXR_USE_SIMD" )))? !!atoi(e) : + ((e = getenv("SOXR_USE_SIMD64")))? !!atoi(e) : cpu_has_simd64(); + } +#else + #define should_use_simd64() true +#endif + + + +extern control_block_t + _soxr_rate32_cb, + _soxr_rate32s_cb, + _soxr_rate64_cb, + _soxr_rate64s_cb, + _soxr_vr32_cb; + + + +static void runtime_num(char const * env_name, + int min, int max, unsigned * field) +{ + char const * e = getenv(env_name); + if (e) { + int i = atoi(e); + if (i >= min && i <= max) + *field = (unsigned)i; + } +} + + + +static void runtime_flag(char const * env_name, + unsigned n_bits, unsigned n_shift, unsigned long * flags) +{ + char const * e = getenv(env_name); + if (e) { + int i = atoi(e); + unsigned long mask = (1UL << n_bits) - 1; + if (i >= 0 && i <= (int)mask) + *flags &= ~(mask << n_shift), *flags |= ((unsigned long)i << n_shift); + } +} + + + +soxr_t soxr_create( + double input_rate, double output_rate, + unsigned num_channels, + soxr_error_t * error0, + soxr_io_spec_t const * io_spec, + soxr_quality_spec_t const * q_spec, + soxr_runtime_spec_t const * runtime_spec) +{ + double io_ratio = output_rate!=0? input_rate!=0? + input_rate / output_rate : -1 : input_rate!=0? -1 : 0; + static const float datatype_full_scale[] = {1, 1, 65536.*32768, 32768}; + soxr_t p = 0; + soxr_error_t error = 0; + +#if WITH_DEV_TRACE +#define _(x) (char)(sizeof(x)>=10? 'a'+(char)(sizeof(x)-10):'0'+(char)sizeof(x)) + char const * e = getenv("SOXR_TRACE"); + _soxr_trace_level = e? atoi(e) : 0; + { + static char const arch[] = {_(char), _(short), _(int), _(long), _(long long) + , ' ', _(float), _(double), _(long double) + , ' ', _(int *), _(int (*)(int)) + , ' ', HAVE_BIGENDIAN ? 'B' : 'L' +#if defined _OPENMP + , ' ', 'O', 'M', 'P' +#endif + , 0}; +#undef _ + lsx_debug("arch: %s", arch); + } +#endif + + if (q_spec && q_spec->e) error = q_spec->e; + else if (io_spec && (io_spec->itype | io_spec->otype) >= SOXR_SPLIT * 2) + error = "invalid io datatype(s)"; + + if (!error && !(p = calloc(sizeof(*p), 1))) error = "malloc failed"; + + if (p) { + control_block_t * control_block; + + p->q_spec = q_spec? *q_spec : soxr_quality_spec(SOXR_HQ, 0); + + if (q_spec) { /* Backwards compatibility with original API: */ + if (p->q_spec.passband_end > 2) + p->q_spec.passband_end /= 100; + if (p->q_spec.stopband_begin > 2) + p->q_spec.stopband_begin = 2 - p->q_spec.stopband_begin / 100; + } + + p->io_ratio = io_ratio; + p->num_channels = num_channels; + if (io_spec) + p->io_spec = *io_spec; + else + p->io_spec.scale = 1; + + p->runtime_spec = runtime_spec? *runtime_spec : soxr_runtime_spec(1); + + runtime_num("SOXR_MIN_DFT_SIZE", 8, 15, &p->runtime_spec.log2_min_dft_size); + runtime_num("SOXR_LARGE_DFT_SIZE", 8, 20, &p->runtime_spec.log2_large_dft_size); + runtime_num("SOXR_COEFS_SIZE", 100, 800, &p->runtime_spec.coef_size_kbytes); + runtime_num("SOXR_NUM_THREADS", 0, 64, &p->runtime_spec.num_threads); + runtime_flag("SOXR_COEF_INTERP", 2, 0, &p->runtime_spec.flags); + + runtime_flag("SOXR_STRICT_BUF", 1, 2, &p->runtime_spec.flags); + runtime_flag("SOXR_NOSMALLINTOPT", 1, 3, &p->runtime_spec.flags); + + p->io_spec.scale *= datatype_full_scale[p->io_spec.otype & 3] / + datatype_full_scale[p->io_spec.itype & 3]; + + p->seed = (unsigned long)time(0) ^ (unsigned long)(size_t)p; + +#if WITH_CR32 || WITH_CR32S || WITH_VR32 + if (0 +#if WITH_VR32 + || ((!WITH_CR32 && !WITH_CR32S) || (p->q_spec.flags & SOXR_VR)) +#endif +#if WITH_CR32 || WITH_CR32S + || !(WITH_CR64 || WITH_CR64S) || (p->q_spec.precision <= 20 && !(p->q_spec.flags & SOXR_DOUBLE_PRECISION)) +#endif + ) { + p->deinterleave = (deinterleave_t)_soxr_deinterleave_f; + p->interleave = (interleave_t)_soxr_interleave_f; + control_block = +#if WITH_VR32 + ((!WITH_CR32 && !WITH_CR32S) || (p->q_spec.flags & SOXR_VR))? &_soxr_vr32_cb : +#endif +#if WITH_CR32S + !WITH_CR32 || should_use_simd32()? &_soxr_rate32s_cb : +#endif + &_soxr_rate32_cb; + } +#if WITH_CR64 || WITH_CR64S + else +#endif +#endif +#if WITH_CR64 || WITH_CR64S + { + p->deinterleave = (deinterleave_t)_soxr_deinterleave; + p->interleave = (interleave_t)_soxr_interleave; + control_block = +#if WITH_CR64S + !WITH_CR64 || should_use_simd64()? &_soxr_rate64s_cb : +#endif + &_soxr_rate64_cb; + } +#endif + memcpy(&p->control_block, control_block, sizeof(p->control_block)); + + if (p->num_channels && io_ratio!=0) + error = soxr_set_io_ratio(p, io_ratio, 0); + } + if (error) + soxr_delete(p), p = 0; + if (error0) + *error0 = error; + return p; +} + + + +soxr_error_t soxr_set_input_fn(soxr_t p, + soxr_input_fn_t input_fn, void * input_fn_state, size_t max_ilen) +{ + p->input_fn_state = input_fn_state; + p->input_fn = input_fn; + p->max_ilen = max_ilen? max_ilen : (size_t)-1; + return 0; +} + + + +static void soxr_delete0(soxr_t p) +{ + unsigned i; + + if (p->resamplers) for (i = 0; i < p->num_channels; ++i) { + if (p->resamplers[i]) + resampler_close(p->resamplers[i]); + free(p->resamplers[i]); + } + free(p->resamplers); + free(p->channel_ptrs); + free(p->shared); + + memset(p, 0, sizeof(*p)); +} + + + +double soxr_delay(soxr_t p) +{ + return + (p && !p->error && p->resamplers)? resampler_delay(p->resamplers[0]) : 0; +} + + + +static soxr_error_t fatal_error(soxr_t p, soxr_error_t error) +{ + soxr_delete0(p); + return p->error = error; +} + + + +static soxr_error_t initialise(soxr_t p) +{ + unsigned i; + size_t shared_size, channel_size; + + resampler_sizes(&shared_size, &channel_size); + p->channel_ptrs = calloc(sizeof(*p->channel_ptrs), p->num_channels); + p->shared = calloc(shared_size, 1); + p->resamplers = calloc(sizeof(*p->resamplers), p->num_channels); + if (!p->shared || !p->channel_ptrs || !p->resamplers) + return fatal_error(p, "malloc failed"); + + for (i = 0; i < p->num_channels; ++i) { + soxr_error_t error; + if (!(p->resamplers[i] = calloc(channel_size, 1))) + return fatal_error(p, "malloc failed"); + error = resampler_create( + p->resamplers[i], + p->shared, + p->io_ratio, + &p->q_spec, + &p->runtime_spec, + p->io_spec.scale); + if (error) + return fatal_error(p, error); + } + return 0; +} + + + +soxr_error_t soxr_set_num_channels(soxr_t p, unsigned num_channels) +{ + if (!p) return "invalid soxr_t pointer"; + if (num_channels == p->num_channels) return p->error; + if (!num_channels) return "invalid # of channels"; + if (p->resamplers) return "# of channels can't be changed"; + p->num_channels = num_channels; + return soxr_set_io_ratio(p, p->io_ratio, 0); +} + + + +soxr_error_t soxr_set_io_ratio(soxr_t p, double io_ratio, size_t slew_len) +{ + unsigned i; + soxr_error_t error; + if (!p) return "invalid soxr_t pointer"; + if ((error = p->error)) return error; + if (!p->num_channels) return "must set # channels before O/I ratio"; + if (io_ratio <= 0) return "I/O ratio out-of-range"; + if (!p->channel_ptrs) { + p->io_ratio = io_ratio; + return initialise(p); + } + if (p->control_block[8]) { + for (i = 0; !error && i < p->num_channels; ++i) + resampler_set_io_ratio(p->resamplers[i], io_ratio, slew_len); + return error; + } + return fabs(p->io_ratio - io_ratio) < 1e-15? 0 : + "varying O/I ratio is not supported with this quality level"; +} + + + +void soxr_delete(soxr_t p) +{ + if (p) + soxr_delete0(p), free(p); +} + + + +soxr_error_t soxr_clear(soxr_t p) /* TODO: this, properly. */ +{ + if (p) { + struct soxr tmp = *p; + soxr_delete0(p); + memset(p, 0, sizeof(*p)); + p->input_fn = tmp.input_fn; + p->runtime_spec = tmp.runtime_spec; + p->q_spec = tmp.q_spec; + p->io_spec = tmp.io_spec; + p->num_channels = tmp.num_channels; + p->input_fn_state = tmp.input_fn_state; + memcpy(p->control_block, tmp.control_block, sizeof(p->control_block)); + p->deinterleave = tmp.deinterleave; + p->interleave = tmp.interleave; + return (p->q_spec.flags & RESET_ON_CLEAR)? + soxr_set_io_ratio(p, tmp.io_ratio, 0) : 0; + } + return "invalid soxr_t pointer"; +} + + + +static void soxr_input_1ch(soxr_t p, unsigned i, soxr_cbuf_t src, size_t len) +{ + sample_t * dest = resampler_input(p->resamplers[i], NULL, len); + (*p->deinterleave)(&dest, p->io_spec.itype, &src, len, 1); +} + + + +static size_t soxr_input(soxr_t p, void const * in, size_t len) +{ + bool separated = !!(p->io_spec.itype & SOXR_SPLIT); + unsigned i; + if (!p || p->error) return 0; + if (!in && len) {p->error = "null input buffer pointer"; return 0;} + if (!len) { + p->flushing = true; + return 0; + } + if (separated) + for (i = 0; i < p->num_channels; ++i) + soxr_input_1ch(p, i, ((soxr_cbufs_t)in)[i], len); + else { + for (i = 0; i < p->num_channels; ++i) + p->channel_ptrs[i] = resampler_input(p->resamplers[i], NULL, len); + (*p->deinterleave)( + (sample_t **)p->channel_ptrs, p->io_spec.itype, &in, len, p->num_channels); + } + return len; +} + + + +static size_t soxr_output_1ch(soxr_t p, unsigned i, soxr_buf_t dest, size_t len, bool separated) +{ + sample_t const * src; + if (p->flushing) + resampler_flush(p->resamplers[i]); + resampler_process(p->resamplers[i], len); + src = resampler_output(p->resamplers[i], NULL, &len); + if (separated) + p->clips += (p->interleave)(p->io_spec.otype, &dest, &src, + len, 1, (p->io_spec.flags & SOXR_NO_DITHER)? 0 : &p->seed); + else p->channel_ptrs[i] = (void /* const */ *)src; + return len; +} + + + +static size_t soxr_output_no_callback(soxr_t p, soxr_buf_t out, size_t len) +{ + unsigned u; + size_t done = 0; + bool separated = !!(p->io_spec.otype & SOXR_SPLIT); +#if defined _OPENMP + int i; + if (!p->runtime_spec.num_threads && p->num_channels > 1) +#pragma omp parallel for + for (i = 0; i < (int)p->num_channels; ++i) { + size_t done1; + done1 = soxr_output_1ch(p, (unsigned)i, ((soxr_bufs_t)out)[i], len, separated); + if (!i) + done = done1; + } else +#endif + for (u = 0; u < p->num_channels; ++u) + done = soxr_output_1ch(p, u, ((soxr_bufs_t)out)[u], len, separated); + + if (!separated) + p->clips += (p->interleave)(p->io_spec.otype, &out, (sample_t const * const *)p->channel_ptrs, + done, p->num_channels, (p->io_spec.flags & SOXR_NO_DITHER)? 0 : &p->seed); + return done; +} + + + +size_t soxr_output(soxr_t p, void * out, size_t len0) +{ + size_t odone, odone0 = 0, olen = len0, osize, idone; + size_t ilen = min(p->max_ilen, (size_t)ceil((double)olen *p->io_ratio)); + void const * in = out; /* Set to !=0, so that caller may leave unset. */ + bool was_flushing; + + if (!p || p->error) return 0; + if (!out && len0) {p->error = "null output buffer pointer"; return 0;} + + do { + odone = soxr_output_no_callback(p, out, olen); + odone0 += odone; + if (odone0 == len0 || !p->input_fn || p->flushing) + break; + + osize = soxr_datatype_size(p->io_spec.otype) * p->num_channels; + out = (char *)out + osize * odone; + olen -= odone; + idone = p->input_fn(p->input_fn_state, &in, ilen); + was_flushing = p->flushing; + if (!in) + p->error = "input function reported failure"; + else soxr_input(p, in, idone); + } while (odone || idone || (!was_flushing && p->flushing)); + return odone0; +} + + + +static size_t soxr_i_for_o(soxr_t p, size_t olen, size_t ilen) +{ + size_t result; +#if 0 + if (p->runtime_spec.flags & SOXR_STRICT_BUFFERING) + result = rate_i_for_o(p->resamplers[0], olen); + else +#endif + result = (size_t)ceil((double)olen * p->io_ratio); + return min(result, ilen); +} + + + +#if 0 +static size_t soxr_o_for_i(soxr_t p, size_t ilen, size_t olen) +{ + size_t result = (size_t)ceil((double)ilen / p->io_ratio); + return min(result, olen); +} +#endif + + + +soxr_error_t soxr_process(soxr_t p, + void const * in , size_t ilen0, size_t * idone0, + void * out, size_t olen , size_t * odone0) +{ + size_t ilen, idone, odone = 0; + unsigned u; + bool flush_requested = false; + + if (!p) return "null pointer"; + + if (!in) + flush_requested = true, ilen = ilen0 = 0; + else { + if ((ptrdiff_t)ilen0 < 0) + flush_requested = true, ilen0 = ~ilen0; + if (idone0 && (1 || flush_requested)) + ilen = soxr_i_for_o(p, olen, ilen0); + else + ilen = ilen0/*, olen = soxr_o_for_i(p, ilen, olen)*/; + } + p->flushing |= ilen == ilen0 && flush_requested; + + if (!out && !in) + idone = ilen; + else if (p->io_spec.itype & p->io_spec.otype & SOXR_SPLIT) { /* Both i & o */ +#if defined _OPENMP + int i; + if (!p->runtime_spec.num_threads && p->num_channels > 1) +#pragma omp parallel for + for (i = 0; i < (int)p->num_channels; ++i) { + size_t done; + if (in) + soxr_input_1ch(p, (unsigned)i, ((soxr_cbufs_t)in)[i], ilen); + done = soxr_output_1ch(p, (unsigned)i, ((soxr_bufs_t)out)[i], olen, true); + if (!i) + odone = done; + } else +#endif + for (u = 0; u < p->num_channels; ++u) { + if (in) + soxr_input_1ch(p, u, ((soxr_cbufs_t)in)[u], ilen); + odone = soxr_output_1ch(p, u, ((soxr_bufs_t)out)[u], olen, true); + } + idone = ilen; + } + else { + idone = ilen? soxr_input (p, in , ilen) : 0; + odone = soxr_output(p, out, olen); + } + if (idone0) *idone0 = idone; + if (odone0) *odone0 = odone; + return p->error; +} + + + +soxr_error_t soxr_oneshot( + double irate, double orate, + unsigned num_channels, + void const * in , size_t ilen, size_t * idone, + void * out, size_t olen, size_t * odone, + soxr_io_spec_t const * io_spec, + soxr_quality_spec_t const * q_spec, + soxr_runtime_spec_t const * runtime_spec) +{ + soxr_t resampler; + soxr_error_t error = q_spec? q_spec->e : 0; + if (!error) { + soxr_quality_spec_t q_spec1; + if (!q_spec) + q_spec1 = soxr_quality_spec(SOXR_LQ, 0), q_spec = &q_spec1; + resampler = soxr_create(irate, orate, num_channels, + &error, io_spec, q_spec, runtime_spec); + } + if (!error) { + error = soxr_process(resampler, in, ~ilen, idone, out, olen, odone); + soxr_delete(resampler); + } + return error; +} + + + +soxr_error_t soxr_set_error(soxr_t p, soxr_error_t error) +{ + if (!p) return "null pointer"; + if (!p->error && p->error != error) return p->error; + p->error = error; + return 0; +} diff --git a/C/src/soxr-0.1.3/src/soxr.h b/C/src/soxr-0.1.3/src/soxr.h new file mode 100644 index 00000000..09ec7c46 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr.h @@ -0,0 +1,344 @@ +/* SoX Resampler Library Copyright (c) 2007-18 robs@users.sourceforge.net + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation; either version 2.1 of the License, or (at + * your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser + * General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + + + +/* -------------------------------- Gubbins --------------------------------- */ + +#if !defined soxr_included +#define soxr_included + + +#if defined __cplusplus + #include + extern "C" { +#else + #include +#endif + +#if defined SOXR_DLL + #if defined soxr_EXPORTS + #define SOXR __declspec(dllexport) + #else + #define SOXR __declspec(dllimport) + #endif +#elif defined SOXR_VISIBILITY && defined __GNUC__ && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1) + #define SOXR __attribute__ ((visibility("default"))) +#else + #define SOXR +#endif + +typedef struct soxr_io_spec soxr_io_spec_t; +typedef struct soxr_quality_spec soxr_quality_spec_t; +typedef struct soxr_runtime_spec soxr_runtime_spec_t; + + + +/* ---------------------------- API conventions -------------------------------- + +Buffer lengths (and occupancies) are expressed as the number of contained +samples per channel. + +Parameter names for buffer lengths have the suffix `len'. + +A single-character `i' or 'o' is often used in names to give context as +input or output (e.g. ilen, olen). */ + + + +/* --------------------------- Version management --------------------------- */ + +/* E.g. #if SOXR_THIS_VERSION >= SOXR_VERSION(0,1,1) ... */ + +#define SOXR_VERSION(x,y,z) (((x)<<16)|((y)<<8)|(z)) +#define SOXR_THIS_VERSION SOXR_VERSION(0,1,3) +#define SOXR_THIS_VERSION_STR "0.1.3" + + + +/* --------------------------- Type declarations ---------------------------- */ + +typedef struct soxr * soxr_t; /* A resampler for 1 or more channels. */ +typedef char const * soxr_error_t; /* 0:no-error; non-0:error. */ + +typedef void * soxr_buf_t; /* 1 buffer of channel-interleaved samples. */ +typedef void const * soxr_cbuf_t; /* Ditto; read-only. */ + +typedef soxr_buf_t const * soxr_bufs_t;/* Or, a separate buffer for each ch. */ +typedef soxr_cbuf_t const * soxr_cbufs_t; /* Ditto; read-only. */ + +typedef void const * soxr_in_t; /* Either a soxr_cbuf_t or soxr_cbufs_t, + depending on itype in soxr_io_spec_t. */ +typedef void * soxr_out_t; /* Either a soxr_buf_t or soxr_bufs_t, + depending on otype in soxr_io_spec_t. */ + + + +/* --------------------------- API main functions --------------------------- */ + +SOXR char const * soxr_version(void); /* Query library version: "libsoxr-x.y.z" */ + +#define soxr_strerror(e) /* Soxr counterpart to strerror. */ \ + ((e)?(e):"no error") + + +/* Create a stream resampler: */ + +SOXR soxr_t soxr_create( + double input_rate, /* Input sample-rate. */ + double output_rate, /* Output sample-rate. */ + unsigned num_channels, /* Number of channels to be used. */ + /* All following arguments are optional (may be set to NULL). */ + soxr_error_t *, /* To report any error during creation. */ + soxr_io_spec_t const *, /* To specify non-default I/O formats. */ + soxr_quality_spec_t const *, /* To specify non-default resampling quality.*/ + soxr_runtime_spec_t const *);/* To specify non-default runtime resources. + + Default io_spec is per soxr_io_spec(SOXR_FLOAT32_I, SOXR_FLOAT32_I) + Default quality_spec is per soxr_quality_spec(SOXR_HQ, 0) + Default runtime_spec is per soxr_runtime_spec(1) */ + + + +/* If not using an app-supplied input function, after creating a stream + * resampler, repeatedly call: */ + +SOXR soxr_error_t soxr_process( + soxr_t resampler, /* As returned by soxr_create. */ + /* Input (to be resampled): */ + soxr_in_t in, /* Input buffer(s); may be NULL (see below). */ + size_t ilen, /* Input buf. length (samples per channel). */ + size_t * idone, /* To return actual # samples used (<= ilen). */ + /* Output (resampled): */ + soxr_out_t out, /* Output buffer(s).*/ + size_t olen, /* Output buf. length (samples per channel). */ + size_t * odone); /* To return actual # samples out (<= olen). + + Note that no special meaning is associated with ilen or olen equal to + zero. End-of-input (i.e. no data is available nor shall be available) + may be indicated by seting `in' to NULL. */ + + + +/* If using an app-supplied input function, it must look and behave like this:*/ + +typedef size_t /* data_len */ + (* soxr_input_fn_t)( /* Supply data to be resampled. */ + void * input_fn_state, /* As given to soxr_set_input_fn (below). */ + soxr_in_t * data, /* Returned data; see below. N.B. ptr to ptr(s)*/ + size_t requested_len); /* Samples per channel, >= returned data_len. + + data_len *data Indicates Meaning + ------- ------- ------------ ------------------------- + !=0 !=0 Success *data contains data to be + input to the resampler. + 0 !=0 (or End-of-input No data is available nor + not set) shall be available. + 0 0 Failure An error occurred whilst trying to + source data to be input to the resampler. */ + +/* and be registered with a previously created stream resampler using: */ + +SOXR soxr_error_t soxr_set_input_fn(/* Set (or reset) an input function.*/ + soxr_t resampler, /* As returned by soxr_create. */ + soxr_input_fn_t, /* Function to supply data to be resampled.*/ + void * input_fn_state, /* If needed by the input function. */ + size_t max_ilen); /* Maximum value for input fn. requested_len.*/ + +/* then repeatedly call: */ + +SOXR size_t /*odone*/ soxr_output(/* Resample and output a block of data.*/ + soxr_t resampler, /* As returned by soxr_create. */ + soxr_out_t data, /* App-supplied buffer(s) for resampled data.*/ + size_t olen); /* Amount of data to output; >= odone. */ + + + +/* Common stream resampler operations: */ + +SOXR soxr_error_t soxr_error(soxr_t); /* Query error status. */ +SOXR size_t * soxr_num_clips(soxr_t); /* Query int. clip counter (for R/W). */ +SOXR double soxr_delay(soxr_t); /* Query current delay in output samples.*/ +SOXR char const * soxr_engine(soxr_t); /* Query resampling engine name. */ + +SOXR soxr_error_t soxr_clear(soxr_t); /* Ready for fresh signal, same config. */ +SOXR void soxr_delete(soxr_t); /* Free resources. */ + + + +/* `Short-cut', single call to resample a (probably short) signal held entirely + * in memory. See soxr_create and soxr_process above for parameter details. + * Note that unlike soxr_create however, the default quality spec. for + * soxr_oneshot is per soxr_quality_spec(SOXR_LQ, 0). */ + +SOXR soxr_error_t soxr_oneshot( + double input_rate, + double output_rate, + unsigned num_channels, + soxr_in_t in , size_t ilen, size_t * idone, + soxr_out_t out, size_t olen, size_t * odone, + soxr_io_spec_t const *, + soxr_quality_spec_t const *, + soxr_runtime_spec_t const *); + + + +/* For variable-rate resampling. See example # 5 for how to create a + * variable-rate resampler and how to use this function. */ + +SOXR soxr_error_t soxr_set_io_ratio(soxr_t, double io_ratio, size_t slew_len); + + + +/* -------------------------- API type definitions -------------------------- */ + +typedef enum { /* Datatypes supported for I/O to/from the resampler: */ + /* Internal; do not use: */ + SOXR_FLOAT32, SOXR_FLOAT64, SOXR_INT32, SOXR_INT16, SOXR_SPLIT = 4, + + /* Use for interleaved channels: */ + SOXR_FLOAT32_I = SOXR_FLOAT32, SOXR_FLOAT64_I, SOXR_INT32_I, SOXR_INT16_I, + + /* Use for split channels: */ + SOXR_FLOAT32_S = SOXR_SPLIT , SOXR_FLOAT64_S, SOXR_INT32_S, SOXR_INT16_S + +} soxr_datatype_t; + +#define soxr_datatype_size(x) /* Returns `sizeof' a soxr_datatype_t sample. */\ + ((unsigned char *)"\4\10\4\2")[(x)&3] + + + +struct soxr_io_spec { /* Typically */ + soxr_datatype_t itype; /* Input datatype. SOXR_FLOAT32_I */ + soxr_datatype_t otype; /* Output datatype. SOXR_FLOAT32_I */ + double scale; /* Linear gain to apply during resampling. 1 */ + void * e; /* Reserved for internal use 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + +#define SOXR_TPDF 0 /* Applicable only if otype is INT16. */ +#define SOXR_NO_DITHER 8u /* Disable the above. */ + + + +struct soxr_quality_spec { /* Typically */ + double precision; /* Conversion precision (in bits). 20 */ + double phase_response; /* 0=minimum, ... 50=linear, ... 100=maximum 50 */ + double passband_end; /* 0dB pt. bandwidth to preserve; nyquist=1 0.913*/ + double stopband_begin; /* Aliasing/imaging control; > passband_end 1 */ + void * e; /* Reserved for internal use. 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + +#define SOXR_ROLLOFF_SMALL 0u /* <= 0.01 dB */ +#define SOXR_ROLLOFF_MEDIUM 1u /* <= 0.35 dB */ +#define SOXR_ROLLOFF_NONE 2u /* For Chebyshev bandwidth. */ + +#define SOXR_HI_PREC_CLOCK 8u /* Increase `irrational' ratio accuracy. */ +#define SOXR_DOUBLE_PRECISION 16u /* Use D.P. calcs even if precision <= 20. */ +#define SOXR_VR 32u /* Variable-rate resampling. */ + + + +struct soxr_runtime_spec { /* Typically */ + unsigned log2_min_dft_size; /* For DFT efficiency. [8,15] 10 */ + unsigned log2_large_dft_size; /* For DFT efficiency. [8,20] 17 */ + unsigned coef_size_kbytes; /* For SOXR_COEF_INTERP_AUTO (below). 400 */ + unsigned num_threads; /* 0: per OMP_NUM_THREADS; 1: 1 thread. 1 */ + void * e; /* Reserved for internal use. 0 */ + unsigned long flags; /* Per the following #defines. 0 */ +}; + /* For `irrational' ratios only: */ +#define SOXR_COEF_INTERP_AUTO 0u /* Auto select coef. interpolation. */ +#define SOXR_COEF_INTERP_LOW 2u /* Man. select: less CPU, more memory. */ +#define SOXR_COEF_INTERP_HIGH 3u /* Man. select: more CPU, less memory. */ + + + +/* -------------------------- API type constructors ------------------------- */ + +/* These functions allow setting of the most commonly-used structure + * parameters, with other parameters being given default values. The default + * values may then be overridden, directly in the structure, if needed. */ + +SOXR soxr_quality_spec_t soxr_quality_spec( + unsigned long recipe, /* Per the #defines immediately below. */ + unsigned long flags); /* As soxr_quality_spec_t.flags. */ + + /* The 5 standard qualities found in SoX: */ +#define SOXR_QQ 0 /* 'Quick' cubic interpolation. */ +#define SOXR_LQ 1 /* 'Low' 16-bit with larger rolloff. */ +#define SOXR_MQ 2 /* 'Medium' 16-bit with medium rolloff. */ +#define SOXR_HQ SOXR_20_BITQ /* 'High quality'. */ +#define SOXR_VHQ SOXR_28_BITQ /* 'Very high quality'. */ + +#define SOXR_16_BITQ 3 +#define SOXR_20_BITQ 4 +#define SOXR_24_BITQ 5 +#define SOXR_28_BITQ 6 +#define SOXR_32_BITQ 7 + /* Reserved for internal use (to be removed): */ +#define SOXR_LSR0Q 8 /* 'Best sinc'. */ +#define SOXR_LSR1Q 9 /* 'Medium sinc'. */ +#define SOXR_LSR2Q 10 /* 'Fast sinc'. */ + +#define SOXR_LINEAR_PHASE 0x00 +#define SOXR_INTERMEDIATE_PHASE 0x10 +#define SOXR_MINIMUM_PHASE 0x30 + +#define SOXR_STEEP_FILTER 0x40 + + + +SOXR soxr_runtime_spec_t soxr_runtime_spec( + unsigned num_threads); + + + +SOXR soxr_io_spec_t soxr_io_spec( + soxr_datatype_t itype, + soxr_datatype_t otype); + + + +/* --------------------------- Advanced use only ---------------------------- */ + +/* For new designs, the following functions/usage will probably not be needed. + * They might be useful when adding soxr into an existing design where values + * for the resampling-rate and/or number-of-channels parameters to soxr_create + * are not available when that function will be called. In such cases, the + * relevant soxr_create parameter(s) can be given as 0, then one or both of the + * following (as appropriate) later invoked (but prior to calling soxr_process + * or soxr_output): + * + * soxr_set_error(soxr, soxr_set_io_ratio(soxr, io_ratio, 0)); + * soxr_set_error(soxr, soxr_set_num_channels(soxr, num_channels)); + */ + +SOXR soxr_error_t soxr_set_error(soxr_t, soxr_error_t); +SOXR soxr_error_t soxr_set_num_channels(soxr_t, unsigned); + + + +#undef SOXR + +#if defined __cplusplus +} +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/soxr.pc.in b/C/src/soxr-0.1.3/src/soxr.pc.in new file mode 100644 index 00000000..69d225b2 --- /dev/null +++ b/C/src/soxr-0.1.3/src/soxr.pc.in @@ -0,0 +1,5 @@ +Name: ${PROJECT_NAME} +Description: ${DESCRIPTION_SUMMARY} +Version: ${PROJECT_VERSION} +Libs: -L${LIB_INSTALL_DIR} -l${PROJECT_NAME} +Cflags: -I${INCLUDE_INSTALL_DIR} diff --git a/C/src/soxr-0.1.3/src/std-types.h b/C/src/soxr-0.1.3/src/std-types.h new file mode 100644 index 00000000..c5e8636a --- /dev/null +++ b/C/src/soxr-0.1.3/src/std-types.h @@ -0,0 +1,48 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_std_types_included +#define soxr_std_types_included + +#include "soxr-config.h" + +#include + +#if HAVE_STDBOOL_H + #include +#else + #undef bool + #undef false + #undef true + #define bool int + #define false 0 + #define true 1 +#endif + +#if HAVE_STDINT_H + #include +#else + #undef int16_t + #undef int32_t + #undef int64_t + #undef uint32_t + #undef uint64_t + #define int16_t short + #if LONG_MAX > 2147483647L + #define int32_t int + #define int64_t long + #elif LONG_MAX < 2147483647L + #error this library requires that 'long int' has at least 32-bits + #else + #define int32_t long + #if defined _MSC_VER + #define int64_t __int64 + #else + #define int64_t long long + #endif + #endif + #define uint32_t unsigned int32_t + #define uint64_t unsigned int64_t +#endif + +#endif diff --git a/C/src/soxr-0.1.3/src/util-simd.c b/C/src/soxr-0.1.3/src/util-simd.c new file mode 100644 index 00000000..ec548fde --- /dev/null +++ b/C/src/soxr-0.1.3/src/util-simd.c @@ -0,0 +1,89 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include +#include + +#include "soxr-config.h" + +#define SIMD_ALIGNMENT (sizeof(float) * (1 + (PFFFT_DOUBLE|AVCODEC_FOUND)) * 4) + +void * SIMD_ALIGNED_MALLOC(size_t size) +{ + char * p1 = 0, * p = malloc(size + SIMD_ALIGNMENT); + if (p) { + p1 = (char *)((size_t)(p + SIMD_ALIGNMENT) & ~(SIMD_ALIGNMENT - 1)); + *((void * *)p1 - 1) = p; + } + return p1; +} + + + +void * SIMD_ALIGNED_CALLOC(size_t nmemb, size_t size) +{ + void * p = SIMD_ALIGNED_MALLOC(nmemb * size); + if (p) + memset(p, 0, nmemb * size); + return p; +} + + + +void SIMD_ALIGNED_FREE(void * p1) +{ + if (p1) + free(*((void * *)p1 - 1)); +} + + + +#define PFFT_MACROS_ONLY +#include "pffft.c" + + + +void ORDERED_CONVOLVE_SIMD(int n, void * not_used, float * a, float const * b) +{ + int i; + float ab0, ab1; + v4sf * RESTRICT va = (v4sf *)a; + v4sf const * RESTRICT vb = (v4sf const *)b; + assert(VALIGNED(a) && VALIGNED(b)); + ab0 = a[0] * b[0], ab1 = a[1] * b[1]; + for (i = 0; i < n / 4; i += 2) { + v4sf a1r = va[i+0], a1i = va[i+1]; + v4sf b1r = vb[i+0], b1i = vb[i+1]; + UNINTERLEAVE2(a1r, a1i, a1r, a1i); + UNINTERLEAVE2(b1r, b1i, b1r, b1i); + VCPLXMUL(a1r, a1i, b1r, b1i); + INTERLEAVE2(a1r, a1i, a1r, a1i); + va[i+0] = a1r, va[i+1] = a1i; + } + a[0] = ab0, a[1] = ab1; + (void)not_used; +} + + + +void ORDERED_PARTIAL_CONVOLVE_SIMD(int n, float * a, float const * b) +{ + int i; + float ab0; + v4sf * RESTRICT va = (v4sf *)a; + v4sf const * RESTRICT vb = (v4sf const *)b; + assert(VALIGNED(a) && VALIGNED(b)); + ab0 = a[0] * b[0]; + for (i = 0; i < n / 4; i += 2) { + v4sf a1r = va[i+0], a1i = va[i+1]; + v4sf b1r = vb[i+0], b1i = vb[i+1]; + UNINTERLEAVE2(a1r, a1i, a1r, a1i); + UNINTERLEAVE2(b1r, b1i, b1r, b1i); + VCPLXMUL(a1r, a1i, b1r, b1i); + INTERLEAVE2(a1r, a1i, a1r, a1i); + va[i+0] = a1r, va[i+1] = a1i; + } + a[0] = ab0; + a[1] = b[n] * a[n] - b[n+1] * a[n+1]; +} diff --git a/C/src/soxr-0.1.3/src/util32s.c b/C/src/soxr-0.1.3/src/util32s.c new file mode 100644 index 00000000..b9c9e08b --- /dev/null +++ b/C/src/soxr-0.1.3/src/util32s.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define PFFFT_DOUBLE 0 + +#include "util32s.h" + +#include "util-simd.c" diff --git a/C/src/soxr-0.1.3/src/util32s.h b/C/src/soxr-0.1.3/src/util32s.h new file mode 100644 index 00000000..12226e50 --- /dev/null +++ b/C/src/soxr-0.1.3/src/util32s.h @@ -0,0 +1,23 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_util32s_included +#define soxr_util32s_included + +#include + +void * _soxr_simd32_aligned_malloc(size_t); +void * _soxr_simd32_aligned_calloc(size_t, size_t); +void _soxr_simd32_aligned_free(void *); + +#define SIMD_ALIGNED_MALLOC _soxr_simd32_aligned_malloc +#define SIMD_ALIGNED_CALLOC _soxr_simd32_aligned_calloc +#define SIMD_ALIGNED_FREE _soxr_simd32_aligned_free + +void _soxr_ordered_convolve_simd32(int n, void * not_used, float * a, float const * b); +void _soxr_ordered_partial_convolve_simd32(int n, float * a, float const * b); + +#define ORDERED_CONVOLVE_SIMD _soxr_ordered_convolve_simd32 +#define ORDERED_PARTIAL_CONVOLVE_SIMD _soxr_ordered_partial_convolve_simd32 + +#endif diff --git a/C/src/soxr-0.1.3/src/util64s.c b/C/src/soxr-0.1.3/src/util64s.c new file mode 100644 index 00000000..0faa9e9e --- /dev/null +++ b/C/src/soxr-0.1.3/src/util64s.c @@ -0,0 +1,8 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#define PFFFT_DOUBLE 1 + +#include "util64s.h" + +#include "util-simd.c" diff --git a/C/src/soxr-0.1.3/src/util64s.h b/C/src/soxr-0.1.3/src/util64s.h new file mode 100644 index 00000000..7beeb899 --- /dev/null +++ b/C/src/soxr-0.1.3/src/util64s.h @@ -0,0 +1,23 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#if !defined soxr_util64s_included +#define soxr_util64s_included + +#include + +void * _soxr_simd64_aligned_malloc(size_t); +void * _soxr_simd64_aligned_calloc(size_t, size_t); +void _soxr_simd64_aligned_free(void *); + +#define SIMD_ALIGNED_MALLOC _soxr_simd64_aligned_malloc +#define SIMD_ALIGNED_CALLOC _soxr_simd64_aligned_calloc +#define SIMD_ALIGNED_FREE _soxr_simd64_aligned_free + +void _soxr_ordered_convolve_simd64(int n, void * not_used, double * a, double const * b); +void _soxr_ordered_partial_convolve_simd64(int n, double * a, double const * b); + +#define ORDERED_CONVOLVE_SIMD _soxr_ordered_convolve_simd64 +#define ORDERED_PARTIAL_CONVOLVE_SIMD _soxr_ordered_partial_convolve_simd64 + +#endif diff --git a/C/src/soxr-0.1.3/src/vr-coefs.c b/C/src/soxr-0.1.3/src/vr-coefs.c new file mode 100644 index 00000000..a57bec8c --- /dev/null +++ b/C/src/soxr-0.1.3/src/vr-coefs.c @@ -0,0 +1,115 @@ +/* SoX Resampler Library Copyright (c) 2013 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Generate the filter coefficients for variable-rate resampling. */ + +#include +#include +#include +#define PI 3.14159265358979323846 /* Since M_PI can't be relied on */ + +static void print(double * h, int m, double l, char const * name) +{ /* Print out a filter: */ + int i, N = l? (int)(l*m)-(l>1) : m, R=(N+1)/2; + int a = !l||l>1? 0:N-R, b = l>1? R:N; + printf("static float const %s[] = {\n", name); + if (l>1) printf(" 0.f,"); else if (!l) l=1; + for (i=a; h && i 0 && x E[i] >= x E[i z 1]) +#define PEAK do {if (k0)-(E[i]<0);} while (0) + +typedef struct {double x, beta, gamma;} coef_t; + +static double amp_response(coef_t * coef, int R, double f, int i) +{ + double n = 0, d = 0, x = cos(PI*f), t; + for (; i < R; d += t = coef[i].beta / t, n += coef[i].gamma * t, ++i) + if (fabs(t = x - coef[i].x) < 1e-9) return coef[i].gamma; + return n/d; +} + +static void fir(int m, double l, double Fp0, double Fs0, + double weight0, int density, char const * name) +{ + double Fp=Fp0/l, Fs=Fs0/l, weight=1/weight0, inc[2], Ws=1-Fs; + int N = (int)(l*m)-(l>1), R=(N+1)/2, NP=R+1, grid_size=1+density*R+1, pass=0; + int n1 = Ws>=(2*R-1)*Fp? 1:(int)(R*Fp/(Fp+Ws)+.5), n2=NP-n1, _1, i, j, k; + int * peak = calloc(sizeof(*peak), (size_t)(NP+1)), * P=peak, end[2]; + coef_t * coef = calloc(sizeof(*coef), (size_t)(NP)); + float * E = calloc(sizeof(*E ), (size_t)(grid_size)); + double d, n, e, f, mult, delta, sum, hi, lo, * A = (double*)E, *h=0; + + if (!P || !coef || !E) goto END; + end[0] = n1 * density, end[1] = grid_size-1; /* Create prototype peaks: */ + inc[0] = Fp/end[0], inc[1] = n2==1? 0 : Ws / ((n2-1)*density); + for (i=0; iE[i+1]) || (EE(-,-) && E[i] 1) goto END; /* Too many/few? */ + P = peak + k * (fabs(E[peak[0]]) < fabs(E[peak[NP]])); /* rm 1st? */ + + for (lo = hi = fabs(E[P[0]]), i=1; ihi? e:hi; + } while ((hi-lo)/hi > .001 && ++pass < 20); + /* Create impulse response from final amp. resp. coefs: */ + if (!(h = malloc(sizeof(*h)*(size_t)N))) goto END; + for (i = 0; i < R; f = 2.*i/N, A[i++] = amp_response(coef,R,f,0)*even_adj(f)); + for (i = 0; i < R; h[N-1-i] = h[i] = sum/N, ++i) + for (sum=*A, j=1; j +#include "math-wrap.h" +#include +#include +#include "internal.h" +#define FIFO_SIZE_T int +#define FIFO_MIN 0x8000 +#include "fifo.h" +#include "vr-coefs.h" + +#define FADE_LEN_BITS 9 +#define PHASE_BITS_D 10 +#define PHASE_BITS_U 9 + +#define PHASES0_D 12 +#define POLY_FIR_LEN_D 20 +#define PHASES0_U 6 +#define POLY_FIR_LEN_U 12 + +#define MULT32 (65536. * 65536.) +#define PHASES_D (1 << PHASE_BITS_D) +#define PHASES_U (1 << PHASE_BITS_U) + +#define CONVOLVE \ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +#define HALF_FIR_LEN_2 (iAL(half_fir_coefs) - 1) +#define HALF_FIR_LEN_4 (HALF_FIR_LEN_2 / 2) + +#define _ sum += (input[-i] + input[i]) * half_fir_coefs[i], ++i; +static float half_fir(float const * input) +{ + long i = 1; + float sum = input[0] * half_fir_coefs[0]; + CONVOLVE CONVOLVE + assert(i == HALF_FIR_LEN_2 + 1); + return (float)sum; +} +#undef _ + +#define _ sum += (input[-i] + input[i]) * half_fir_coefs[2*i], ++i; +static float double_fir0(float const * input) +{ + int i = 1; + float sum = input[0] * half_fir_coefs[0]; + CONVOLVE + assert(i == HALF_FIR_LEN_4 + 1); + return (float)(sum * 2); +} +#undef _ + +#define _ sum += (input[-i] + input[1+i]) * half_fir_coefs[2*i+1], ++i; +static float double_fir1(float const * input) +{ + int i = 0; + float sum = 0; + CONVOLVE + assert(i == HALF_FIR_LEN_4 + 0); + return (float)(sum * 2); +} +#undef _ + +static float fast_half_fir(float const * input) +{ + int i = 0; + float sum = input[0] * .5f; +#define _ sum += (input[-(2*i+1)] + input[2*i+1]) * fast_half_fir_coefs[i], ++i; + _ _ _ _ _ _ +#undef _ + return (float)sum; +} + +#define IIR_FILTER _ _ _ _ _ _ _ +#define _ in1=(in1-p->y[i])*iir_coefs[i]+tmp1;tmp1=p->y[i],p->y[i]=in1;++i;\ + in0=(in0-p->y[i])*iir_coefs[i]+tmp0;tmp0=p->y[i],p->y[i]=in0;++i; + +typedef struct {float x[2], y[AL(iir_coefs)];} half_iir_t; + +static float half_iir1(half_iir_t * p, float in0, float in1) +{ + int i = 0; + float tmp0, tmp1; + tmp0 = p->x[0], p->x[0] = in0; + tmp1 = p->x[1], p->x[1] = in1; + IIR_FILTER + p->y[i] = in1 = (in1 - p->y[i]) * iir_coefs[i] + tmp1; + return in1 + in0; +} +#undef _ + +static void half_iir(half_iir_t * p, float * obuf, float const * ibuf, int olen) +{ + int i; + for (i=0; i < olen; obuf[i] = (float)half_iir1(p, ibuf[i*2], ibuf[i*2+1]),++i); +} + +static void half_phase(half_iir_t * p, float * buf, int len) +{ + float const small_normal = 1/MULT32/MULT32; /* To quash denormals on path 0.*/ + int i; + for (i = 0; i < len; buf[i] = (float)half_iir1(p, buf[i], 0), ++i); +#define _ p->y[i] += small_normal, i += 2; + i = 0, _ IIR_FILTER +#undef _ +#define _ p->y[i] -= small_normal, i += 2; + i = 0, _ IIR_FILTER +#undef _ +} + +#define coef(coef_p, interp_order, fir_len, phase_num, coef_interp_num, \ + fir_coef_num) coef_p[(fir_len) * ((interp_order) + 1) * (phase_num) + \ + ((interp_order) + 1) * (fir_coef_num) + (interp_order - coef_interp_num)] + +#define COEF(h,l,i) ((i)<0||(i)>=(l)?0:(h)[(i)>(l)/2?(l)-(i):(i)]) +static void prepare_coefs(float * coefs, int n, int phases0, int phases, + float const * coefs0, double multiplier) +{ + double k[6]; + int length0 = n * phases0, length = n * phases, K0 = iAL(k)/2 - 1, i, j, pos; + float * coefs1 = malloc(((size_t)length / 2 + 1) * sizeof(*coefs1)); + float * p = coefs1, f0, f1 = 0; + + for (j = 0; j < iAL(k); k[j] = COEF(coefs0, length0, j - K0), ++j); + for (pos = i = 0; i < length0 / 2; ++i) { + double b=(1/24.)*(k[0]+k[4]+6*k[2]-4*(k[1]+k[3])),d=.5*(k[1]+k[3])-k[2]-b; + double a=(1/120.)*(k[5]-k[2]-9*(9*b+d)+2.5*(k[3]-k[1])-2*(k[4]-k[0])); + double c=(1/12.)*(k[4]-k[0]-2*(k[3]-k[1])-60*a),e=.5*(k[3]-k[1])-a-c; + for (; pos / phases == i; pos += phases0) { + double x = (double)(pos % phases) / phases; + *p++ = (float)(k[K0] + ((((a*x + b)*x + c)*x + d)*x + e)*x); + } + for (j = 0; j < iAL(k) - 1; k[j] = k[j + 1], ++j); + k[j] = COEF(coefs0, length0, i + iAL(k) / 2 + 1); + } + if (!(length & 1)) + *p++ = (float)k[K0]; + assert(p - coefs1 == length / 2 + 1); + + for (i = 0; i < n; ++i) for (j = phases - 1; j >= 0; --j, f1 = f0) { + pos = (n - 1 - i) * phases + j; + f0 = COEF(coefs1, length, pos) * (float)multiplier; + coef(coefs, 1, n, j, 0, i) = (float)f0; + coef(coefs, 1, n, j, 1, i) = (float)(f1 - f0); + } + free(coefs1); +} + +#define _ sum += (b *x + a)*input[i], ++i; +#define a (coef(poly_fir_coefs_d, 1, POLY_FIR_LEN_D, phase, 0,i)) +#define b (coef(poly_fir_coefs_d, 1, POLY_FIR_LEN_D, phase, 1,i)) +static float poly_fir_coefs_d[POLY_FIR_LEN_D * PHASES_D * 2]; + +static float poly_fir1_d(float const * input, uint32_t frac) +{ + int i = 0, phase = (int)(frac >> (32 - PHASE_BITS_D)); + float sum = 0, x = (float)(frac << PHASE_BITS_D) * (float)(1 / MULT32); + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + assert(i == POLY_FIR_LEN_D); + return (float)sum; +} +#undef a +#undef b +#define a (coef(poly_fir_coefs_u, 1, POLY_FIR_LEN_U, phase, 0,i)) +#define b (coef(poly_fir_coefs_u, 1, POLY_FIR_LEN_U, phase, 1,i)) +static float poly_fir_coefs_u[POLY_FIR_LEN_U * PHASES_U * 2]; + +static float poly_fir1_u(float const * input, uint32_t frac) +{ + int i = 0, phase = (int)(frac >> (32 - PHASE_BITS_U)); + float sum = 0, x = (float)(frac << PHASE_BITS_U) * (float)(1 / MULT32); + _ _ _ _ _ _ _ _ _ _ _ _ + assert(i == POLY_FIR_LEN_U); + return (float)sum; +} +#undef a +#undef b +#undef _ + +#define ADD_TO(x,y) x.all += y.all +#define SUBTRACT_FROM(x,y) x.all -= y.all +#define FRAC(x) x.part.frac +#define INT(x) x.part.integer + +typedef struct { + union { + int64_t all; +#if HAVE_BIGENDIAN + struct {int32_t integer; uint32_t frac;} part; +#else + struct {uint32_t frac; int32_t integer;} part; +#endif + } at, step, step_step; + float const * input; + int len, stage_num; + bool is_d; /* true: downsampling at x2 rate; false: upsampling at 1x rate. */ + double step_mult; +} stream_t; + +static int poly_fir_d(stream_t * s, float * output, int olen) +{ + int i; + float const * input = s->input - POLY_FIR_LEN_D / 2 + 1; + for (i = 0; i < olen && INT(s->at) < s->len; ++i) { + output[i] = poly_fir1_d(input + INT(s->at), FRAC(s->at)); + ADD_TO(s->at, s->step); + if (!(INT(s->at) < s->len)) { + SUBTRACT_FROM(s->at, s->step); + break; + } + output[++i] = poly_fir1_d(input + INT(s->at), FRAC(s->at)); + ADD_TO(s->at, s->step); + ADD_TO(s->step, s->step_step); + } + return i; +} + +static int poly_fir_fade_d( + stream_t * s, float const * vol, int step, float * output, int olen) +{ + int i; + float const * input = s->input - POLY_FIR_LEN_D / 2 + 1; + for (i = 0; i < olen && INT(s->at) < s->len; ++i, vol += step) { + output[i] += *vol * poly_fir1_d(input + INT(s->at), FRAC(s->at)); + ADD_TO(s->at, s->step); + if (!(INT(s->at) < s->len)) { + SUBTRACT_FROM(s->at, s->step); + break; + } + output[++i] += *(vol += step) * poly_fir1_d(input + INT(s->at),FRAC(s->at)); + ADD_TO(s->at, s->step); + ADD_TO(s->step, s->step_step); + } + return i; +} + +static int poly_fir_u(stream_t * s, float * output, int olen) +{ + int i; + float const * input = s->input - POLY_FIR_LEN_U / 2 + 1; + for (i = 0; i < olen && INT(s->at) < s->len; ++i) { + output[i] = poly_fir1_u(input + INT(s->at), FRAC(s->at)); + ADD_TO(s->at, s->step); + ADD_TO(s->step, s->step_step); + } + return i; +} + +static int poly_fir_fade_u( + stream_t * s, float const * vol, int step, float * output, int olen) +{ + int i; + float const * input = s->input - POLY_FIR_LEN_U / 2 + 1; + for (i = 0; i < olen && INT(s->at) < s->len; i += 2, vol += step) { + output[i] += *vol * poly_fir1_u(input + INT(s->at), FRAC(s->at)); + ADD_TO(s->at, s->step); + ADD_TO(s->step, s->step_step); + } + return i; +} + +#define shiftr(x,by) ((by) < 0? (x) << (-(by)) : (x) >> (by)) +#define shiftl(x,by) shiftr(x,-(by)) +#define stage_occupancy(s) (fifo_occupancy(&(s)->fifo) - 4*HALF_FIR_LEN_2) +#define stage_read_p(s) ((float *)fifo_read_ptr(&(s)->fifo) + 2*HALF_FIR_LEN_2) +#define stage_preload(s) memset(fifo_reserve(&(s)->fifo, (s)->preload), \ + 0, sizeof(float) * (size_t)(s)->preload); + +typedef struct { + fifo_t fifo; + double step_mult; + int is_fast, x_fade_len, preload; +} stage_t; + +typedef struct { + int num_stages0, num_stages, flushing; + int fade_len, slew_len, xfade, stage_inc, switch_stage_num; + double new_io_ratio, default_io_ratio; + stage_t * stages; + fifo_t output_fifo; + half_iir_t halfer; + stream_t current, fadeout; /* Current/fade-in, fadeout streams. */ +} rate_t; + +static float fade_coefs[(2 << FADE_LEN_BITS) + 1]; + +static void vr_init(rate_t * p, double default_io_ratio, int num_stages, double mult) +{ + int i; + assert(num_stages >= 0); + memset(p, 0, sizeof(*p)); + + p->num_stages0 = num_stages; + p->num_stages = num_stages = max(num_stages, 1); + p->stages = (stage_t *)calloc((unsigned)num_stages + 1, sizeof(*p->stages)) + 1; + for (i = -1; i < p->num_stages; ++i) { + stage_t * s = &p->stages[i]; + fifo_create(&s->fifo, sizeof(float)); + s->step_mult = 2 * MULT32 / shiftl(2, i); + s->preload = i < 0? 0 : i == 0? 2 * HALF_FIR_LEN_2 : 3 * HALF_FIR_LEN_2 / 2; + stage_preload(s); + s->is_fast = true; + lsx_debug("%-3i preload=%i", i, s->preload); + } + fifo_create(&p->output_fifo, sizeof(float)); + p->default_io_ratio = default_io_ratio; + if (fade_coefs[0]==0) { + for (i = 0; i < iAL(fade_coefs); ++i) + fade_coefs[i] = (float)(.5 * (1 + cos(M_PI * i / (AL(fade_coefs) - 1)))); + prepare_coefs(poly_fir_coefs_u, POLY_FIR_LEN_U, PHASES0_U, PHASES_U, coefs0_u, mult); + prepare_coefs(poly_fir_coefs_d, POLY_FIR_LEN_D, PHASES0_D, PHASES_D, coefs0_d, mult *.5); + } + assert(fade_coefs[0]); +} + +static void enter_new_stage(rate_t * p, int occupancy0) +{ + p->current.len = shiftr(occupancy0, p->current.stage_num); + p->current.input = stage_read_p(&p->stages[p->current.stage_num]); + + p->current.step_mult = p->stages[p->current.stage_num].step_mult; + p->current.is_d = p->current.stage_num >= 0; + if (p->current.is_d) + p->current.step_mult *= .5; +} + +static void set_step(stream_t * p, double io_ratio) +{ + p->step.all = (int64_t)(io_ratio * p->step_mult + .5); +} + +static bool set_step_step(stream_t * p, double io_ratio, int slew_len) +{ + int64_t dif; + int difi; + stream_t tmp = *p; + set_step(&tmp, io_ratio); + dif = tmp.step.all - p->step.all; + dif = dif < 0? dif - (slew_len >> 1) : dif + (slew_len >> 1); + difi = (int)dif; /* Try to avoid int64_t div. */ + p->step_step.all = difi == dif? difi / slew_len : dif / slew_len; + return p->step_step.all != 0; +} + +static void vr_set_io_ratio(rate_t * p, double io_ratio, size_t slew_len) +{ + assert(io_ratio > 0); + if (slew_len) { + if (!set_step_step(&p->current, io_ratio, p->slew_len = (int)slew_len)) + p->slew_len = 0, p->new_io_ratio = 0, p->fadeout.step_step.all = 0; + else { + p->new_io_ratio = io_ratio; + if (p->fade_len) + set_step_step(&p->fadeout, io_ratio, p->slew_len); + } + } + else { + if (p->default_io_ratio!=0) { /* Then this is the first call to this fn. */ + int octave = (int)floor(log(io_ratio) / M_LN2); + p->current.stage_num = octave < 0? -1 : min(octave, p->num_stages0-1); + enter_new_stage(p, 0); + } + else if (p->fade_len) + set_step(&p->fadeout, io_ratio); + set_step(&p->current, io_ratio); + if (p->default_io_ratio!=0) FRAC(p->current.at) = FRAC(p->current.step) >> 1; + p->default_io_ratio = 0; + } +} + +static bool do_input_stage(rate_t * p, int stage_num, int sign, int min_stage_num) +{ + int i = 0; + float * dest; + stage_t * s = &p->stages[stage_num]; + stage_t * s1 = &p->stages[stage_num - sign]; + float const * src = (float *)fifo_read_ptr(&s1->fifo) + HALF_FIR_LEN_2; + int len = shiftr(fifo_occupancy(&s1->fifo) - HALF_FIR_LEN_2 * 2, sign); + int already_done = fifo_occupancy(&s->fifo) - s->preload; + if ((len -= already_done) <= 0) + return false; + src += shiftl(already_done, sign); + + dest = fifo_reserve(&s->fifo, len); + if (stage_num < 0) for (; i < len; ++src) + dest[i++] = double_fir0(src), dest[i++] = double_fir1(src); + else { + bool should_be_fast = p->stage_inc; + if (!s->x_fade_len && stage_num == p->switch_stage_num) { + p->switch_stage_num = 0; + if (s->is_fast != should_be_fast) { + s->x_fade_len = 1 << FADE_LEN_BITS, s->is_fast = should_be_fast, ++p->xfade; + lsx_debug("xfade level %i, inc?=%i", stage_num, p->stage_inc); + } + } + if (s->x_fade_len) { + float const * vol1 = fade_coefs + (s->x_fade_len << 1); + float const * vol2 = fade_coefs + (((1 << FADE_LEN_BITS) - s->x_fade_len) << 1); + int n = min(len, s->x_fade_len); + /*lsx_debug("xfade level %i, inc?=%i len=%i n=%i", stage_num, p->stage_inc, s->x_fade_len, n);*/ + if (should_be_fast) + for (; i < n; vol2 += 2, vol1 -= 2, src += 2) + dest[i++] = *vol1 * fast_half_fir(src) + *vol2 * half_fir(src); + else for (; i < n; vol2 += 2, vol1 -= 2, src += 2) + dest[i++] = *vol2 * fast_half_fir(src) + *vol1 * half_fir(src); + s->x_fade_len -= n; + p->xfade -= !s->x_fade_len; + } + if (stage_num < min_stage_num) + for (; i < len; dest[i++] = fast_half_fir(src), src += 2); + else for (; i < len; dest[i++] = half_fir(src), src += 2); + } + if (p->flushing > 0) + stage_preload(s); + return true; +} + +static int vr_process(rate_t * p, int olen0) +{ + assert(p->num_stages > 0); + if (p->default_io_ratio!=0) + vr_set_io_ratio(p, p->default_io_ratio, 0); + { + float * output = fifo_reserve(&p->output_fifo, olen0); + int j, odone0 = 0, min_stage_num = p->current.stage_num; + int occupancy0, max_stage_num = min_stage_num; + if (p->fade_len) { + min_stage_num = min(min_stage_num, p->fadeout.stage_num); + max_stage_num = max(max_stage_num, p->fadeout.stage_num); + } + + for (j = min(min_stage_num, 0); j <= max_stage_num; ++j) + if (j && !do_input_stage(p, j, j < 0? -1 : 1, min_stage_num)) + break; + if (p->flushing > 0) + p->flushing = -1; + + occupancy0 = shiftl(max(0,stage_occupancy(&p->stages[max_stage_num])), max_stage_num); + p->current.len = shiftr(occupancy0, p->current.stage_num); + p->current.input = stage_read_p(&p->stages[p->current.stage_num]); + if (p->fade_len) { + p->fadeout.len = shiftr(occupancy0, p->fadeout.stage_num); + p->fadeout.input = stage_read_p(&p->stages[p->fadeout.stage_num]); + } + + while (odone0 < olen0) { + int odone, odone2, olen = olen0 - odone0, stage_dif = 0, shift; + float buf[64 << 1]; + + olen = min(olen, (int)(AL(buf) >> 1)); + if (p->slew_len) + olen = min(olen, p->slew_len); + else if (p->new_io_ratio!=0) { + set_step(&p->current, p->new_io_ratio); + set_step(&p->fadeout, p->new_io_ratio); + p->fadeout.step_step.all = p->current.step_step.all = 0; + p->new_io_ratio = 0; + } + if (!p->flushing && !p->fade_len && !p->xfade) { + if (p->current.is_d) { + if (INT(p->current.step) && FRAC(p->current.step)) + stage_dif = 1, ++max_stage_num; + else if (!INT(p->current.step) && FRAC(p->current.step) < (1u << 31)) + stage_dif = -1, --min_stage_num; + } else if (INT(p->current.step) > 1 && FRAC(p->current.step)) + stage_dif = 1, ++max_stage_num; + } + if (stage_dif) { + int n = p->current.stage_num + stage_dif; + if (n >= p->num_stages) + --max_stage_num; + else { + p->stage_inc = stage_dif > 0; + p->fadeout = p->current; + p->current.stage_num += stage_dif; + if (!p->stage_inc) + p->switch_stage_num = p->current.stage_num; + if ((p->current.stage_num < 0 && stage_dif < 0) || + (p->current.stage_num > 0 && stage_dif > 0)) { + stage_t * s = &p->stages[p->current.stage_num]; + fifo_clear(&s->fifo); + stage_preload(s); + s->is_fast = false; + do_input_stage(p, p->current.stage_num, stage_dif, p->current.stage_num); + } + if (p->current.stage_num > 0 && stage_dif < 0) { + int idone = INT(p->current.at); + stage_t * s = &p->stages[p->current.stage_num]; + fifo_trim_to(&s->fifo, 2 * HALF_FIR_LEN_2 + idone + (POLY_FIR_LEN_D >> 1)); + do_input_stage(p, p->current.stage_num, 1, p->current.stage_num); + } + enter_new_stage(p, occupancy0); + shift = -stage_dif; +#define lshift(x,by) (x)=(by)>0?(x)<<(by):(x)>>-(by) + lshift(p->current.at.all, shift); + shift += p->fadeout.is_d - p->current.is_d; + lshift(p->current.step.all, shift); + lshift(p->current.step_step.all, shift); + p->fade_len = AL(fade_coefs) - 1; + lsx_debug("switch from stage %i to %i, x2 from %i to %i", p->fadeout.stage_num, p->current.stage_num, p->fadeout.is_d, p->current.is_d); + } + } + + if (p->fade_len) { + float const * vol1 = fade_coefs + p->fade_len; + float const * vol2 = fade_coefs + (iAL(fade_coefs) - 1 - p->fade_len); + int olen2 = (olen = min(olen, p->fade_len >> 1)) << 1; + + /* x2 is more fine-grained so may fail to produce a pair of samples + * where x1 would not (the x1 second sample is a zero so is always + * available). So do x2 first, then feed odone to the second one. */ + memset(buf, 0, sizeof(*buf) * (size_t)olen2); + if (p->current.is_d && p->fadeout.is_d) { + odone = poly_fir_fade_d(&p->current, vol1,-1, buf, olen2); + odone2 = poly_fir_fade_d(&p->fadeout, vol2, 1, buf, odone); + } else if (p->current.is_d) { + odone = poly_fir_fade_d(&p->current, vol1,-1, buf, olen2); + odone2 = poly_fir_fade_u(&p->fadeout, vol2, 2, buf, odone); + } else { + assert(p->fadeout.is_d); + odone = poly_fir_fade_d(&p->fadeout, vol2, 1, buf, olen2); + odone2 = poly_fir_fade_u(&p->current, vol1,-2, buf, odone); + } + assert(odone == odone2); + (void)odone2; + p->fade_len -= odone; + if (!p->fade_len) { + if (p->stage_inc) + p->switch_stage_num = min_stage_num++; + else + --max_stage_num; + } + half_iir(&p->halfer, &output[odone0], buf, odone >>= 1); + } + else if (p->current.is_d) { + odone = poly_fir_d(&p->current, buf, olen << 1) >> 1; + half_iir(&p->halfer, &output[odone0], buf, odone); + } + else { + odone = poly_fir_u(&p->current, &output[odone0], olen); + if (p->num_stages0) + half_phase(&p->halfer, &output[odone0], odone); + } + odone0 += odone; + if (p->slew_len) + p->slew_len -= odone; + if (odone != olen) + break; /* Need more input. */ + } { + int from = max(0, max_stage_num), to = min(0, min_stage_num); + int i, idone = shiftr(INT(p->current.at), from - p->current.stage_num); + INT(p->current.at) -= shiftl(idone, from - p->current.stage_num); + if (p->fade_len) + INT(p->fadeout.at) -= shiftl(idone, from - p->fadeout.stage_num); + for (i = from; i >= to; --i, idone <<= 1) + fifo_read(&p->stages[i].fifo, idone, NULL); + } + fifo_trim_by(&p->output_fifo, olen0 - odone0); + return odone0; + } +} + +static float * vr_input(rate_t * p, float const * input, size_t n) +{ + return fifo_write(&p->stages[0].fifo, (int)n, input); +} + +static float const * vr_output(rate_t * p, float * output, size_t * n) +{ + fifo_t * fifo = &p->output_fifo; + if (1 || !p->num_stages0) + return fifo_read(fifo, (int)(*n = min(*n, (size_t)fifo_occupancy(fifo))), output); + else { /* Ignore this complication for now. */ + int const IIR_DELAY = 2; + float * ptr = fifo_read_ptr(fifo); + int olen = min((int)*n, max(0, fifo_occupancy(fifo) - IIR_DELAY)); + *n = (size_t)olen; + if (output) + memcpy(output, ptr + IIR_DELAY, *n * sizeof(*output)); + fifo_read(fifo, olen, NULL); + return ptr + IIR_DELAY; + } +} + +static void vr_flush(rate_t * p) +{ + if (!p->flushing) { + stage_preload(&p->stages[0]); + ++p->flushing; + } +} + +static void vr_close(rate_t * p) +{ + int i; + + fifo_delete(&p->output_fifo); + for (i = -1; i < p->num_stages; ++i) { + stage_t * s = &p->stages[i]; + fifo_delete(&s->fifo); + } + free(p->stages - 1); +} + +static double vr_delay(rate_t * p) +{ + return 100; /* TODO */ + (void)p; +} + +static void vr_sizes(size_t * shared, size_t * channel) +{ + *shared = 0; + *channel = sizeof(rate_t); +} + +static char const * vr_create(void * channel, void * shared,double max_io_ratio, + void * q_spec, void * r_spec, double scale) +{ + double x = max_io_ratio; + int n; + for (n = 0; x > 1; x *= .5, ++n); + vr_init(channel, max_io_ratio, n, scale); + return 0; + (void)shared, (void)q_spec, (void)r_spec; +} + +static char const * vr_id(void) +{ + return "vr32"; +} + +typedef void (* fn_t)(void); +fn_t _soxr_vr32_cb[] = { + (fn_t)vr_input, + (fn_t)vr_process, + (fn_t)vr_output, + (fn_t)vr_flush, + (fn_t)vr_close, + (fn_t)vr_delay, + (fn_t)vr_sizes, + (fn_t)vr_create, + (fn_t)vr_set_io_ratio, + (fn_t)vr_id, +}; diff --git a/C/src/soxr-0.1.3/tests/1-delay-clear.c b/C/src/soxr-0.1.3/tests/1-delay-clear.c new file mode 100644 index 00000000..ba4d47c0 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/1-delay-clear.c @@ -0,0 +1,64 @@ +/* SoX Resampler Library Copyright (c) 2007-15 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Test 1: exercises soxr_delay and soxr_clear */ + +#ifdef NDEBUG /* N.B. assert used with active statements so enable always. */ +#undef NDEBUG /* Must undef above assert.h or other that might include it. */ +#endif + +#include +#include "../examples/examples-common.h" + +#define ranqd1(x) ((x) = 1664525 * (x) + 1013904223) /* int32_t x */ +#define franqd1(x) (float)(ranqd1(x) * (1. / (65536. * 32768.))) /* [-1,1) */ + +#define irate 9600 +#define orate 4410 + +int main(int argc, char const * arg[]) +{ + soxr_error_t error; + int32_t ran = 0; + int j; + + soxr_t soxr = soxr_create(irate, orate, 1, &error, NULL, NULL, NULL); + assert(!error); + + for (j=0; j<2; ++j) { + float ibuf[irate], out[orate+2], obuf[orate+2], * ibuf1 = ibuf; + size_t ilen = AL(ibuf)-1, olen = AL(obuf), i, odone = 0, odone0, odone1=0; + soxr_quality_spec_t q_spec = soxr_quality_spec(SOXR_HQ, 0); + + for (i=0; i= 0); + fprintf(stderr, "%5u %5u %5u\n", + (unsigned)ilen, max_out_samples, (unsigned)odone); + assert(max_out_samples+odone==odone0); + error = soxr_process(soxr, ibuf1, ilen, NULL, obuf+odone, olen, &odone1); + assert(!error); + odone += odone1; + ibuf1 = NULL, ilen = 0; + olen = min(100, AL(obuf)-odone); + } + assert(odone==odone0); + + for (i=0; i44k1 and that results are same for each: +ir=96000 +or=44100 +for i in 1 2; do + prev="" + sox -r $ir -n 0.f32 synth $len sin 0+`expr $ir / 2` + for f in `find . -type f -executable -name "[2-4]*"`; do + $vg $f $ir $or < 0.f32 > $f.f32 + test x$prev != x && cmp $f.f32 $prev + prev=$f.f32 + done + or=96000 + ir=44100 +done +rm *.f32 + + + +# Exercise VR making sure that varied internal stage reconfigurations occur: +variations=(slow-sweep fast-changing) +signals=(sine-wave saw-tooth-wave) +for n in 0 1 2 3; do + signal=${signals[`expr $n % 2 || true`]} + variation=${variations[`expr $n / 2 || true`]} + $vg ./5-variable-rate $n | sox -tf32 -r44100 -c1 - -n spectrogram -z130 -hw$w -o v$n-$w.png -X 50 -c "variation:$variation signal:$signal" + vg="" +done diff --git a/C/src/soxr-0.1.3/tests/io-test b/C/src/soxr-0.1.3/tests/io-test new file mode 100755 index 00000000..608bc9ab --- /dev/null +++ b/C/src/soxr-0.1.3/tests/io-test @@ -0,0 +1,65 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Tests IO + + + +ir=65537 +or=44100 +len=16 +f=1/32768 +g=32768:0 +tool=./3-options-input-fn +w=$(echo -e "`sox --ver |sed 's/.*SoX v//'` d\n14.4.1 k"|sort -Vr|head -1|sed 's/.* //') + +types=(f32 f64 s32 s16) + +zs=(180 180 180 180 180 120 120 120 120) + +do_one() { + it=${types[$1]}; ot=${types[`expr $2 % 4 || true`]} + $tool $ir $or $c $1 $2 $3 < $c.$it > a.$ot + sox -r $or -c $c a.$ot -n spectrogram -X50 -hw$w -z${zs[$n]} -o io$c$n-$w.png -c "io-test i:$it o:$ot ($2) q:$3" + ./4-split-channels $ir $or $c $1 $2 $3 < $c.$it > b.$ot + [ $2 != 3 ] && cmp a.$ot b.$ot || + test $(sox -mv-1 -r$or -c$c a.$ot -r$or -c$c b.$ot -n stats 2>&1 |grep Pk\ l|tr ' ' '\n'|grep '[0-9]'|uniq) = -84.29 + rm [ab].$ot + n=`expr $n + 1` +} + +test z$1 != z && j=$1 || j=1 + +for c in `seq 1 $j`; do + for n in `seq 0 3`; do + sox -R -r $ir -n $c.${types[$n]} synth $len sin $f gain -.1 + done + + n=0 + do_one 1 2 5 + do_one 2 0 5 + for m in `seq 0 3`; do do_one $m $m 5; done + do_one 3 2 3 + do_one 0 3 3 + do_one 0 11 3 + + f="$f sin $g" + g=0+32768 +done + +rm ?.[sf][0-9][0-9] + + + +# Check conversion between differing I/O types, but no rate-change: + +for i in 1 2 3; do + prev="" + sox -n -c $i 0.f32 synth $len gain -.1 + $tool 1 1 $i 0 2 < 0.f32 | $tool 1 1 $i 2 0 > 1.f32 + cmp [01].f32 +done +rm *.f32 diff --git a/C/src/soxr-0.1.3/tests/large-ratio-test b/C/src/soxr-0.1.3/tests/large-ratio-test new file mode 100755 index 00000000..540c5df3 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/large-ratio-test @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Tests interpolating then decimating by the same, large ratio. + +tool=../examples/3-options-input-fn +w=$(echo -e "`sox --ver |sed 's/.*SoX v//'` d\n14.4.1 k"|sort -Vr|head -1|sed 's/.* //') +q=4 +test x$1 = x && ratio=1e5 || ratio=$1 +test x$2 = x && rate=8000 || rate=$2 + +sox -r$rate -n 1.s32 synth 10 sin 0:`expr $rate / 2` vol .9375 +sync + +time { $tool 1 $ratio 1 2 1 $q a < 1.s32 | $tool $ratio 1 1 1 2 $q a > 2.s32;} + +sox -mv-1 -r$rate -c1 1.s32 -r$rate -c1 2.s32 -n spectrogram -hw$w -z150 -o lr-$w.png -c "large-ratio-test q:$q ratio:$ratio" + +rm [12].s32 diff --git a/C/src/soxr-0.1.3/tests/phase-test b/C/src/soxr-0.1.3/tests/phase-test new file mode 100755 index 00000000..3c342689 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/phase-test @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-15 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Tests varying phase-response. + +tool=./3-options-input-fn +w=$(echo -e "`sox --ver |sed 's/.*SoX v//'` d\n14.4.1 k"|sort -Vr|head -1|sed 's/.* //') +spec="spectrogram -z160 -Z-20 -X 2000 -w$w -ho" +ext=f32; e=0 +rate1=48000 +rate2=44100 + +for n in 1 2; do + sox -r $rate1 -n 0.$ext synth 1s sq pad .03 .03 gain -1 + + # Test the following combinations: + names=(linear-phase intermediate-phase maximum-phase minimum-phase) + filters=(standard-filter steep-filter) + + for q in `seq 0 7`; do + f=ph-$rate2-q$q-$w + name=${names[`expr $q % 4 || true`]} + filter=${filters[`expr $q / 4 || true`]} + $tool $rate1 $rate2 1 $e $e $q'6' < 0.$ext | sox -c1 -r$rate2 -t $ext - -n $spec $f.png -c "ph-test $filter $name" + done + + # Test specific phase-response percentages: + for q in `seq 0 20 100`; do + f=ph-$rate2-p`printf %03u $q`-$w + $tool $rate1 $rate2 1 $e $e 46 0 0 0 $q < 0.$ext | sox -c1 -r$rate2 -t $ext - -n $spec $f.png -c "ph-test phase:${q}%" + done + + r=$rate1; rate1=$rate2; rate2=$r +done + +rm 0.$ext diff --git a/C/src/soxr-0.1.3/tests/q-test b/C/src/soxr-0.1.3/tests/q-test new file mode 100755 index 00000000..f274cb59 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/q-test @@ -0,0 +1,73 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-15 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +# Tests conversion qualities 0..7 & variable-rate. + + + +tool=./3-options-input-fn +w=$(echo -e "`sox --ver |sed 's/.*SoX v//'` d\n14.4.1 k"|sort -Vr|head -1|sed 's/.* //') +ext=f64; e=1 +c=1 +q1=0; q2=7 +rates=48000 +zs=(50 87 87 87 111 135 159 180 95) + +zz() { + echo "spectrogram -z${zs[$1]} -Z-30 -w$w -ho" +} + +for rate0 in $rates; do + +rate1=$rate0 +rate2=44100 + +for n in 1 2; do + +rate1n=`expr $rate1 / 2` + + + +# Convert sweep, for spectrogram: + +sox -r $rate1 -n -c $c 0.$ext synth 8 sin 0:$rate1n gain -1 + +for q in `seq $q1 $q2`; do + f=qa-$rate1-$rate2-$q + $tool $rate1 $rate2 $c $e $e $q 0 < 0.$ext | sox -c$c -r$rate2 -t $ext - -n $(zz $q) $f-$w.png -c $f +done +q=8 +f=qa-$rate1-$rate2-v +$tool $rate1 $rate2 $c $e $e 4 20 < 0.$ext | sox -c$c -r$rate2 -t $ext - -n $(zz $q) $f-$w.png -c $f + + + +# Convert impulse, for spectrogram: + +#: << : +sox -r $rate1 -n 0.$ext synth 1s sq pad .03 .03 gain -1 + +for q in `seq $q1 $q2`; do + f=qb-$rate1-$rate2-$q + $tool $rate1 $rate2 1 $e $e $q 0 < 0.$ext | sox -c1 -r$rate2 -t $ext - $f.wav +done +q=8 +f=qb-$rate1-$rate2-v +$tool $rate1 $rate2 1 $e $e 4 20 < 0.$ext | sox -c1 -r$rate2 -t $ext - $f.wav + +# Combine impuse responses into multi-channel file (for inspection in Audacity): +sox -M qb-$rate1-$rate2-?.wav q$rate1-$rate2.wav + +rm qb-$rate1-$rate2-?.wav +: + +rate1=44100 +rate2=$rate0 + +done +done + +rm 0.$ext diff --git a/C/src/soxr-0.1.3/tests/scripts b/C/src/soxr-0.1.3/tests/scripts new file mode 100755 index 00000000..8b6023f1 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/scripts @@ -0,0 +1,14 @@ +#!/usr/bin/env bash +set -e + +# SoX Resampler Library Copyright (c) 2007-15 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +../../tests/bandwidth-test +../../tests/eg-test +../../tests/io-test 3 +../../tests/large-ratio-test +../../tests/phase-test +../../tests/q-test +../../tests/time-test 1 +../../tests/time-test 2 diff --git a/C/src/soxr-0.1.3/tests/throughput-test b/C/src/soxr-0.1.3/tests/throughput-test new file mode 100755 index 00000000..aef36f6c --- /dev/null +++ b/C/src/soxr-0.1.3/tests/throughput-test @@ -0,0 +1,11 @@ +#!/bin/sh +set -e + +# SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +# Licence for this file: LGPL v2.1 See LICENCE for details. + +test -r throughput.exe && wine=wine + +test /$1 = / && list="`seq 0 3`" || list="$*" + +for n in $list; do $wine ./throughput 44.1 48 1 0 $n 4; done diff --git a/C/src/soxr-0.1.3/tests/throughput-test.bat b/C/src/soxr-0.1.3/tests/throughput-test.bat new file mode 100644 index 00000000..46b8f7d1 --- /dev/null +++ b/C/src/soxr-0.1.3/tests/throughput-test.bat @@ -0,0 +1,5 @@ +@echo off +rem SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net +rem Licence for this file: LGPL v2.1 See LICENCE for details. + +for /L %%i in (0,1,3) DO throughput 44.1 48 1 0 %%i diff --git a/C/src/soxr-0.1.3/tests/throughput.c b/C/src/soxr-0.1.3/tests/throughput.c new file mode 100644 index 00000000..c52b885d --- /dev/null +++ b/C/src/soxr-0.1.3/tests/throughput.c @@ -0,0 +1,141 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +#include +#include "rint.h" +#include "../examples/examples-common.h" + +#define k 1000 + +#if defined _WIN32 + #define WIN32_LEAN_AND_MEAN + #include + #define timerStart(msecs) LARGE_INTEGER start, stop, tmp; \ + QueryPerformanceCounter(&start), QueryPerformanceFrequency(&tmp), \ + stop.QuadPart = (msecs * tmp.QuadPart + k/2) / k + #define timerRunning() (QueryPerformanceCounter(&tmp), \ + (tmp.QuadPart-start.QuadPart < stop.QuadPart)) +#else + #include + #if defined timeradd + #define K k + #define tv_frac tv_usec + #define timespec timeval + #define get_time(x) gettimeofday(x, NULL) + #else + #include + #include + #if defined _POSIX_TIMERS && _POSIX_TIMERS > 0 + #define K (k*k) + #define tv_frac tv_nsec + #if defined _POSIX_MONOTONIC_CLOCK + #define get_time(x) clock_gettime(CLOCK_MONOTONIC, x) + #else + #define get_time(x) clock_gettime(CLOCK_REALTIME, x) + #endif + #else + #include + #define K 1 + #define tv_frac millitm + #define tv_sec time + #define timespec timeb + #define get_time(x) ftime(x) + #endif + #endif + + #define timerStart(msecs) struct timespec stop, tmp; get_time(&stop), \ + stop.tv_frac += (msecs%k)*K, \ + stop.tv_sec += msecs/k + stop.tv_frac/(K*k), \ + stop.tv_frac %= K*k + #define timerRunning() (get_time(&tmp), \ + (tmp.tv_sec < stop.tv_sec || tmp.tv_frac < stop.tv_frac)) +#endif + +int main(int n, char const * arg[]) +{ + char const * const arg0 = n? --n, *arg++ : "", * engine = ""; + double const irate = n? --n, atof(*arg++) : 96000.; + double const orate = n? --n, atof(*arg++) : 44100.; + unsigned const chans = n? --n, (unsigned)atoi(*arg++) : 1; + soxr_datatype_t const itype = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned const ospec = n? --n, (soxr_datatype_t)atoi(*arg++) : 0; + unsigned long const q_recipe= n? --n, strtoul(*arg++, 0, 16) : SOXR_HQ; + unsigned long const q_flags = n? --n, strtoul(*arg++, 0, 16) : 0; + double const passband_end = n? --n, atof(*arg++) : 0; + double const stopband_begin = n? --n, atof(*arg++) : 0; + double const phase_response = n? --n, atof(*arg++) : -1; + int const use_threads = n? --n, atoi(*arg++) : 1; + soxr_datatype_t const otype = ospec & 3; + + soxr_quality_spec_t q_spec = soxr_quality_spec(q_recipe, q_flags); + soxr_io_spec_t io_spec = soxr_io_spec(itype, otype); + soxr_runtime_spec_t const runtime_spec = soxr_runtime_spec(!use_threads); + + /* Allocate resampling input and output buffers in proportion to the input + * and output rates: */ + #define buf_total_len 15000 /* In samples per channel. */ + size_t const osize = soxr_datatype_size(otype) * chans; + size_t const isize = soxr_datatype_size(itype) * chans; + size_t const olen0= (size_t)(orate * buf_total_len / (irate + orate) + .5); + size_t const olen = min(max(olen0, 1), buf_total_len - 1); + size_t const ilen = buf_total_len - olen; + void * const obuf = malloc(osize * olen); + void * const ibuf = malloc(isize * ilen); + + size_t odone = 0, clips = 0, omax = 0, i; + soxr_error_t error; + soxr_t soxr; + int32_t seed = 0; + char const * e = getenv("SOXR_THROUGHPUT_GAIN"); + double gain = e? atof(e) : .5; + + /* Overrides (if given): */ + if (passband_end > 0) q_spec.passband_end = passband_end / 100; + if (stopband_begin > 0) q_spec.stopband_begin = stopband_begin / 100; + if (phase_response >=0) q_spec.phase_response = phase_response; + io_spec.flags = ospec & ~7u; + + /* Create a stream resampler: */ + soxr = soxr_create( + irate, orate, chans, /* Input rate, output rate, # of channels. */ + &error, /* To report any error during creation. */ + &io_spec, &q_spec, &runtime_spec); + +#define ranqd1(x) ((x) = 1664525 * (x) + 1013904223) /* int32_t x */ +#define dranqd1(x) (ranqd1(x) * (1. / (65536. * 32768.))) /* [-1,1) */ +#define RAND (dranqd1(seed) * gain) +#define DURATION_MSECS 125 +#define NUM_ATTEMPTS 8 + + if (!error) { /* If all is well, run the resampler: */ + engine = soxr_engine(soxr); + switch (itype & 3) { + case 0: for (i=0;i /dev/null 2> $ERR + echo $rate1 '-->' $rate2 c=$c q=$q t=`cat $TIME` `cat $ERR | sed 's/.*(/(/'` + done + rate1=$rate0 + rate2=44100 + done +done + +rm 0.$ext diff --git a/C/src/soxr-0.1.3/tests/vector-cmp.c b/C/src/soxr-0.1.3/tests/vector-cmp.c new file mode 100644 index 00000000..f90cc7fa --- /dev/null +++ b/C/src/soxr-0.1.3/tests/vector-cmp.c @@ -0,0 +1,56 @@ +/* SoX Resampler Library Copyright (c) 2007-16 robs@users.sourceforge.net + * Licence for this file: LGPL v2.1 See LICENCE for details. */ + +/* Utility used to help test the library; not for general consumption. + * + * Measure the peak bit difference between two files. */ + +#include +#include +#include "../src/rint.h" +#include "../examples/examples-common.h" + +#define TYPE 0 /* As vector-gen */ + +#if TYPE + #define sample_t double + #define N 50 + #define DIFF(s1,s2) abs(rint32((s1-s2)*ldexp(1,N-1))) +#else + #define sample_t int32_t + #define N 32 + #define DIFF(s1,s2) abs((int)(s1-s2)) +#endif + +int main(int argc, char const * arg[]) +{ + int two = !!arg[2][0]; + FILE * f1 = fopen(arg[1], "rb"), * f2 = two? fopen(arg[2], "rb") : 0; + double rate = atof (arg[3]), /* Sample-rate */ + skip_len = atof (arg[4]), /* Skip length in seconds */ + len = atof (arg[5]), /* Compare length in seconds */ r; + int i = 0, count = rint32(rate * len), max = 0, diff; + sample_t s1, s2; + + fseek(f1, rint32(rate * skip_len) * (int)sizeof(s1), SEEK_CUR); + if (two) { + fseek(f2, rint32(rate * skip_len) * (int)sizeof(s2), SEEK_CUR); + for (; i < count && + fread(&s1, sizeof(s1), 1, f1) && + fread(&s2, sizeof(s2), 1, f2); ++i) { + diff = DIFF(s1, s2); + max = max(max, diff); + } + } + else for (; i < count && fread(&s1, sizeof(s1), 1, f1); ++i) { + diff = DIFF(s1, 0); + max = max(max, diff); + } + + if (i != count) { + fprintf(stderr, "incorrect file length\n"); + return 1; + } + printf("%f\n", r = N-log(max)/log(2)); + return argc>6? r 1 + #include +#endif + +#include "math-wrap.h" +#include +#include + +#if TYPE + #if TYPE > 1 + #define modf modfq + #define cos cosq + #define sin sinq + #define PI M_PIq + #define real __float128 + #define atof(x) strtoflt128(x, 0) + #else + #define modf modfl + #define cos cosl + #define sin sinl + #define PI M_PIl + #define real long double + #endif + #define MULT 1 + #define OUT(d) double output = d +#else + #define PI M_PI + #define real double + #include "rint.h" + #define MULT (32768. * 65536 - 1/scale) + #define OUT(d) int32_t output = rint32(d) +#endif + +int main(int argc, char const * argv[]) +{ + real rate = atof(argv[1]), /* Rate for this vector */ + lead_in_len = atof(argv[2]), /* Lead-in length in seconds */ + len = atof(argv[3]), /* Sweep length (excl. lead_in_len) */ + f1 = atof(argv[4]), + f2 = atof(argv[5]), + scale = atof(argv[6]), /* For headroom */ + n1 = rate * -lead_in_len, + m = (f2 - f1) / (rate * len * 2), dummy; + FILE * file = fopen(argv[7], "wb"); + int i = (int)n1, err = !file || i != n1; + for (; !err && i < (int)(rate*(len+lead_in_len)+.5); ++i) { + real d = sin(2 * PI * modf((f1 + i * m) * i / rate, &dummy)); + OUT((double)(scale * MULT * d)); + err = fwrite(&output, sizeof(output), 1, file) != 1; + } + return err |!argc; +} diff --git a/Makefile b/Makefile index cdeef633..cde29237 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,18 @@ APP_NAME=pmomusic +PREFIX := $(CURDIR)/C +SRC_DIR := $(PREFIX)/src/soxr-0.1.3 +INCLUDE_DIR := $(PREFIX)/include +LIB_DIR := $(PREFIX)/lib +BIN_DIR := $(PREFIX)/bin +CFLAGS = -O2 -fPIC +LDFLAGS := +LIBSOXR := $(LIB_DIR)/libsoxr.a + +.PHONY: all clean build web run test + # Build Go app -build: web +build: web $(LIBSOXR) go build -o bin/$(APP_NAME) ./cmd/$(APP_NAME) # Build web frontend @@ -14,10 +25,27 @@ web: run: go run ./cmd/$(APP_NAME) -# Clean Go binary and web build +# Clean Go binary, web build, libsoxr build clean: - rm -rf bin/ + rm -rf bin/$(APP_NAME) rm -rf web/dist + @echo "==> Cleaning libsoxr build..." + # supprime les fichiers compilés libsoxr + rm -rf $(INCLUDE_DIR)/* $(LIB_DIR)/* + @echo "==> Clean done" + +# Compilation statique de libsoxr +$(LIBSOXR): + @echo "==> Building libsoxr statically..." + mkdir -p $(INCLUDE_DIR) $(LIB_DIR) $(BIN_DIR) + cd $(SRC_DIR) && ./go + # Installer dans PREFIX (headers et lib) + cd $(SRC_DIR)/Release && make install PREFIX=$(PREFIX) + @echo "==> libsoxr built: $(LIBSOXR)" # Build everything all: build + +# Run Go tests (requires libsoxr built) +test: $(LIBSOXR) + CGO_ENABLED=1 go test ./... diff --git a/all.txt b/all.txt index 352b2c4c..3b232c40 100644 --- a/all.txt +++ b/all.txt @@ -1,415 +1,1327 @@ -------- cache.go ------ -package pmocover +Et bien maintenant sans modifier aucune ligne du code que je te fournis ci dessous, développe la collection la plus complète possible de tests unitaire pour ces deux packages +IGNORE TOUTES LES INFÉRENCES. NE TRAVAILLE QUE SUR LE CODE FOURNI. L’OBJECTIF EST QUE LES TEST COMPILENT ET PASSENT. + +============== Debut des sources des packages =============== +------- pmosoxr/concurency_test.go ------ +//go:build cgo +// +build cgo + +package pmosoxr import ( - "bytes" - "crypto/sha1" - "encoding/hex" - "errors" - "image" - "io" - "net/http" - "os" - "path/filepath" + "math" "sync" + "testing" + "time" ) -// CacheEntry représente une image stockée (original + dérivés) -type CacheEntry struct { - PK string `json:"pk"` - SourceURL string `json:"source_url"` - Hits int `json:"hits"` - LastUsed string `json:"last_used"` // ISO8601 -} - -// Cache persistant avec SQLite -type Cache struct { - dir string - limit int - db *DB - - mu sync.Mutex -} - -// NewCache ouvre ou crée un cache persistant avec SQLite -func NewCache(dir string, limit int) (*Cache, error) { - if err := os.MkdirAll(dir, 0o755); err != nil { - return nil, err +// genStereoSine génère nFrames frames interlacées float32 (L,R identiques) à amplitude 0.2. +func genStereoSine(nFrames int, freq float64, sr float64) []float32 { + out := make([]float32, nFrames*2) + for i := 0; i < nFrames; i++ { + v := float32(0.2 * math.Sin(2*math.Pi*freq*float64(i)/sr)) + out[2*i] = v + out[2*i+1] = v } + return out +} - db, err := InitDB(dir) +func TestResamplerConcurrentProcess(t *testing.T) { + inRate := 44100.0 + outRate := 48000.0 + channels := 2 + quality := MQ + + r, err := New(inRate, outRate, channels, quality) if err != nil { - return nil, err + t.Fatalf("failed to create resampler: %v", err) + } + defer r.Delete() + + workers := 8 + iterations := 200 + framesPerIter := 256 + var wg sync.WaitGroup + errCh := make(chan error, workers) + totalProduced := int64(0) + var prodMu sync.Mutex + + for w := 0; w < workers; w++ { + wg.Add(1) + go func(id int) { + defer wg.Done() + for i := 0; i < iterations; i++ { + in := genStereoSine(framesPerIter, 440.0+float64(id), inRate) + ratio := outRate / inRate + outFrames := int(float64(framesPerIter)*ratio) + 64 + out := make([]float32, outFrames*2) + consumed, produced, perr := r.Process(in, out) + if perr != nil { + errCh <- perr + return + } + if consumed < 0 || produced < 0 { + errCh <- &testError{"negative sample count"} + return + } + if produced > len(out) { + errCh <- &testError{"produced > out buffer"} + return + } + prodMu.Lock() + totalProduced += int64(produced) + prodMu.Unlock() + time.Sleep(1 * time.Millisecond) + } + }(w) } - return &Cache{ - dir: dir, - limit: limit, - db: db, - }, nil + wg.Wait() + close(errCh) + + for e := range errCh { + t.Fatalf("resampler error: %v", e) + } + + if totalProduced == 0 { + t.Fatal("no samples produced") + } } -// AddFromURL télécharge une image et la met en cache -func (c *Cache) AddFromURL(url string) (string, error) { - resp, err := http.Get(url) - if err != nil { - return "", err - } - defer resp.Body.Close() - if resp.StatusCode != http.StatusOK { - return "", errors.New("bad status") - } - data, err := io.ReadAll(resp.Body) - if err != nil { - return "", err - } - return c.Add(url, data) +type testError struct { + s string } -// Add ajoute une image déjà téléchargée -func (c *Cache) Add(url string, data []byte) (string, error) { - pk := pkFromURL(url) - origPath := filepath.Join(c.dir, pk+".orig.webp") +func (e *testError) Error() string { return e.s } +----------------- +------- pmosoxr/quality.go ------ +package pmosoxr - c.mu.Lock() - defer c.mu.Unlock() +/* +#cgo CFLAGS: -I${SRCDIR}/../C/include - if _, err := os.Stat(origPath); errors.Is(err, os.ErrNotExist) { - img, _, err := image.Decode(bytes.NewReader(data)) - if err != nil { - return "", err - } - buf, err := encodeWebP(img) - if err != nil { - return "", err - } - if err := os.WriteFile(origPath, buf, 0o644); err != nil { - return "", err - } - } +#include +#include - _ = c.db.Add(pk, url) // ajoute ou met à jour la base - return pk, nil +static soxr_quality_spec_t q_spec(int q) { + switch(q) { + case 0: return soxr_quality_spec(SOXR_QQ, 0); + case 1: return soxr_quality_spec(SOXR_LQ, 0); + case 2: return soxr_quality_spec(SOXR_MQ, 0); + case 3: return soxr_quality_spec(SOXR_HQ, 0); + case 4: return soxr_quality_spec(SOXR_VHQ, 0); + default: return soxr_quality_spec(SOXR_MQ, 0); + } } +*/ +import "C" -// Get renvoie le chemin du fichier original et met à jour hits/last_used -func (c *Cache) Get(pk string) (string, error) { - c.mu.Lock() - defer c.mu.Unlock() +type Quality int - _, err := c.db.Get(pk) - if err != nil { - return "", err - } +const ( + QQ Quality = iota + LQ + MQ + HQ + VHQ +) - _ = c.db.UpdateHit(pk) - - origPath := filepath.Join(c.dir, pk+".orig.webp") - if _, err := os.Stat(origPath); err != nil { - return "", err - } - return origPath, nil -} - -// Purge vide complètement le cache -func (c *Cache) Purge() error { - c.mu.Lock() - defer c.mu.Unlock() - - files, _ := filepath.Glob(filepath.Join(c.dir, "*")) - for _, f := range files { - os.Remove(f) - } - return c.db.Purge() -} - -// pkFromURL → hash stable basé sur l’URL -func pkFromURL(url string) string { - h := sha1.Sum([]byte(url)) - return hex.EncodeToString(h[:8]) +func (q Quality) toC() C.soxr_quality_spec_t { + return C.q_spec(C.int(q)) } ----------------- -------- db.go ------ -package pmocover +------- pmosoxr/soxr.go ------ +//go:build cgo +// +build cgo + +package pmosoxr + +/* +#cgo CFLAGS: -I${SRCDIR}/../C/include +#cgo LDFLAGS: ${SRCDIR}/../C/lib/libsoxr.a -lomp + +#include +#include +*/ +import "C" import ( - "database/sql" - "path/filepath" + "errors" + "sync" + "unsafe" +) + +type Resampler struct { + handle C.soxr_t + channels int + mu sync.Mutex + deleted bool +} + +func New(inRate, outRate float64, channels int, q Quality) (*Resampler, error) { + if channels != 2 { + return nil, errors.New("only stereo supported") + } + + var err C.soxr_error_t + qspec := q.toC() + + handle := C.soxr_create( + C.double(inRate), + C.double(outRate), + C.uint(channels), + &err, + nil, + &qspec, + nil, + ) + if handle == nil { + if err != nil { + return nil, errors.New(C.GoString(err)) + } + return nil, errors.New("soxr_create failed without error message") + } + return &Resampler{handle: handle, channels: channels}, nil +} + +func (r *Resampler) Process(in []float32, out []float32) (consumedSamples int, producedSamples int, err error) { + r.mu.Lock() + defer r.mu.Unlock() + + if r.deleted { + return 0, 0, errors.New("resampler deleted") + } + if r.handle == nil { + return 0, 0, errors.New("resampler not initialized") + } + if len(in)%r.channels != 0 || len(out)%r.channels != 0 { + return 0, 0, errors.New("buffer size not divisible by channel count") + } + + var idone, odone C.size_t + var inPtr C.soxr_in_t + var outPtr C.soxr_out_t + + if len(in) > 0 { + inPtr = C.soxr_in_t(unsafe.Pointer(&in[0])) + } + if len(out) > 0 { + outPtr = C.soxr_out_t(unsafe.Pointer(&out[0])) + } + + st := C.soxr_process( + r.handle, + inPtr, C.size_t(len(in)/r.channels), + &idone, + outPtr, C.size_t(len(out)/r.channels), + &odone, + ) + if st != nil { + return 0, 0, errors.New(C.GoString(st)) + } + return int(idone) * r.channels, int(odone) * r.channels, nil +} + +func (r *Resampler) Flush(out []float32) (int, error) { + r.mu.Lock() + defer r.mu.Unlock() + + if r.deleted { + return 0, errors.New("resampler deleted") + } + if r.handle == nil { + return 0, errors.New("resampler not initialized") + } + + var odone C.size_t + if len(out) == 0 { + return 0, nil + } + st := C.soxr_process(r.handle, nil, 0, nil, + C.soxr_out_t(unsafe.Pointer(&out[0])), C.size_t(len(out)/r.channels), &odone) + if st != nil { + return 0, errors.New(C.GoString(st)) + } + return int(odone) * r.channels, nil +} + +func (r *Resampler) Delete() { + r.mu.Lock() + defer r.mu.Unlock() + + if !r.deleted && r.handle != nil { + C.soxr_delete(r.handle) + r.handle = nil + r.deleted = true + } +} +----------------- +------- pmostream/audio.go ------ +package pmostream + +import ( + "fmt" + "os" + "strings" + + "github.com/gopxl/beep" + "github.com/gopxl/beep/flac" + "github.com/gopxl/beep/mp3" + "github.com/gopxl/beep/vorbis" + "github.com/gopxl/beep/wav" +) + +type streamerWithCloser struct { + beep.Streamer + closer func() error +} + +func (s *streamerWithCloser) Close() error { + if s.closer != nil { + return s.closer() + } + return nil +} + +func LoadAudio(uri string) (beep.Streamer, beep.Format, error) { + f, err := os.Open(uri) + if err != nil { + return nil, beep.Format{}, err + } + + var streamer beep.Streamer + var format beep.Format + + lowerURI := strings.ToLower(uri) + switch { + case strings.HasSuffix(lowerURI, ".flac"): + streamer, format, err = flac.Decode(f) + case strings.HasSuffix(lowerURI, ".wav"): + streamer, format, err = wav.Decode(f) + case strings.HasSuffix(lowerURI, ".mp3"): + streamer, format, err = mp3.Decode(f) + case strings.HasSuffix(lowerURI, ".ogg"): + streamer, format, err = vorbis.Decode(f) + default: + f.Close() + return nil, beep.Format{}, fmt.Errorf("unsupported format: %s", uri) + } + + if err != nil { + f.Close() + return nil, beep.Format{}, err + } + + return &streamerWithCloser{ + Streamer: streamer, + closer: f.Close, + }, format, nil +} +----------------- +------- pmostream/buffer.go ------ +package pmostream + +import ( + "sync" + "time" +) + +// AudioBuffer est un buffer circulaire thread-safe pour l'audio +type AudioBuffer struct { + mu sync.Mutex + cond *sync.Cond + chunks [][]byte + size int + format SampleFormat + readPos int + writePos int + closed bool +} + +// NewAudioBuffer crée un nouveau buffer circulaire +func NewAudioBuffer(size int, format SampleFormat) *AudioBuffer { + ab := &AudioBuffer{ + chunks: make([][]byte, size), + size: size, + format: format, + } + ab.cond = sync.NewCond(&ab.mu) + return ab +} + +// Available retourne le nombre de chunks disponibles pour lecture +func (ab *AudioBuffer) Available() int { + ab.mu.Lock() + defer ab.mu.Unlock() + return ab.availableLocked() +} + +// Write ajoute un chunk dans le buffer (écrase le plus ancien si plein) +func (ab *AudioBuffer) Write(chunk []byte) { + ab.mu.Lock() + defer ab.mu.Unlock() + if ab.closed { + return + } + + ab.chunks[ab.writePos] = chunk + ab.writePos = (ab.writePos + 1) % ab.size + if ab.writePos == ab.readPos { + // Écrase le plus ancien + ab.readPos = (ab.readPos + 1) % ab.size + } + + ab.cond.Broadcast() +} + +// Read lit un chunk du buffer, ou nil si vide ou fermé +func (ab *AudioBuffer) Read() []byte { + ab.mu.Lock() + defer ab.mu.Unlock() + + if ab.availableLocked() == 0 { + return nil + } + + chunk := ab.chunks[ab.readPos] + ab.chunks[ab.readPos] = nil + ab.readPos = (ab.readPos + 1) % ab.size + return chunk +} + +// WaitForData attend qu'au moins n chunks soient disponibles ou timeout/closed +func (ab *AudioBuffer) WaitForData(n int, timeout time.Duration) bool { + ab.mu.Lock() + defer ab.mu.Unlock() + + if n <= 0 { + n = 1 + } + + deadline := time.Now().Add(timeout) + + for ab.availableLocked() < n && !ab.closed { + if timeout <= 0 { + ab.cond.Wait() + } else { + remaining := time.Until(deadline) + if remaining <= 0 { + return false + } + + // Wait avec timeout en utilisant Wait + Broadcast classique + timer := time.NewTimer(remaining) + done := make(chan struct{}) + + go func() { + ab.cond.Wait() + close(done) + }() + + ab.mu.Unlock() + select { + case <-done: + // réveillé par Broadcast + if !timer.Stop() { + <-timer.C + } + case <-timer.C: + ab.mu.Lock() + return false + } + ab.mu.Lock() + } + } + + return ab.availableLocked() >= n && !ab.closed +} + +// Close ferme le buffer et réveille tous les Waiters +func (ab *AudioBuffer) Close() { + ab.mu.Lock() + defer ab.mu.Unlock() + if !ab.closed { + ab.closed = true + ab.cond.Broadcast() + } +} + +// availableLocked retourne le nombre de chunks disponibles, doit être appelé avec ab.mu locké +func (ab *AudioBuffer) availableLocked() int { + if ab.writePos >= ab.readPos { + return ab.writePos - ab.readPos + } + return ab.size - ab.readPos + ab.writePos +} +----------------- +------- pmostream/conversion.go ------ +package pmostream + +import ( + "encoding/binary" + "math" +) + +func convertFloat64ToFloat32(samples [][2]float64) []float32 { + if len(samples) == 0 { + return nil + } + result := make([]float32, len(samples)*2) + for i, s := range samples { + result[2*i] = float32(clamp(s[0], -1.0, 1.0)) + result[2*i+1] = float32(clamp(s[1], -1.0, 1.0)) + } + return result +} + +func convertFloat64ToPCM(samples [][2]float64) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*4) + for i, s := range samples { + l := int16(clamp(s[0], -1.0, 1.0) * 32767.0) + r := int16(clamp(s[1], -1.0, 1.0) * 32767.0) + binary.LittleEndian.PutUint16(buf[4*i:], uint16(uint16(l))) + binary.LittleEndian.PutUint16(buf[4*i+2:], uint16(uint16(r))) + } + return buf +} + +func float32ToPCM(samples []float32) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*2) + for i, v := range samples { + val := int16(clamp(float64(v), -1.0, 1.0) * 32767.0) + binary.LittleEndian.PutUint16(buf[2*i:], uint16(val)) + } + return buf +} + +func float32ToBytes(samples []float32) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*4) + for i, v := range samples { + binary.LittleEndian.PutUint32(buf[i*4:], math.Float32bits(v)) + } + return buf +} + +func bytesToFloat32(data []byte) []float32 { + if len(data)%4 != 0 { + return nil + } + result := make([]float32, len(data)/4) + for i := range result { + result[i] = math.Float32frombits(binary.LittleEndian.Uint32(data[i*4:])) + } + return result +} + +func pcmToFloat32(data []byte) []float32 { + if len(data)%2 != 0 { + return nil + } + result := make([]float32, len(data)/2) + for i := 0; i < len(result); i++ { + val := int16(binary.LittleEndian.Uint16(data[2*i:])) + result[i] = float32(val) / 32768.0 + } + return result +} + +func clamp(val, min, max float64) float64 { + if val < min { + return min + } + if val > max { + return max + } + return val +} +----------------- +------- pmostream/core.go ------ +package pmostream + +import ( + "fmt" + "math" + "sync" + "sync/atomic" "time" - _ "modernc.org/sqlite" + "gargoton.petite-maison-orange.fr/eric/pmomusic/pmosoxr" + "github.com/gopxl/beep" + "github.com/gopxl/beep/effects" ) -// DB représente la base SQLite du cache -type DB struct { - conn *sql.DB +type SampleFormat int + +const ( + Float32 SampleFormat = iota + PCM16 +) + +type HiFiConfig struct { + TargetSampleRate beep.SampleRate + BufferSeconds int + ChunkSize int + ResampleQuality pmosoxr.Quality + Volume float64 + Format SampleFormat } -// InitDB ouvre ou crée la base SQLite dans le répertoire dir -func InitDB(dir string) (*DB, error) { - path := filepath.Join(dir, "cache.db") - conn, err := sql.Open("sqlite", path) - if err != nil { - return nil, err +func DefaultHiFiConfig() HiFiConfig { + return HiFiConfig{ + TargetSampleRate: 48000, + BufferSeconds: 5, + ChunkSize: 1024, + ResampleQuality: pmosoxr.HQ, + Volume: 0.0, + Format: PCM16, + } +} + +type AudioProcessor struct { + config HiFiConfig + streamer beep.Streamer + format beep.Format + resampler *pmosoxr.Resampler + volume *effects.Volume + volumeValue float64 + buffer *AudioBuffer + masterBuffer *MasterBuffer + processMutex sync.Mutex + running atomic.Bool + wg sync.WaitGroup + resampleBuf []float32 + volumeMu sync.Mutex + streamDone atomic.Bool +} + +func NewAudioProcessor(streamer beep.Streamer, format beep.Format, config HiFiConfig, master *MasterBuffer) (*AudioProcessor, error) { + if streamer == nil && master == nil { + return nil, fmt.Errorf("streamer cannot be nil if no master buffer is provided") } - db := &DB{conn: conn} - if err := db.initTables(); err != nil { - conn.Close() - return nil, err + if format.NumChannels != 2 { + return nil, fmt.Errorf("only stereo format is supported") } - return db, nil -} -// initTables crée la table covers si elle n’existe pas -func (db *DB) initTables() error { - _, err := db.conn.Exec(` - CREATE TABLE IF NOT EXISTS covers ( - pk TEXT PRIMARY KEY, - source_url TEXT, - hits INTEGER DEFAULT 0, - last_used TEXT - ); - `) - return err -} - -// Add ajoute ou met à jour une entrée cover -func (db *DB) Add(pk, url string) error { - _, err := db.conn.Exec(` - INSERT INTO covers(pk, source_url, hits, last_used) - VALUES(?, ?, 0, ?) - ON CONFLICT(pk) DO UPDATE SET - source_url=excluded.source_url, - last_used=excluded.last_used; - `, pk, url, time.Now().UTC().Format(time.RFC3339)) - return err -} - -// Get récupère une entrée -func (db *DB) Get(pk string) (*CacheEntry, error) { - row := db.conn.QueryRow(` - SELECT pk, source_url, hits, last_used - FROM covers - WHERE pk = ? - `, pk) - entry := &CacheEntry{} - var lastUsed sql.NullString - err := row.Scan(&entry.PK, &entry.SourceURL, &entry.Hits, &lastUsed) - if err != nil { - return nil, err + var vol *effects.Volume + if streamer != nil { + vol = &effects.Volume{ + Streamer: streamer, + Base: 2, + Volume: config.Volume, + Silent: false, + } } - if lastUsed.Valid { - entry.LastUsed = lastUsed.String + + var resampler *pmosoxr.Resampler + var err error + if streamer != nil && format.SampleRate != config.TargetSampleRate { + resampler, err = pmosoxr.New(float64(format.SampleRate), float64(config.TargetSampleRate), 2, config.ResampleQuality) + if err != nil { + return nil, fmt.Errorf("failed to create resampler: %w", err) + } } - return entry, nil -} -// UpdateHit incrémente hits et met à jour last_used -func (db *DB) UpdateHit(pk string) error { - _, err := db.conn.Exec(` - UPDATE covers - SET hits = hits + 1, - last_used = ? - WHERE pk = ? - `, time.Now().UTC().Format(time.RFC3339), pk) - return err -} - -// Purge supprime toutes les entrées de la base -func (db *DB) Purge() error { - _, err := db.conn.Exec(`DELETE FROM covers`) - return err -} - -// GetAll récupère toutes les entrées triées par hits décroissant -func (db *DB) GetAll() ([]*CacheEntry, error) { - rows, err := db.conn.Query(` - SELECT pk, source_url, hits, last_used - FROM covers - ORDER BY hits DESC - `) - if err != nil { - return nil, err + sampleSize := 4 + if config.Format == PCM16 { + sampleSize = 2 + } + bytesPerSecond := int(config.TargetSampleRate) * sampleSize * 2 // stéréo + bufferSize := (bytesPerSecond * config.BufferSeconds) / config.ChunkSize + if bufferSize < 1 { + bufferSize = 1 } - defer rows.Close() - var entries []*CacheEntry - for rows.Next() { - entry := &CacheEntry{} - var lastUsed sql.NullString - if err := rows.Scan(&entry.PK, &entry.SourceURL, &entry.Hits, &lastUsed); err != nil { + ap := &AudioProcessor{ + config: config, + streamer: streamer, + format: format, + resampler: resampler, + volume: vol, + volumeValue: config.Volume, + buffer: NewAudioBuffer(bufferSize, config.Format), + masterBuffer: master, + } + ap.running.Store(true) + return ap, nil +} + +func (p *AudioProcessor) GetBuffer() *AudioBuffer { + return p.buffer +} + +func (p *AudioProcessor) SetVolume(volume float64) { + p.volumeMu.Lock() + defer p.volumeMu.Unlock() + p.volumeValue = volume + if p.volume != nil { + p.volume.Volume = volume + } +} + +func (p *AudioProcessor) Stop() { + p.running.Store(false) +} + +func (p *AudioProcessor) Close() error { + p.Stop() + p.wg.Wait() + p.processMutex.Lock() + defer p.processMutex.Unlock() + + if p.resampler != nil { + p.resampler.Delete() + } + if closer, ok := p.streamer.(interface{ Close() error }); ok { + return closer.Close() + } + return nil +} + +// Process lit depuis le streamer ou le master buffer, applique resampling + volume et écrit dans le buffer +func (p *AudioProcessor) Process() error { + if !p.running.Load() { + return nil + } + + p.wg.Add(1) + defer p.wg.Done() + + chunkSize := p.config.ChunkSize + if chunkSize <= 0 { + chunkSize = 1024 + } + + for p.running.Load() { + var samples [][2]float64 + + // 1) Lire depuis le streamer + if p.streamer != nil { + samples = make([][2]float64, chunkSize) + n, ok := p.streamer.Stream(samples) + if !ok { + p.streamDone.Store(true) + break + } + samples = samples[:n] + if n == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + } else if p.masterBuffer != nil { + // Lecture via ForkedBuffer + chunks := p.masterBuffer.ReadAll() + if len(chunks) == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + + samples = make([][2]float64, 0) + for _, c := range chunks { + var fs []float32 + if p.config.Format == Float32 { + fs = bytesToFloat32(c) + } else { + fs = pcmToFloat32(c) + } + if len(fs)%2 != 0 { + continue + } + for i := 0; i < len(fs); i += 2 { + samples = append(samples, [2]float64{float64(fs[i]), float64(fs[i+1])}) + } + } + if len(samples) == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + } else { + time.Sleep(5 * time.Millisecond) continue } - if lastUsed.Valid { - entry.LastUsed = lastUsed.String + + // 2) Resampler si nécessaire + var processed []float32 + if p.resampler != nil { + if len(p.resampleBuf) < len(samples)*2 { + p.resampleBuf = make([]float32, len(samples)*2) + } + inBuf := convertFloat64ToFloat32(samples) + _, np, err := p.resampler.Process(inBuf, p.resampleBuf) + if err != nil { + return err + } + processed = p.resampleBuf[:np] + } else { + processed = convertFloat64ToFloat32(samples) } - entries = append(entries, entry) + + // 3) Appliquer volume + p.volumeMu.Lock() + volumeFactor := float32(math.Pow(2, p.volumeValue)) + p.volumeMu.Unlock() + for i := range processed { + processed[i] *= volumeFactor + } + + // 4) Convertir et écrire + var chunk []byte + if p.config.Format == Float32 { + chunk = float32ToBytes(processed) + } else { + chunk = float32ToPCM(processed) + } + p.buffer.Write(chunk) } - return entries, nil + + // Flush resampler à la fin uniquement + if p.resampler != nil { + flushBuf := make([]float32, 4096) + for { + _, np, err := p.resampler.Process(nil, flushBuf) + if err != nil { + return err + } + if np == 0 { + break + } + + processed := flushBuf[:np] + p.volumeMu.Lock() + volumeFactor := float32(math.Pow(2, p.volumeValue)) + p.volumeMu.Unlock() + for i := range processed { + processed[i] *= volumeFactor + } + + var chunk []byte + if p.config.Format == Float32 { + chunk = float32ToBytes(processed) + } else { + chunk = float32ToPCM(processed) + } + p.buffer.Write(chunk) + } + } + + p.buffer.Close() // fermer uniquement à la fin + return nil } ----------------- -------- handler.go ------ -package pmocover +------- pmostream/fork_eq_test.go ------ +//go:build cgo +// +build cgo + +package pmostream import ( - "encoding/json" - "net/http" - "os" - "path/filepath" - "strconv" - "strings" + "math" + "testing" + "time" + + "github.com/gopxl/beep" ) -// ServeMux branche les routes /covers -func (c *Cache) ServeMux(mux *http.ServeMux) { - // Images - mux.HandleFunc("/covers/images/", func(w http.ResponseWriter, r *http.Request) { - parts := strings.Split(strings.TrimPrefix(r.URL.Path, "/covers/images/"), "/") - if len(parts) == 0 || parts[0] == "" { - http.Error(w, "missing pk", 400) - return +// TestForkedEQ vérifie que chaque fork peut avoir son propre ParametricEQ appliqué +func TestAudioProcessorWithMasterBuffer(t *testing.T) { + stream := beep.StreamerFunc(func(samples [][2]float64) (n int, ok bool) { + for i := range samples { + v := 0.2 * math.Sin(2*math.Pi*440*float64(i)/44100.0) + samples[i][0] = v + samples[i][1] = v } - pk := parts[0] - if len(parts) == 1 { - path, err := c.Get(pk) - if err != nil { - http.NotFound(w, r) - return - } - w.Header().Set("Content-Type", "image/webp") - http.ServeFile(w, r, path) - return - } - size, err := strconv.Atoi(parts[1]) - if err != nil { - http.Error(w, "invalid size", 400) - return - } - variantPath := filepath.Join(c.dir, pk+"."+parts[1]+".webp") - if _, err := os.Stat(variantPath); os.IsNotExist(err) { - data, err := c.generateVariant(pk, size) - if err != nil { - http.Error(w, "cannot generate", 500) - return - } - w.Header().Set("Content-Type", "image/webp") - w.Write(data) - return - } - w.Header().Set("Content-Type", "image/webp") - http.ServeFile(w, r, variantPath) + return len(samples), true }) - // Stats - mux.HandleFunc("/covers/stats", func(w http.ResponseWriter, r *http.Request) { - entries, _ := c.db.GetAll() - w.Header().Set("Content-Type", "application/json") - json.NewEncoder(w).Encode(entries) - }) + format := beep.Format{SampleRate: 44100, NumChannels: 2, Precision: 2} + config := DefaultHiFiConfig() + master := NewMasterBuffer() + + proc, err := NewAudioProcessor(stream, format, config, master) + if err != nil { + t.Fatal(err) + } + + go proc.Process() + defer proc.Close() + + time.Sleep(50 * time.Millisecond) + + if proc.buffer.Available() == 0 { + t.Fatal("buffer should contain data") + } + + chunk := proc.buffer.Read() + if chunk == nil || len(chunk) == 0 { + t.Fatal("failed to read chunk from buffer") + } } ----------------- -------- pmocover.go ------ -package pmocover +------- pmostream/fork.go ------ +package pmostream -import "gargoton.petite-maison-orange.fr/eric/pmomusic/pmoconfig" +import ( + "fmt" + "sync" + "time" -// GetCoverCache récupère le cache, crée le dossier et la base si nécessaire -func GetCoverCache() (*Cache, error) { - dir := pmoconfig.GetConfig().GetCoverCacheDir() - cache, err := NewCache(dir, 2000) + "github.com/gopxl/beep" +) + +// MasterBuffer est un buffer central qui permet de fork un flux vers plusieurs processors +type MasterBuffer struct { + mu sync.RWMutex + cond *sync.Cond + chunks [][]byte + closed bool +} + +// NewMasterBuffer crée un buffer central +func NewMasterBuffer() *MasterBuffer { + mb := &MasterBuffer{} + mb.cond = sync.NewCond(&mb.mu) + return mb +} + +// Write ajoute un chunk au buffer central +func (mb *MasterBuffer) Write(chunk []byte) { + if len(chunk) == 0 { + return + } + + mb.mu.Lock() + defer mb.mu.Unlock() + + if mb.closed { + return + } + + data := make([]byte, len(chunk)) + copy(data, chunk) + + mb.chunks = append(mb.chunks, data) + mb.cond.Broadcast() +} + +// Fork crée un lecteur indépendant pour ce buffer +func (mb *MasterBuffer) Fork() *ForkedBuffer { + mb.mu.RLock() + defer mb.mu.RUnlock() + + return &ForkedBuffer{ + master: mb, + index: len(mb.chunks), + } +} + +// Close ferme le buffer et notifie tous les lecteurs +func (mb *MasterBuffer) Close() { + mb.mu.Lock() + defer mb.mu.Unlock() + mb.closed = true + mb.cond.Broadcast() +} + +// ForkedBuffer permet à un processor forké de lire indépendamment +type ForkedBuffer struct { + master *MasterBuffer + index int +} + +func (fb *ForkedBuffer) ReadAll() [][]byte { + fb.master.mu.Lock() // Lock au lieu de RLock + defer fb.master.mu.Unlock() + + if fb.index >= len(fb.master.chunks) { + return nil + } + + result := make([][]byte, len(fb.master.chunks)-fb.index) + for i := fb.index; i < len(fb.master.chunks); i++ { + result[i-fb.index] = fb.master.chunks[i] + } + fb.index = len(fb.master.chunks) + return result +} + +func (fb *ForkedBuffer) WaitForData(timeoutMs int) bool { + deadline := time.Now().Add(time.Duration(timeoutMs) * time.Millisecond) + fb.master.mu.Lock() + defer fb.master.mu.Unlock() + + for fb.index >= len(fb.master.chunks) && !fb.master.closed { + remaining := time.Until(deadline) + if remaining <= 0 { + return false + } + fb.master.cond.Wait() + } + return fb.index < len(fb.master.chunks) +} + +// ForkStreamer crée plusieurs streamers à partir d'un streamer source en utilisant un MasterBuffer +func ForkStreamer(streamer beep.Streamer, format beep.Format, config HiFiConfig, nForks int) ([]beep.Streamer, error) { + if nForks < 1 { + return nil, fmt.Errorf("nForks must be at least 1") + } + + // Créer un MasterBuffer + master := NewMasterBuffer() + + // Créer un processeur principal qui alimente le MasterBuffer + mainProc, err := NewAudioProcessor(streamer, format, config, master) if err != nil { return nil, err } - return cache, nil -} ------------------ -------- webp.go ------ -package pmocover -import ( - "bytes" - "image" - "image/draw" - "os" - "path/filepath" - "strconv" + // Démarrer le traitement principal + go mainProc.Process() - "github.com/chai2010/webp" - xdraw "golang.org/x/image/draw" -) - -// encodeWebP convertit une image.Image en WebP avec compression sans perte. -func encodeWebP(img image.Image) ([]byte, error) { - var buf bytes.Buffer - if err := webp.Encode(&buf, img, &webp.Options{Lossless: true}); err != nil { - return nil, err + // Créer des streamers forké + forks := make([]beep.Streamer, nForks) + for i := 0; i < nForks; i++ { + forkedBuffer := master.Fork() + forks[i] = &forkedStreamer{ + fb: forkedBuffer, + config: config, + } } - return buf.Bytes(), nil + + return forks, nil } -// ensureSquare génère une image carrée paddée transparente -func ensureSquare(img image.Image, size int) image.Image { - dst := image.NewRGBA(image.Rect(0, 0, size, size)) - draw.Draw(dst, dst.Bounds(), &image.Uniform{C: image.Transparent}, image.Point{}, draw.Src) +// forkedStreamer implémente beep.Streamer pour lire depuis un ForkedBuffer +type forkedStreamer struct { + fb *ForkedBuffer + config HiFiConfig +} - srcBounds := img.Bounds() - srcW, srcH := srcBounds.Dx(), srcBounds.Dy() +func (fs *forkedStreamer) Stream(samples [][2]float64) (n int, ok bool) { + if !fs.fb.WaitForData(100) { + return 0, true + } - var scale float64 - if srcW > srcH { - scale = float64(size) / float64(srcW) + chunks := fs.fb.ReadAll() + if len(chunks) == 0 { + return 0, true + } + + // Concaténer tous les chunks + var totalSize int + for _, chunk := range chunks { + totalSize += len(chunk) + } + + combined := make([]byte, 0, totalSize) + for _, chunk := range chunks { + combined = append(combined, chunk...) + } + + // Convertir en float32 selon le format + var allData []float32 + if fs.config.Format == Float32 { + allData = bytesToFloat32(combined) } else { - scale = float64(size) / float64(srcH) + allData = pcmToFloat32(combined) } - newW, newH := int(float64(srcW)*scale), int(float64(srcH)*scale) - // redimensionnement avec Catmull-Rom - tmp := image.NewRGBA(image.Rect(0, 0, newW, newH)) - xdraw.CatmullRom.Scale(tmp, tmp.Bounds(), img, srcBounds, xdraw.Over, nil) + if allData == nil { + return 0, true + } - // centrer l'image redimensionnée dans le carré - offset := image.Pt((size-newW)/2, (size-newH)/2) - draw.Draw(dst, tmp.Bounds().Add(offset), tmp, image.Point{}, draw.Over) + numSamples := len(allData) / 2 + if numSamples > len(samples) { + numSamples = len(samples) + } - return dst + for i := 0; i < numSamples; i++ { + if 2*i+1 < len(allData) { + samples[i][0] = float64(allData[2*i]) + samples[i][1] = float64(allData[2*i+1]) + } + } + + return numSamples, true } -// generateVariant génère une version carrée en WebP pour une taille donnée. -// Si le fichier existe déjà, il est renvoyé directement. -func (c *Cache) generateVariant(pk string, size int) ([]byte, error) { - variantPath := filepath.Join(c.dir, pk+"."+strconv.Itoa(size)+".webp") +func (fs *forkedStreamer) Err() error { + return nil +} - // si le variant existe déjà, le renvoyer - if data, err := os.ReadFile(variantPath); err == nil { - return data, nil +// ReadAll retourne tous les chunks disponibles dans le buffer central +func (mb *MasterBuffer) ReadAll() [][]byte { + mb.mu.RLock() + defer mb.mu.RUnlock() + + if mb.closed || len(mb.chunks) == 0 { + return nil } - // lire l'image originale - origPath := filepath.Join(c.dir, pk+".orig.webp") - data, err := os.ReadFile(origPath) - if err != nil { - return nil, err - } - img, _, err := image.Decode(bytes.NewReader(data)) - if err != nil { - return nil, err + // Créer une copie de tous les chunks + result := make([][]byte, len(mb.chunks)) + for i, chunk := range mb.chunks { + result[i] = make([]byte, len(chunk)) + copy(result[i], chunk) } - // générer une image carrée - sq := ensureSquare(img, size) - - // encoder en WebP - buf, err := encodeWebP(sq) - if err != nil { - return nil, err - } - - // sauvegarder le variant - if err := os.WriteFile(variantPath, buf, 0o644); err != nil { - return nil, err - } - - return buf, nil + return result } ----------------- +------- pmostream/parameq.go ------ +package pmostream + +import ( + "math" + "sync" + + "github.com/gopxl/beep" +) + +// ParametricEQ applique un égaliseur paramétrique stéréo (Biquad peaking) sur un Streamer. +type ParametricEQ struct { + input beep.Streamer + sampleRate float64 + mu sync.Mutex + + // Coefficients Biquad + a0, a1, a2, b1, b2 float64 + + // États pour les deux canaux + x1, x2, y1, y2 [2]float64 +} + +// EQParams définit les paramètres d'un filtre peaking +type EQParams struct { + FreqHz float64 // fréquence centrale en Hz + GainDB float64 // gain en dB + Q float64 // facteur de qualité +} + +// NewParametricEQ construit un EQ peaking stéréo en interrogeant le streamer pour la fréquence +func NewParametricEQ(input beep.Streamer, params EQParams, sr beep.SampleRate) *ParametricEQ { + eq := &ParametricEQ{ + input: input, + sampleRate: float64(sr), + } + + eq.setParams(params) + return eq +} + +// setParams calcule les coefficients du Biquad +func (eq *ParametricEQ) setParams(p EQParams) { + eq.mu.Lock() + defer eq.mu.Unlock() + + A := math.Pow(10, p.GainDB/40) // conversion dB -> amplitude + w0 := 2 * math.Pi * p.FreqHz / eq.sampleRate + alpha := math.Sin(w0) / (2 * p.Q) + + a0 := 1 + alpha/A + eq.a0 = 1 + eq.a1 = -2 * math.Cos(w0) / a0 + eq.a2 = (1 - alpha/A) / a0 + eq.b1 = 2 * math.Cos(w0) * -1 / a0 + eq.b2 = (1 - alpha*A) / a0 +} + +// Stream applique l'EQ sur un chunk stéréo float64 [][2]float64 +func (eq *ParametricEQ) Stream(samples [][2]float64) (n int, ok bool) { + eq.mu.Lock() + defer eq.mu.Unlock() + + if len(samples) == 0 { + return 0, true + } + + for i := range samples { + for ch := 0; ch < 2; ch++ { + x := samples[i][ch] + y := eq.a0*x + eq.a1*eq.x1[ch] + eq.a2*eq.x2[ch] - eq.b1*eq.y1[ch] - eq.b2*eq.y2[ch] + + eq.x2[ch] = eq.x1[ch] + eq.x1[ch] = x + eq.y2[ch] = eq.y1[ch] + eq.y1[ch] = y + + samples[i][ch] = y + } + } + return len(samples), true +} + +// Close libère les ressources (pas nécessaire ici mais pour interface uniforme) +func (eq *ParametricEQ) Close() error { + return nil +} + +// Wrap permet d'utiliser ParametricEQ comme beep.Streamer +func (eq *ParametricEQ) Streamer() beep.Streamer { + return beep.StreamerFunc(func(samples [][2]float64) (n int, ok bool) { + return eq.Stream(samples) + }) +} +----------------- +------- pmostream/streamer.go ------ +package pmostream + +import ( + "encoding/binary" + "log" + "net/http" + "sync" + "time" + + "github.com/gopxl/beep" +) + +// StreamManager gère plusieurs AudioProcessor et clients HTTP +type StreamManager struct { + processors map[string]*AudioProcessor + mu sync.RWMutex +} + +// NewStreamManager crée un gestionnaire de flux audio +func NewStreamManager() *StreamManager { + return &StreamManager{ + processors: make(map[string]*AudioProcessor), + } +} + +// AddProcessor ajoute un processeur audio et démarre sa boucle Process +func (m *StreamManager) AddProcessor(id string, processor *AudioProcessor) { + m.mu.Lock() + defer m.mu.Unlock() + + if _, exists := m.processors[id]; exists { + log.Printf("Processor with id %s already exists", id) + return + } + m.processors[id] = processor + + go func() { + if err := processor.Process(); err != nil { + log.Printf("Processor error for %s: %v", id, err) + } + }() +} + +// RemoveProcessor arrête et supprime un processeur audio +func (m *StreamManager) RemoveProcessor(id string) { + m.mu.Lock() + defer m.mu.Unlock() + + if processor, exists := m.processors[id]; exists { + processor.Stop() + processor.Close() + delete(m.processors, id) + } +} + +// GetHandler retourne un handler HTTP pour streamer un flux audio +func (m *StreamManager) GetHandler(id string) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + m.mu.RLock() + processor, exists := m.processors[id] + m.mu.RUnlock() + + if !exists { + http.Error(w, "Stream not found", http.StatusNotFound) + return + } + + buffer := processor.GetBuffer() + config := processor.config + + w.Header().Set("Content-Type", "audio/wav") + w.Header().Set("Cache-Control", "no-cache") + w.Header().Set("Connection", "keep-alive") + w.Header().Set("Access-Control-Allow-Origin", "*") + + flusher, ok := w.(http.Flusher) + if !ok { + http.Error(w, "Streaming not supported", http.StatusInternalServerError) + return + } + + // Écrire l'en-tête WAV pour streaming + if err := writeWavHeader(w, config.TargetSampleRate, config.Format); err != nil { + log.Printf("Failed to write WAV header: %v", err) + return + } + flusher.Flush() + + clientDone := r.Context().Done() + + for { + select { + case <-clientDone: + log.Printf("Client disconnected: %s", id) + return + default: + } + + // Attendre les données avec timeout + if !buffer.WaitForData(1, 100*time.Millisecond) { + continue + } + + chunk := buffer.Read() + if chunk == nil { + continue + } + + // Envoyer le chunk au client + if _, err := w.Write(chunk); err != nil { + log.Printf("Write error: %v", err) + return + } + flusher.Flush() + } + } +} + +// writeWavHeader écrit un en-tête WAV pour streaming +func writeWavHeader(w http.ResponseWriter, sampleRate beep.SampleRate, format SampleFormat) error { + var audioFormat uint16 = 1 // PCM + var bitsPerSample uint16 = 16 + + if format == Float32 { + audioFormat = 3 // IEEE_FLOAT + bitsPerSample = 32 + } + + numChannels := uint16(2) + blockAlign := numChannels * bitsPerSample / 8 + byteRate := uint32(sampleRate) * uint32(blockAlign) + + header := make([]byte, 44) + copy(header[0:4], "RIFF") + binary.LittleEndian.PutUint32(header[4:8], 0xFFFFFFFF) // Taille inconnue pour streaming + copy(header[8:12], "WAVE") + copy(header[12:16], "fmt ") + binary.LittleEndian.PutUint32(header[16:20], 16) + binary.LittleEndian.PutUint16(header[20:22], audioFormat) + binary.LittleEndian.PutUint16(header[22:24], numChannels) + binary.LittleEndian.PutUint32(header[24:28], uint32(sampleRate)) + binary.LittleEndian.PutUint32(header[28:32], byteRate) + binary.LittleEndian.PutUint16(header[32:34], blockAlign) + binary.LittleEndian.PutUint16(header[34:36], bitsPerSample) + copy(header[36:40], "data") + binary.LittleEndian.PutUint32(header[40:44], 0xFFFFFFFF) // Taille inconnue pour streaming + + _, err := w.Write(header) + return err +} +----------------- +============== Fin des sources des packages =============== +============== Analyse des bugs par chatgpt =============== diff --git a/go.mod b/go.mod index 2e2ee421..92eb9f8f 100644 --- a/go.mod +++ b/go.mod @@ -13,12 +13,21 @@ require ( github.com/chai2010/webp v1.4.0 // indirect github.com/disintegration/imaging v1.6.2 // indirect github.com/dustin/go-humanize v1.0.1 // indirect + github.com/faiface/beep v1.1.0 // indirect + github.com/gopxl/beep v1.4.1 + github.com/hajimehoshi/go-mp3 v0.3.4 // indirect + github.com/icza/bitio v1.1.0 // indirect + github.com/jfreymuth/oggvorbis v1.0.5 // indirect + github.com/jfreymuth/vorbis v1.0.2 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-sqlite3 v1.14.32 // indirect + github.com/mewkiz/flac v1.0.8 // indirect + github.com/mewkiz/pkg v0.0.0-20230226050401-4010bf0fec14 // indirect github.com/ncruces/go-strftime v0.1.9 // indirect + github.com/pkg/errors v0.9.1 // indirect github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b // indirect - golang.org/x/image v0.0.0-20211028202545-6944b10bf410 // indirect + golang.org/x/image v0.31.0 // indirect golang.org/x/sys v0.34.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect modernc.org/libc v1.66.3 // indirect diff --git a/go.sum b/go.sum index 2df94bec..50640270 100644 --- a/go.sum +++ b/go.sum @@ -1,7 +1,9 @@ +github.com/DATA-DOG/go-sqlmock v1.3.3/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= github.com/beevik/etree v1.5.1 h1:TC3zyxYp+81wAmbsi8SWUpZCurbxa6S8RITYRSkNRwo= github.com/beevik/etree v1.5.1/go.mod h1:gPNJNaBGVZ9AwsidazFZyygnd+0pAU38N4D+WemwKNs= github.com/chai2010/webp v1.4.0 h1:6DA2pkkRUPnbOHvvsmGI3He1hBKf/bkRlniAiSGuEko= github.com/chai2010/webp v1.4.0/go.mod h1:0XVwvZWdjjdxpUEIf7b9g9VkHFnInUSYujwqTLEuldU= +github.com/d4l3k/messagediff v1.2.2-0.20190829033028-7e0a312ae40b/go.mod h1:Oozbb1TVXFac9FtSIxHBMnBCq2qeH/2KkEQxENCrlLo= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -9,16 +11,60 @@ github.com/disintegration/imaging v1.6.2 h1:w1LecBlG2Lnp8B3jk5zSuNqd7b4DXhcjwek1 github.com/disintegration/imaging v1.6.2/go.mod h1:44/5580QXChDfwIclfc/PCwrr44amcmDAg8hxG0Ewe4= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= +github.com/faiface/beep v1.1.0 h1:A2gWP6xf5Rh7RG/p9/VAW2jRSDEGQm5sbOb38sf5d4c= +github.com/faiface/beep v1.1.0/go.mod h1:6I8p6kK2q4opL/eWb+kAkk38ehnTunWeToJB+s51sT4= +github.com/gdamore/encoding v1.0.0/go.mod h1:alR0ol34c49FCSBLjhosxzcPHQbf2trDkoo5dl+VrEg= +github.com/gdamore/tcell v1.3.0/go.mod h1:Hjvr+Ofd+gLglo7RYKxxnzCBmev3BzsS67MebKS4zMM= github.com/globusdigital/soap v1.4.0 h1:nQDpWelZr3zKg6Oe1e5SqWd4PfiUvsl5/44oWUXy3II= github.com/globusdigital/soap v1.4.0/go.mod h1:p8hjOZ4FmK0jXBTcIZ6e5M2QBfcsxBUKWBYsHM2eZRw= +github.com/go-audio/audio v1.0.0/go.mod h1:6uAu0+H2lHkwdGsAY+j2wHPNPpPoeg5AaEFh9FlA+Zs= +github.com/go-audio/riff v1.0.0/go.mod h1:l3cQwc85y79NQFCRB7TiPoNiaijp6q8Z0Uv38rVG498= +github.com/go-audio/wav v1.0.0/go.mod h1:3yoReyQOsiARkvPl3ERCi8JFjihzG6WhjYpZCf5zAWE= +github.com/go-audio/wav v1.1.0/go.mod h1:mpe9qfwbScEbkd8uybLuIpTgHyrISw/OTuvjUW2iGtE= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/gopxl/beep v1.4.1 h1:WqNs9RsDAhG9M3khMyc1FaVY50dTdxG/6S6a3qsUHqE= +github.com/gopxl/beep v1.4.1/go.mod h1:A1dmiUkuY8kxsvcNJNUBIEcchmiP6eUyCHSxpXl0YO0= +github.com/hajimehoshi/go-mp3 v0.3.0 h1:fTM5DXjp/DL2G74HHAs/aBGiS9Tg7wnp+jkU38bHy4g= +github.com/hajimehoshi/go-mp3 v0.3.0/go.mod h1:qMJj/CSDxx6CGHiZeCgbiq2DSUkbK0UbtXShQcnfyMM= +github.com/hajimehoshi/go-mp3 v0.3.4 h1:NUP7pBYH8OguP4diaTZ9wJbUbk3tC0KlfzsEpWmYj68= +github.com/hajimehoshi/go-mp3 v0.3.4/go.mod h1:fRtZraRFcWb0pu7ok0LqyFhCUrPeMsGRSVop0eemFmo= +github.com/hajimehoshi/oto v0.6.1/go.mod h1:0QXGEkbuJRohbJaxr7ZQSxnju7hEhseiPx2hrh6raOI= +github.com/hajimehoshi/oto v0.7.1/go.mod h1:wovJ8WWMfFKvP587mhHgot/MBr4DnNy9m6EepeVGnos= +github.com/hajimehoshi/oto/v2 v2.3.1/go.mod h1:seWLbgHH7AyUMYKfKYT9pg7PhUu9/SisyJvNTT+ASQo= +github.com/icza/bitio v1.0.0 h1:squ/m1SHyFeCA6+6Gyol1AxV9nmPPlJFT8c2vKdj3U8= +github.com/icza/bitio v1.0.0/go.mod h1:0jGnlLAx8MKMr9VGnn/4YrvZiprkvBelsVIbA9Jjr9A= +github.com/icza/bitio v1.1.0 h1:ysX4vtldjdi3Ygai5m1cWy4oLkhWTAi+SyO6HC8L9T0= +github.com/icza/bitio v1.1.0/go.mod h1:0jGnlLAx8MKMr9VGnn/4YrvZiprkvBelsVIbA9Jjr9A= +github.com/icza/mighty v0.0.0-20180919140131-cfd07d671de6/go.mod h1:xQig96I1VNBDIWGCdTt54nHt6EeI639SmHycLYL7FkA= +github.com/jfreymuth/oggvorbis v1.0.1 h1:NT0eXBgE2WHzu6RT/6zcb2H10Kxj6Fm3PccT0LE6bqw= +github.com/jfreymuth/oggvorbis v1.0.1/go.mod h1:NqS+K+UXKje0FUYUPosyQ+XTVvjmVjps1aEZH1sumIk= +github.com/jfreymuth/oggvorbis v1.0.5 h1:u+Ck+R0eLSRhgq8WTmffYnrVtSztJcYrl588DM4e3kQ= +github.com/jfreymuth/oggvorbis v1.0.5/go.mod h1:1U4pqWmghcoVsCJJ4fRBKv9peUJMBHixthRlBeD6uII= +github.com/jfreymuth/vorbis v1.0.0 h1:SmDf783s82lIjGZi8EGUUaS7YxPHgRj4ZXW/h7rUi7U= +github.com/jfreymuth/vorbis v1.0.0/go.mod h1:8zy3lUAm9K/rJJk223RKy6vjCZTWC61NA2QD06bfOE0= +github.com/jfreymuth/vorbis v1.0.2 h1:m1xH6+ZI4thH927pgKD8JOH4eaGRm18rEE9/0WKjvNE= +github.com/jfreymuth/vorbis v1.0.2/go.mod h1:DoftRo4AznKnShRl1GxiTFCseHr4zR9BN3TWXyuzrqQ= +github.com/jszwec/csvutil v1.5.1/go.mod h1:Rpu7Uu9giO9subDyMCIQfHVDuLrcaC36UA4YcJjGBkg= +github.com/lucasb-eyer/go-colorful v1.0.2/go.mod h1:0MS4r+7BZKSJ5mw4/S5MPN+qHFF1fYclkSPilDOKW0s= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-sqlite3 v1.14.32 h1:JD12Ag3oLy1zQA+BNn74xRgaBbdhbNIDYvQUEuuErjs= github.com/mattn/go-sqlite3 v1.14.32/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mewkiz/flac v1.0.7 h1:uIXEjnuXqdRaZttmSFM5v5Ukp4U6orrZsnYGGR3yow8= +github.com/mewkiz/flac v1.0.7/go.mod h1:yU74UH277dBUpqxPouHSQIar3G1X/QIclVbFahSd1pU= +github.com/mewkiz/flac v1.0.8 h1:cophRjvafteDGmqsfXRK28YAX6l8wy19QxTHruEEg1s= +github.com/mewkiz/flac v1.0.8/go.mod h1:l7dt5uFY724eKVkHQtAJAQSkhpC3helU3RDxN0ESAqo= +github.com/mewkiz/pkg v0.0.0-20190919212034-518ade7978e2 h1:EyTNMdePWaoWsRSGQnXiSoQu0r6RS1eA557AwJhlzHU= +github.com/mewkiz/pkg v0.0.0-20190919212034-518ade7978e2/go.mod h1:3E2FUC/qYUfM8+r9zAwpeHJzqRVVMIYnpzD/clwWxyA= +github.com/mewkiz/pkg v0.0.0-20230226050401-4010bf0fec14 h1:tnAPMExbRERsyEYkmR1YjhTgDM0iqyiBYf8ojRXxdbA= +github.com/mewkiz/pkg v0.0.0-20230226050401-4010bf0fec14/go.mod h1:QYCFBiH5q6XTHEbWhR0uhR3M9qNPoD2CSQzr0g75kE4= github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4= github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= @@ -29,21 +75,58 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b h1:M2rDM6z3Fhozi9O7NWsxAkg/yqS/lQJ6PmkyIV3YP+o= golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b/go.mod h1:3//PLf8L/X+8b4vuAfHzxeRUl04Adcb341+IGKfnqS8= +golang.org/x/image v0.0.0-20190220214146-31aff87c08e9/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= +golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8 h1:hVwzHzIUGRjiF7EcUjqNxk3NCfkPxbDKRdnNE1Rpg0U= golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/image v0.0.0-20211028202545-6944b10bf410 h1:hTftEOvwiOq2+O8k2D5/Q7COC7k5Qcrgc2TFURJYnvQ= golang.org/x/image v0.0.0-20211028202545-6944b10bf410/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= +golang.org/x/image v0.5.0/go.mod h1:FVC7BI/5Ym8R25iw5OLsgshdUBbT1h5jZTpA+mvAdZ4= +golang.org/x/image v0.31.0 h1:mLChjE2MV6g1S7oqbXC0/UcKijjm5fnJLUYKIYrLESA= +golang.org/x/image v0.31.0/go.mod h1:R9ec5Lcp96v9FTF+ajwaH3uGxPH4fKfHHAVbUILxghA= +golang.org/x/mobile v0.0.0-20190415191353-3e0bab5405d6/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190429190828-d89cdac9e872/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626150813-e07cf5db2756/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220712014510-0a85c31ab51e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20= golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA= golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/pmoconfig/config.go b/pmoconfig/config.go index 37a973b4..fe1df3c8 100644 --- a/pmoconfig/config.go +++ b/pmoconfig/config.go @@ -137,7 +137,7 @@ func LoadConfig(filename string) *Config { } if err := yaml.Unmarshal(data, &cfg.config); err != nil { - log.Panicf("invalid YAML config: %w", err) + log.Panicf("invalid YAML config: %v", err) } cfg.config = lowerKeysMap(cfg.config) diff --git a/pmosoxr/concurency_test.go b/pmosoxr/concurency_test.go new file mode 100644 index 00000000..241d3fa2 --- /dev/null +++ b/pmosoxr/concurency_test.go @@ -0,0 +1,90 @@ +//go:build cgo +// +build cgo + +package pmosoxr + +import ( + "math" + "sync" + "testing" + "time" +) + +// genStereoSine génère nFrames frames interlacées float32 (L,R identiques) à amplitude 0.2. +func genStereoSine(nFrames int, freq float64, sr float64) []float32 { + out := make([]float32, nFrames*2) + for i := 0; i < nFrames; i++ { + v := float32(0.2 * math.Sin(2*math.Pi*freq*float64(i)/sr)) + out[2*i] = v + out[2*i+1] = v + } + return out +} + +func TestResamplerConcurrentProcess(t *testing.T) { + inRate := 44100.0 + outRate := 48000.0 + channels := 2 + quality := MQ + + r, err := New(inRate, outRate, channels, quality) + if err != nil { + t.Fatalf("failed to create resampler: %v", err) + } + defer r.Delete() + + workers := 8 + iterations := 200 + framesPerIter := 256 + var wg sync.WaitGroup + errCh := make(chan error, workers) + totalProduced := int64(0) + var prodMu sync.Mutex + + for w := 0; w < workers; w++ { + wg.Add(1) + go func(id int) { + defer wg.Done() + for i := 0; i < iterations; i++ { + in := genStereoSine(framesPerIter, 440.0+float64(id), inRate) + ratio := outRate / inRate + outFrames := int(float64(framesPerIter)*ratio) + 64 + out := make([]float32, outFrames*2) + consumed, produced, perr := r.Process(in, out) + if perr != nil { + errCh <- perr + return + } + if consumed < 0 || produced < 0 { + errCh <- &testError{"negative sample count"} + return + } + if produced > len(out) { + errCh <- &testError{"produced > out buffer"} + return + } + prodMu.Lock() + totalProduced += int64(produced) + prodMu.Unlock() + time.Sleep(1 * time.Millisecond) + } + }(w) + } + + wg.Wait() + close(errCh) + + for e := range errCh { + t.Fatalf("resampler error: %v", e) + } + + if totalProduced == 0 { + t.Fatal("no samples produced") + } +} + +type testError struct { + s string +} + +func (e *testError) Error() string { return e.s } diff --git a/pmosoxr/quality.go b/pmosoxr/quality.go new file mode 100644 index 00000000..b70f2d27 --- /dev/null +++ b/pmosoxr/quality.go @@ -0,0 +1,34 @@ +package pmosoxr + +/* +#cgo CFLAGS: -I${SRCDIR}/../C/include + +#include +#include + +static soxr_quality_spec_t q_spec(int q) { + switch(q) { + case 0: return soxr_quality_spec(SOXR_QQ, 0); + case 1: return soxr_quality_spec(SOXR_LQ, 0); + case 2: return soxr_quality_spec(SOXR_MQ, 0); + case 3: return soxr_quality_spec(SOXR_HQ, 0); + case 4: return soxr_quality_spec(SOXR_VHQ, 0); + default: return soxr_quality_spec(SOXR_MQ, 0); + } +} +*/ +import "C" + +type Quality int + +const ( + QQ Quality = iota + LQ + MQ + HQ + VHQ +) + +func (q Quality) toC() C.soxr_quality_spec_t { + return C.q_spec(C.int(q)) +} diff --git a/pmosoxr/soxr.go b/pmosoxr/soxr.go new file mode 100644 index 00000000..1bfcbc30 --- /dev/null +++ b/pmosoxr/soxr.go @@ -0,0 +1,124 @@ +//go:build cgo +// +build cgo + +package pmosoxr + +/* +#cgo CFLAGS: -I${SRCDIR}/../C/include +#cgo LDFLAGS: ${SRCDIR}/../C/lib/libsoxr.a -lomp + +#include +#include +*/ +import "C" + +import ( + "errors" + "sync" + "unsafe" +) + +type Resampler struct { + handle C.soxr_t + channels int + mu sync.Mutex + deleted bool +} + +func New(inRate, outRate float64, channels int, q Quality) (*Resampler, error) { + if channels != 2 { + return nil, errors.New("only stereo supported") + } + + var err C.soxr_error_t + qspec := q.toC() + + handle := C.soxr_create( + C.double(inRate), + C.double(outRate), + C.uint(channels), + &err, + nil, + &qspec, + nil, + ) + if handle == nil { + if err != nil { + return nil, errors.New(C.GoString(err)) + } + return nil, errors.New("soxr_create failed without error message") + } + return &Resampler{handle: handle, channels: channels}, nil +} + +func (r *Resampler) Process(in []float32, out []float32) (consumedSamples int, producedSamples int, err error) { + r.mu.Lock() + defer r.mu.Unlock() + + if r.deleted { + return 0, 0, errors.New("resampler deleted") + } + if r.handle == nil { + return 0, 0, errors.New("resampler not initialized") + } + if len(in)%r.channels != 0 || len(out)%r.channels != 0 { + return 0, 0, errors.New("buffer size not divisible by channel count") + } + + var idone, odone C.size_t + var inPtr C.soxr_in_t + var outPtr C.soxr_out_t + + if len(in) > 0 { + inPtr = C.soxr_in_t(unsafe.Pointer(&in[0])) + } + if len(out) > 0 { + outPtr = C.soxr_out_t(unsafe.Pointer(&out[0])) + } + + st := C.soxr_process( + r.handle, + inPtr, C.size_t(len(in)/r.channels), + &idone, + outPtr, C.size_t(len(out)/r.channels), + &odone, + ) + if st != nil { + return 0, 0, errors.New(C.GoString(st)) + } + return int(idone) * r.channels, int(odone) * r.channels, nil +} + +func (r *Resampler) Flush(out []float32) (int, error) { + r.mu.Lock() + defer r.mu.Unlock() + + if r.deleted { + return 0, errors.New("resampler deleted") + } + if r.handle == nil { + return 0, errors.New("resampler not initialized") + } + + var odone C.size_t + if len(out) == 0 { + return 0, nil + } + st := C.soxr_process(r.handle, nil, 0, nil, + C.soxr_out_t(unsafe.Pointer(&out[0])), C.size_t(len(out)/r.channels), &odone) + if st != nil { + return 0, errors.New(C.GoString(st)) + } + return int(odone) * r.channels, nil +} + +func (r *Resampler) Delete() { + r.mu.Lock() + defer r.mu.Unlock() + + if !r.deleted && r.handle != nil { + C.soxr_delete(r.handle) + r.handle = nil + r.deleted = true + } +} diff --git a/pmosoxr_test/pmo_soxr_test.go b/pmosoxr_test/pmo_soxr_test.go new file mode 100644 index 00000000..c13bc0d1 --- /dev/null +++ b/pmosoxr_test/pmo_soxr_test.go @@ -0,0 +1,94 @@ +// pmosoxr/pmosoxr_test.go +//go:build cgo +// +build cgo + +package pmosoxr_test + +import ( + "gargoton.petite-maison-orange.fr/eric/pmomusic/pmosoxr" + "testing" +) + +// TestQualityToC vérifie la conversion des enums Quality vers C +func TestQualityToC_Full(t *testing.T) { + qualities := []pmosoxr.Quality{pmosoxr.QQ, pmosoxr.LQ, pmosoxr.MQ, pmosoxr.HQ, pmosoxr.VHQ} + + for _, q := range qualities { + // Crée un resampler stéréo de 48000->44100 Hz + r, err := pmosoxr.New(48000, 44100, 2, q) + if err != nil { + t.Errorf("Failed to create resampler with quality %v: %v", q, err) + continue + } + + // Remplir un petit buffer d'entrée avec des samples fictifs + in := []float32{0.0, 0.0, 1.0, -1.0, 0.5, -0.5, 0.25, -0.25} + out := make([]float32, len(in)*2) // prévoir assez pour la sortie + + consumed, produced, err := r.Process(in, out) + if err != nil { + t.Errorf("Process failed for quality %v: %v", q, err) + } else { + t.Logf("Quality %v: consumed %d samples, produced %d samples", q, consumed, produced) + } + + // Tester Flush + flushOut := make([]float32, len(out)) + n, err := r.Flush(flushOut) + if err != nil { + t.Errorf("Flush failed for quality %v: %v", q, err) + } else { + t.Logf("Quality %v: flushed %d samples", q, n) + } + + r.Delete() + + } +} + +// TestResamplerCreateDelete vérifie la création et suppression d'un resampler +func TestResamplerCreateDelete(t *testing.T) { + r, err := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + if err != nil { + t.Fatalf("failed to create resampler: %v", err) + } + + r.Delete() + +} + +// TestResamplerInvalidChannels vérifie la gestion des canaux non stéréo +func TestResamplerInvalidChannels(t *testing.T) { + _, err := pmosoxr.New(44100, 48000, 1, pmosoxr.MQ) + if err == nil { + t.Fatal("expected error for non-stereo channels") + } +} + +// TestProcessErrors vérifie les erreurs de Process sur buffers invalides +func TestProcessErrors(t *testing.T) { + r, _ := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + defer r.Delete() + + _, _, err := r.Process([]float32{0, 1, 2}, []float32{0}) + if err == nil { + t.Fatal("expected error for buffer not divisible by channels") + } + + r.Delete() + _, _, err = r.Process([]float32{0, 1}, []float32{0, 1}) + if err == nil { + t.Fatal("expected error for deleted resampler") + } +} + +// TestFlushEmpty vérifie Flush sur buffer vide +func TestFlushEmpty(t *testing.T) { + r, _ := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + defer r.Delete() + + n, err := r.Flush(nil) + if err != nil || n != 0 { + t.Fatalf("Flush empty: got %d, err %v", n, err) + } +} diff --git a/pmosoxr_test/pmosoxr_test.go b/pmosoxr_test/pmosoxr_test.go new file mode 100644 index 00000000..eb518449 --- /dev/null +++ b/pmosoxr_test/pmosoxr_test.go @@ -0,0 +1,69 @@ +//go:build cgo +// +build cgo + +package pmosoxr_test + +import ( + "sync" + "testing" + + "gargoton.petite-maison-orange.fr/eric/pmomusic/pmosoxr" +) + +// Test création et suppression d'un Resampler +func TestResamplerLifecycle(t *testing.T) { + r, err := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + if err != nil { + t.Fatalf("failed to create resampler: %v", err) + } + if r == nil { + t.Fatal("resampler is nil") + } + + in := make([]float32, 512) + out := make([]float32, 512) + consumed, produced, err := r.Process(in, out) + if err != nil { + t.Fatal(err) + } + if consumed < 0 || produced < 0 { + t.Fatal("negative samples") + } + + // Delete multiple fois ne doit pas panique + r.Delete() + r.Delete() +} + +// Test Flush sur un Resampler +func TestResamplerFlush(t *testing.T) { + r, _ := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + defer r.Delete() + + buf := make([]float32, 256) + n, err := r.Flush(buf) + if err != nil { + t.Fatal(err) + } + if n < 0 { + t.Fatal("flush returned negative samples") + } +} + +// Concurrence simple +func TestResamplerConcurrent(t *testing.T) { + r, _ := pmosoxr.New(44100, 48000, 2, pmosoxr.MQ) + defer r.Delete() + + var wg sync.WaitGroup + for i := 0; i < 4; i++ { + wg.Add(1) + go func() { + defer wg.Done() + in := make([]float32, 128) + out := make([]float32, 128) + r.Process(in, out) + }() + } + wg.Wait() +} diff --git a/pmostream/.DS_Store b/pmostream/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..631138b36fe3f801ebff7e212d42ea534492cd16 GIT binary patch literal 6148 zcmeHKO-}+b5Pel*P%j+u)<2*tiV5B}1aHQe5YGyJg+yJ#?jF4DPxnnb2xQ^n!4RDx zGq0WLblV5pp#WUJeChx#08Of3u?XgE$Nvod2;5>m^orB*|@?RUE!MbGv|nNE@la*5+04l$PRWg)cLe7s)!+lM$2(%NGWbpgD~c$K};2^i1bkGk3gWoj4|-5 G41590Fq$g> literal 0 HcmV?d00001 diff --git a/pmostream/audio.go b/pmostream/audio.go new file mode 100644 index 00000000..da7770a1 --- /dev/null +++ b/pmostream/audio.go @@ -0,0 +1,60 @@ +package pmostream + +import ( + "fmt" + "os" + "strings" + + "github.com/gopxl/beep" + "github.com/gopxl/beep/flac" + "github.com/gopxl/beep/mp3" + "github.com/gopxl/beep/vorbis" + "github.com/gopxl/beep/wav" +) + +type streamerWithCloser struct { + beep.Streamer + closer func() error +} + +func (s *streamerWithCloser) Close() error { + if s.closer != nil { + return s.closer() + } + return nil +} + +func LoadAudio(uri string) (beep.Streamer, beep.Format, error) { + f, err := os.Open(uri) + if err != nil { + return nil, beep.Format{}, err + } + + var streamer beep.Streamer + var format beep.Format + + lowerURI := strings.ToLower(uri) + switch { + case strings.HasSuffix(lowerURI, ".flac"): + streamer, format, err = flac.Decode(f) + case strings.HasSuffix(lowerURI, ".wav"): + streamer, format, err = wav.Decode(f) + case strings.HasSuffix(lowerURI, ".mp3"): + streamer, format, err = mp3.Decode(f) + case strings.HasSuffix(lowerURI, ".ogg"): + streamer, format, err = vorbis.Decode(f) + default: + f.Close() + return nil, beep.Format{}, fmt.Errorf("unsupported format: %s", uri) + } + + if err != nil { + f.Close() + return nil, beep.Format{}, err + } + + return &streamerWithCloser{ + Streamer: streamer, + closer: f.Close, + }, format, nil +} diff --git a/pmostream/buffer.go b/pmostream/buffer.go new file mode 100644 index 00000000..4bb22987 --- /dev/null +++ b/pmostream/buffer.go @@ -0,0 +1,139 @@ +package pmostream + +import ( + "sync" + "time" + + log "github.com/sirupsen/logrus" +) + +type AudioBuffer struct { + mu sync.Mutex + cond *sync.Cond + chunks [][]byte + size int + available int + format SampleFormat + readPos int + writePos int + closed bool +} + +func NewAudioBuffer(size int, format SampleFormat) *AudioBuffer { + log.Infof("New AudioBuffer with size %d", size) + ab := &AudioBuffer{ + chunks: make([][]byte, size), + size: size, + format: format, + } + ab.cond = sync.NewCond(&ab.mu) + return ab +} + +func (ab *AudioBuffer) Available() int { + ab.mu.Lock() + defer ab.mu.Unlock() + return ab.available +} + +// Write ajoute un chunk dans le buffer (écrase le plus ancien si plein) +func (ab *AudioBuffer) Write(chunk []byte) { + ab.mu.Lock() + defer ab.mu.Unlock() + if ab.closed { + return + } + + ab.chunks[ab.writePos] = chunk + ab.writePos = (ab.writePos + 1) % ab.size + + if ab.available < ab.size { + ab.available++ + } else { + // tampon plein, on écrase → avancer readPos + ab.readPos = (ab.readPos + 1) % ab.size + } + + ab.cond.Broadcast() +} + +func (ab *AudioBuffer) Read() []byte { + ab.mu.Lock() + defer ab.mu.Unlock() + + if ab.available == 0 { + return nil + } + + chunk := ab.chunks[ab.readPos] + ab.chunks[ab.readPos] = nil + ab.readPos = (ab.readPos + 1) % ab.size + ab.available-- + + return chunk +} + +// WaitForData attend qu'au moins n chunks soient disponibles ou timeout/closed +func (ab *AudioBuffer) WaitForData(n int, timeout time.Duration) bool { + ab.mu.Lock() + defer ab.mu.Unlock() + + if n <= 0 { + n = 1 + } + + if timeout <= 0 { + for ab.available < n && !ab.closed { + ab.cond.Wait() + } + return ab.available >= n && !ab.closed + } + + deadline := time.Now().Add(timeout) + for ab.available < n && !ab.closed { + remaining := time.Until(deadline) + if remaining <= 0 { + return false + } + waitCondWithTimeout(ab.cond, remaining) + } + + return ab.available >= n && !ab.closed +} + +// Wait est un raccourci pour WaitForData(1, 0) +func (ab *AudioBuffer) Wait() { + ab.WaitForData(1, 0) +} + +func (ab *AudioBuffer) Close() { + ab.mu.Lock() + defer ab.mu.Unlock() + if !ab.closed { + ab.closed = true + ab.cond.Broadcast() + } +} + +// Fonction helper pour attendre une sync.Cond avec timeout +func waitCondWithTimeout(c *sync.Cond, d time.Duration) bool { + timer := time.NewTimer(d) + done := make(chan struct{}) + + go func() { + c.L.Lock() + defer c.L.Unlock() + c.Wait() + close(done) + }() + + select { + case <-done: + if !timer.Stop() { + <-timer.C + } + return true + case <-timer.C: + return false + } +} diff --git a/pmostream/conversion.go b/pmostream/conversion.go new file mode 100644 index 00000000..85f404f1 --- /dev/null +++ b/pmostream/conversion.go @@ -0,0 +1,88 @@ +package pmostream + +import ( + "encoding/binary" + "math" +) + +func ConvertFloat64ToFloat32(samples [][2]float64) []float32 { + if len(samples) == 0 { + return nil + } + result := make([]float32, len(samples)*2) + for i, s := range samples { + result[2*i] = float32(clamp(s[0], -1.0, 1.0)) + result[2*i+1] = float32(clamp(s[1], -1.0, 1.0)) + } + return result +} + +func ConvertFloat64ToPCM(samples [][2]float64) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*4) + for i, s := range samples { + l := int16(clamp(s[0], -1.0, 1.0) * 32767.0) + r := int16(clamp(s[1], -1.0, 1.0) * 32767.0) + binary.LittleEndian.PutUint16(buf[4*i:], uint16(uint16(l))) + binary.LittleEndian.PutUint16(buf[4*i+2:], uint16(uint16(r))) + } + return buf +} + +func Float32ToPCM(samples []float32) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*2) + for i, v := range samples { + val := int16(clamp(float64(v), -1.0, 1.0) * 32767.0) + binary.LittleEndian.PutUint16(buf[2*i:], uint16(val)) + } + return buf +} + +func Float32ToBytes(samples []float32) []byte { + if len(samples) == 0 { + return nil + } + buf := make([]byte, len(samples)*4) + for i, v := range samples { + binary.LittleEndian.PutUint32(buf[i*4:], math.Float32bits(v)) + } + return buf +} + +func BytesToFloat32(data []byte) []float32 { + if len(data)%4 != 0 { + return nil + } + result := make([]float32, len(data)/4) + for i := range result { + result[i] = math.Float32frombits(binary.LittleEndian.Uint32(data[i*4:])) + } + return result +} + +func PcmToFloat32(data []byte) []float32 { + if len(data)%2 != 0 { + return nil + } + result := make([]float32, len(data)/2) + for i := 0; i < len(result); i++ { + val := int16(binary.LittleEndian.Uint16(data[2*i:])) + result[i] = float32(val) / 32768.0 + } + return result +} + +func clamp(val, min, max float64) float64 { + if val < min { + return min + } + if val > max { + return max + } + return val +} diff --git a/pmostream/core.go b/pmostream/core.go new file mode 100644 index 00000000..825c02ab --- /dev/null +++ b/pmostream/core.go @@ -0,0 +1,271 @@ +package pmostream + +import ( + "fmt" + "math" + "sync" + "sync/atomic" + "time" + + "gargoton.petite-maison-orange.fr/eric/pmomusic/pmosoxr" + "github.com/gopxl/beep" + "github.com/gopxl/beep/effects" +) + +type SampleFormat int + +const ( + Float32 SampleFormat = iota + PCM16 +) + +type HiFiConfig struct { + TargetSampleRate beep.SampleRate + BufferSeconds int + ChunkSize int + ResampleQuality pmosoxr.Quality + Volume float64 + Format SampleFormat +} + +func DefaultHiFiConfig() HiFiConfig { + return HiFiConfig{ + TargetSampleRate: 48000, + BufferSeconds: 5, + ChunkSize: 1024, + ResampleQuality: pmosoxr.HQ, + Volume: 0.0, + Format: PCM16, + } +} + +type AudioProcessor struct { + config HiFiConfig + streamer beep.Streamer + format beep.Format + resampler *pmosoxr.Resampler + volume *effects.Volume + volumeValue float64 + buffer *AudioBuffer + masterBuffer *MasterBuffer + processMutex sync.Mutex + running atomic.Bool + wg sync.WaitGroup + resampleBuf []float32 + volumeMu sync.Mutex + streamDone atomic.Bool +} + +func NewAudioProcessor(streamer beep.Streamer, format beep.Format, config HiFiConfig, master *MasterBuffer) (*AudioProcessor, error) { + if streamer == nil && master == nil { + return nil, fmt.Errorf("streamer cannot be nil if no master buffer is provided") + } + + if format.NumChannels != 2 { + return nil, fmt.Errorf("only stereo format is supported") + } + + var vol *effects.Volume + if streamer != nil { + vol = &effects.Volume{ + Streamer: streamer, + Base: 2, + Volume: config.Volume, + Silent: false, + } + } + + var resampler *pmosoxr.Resampler + var err error + if streamer != nil && format.SampleRate != config.TargetSampleRate { + resampler, err = pmosoxr.New(float64(format.SampleRate), float64(config.TargetSampleRate), 2, config.ResampleQuality) + if err != nil { + return nil, fmt.Errorf("failed to create resampler: %w", err) + } + } + + sampleSize := 4 + if config.Format == PCM16 { + sampleSize = 2 + } + bytesPerSecond := int(config.TargetSampleRate) * sampleSize * 2 // stéréo + bufferSize := (bytesPerSecond * config.BufferSeconds) / config.ChunkSize + if bufferSize < 1 { + bufferSize = 1 + } + + ap := &AudioProcessor{ + config: config, + streamer: streamer, + format: format, + resampler: resampler, + volume: vol, + volumeValue: config.Volume, + buffer: NewAudioBuffer(bufferSize, config.Format), + masterBuffer: master, + } + ap.running.Store(true) + return ap, nil +} + +func (p *AudioProcessor) GetBuffer() *AudioBuffer { + return p.buffer +} + +func (p *AudioProcessor) SetVolume(volume float64) { + p.volumeMu.Lock() + defer p.volumeMu.Unlock() + p.volumeValue = volume + if p.volume != nil { + p.volume.Volume = volume + } +} + +func (p *AudioProcessor) Stop() { + p.running.Store(false) +} + +func (p *AudioProcessor) Close() error { + p.Stop() + p.wg.Wait() + p.processMutex.Lock() + defer p.processMutex.Unlock() + + if p.resampler != nil { + p.resampler.Delete() + } + if closer, ok := p.streamer.(interface{ Close() error }); ok { + return closer.Close() + } + return nil +} + +// Process lit depuis le streamer ou le master buffer, applique resampling + volume et écrit dans le buffer +func (p *AudioProcessor) Process() error { + if !p.running.Load() { + return nil + } + + p.wg.Add(1) + defer p.wg.Done() + + chunkSize := p.config.ChunkSize + if chunkSize <= 0 { + chunkSize = 1024 + } + + for p.running.Load() { + var samples [][2]float64 + + // 1) Lire depuis le streamer + if p.streamer != nil { + samples = make([][2]float64, chunkSize) + n, ok := p.streamer.Stream(samples) + if !ok { + p.streamDone.Store(true) + break + } + samples = samples[:n] + if n == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + } else if p.masterBuffer != nil { + // Lecture via ForkedBuffer + chunks := p.masterBuffer.ReadAll() + if len(chunks) == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + + samples = make([][2]float64, 0) + for _, c := range chunks { + var fs []float32 + if p.config.Format == Float32 { + fs = BytesToFloat32(c) + } else { + fs = PcmToFloat32(c) + } + if len(fs)%2 != 0 { + continue + } + for i := 0; i < len(fs); i += 2 { + samples = append(samples, [2]float64{float64(fs[i]), float64(fs[i+1])}) + } + } + if len(samples) == 0 { + time.Sleep(5 * time.Millisecond) + continue + } + } else { + time.Sleep(5 * time.Millisecond) + continue + } + + // 2) Resampler si nécessaire + var processed []float32 + if p.resampler != nil { + if len(p.resampleBuf) < len(samples)*2 { + p.resampleBuf = make([]float32, len(samples)*2) + } + inBuf := ConvertFloat64ToFloat32(samples) + _, np, err := p.resampler.Process(inBuf, p.resampleBuf) + if err != nil { + return err + } + processed = p.resampleBuf[:np] + } else { + processed = ConvertFloat64ToFloat32(samples) + } + + // 3) Appliquer volume + p.volumeMu.Lock() + volumeFactor := float32(math.Pow(2, p.volumeValue)) + p.volumeMu.Unlock() + for i := range processed { + processed[i] *= volumeFactor + } + + // 4) Convertir et écrire + var chunk []byte + if p.config.Format == Float32 { + chunk = Float32ToBytes(processed) + } else { + chunk = Float32ToPCM(processed) + } + p.buffer.Write(chunk) + } + + // Flush resampler à la fin uniquement + if p.resampler != nil { + flushBuf := make([]float32, 4096) + for { + _, np, err := p.resampler.Process(nil, flushBuf) + if err != nil { + return err + } + if np == 0 { + break + } + + processed := flushBuf[:np] + p.volumeMu.Lock() + volumeFactor := float32(math.Pow(2, p.volumeValue)) + p.volumeMu.Unlock() + for i := range processed { + processed[i] *= volumeFactor + } + + var chunk []byte + if p.config.Format == Float32 { + chunk = Float32ToBytes(processed) + } else { + chunk = Float32ToPCM(processed) + } + p.buffer.Write(chunk) + } + } + + p.buffer.Close() // fermer uniquement à la fin + return nil +} diff --git a/pmostream/fork.go b/pmostream/fork.go new file mode 100644 index 00000000..7f484641 --- /dev/null +++ b/pmostream/fork.go @@ -0,0 +1,208 @@ +package pmostream + +import ( + "fmt" + "sync" + "time" + + "github.com/gopxl/beep" +) + +// MasterBuffer est un buffer central qui permet de fork un flux vers plusieurs processors +type MasterBuffer struct { + mu sync.RWMutex + cond *sync.Cond + chunks [][]byte + closed bool +} + +// NewMasterBuffer crée un buffer central +func NewMasterBuffer() *MasterBuffer { + mb := &MasterBuffer{} + mb.cond = sync.NewCond(&mb.mu) + return mb +} + +// Write ajoute un chunk au buffer central +func (mb *MasterBuffer) Write(chunk []byte) { + if len(chunk) == 0 { + return + } + + mb.mu.Lock() + defer mb.mu.Unlock() + + if mb.closed { + return + } + + data := make([]byte, len(chunk)) + copy(data, chunk) + + mb.chunks = append(mb.chunks, data) + mb.cond.Broadcast() +} + +// Fork crée un lecteur indépendant pour ce buffer +func (mb *MasterBuffer) Fork() *ForkedBuffer { + mb.mu.RLock() + defer mb.mu.RUnlock() + + return &ForkedBuffer{ + master: mb, + index: len(mb.chunks), + } +} + +// Close ferme le buffer et notifie tous les lecteurs +func (mb *MasterBuffer) Close() { + mb.mu.Lock() + defer mb.mu.Unlock() + mb.closed = true + mb.cond.Broadcast() +} + +// ForkedBuffer permet à un processor forké de lire indépendamment +type ForkedBuffer struct { + master *MasterBuffer + index int +} + +func (fb *ForkedBuffer) ReadAll() [][]byte { + fb.master.mu.Lock() // Lock au lieu de RLock + defer fb.master.mu.Unlock() + + if fb.index >= len(fb.master.chunks) { + return nil + } + + result := make([][]byte, len(fb.master.chunks)-fb.index) + for i := fb.index; i < len(fb.master.chunks); i++ { + result[i-fb.index] = fb.master.chunks[i] + } + fb.index = len(fb.master.chunks) + return result +} + +func (fb *ForkedBuffer) WaitForData(timeoutMs int) bool { + deadline := time.Now().Add(time.Duration(timeoutMs) * time.Millisecond) + fb.master.mu.Lock() + defer fb.master.mu.Unlock() + + for fb.index >= len(fb.master.chunks) && !fb.master.closed { + remaining := time.Until(deadline) + if remaining <= 0 { + return false + } + fb.master.cond.Wait() + } + return fb.index < len(fb.master.chunks) +} + +// ForkStreamer crée plusieurs streamers à partir d'un streamer source en utilisant un MasterBuffer +func ForkStreamer(streamer beep.Streamer, format beep.Format, config HiFiConfig, nForks int) ([]beep.Streamer, error) { + if nForks < 1 { + return nil, fmt.Errorf("nForks must be at least 1") + } + + // Créer un MasterBuffer + master := NewMasterBuffer() + + // Créer un processeur principal qui alimente le MasterBuffer + mainProc, err := NewAudioProcessor(streamer, format, config, master) + if err != nil { + return nil, err + } + + // Démarrer le traitement principal + go mainProc.Process() + + // Créer des streamers forké + forks := make([]beep.Streamer, nForks) + for i := 0; i < nForks; i++ { + forkedBuffer := master.Fork() + forks[i] = &forkedStreamer{ + fb: forkedBuffer, + config: config, + } + } + + return forks, nil +} + +// forkedStreamer implémente beep.Streamer pour lire depuis un ForkedBuffer +type forkedStreamer struct { + fb *ForkedBuffer + config HiFiConfig +} + +func (fs *forkedStreamer) Stream(samples [][2]float64) (n int, ok bool) { + if !fs.fb.WaitForData(100) { + return 0, true + } + + chunks := fs.fb.ReadAll() + if len(chunks) == 0 { + return 0, true + } + + // Concaténer tous les chunks + var totalSize int + for _, chunk := range chunks { + totalSize += len(chunk) + } + + combined := make([]byte, 0, totalSize) + for _, chunk := range chunks { + combined = append(combined, chunk...) + } + + // Convertir en float32 selon le format + var allData []float32 + if fs.config.Format == Float32 { + allData = BytesToFloat32(combined) + } else { + allData = PcmToFloat32(combined) + } + + if allData == nil { + return 0, true + } + + numSamples := len(allData) / 2 + if numSamples > len(samples) { + numSamples = len(samples) + } + + for i := 0; i < numSamples; i++ { + if 2*i+1 < len(allData) { + samples[i][0] = float64(allData[2*i]) + samples[i][1] = float64(allData[2*i+1]) + } + } + + return numSamples, true +} + +func (fs *forkedStreamer) Err() error { + return nil +} + +// ReadAll retourne tous les chunks disponibles dans le buffer central +func (mb *MasterBuffer) ReadAll() [][]byte { + mb.mu.RLock() + defer mb.mu.RUnlock() + + if mb.closed || len(mb.chunks) == 0 { + return nil + } + + // Créer une copie de tous les chunks + result := make([][]byte, len(mb.chunks)) + for i, chunk := range mb.chunks { + result[i] = make([]byte, len(chunk)) + copy(result[i], chunk) + } + + return result +} diff --git a/pmostream/fork_eq_test.go b/pmostream/fork_eq_test.go new file mode 100644 index 00000000..fd25242a --- /dev/null +++ b/pmostream/fork_eq_test.go @@ -0,0 +1,47 @@ +//go:build cgo +// +build cgo + +package pmostream + +import ( + "math" + "testing" + "time" + + "github.com/gopxl/beep" +) + +// TestForkedEQ vérifie que chaque fork peut avoir son propre ParametricEQ appliqué +func TestAudioProcessorWithMasterBuffer(t *testing.T) { + stream := beep.StreamerFunc(func(samples [][2]float64) (n int, ok bool) { + for i := range samples { + v := 0.2 * math.Sin(2*math.Pi*440*float64(i)/44100.0) + samples[i][0] = v + samples[i][1] = v + } + return len(samples), true + }) + + format := beep.Format{SampleRate: 44100, NumChannels: 2, Precision: 2} + config := DefaultHiFiConfig() + master := NewMasterBuffer() + + proc, err := NewAudioProcessor(stream, format, config, master) + if err != nil { + t.Fatal(err) + } + + go proc.Process() + defer proc.Close() + + time.Sleep(50 * time.Millisecond) + + if proc.buffer.Available() == 0 { + t.Fatal("buffer should contain data") + } + + chunk := proc.buffer.Read() + if chunk == nil || len(chunk) == 0 { + t.Fatal("failed to read chunk from buffer") + } +} diff --git a/pmostream/parameq.go b/pmostream/parameq.go new file mode 100644 index 00000000..ab1ed60d --- /dev/null +++ b/pmostream/parameq.go @@ -0,0 +1,93 @@ +package pmostream + +import ( + "math" + "sync" + + "github.com/gopxl/beep" +) + +// ParametricEQ applique un égaliseur paramétrique stéréo (Biquad peaking) sur un Streamer. +type ParametricEQ struct { + input beep.Streamer + sampleRate float64 + mu sync.Mutex + + // Coefficients Biquad + a0, a1, a2, b1, b2 float64 + + // États pour les deux canaux + x1, x2, y1, y2 [2]float64 +} + +// EQParams définit les paramètres d'un filtre peaking +type EQParams struct { + FreqHz float64 // fréquence centrale en Hz + GainDB float64 // gain en dB + Q float64 // facteur de qualité +} + +// NewParametricEQ construit un EQ peaking stéréo en interrogeant le streamer pour la fréquence +func NewParametricEQ(input beep.Streamer, params EQParams, sr beep.SampleRate) *ParametricEQ { + eq := &ParametricEQ{ + input: input, + sampleRate: float64(sr), + } + + eq.setParams(params) + return eq +} + +// setParams calcule les coefficients du Biquad +func (eq *ParametricEQ) setParams(p EQParams) { + eq.mu.Lock() + defer eq.mu.Unlock() + + A := math.Pow(10, p.GainDB/40) // conversion dB -> amplitude + w0 := 2 * math.Pi * p.FreqHz / eq.sampleRate + alpha := math.Sin(w0) / (2 * p.Q) + + a0 := 1 + alpha/A + eq.a0 = 1 + eq.a1 = -2 * math.Cos(w0) / a0 + eq.a2 = (1 - alpha/A) / a0 + eq.b1 = 2 * math.Cos(w0) * -1 / a0 + eq.b2 = (1 - alpha*A) / a0 +} + +// Stream applique l'EQ sur un chunk stéréo float64 [][2]float64 +func (eq *ParametricEQ) Stream(samples [][2]float64) (n int, ok bool) { + eq.mu.Lock() + defer eq.mu.Unlock() + + if len(samples) == 0 { + return 0, true + } + + for i := range samples { + for ch := 0; ch < 2; ch++ { + x := samples[i][ch] + y := eq.a0*x + eq.a1*eq.x1[ch] + eq.a2*eq.x2[ch] - eq.b1*eq.y1[ch] - eq.b2*eq.y2[ch] + + eq.x2[ch] = eq.x1[ch] + eq.x1[ch] = x + eq.y2[ch] = eq.y1[ch] + eq.y1[ch] = y + + samples[i][ch] = y + } + } + return len(samples), true +} + +// Close libère les ressources (pas nécessaire ici mais pour interface uniforme) +func (eq *ParametricEQ) Close() error { + return nil +} + +// Wrap permet d'utiliser ParametricEQ comme beep.Streamer +func (eq *ParametricEQ) Streamer() beep.Streamer { + return beep.StreamerFunc(func(samples [][2]float64) (n int, ok bool) { + return eq.Stream(samples) + }) +} diff --git a/pmostream/streamer.go b/pmostream/streamer.go new file mode 100644 index 00000000..e5220411 --- /dev/null +++ b/pmostream/streamer.go @@ -0,0 +1,150 @@ +package pmostream + +import ( + "encoding/binary" + "log" + "net/http" + "sync" + "time" + + "github.com/gopxl/beep" +) + +// StreamManager gère plusieurs AudioProcessor et clients HTTP +type StreamManager struct { + processors map[string]*AudioProcessor + mu sync.RWMutex +} + +// NewStreamManager crée un gestionnaire de flux audio +func NewStreamManager() *StreamManager { + return &StreamManager{ + processors: make(map[string]*AudioProcessor), + } +} + +// AddProcessor ajoute un processeur audio et démarre sa boucle Process +func (m *StreamManager) AddProcessor(id string, processor *AudioProcessor) { + m.mu.Lock() + defer m.mu.Unlock() + + if _, exists := m.processors[id]; exists { + log.Printf("Processor with id %s already exists", id) + return + } + m.processors[id] = processor + + go func() { + if err := processor.Process(); err != nil { + log.Printf("Processor error for %s: %v", id, err) + } + }() +} + +// RemoveProcessor arrête et supprime un processeur audio +func (m *StreamManager) RemoveProcessor(id string) { + m.mu.Lock() + defer m.mu.Unlock() + + if processor, exists := m.processors[id]; exists { + processor.Stop() + processor.Close() + delete(m.processors, id) + } +} + +// GetHandler retourne un handler HTTP pour streamer un flux audio +func (m *StreamManager) GetHandler(id string) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + m.mu.RLock() + processor, exists := m.processors[id] + m.mu.RUnlock() + + if !exists { + http.Error(w, "Stream not found", http.StatusNotFound) + return + } + + buffer := processor.GetBuffer() + config := processor.config + + w.Header().Set("Content-Type", "audio/wav") + w.Header().Set("Cache-Control", "no-cache") + w.Header().Set("Connection", "keep-alive") + w.Header().Set("Access-Control-Allow-Origin", "*") + + flusher, ok := w.(http.Flusher) + if !ok { + http.Error(w, "Streaming not supported", http.StatusInternalServerError) + return + } + + // Écrire l'en-tête WAV pour streaming + if err := writeWavHeader(w, config.TargetSampleRate, config.Format); err != nil { + log.Printf("Failed to write WAV header: %v", err) + return + } + flusher.Flush() + + clientDone := r.Context().Done() + + for { + select { + case <-clientDone: + log.Printf("Client disconnected: %s", id) + return + default: + } + + // Attendre les données avec timeout + if !buffer.WaitForData(1, 100*time.Millisecond) { + continue + } + + chunk := buffer.Read() + if chunk == nil { + continue + } + + // Envoyer le chunk au client + if _, err := w.Write(chunk); err != nil { + log.Printf("Write error: %v", err) + return + } + flusher.Flush() + } + } +} + +// writeWavHeader écrit un en-tête WAV pour streaming +func writeWavHeader(w http.ResponseWriter, sampleRate beep.SampleRate, format SampleFormat) error { + var audioFormat uint16 = 1 // PCM + var bitsPerSample uint16 = 16 + + if format == Float32 { + audioFormat = 3 // IEEE_FLOAT + bitsPerSample = 32 + } + + numChannels := uint16(2) + blockAlign := numChannels * bitsPerSample / 8 + byteRate := uint32(sampleRate) * uint32(blockAlign) + + header := make([]byte, 44) + copy(header[0:4], "RIFF") + binary.LittleEndian.PutUint32(header[4:8], 0xFFFFFFFF) // Taille inconnue pour streaming + copy(header[8:12], "WAVE") + copy(header[12:16], "fmt ") + binary.LittleEndian.PutUint32(header[16:20], 16) + binary.LittleEndian.PutUint16(header[20:22], audioFormat) + binary.LittleEndian.PutUint16(header[22:24], numChannels) + binary.LittleEndian.PutUint32(header[24:28], uint32(sampleRate)) + binary.LittleEndian.PutUint32(header[28:32], byteRate) + binary.LittleEndian.PutUint16(header[32:34], blockAlign) + binary.LittleEndian.PutUint16(header[34:36], bitsPerSample) + copy(header[36:40], "data") + binary.LittleEndian.PutUint32(header[40:44], 0xFFFFFFFF) // Taille inconnue pour streaming + + _, err := w.Write(header) + return err +} diff --git a/pmostream_test/pmostream_test.go b/pmostream_test/pmostream_test.go new file mode 100644 index 00000000..0b71ea7a --- /dev/null +++ b/pmostream_test/pmostream_test.go @@ -0,0 +1,131 @@ +package pmostream_test + +import ( + "testing" + "time" + + "gargoton.petite-maison-orange.fr/eric/pmomusic/pmostream" + "github.com/gopxl/beep" +) + +// ----------------------- Audio conversions ------------------------ +func TestConvertFloat64ToFloat32(t *testing.T) { + in := [][2]float64{{-2, 2}, {0.5, -0.5}} + out := pmostream.ConvertFloat64ToFloat32(in) + if len(out) != 4 { + t.Fatal("unexpected length") + } + if out[0] != -1 || out[1] != 1 { + t.Fatal("clamp failed") + } +} + +func TestFloat32ToPCM(t *testing.T) { + in := []float32{0.5, -0.5} + buf := pmostream.Float32ToPCM(in) + if len(buf) != 4 { + t.Fatal("length wrong") + } +} + +func TestFloat32ToBytesAndBack(t *testing.T) { + in := []float32{0.1, -0.2, 0.3} + b := pmostream.Float32ToBytes(in) + out := pmostream.BytesToFloat32(b) + if len(out) != len(in) { + t.Fatal("length mismatch") + } +} + +// ----------------------- AudioBuffer ------------------------ +func TestAudioBufferWriteRead(t *testing.T) { + buf := pmostream.NewAudioBuffer(2, pmostream.PCM16) + data := []byte{1, 2, 3} + buf.Write(data) + if buf.Available() != 1 { + t.Fatal("available wrong") + } + r := buf.Read() + if string(r) != string(data) { + t.Fatal("read content mismatch") + } +} + +func TestAudioBufferOverwrite(t *testing.T) { + buf := pmostream.NewAudioBuffer(2, pmostream.PCM16) + buf.Write([]byte{1}) + buf.Write([]byte{2}) + buf.Write([]byte{3}) // overwrite + if buf.Available() != 2 { + t.Fatal("overwrite failed") + } +} + +// ----------------------- MasterBuffer & ForkedBuffer ------------------------ +func TestMasterBufferFork(t *testing.T) { + m := pmostream.NewMasterBuffer() + m.Write([]byte{1, 2}) + f := m.Fork() + chunks := f.ReadAll() + if len(chunks) != 1 { + t.Fatal("fork readall failed") + } +} + +// ----------------------- ParametricEQ ------------------------ +func TestParametricEQ(t *testing.T) { + stream := beep.StreamerFunc(func(samples [][2]float64) (int, bool) { + for i := range samples { + samples[i][0] = 1 + samples[i][1] = 1 + } + return len(samples), true + }) + eq := pmostream.NewParametricEQ(stream, pmostream.EQParams{FreqHz: 440, GainDB: 3, Q: 1}, 44100) + buf := make([][2]float64, 10) + n, ok := eq.Stream(buf) + if !ok || n != 10 { + t.Fatal("stream failed") + } +} + +// ----------------------- AudioProcessor ------------------------ +func TestAudioProcessorInit(t *testing.T) { + stream := beep.StreamerFunc(func(samples [][2]float64) (int, bool) { return len(samples), true }) + format := beep.Format{SampleRate: 44100, NumChannels: 2, Precision: 2} + config := pmostream.DefaultHiFiConfig() + proc, err := pmostream.NewAudioProcessor(stream, format, config, nil) + if err != nil { + t.Fatal(err) + } + proc.SetVolume(1.0) + proc.Stop() + proc.Close() +} + +// ----------------------- StreamManager ------------------------ +func TestStreamManagerAddRemove(t *testing.T) { + m := pmostream.NewStreamManager() + stream := beep.StreamerFunc(func(samples [][2]float64) (int, bool) { return len(samples), true }) + format := beep.Format{SampleRate: 44100, NumChannels: 2, Precision: 2} + config := pmostream.DefaultHiFiConfig() + proc, _ := pmostream.NewAudioProcessor(stream, format, config, nil) + m.AddProcessor("p1", proc) + m.RemoveProcessor("p1") +} + +// ----------------------- LoadAudio ------------------------ +func TestLoadAudioUnsupported(t *testing.T) { + _, _, err := pmostream.LoadAudio("file.unsupported") + if err == nil { + t.Fatal("expected error") + } +} + +// ----------------------- WaitForData with timeout ------------------------ +func TestAudioBufferWaitForDataTimeout(t *testing.T) { + buf := pmostream.NewAudioBuffer(2, pmostream.PCM16) + if buf.WaitForData(1, 10*time.Millisecond) { + t.Fatal("should timeout") + } +} diff --git a/pmoupnp/devices/services/actions/action.go b/pmoupnp/devices/services/actions/action.go index b5f19d09..067bf423 100644 --- a/pmoupnp/devices/services/actions/action.go +++ b/pmoupnp/devices/services/actions/action.go @@ -3,8 +3,7 @@ package actions import "maps" type Action struct { - name string - + name string arguments ArgumentSet } diff --git a/tools/build_prompt b/tools/build_prompt new file mode 100755 index 00000000..8b09b058 --- /dev/null +++ b/tools/build_prompt @@ -0,0 +1,26 @@ +#!/bin/bash + +cat << EOF +Est-ce que ces packages te semblent fonctionnel. +Il ne s'agit pas de l'enrichir de nouvelle fonctionnalité, ni de l'optimiser d'avantage. Juste de le finaliser en detectant vrais bug. Ce package doit être thread safe, uniquement stéréo. +Ne signale que les bugs conduisant à un disfonctionnement + +Regénère des version complètes et corrigées des fichiers nécessaires + +EOF + +echo ============== Debut des sources des packages =============== + +for package in $*; do + pushd $package 2>&1 >/dev/null + for f in *.go; do + echo "------- $package/$f ------" + cat $f + echo "-----------------" + done + popd 2>&1 >/dev/null +done + +echo ============== Fin des sources des packages =============== + +echo ============== Analyse des bugs par chatgpt =============== diff --git a/xx b/xx new file mode 100644 index 00000000..787c3dac --- /dev/null +++ b/xx @@ -0,0 +1,806 @@ +------- /pmoupnp/devices/services/statevariables/statevartype_arithm.go ------ +package statevariables + +// Add performs addition operation on two interfaces if both are of numeric +// type, otherwise it returns an error. If the types are not numeric, it checks +// and converts them into float64 before performing the addition. The function +// then casts the result back to its original type using Cast method from +// StateVarType t and returns this value or any encountered error. +// +// Parameters: +// +// a (interface{}): First operand for addition operation. Can be of any type. +// b (interface{}): Second operand for addition operation. Can be of any type. +// +// Returns: +// +// interface{}: Result of the addition, casted back to its original type using StateVarType t if no error encountered. +// error: Encountered error in case any conversion or casting fails. This includes non-numeric types for this operation. +func (t StateVarType) Add(a, b interface{}) (interface{}, error) { + af, bf, err := valuesToNumericOperands(t, a, b) + if err != nil { + return nil, err + } + + return t.Cast(af + bf) +} + +// Sub subtracts 'b' from 'a'. It converts both values to numeric types +// and then performs a subtraction operation, casting the result back to its +// original type. If either conversion fails or an unsupported type is used, +// it returns an error. +func (t StateVarType) Sub(a, b interface{}) (interface{}, error) { + af, bf, err := valuesToNumericOperands(t, a, b) + if err != nil { + return nil, err + } + + return t.Cast(af - bf) +} + +// Mul takes in two interface types 'a' and 'b', multiplies them together +// and returns the result along with any error encountered during this +// process. If either of the inputs is not compatible with numeric values, an +// error will be returned. The multiplication operation is performed between two +// numbers represented as 'float64' types (since Go does not support generic +// types on its own). The resulting value will be cast to the type represented +// by the receiver of this method 't'. If a casting error occurs, it will also +// be returned along with nil for the result. +func (t StateVarType) Mul(a, b interface{}) (interface{}, error) { + af, bf, err := valuesToNumericOperands(t, a, b) + if err != nil { + return nil, err + } + + return t.Cast(af * bf) +} + +// Div performs division between the provided arguments 'a' and 'b'. The function casts both operands to their numeric equivalents using valuesToNumericOperands() before performing the division. +// +// Parameters: +// - a: first operand of type interface{}, can be of any type, will be converted if necessary +// - b: second operand of type interface{}, can be of any type, will be converted if necessary +// +// Returns: +// - result: the division result in numeric form after casting it with function t.Cast() +// - err: error that might occur during the conversion or division operation +func (t StateVarType) Div(a, b interface{}) (interface{}, error) { + af, bf, err := valuesToNumericOperands(t, a, b) + if err != nil { + return nil, err + } + + return t.Cast(af / bf) +} +----------------- +------- /pmoupnp/devices/services/statevariables/statevartype_cast.go ------ +package statevariables + +import ( + "fmt" + "net/url" + "strings" + "time" + + "github.com/google/uuid" +) + +// Cast converts a value to the Go type corresponding to the UPnP type. +// Supports conversion from various primitive types and strings. +// Returns an error for unsupported conversions or invalid values. +// +// Examples: +// - StateType_UI2.Cast(42) // uint16(42), nil +// - StateType_Boolean.Cast("true") // true, nil +// - StateType_UI1.Cast(300) // nil, error (overflow) +func (t StateVarType) Cast(val interface{}) (interface{}, error) { + switch t { + case StateType_UI1: + v, err := toUint(val, 8) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to UI1", val, val) + } + return uint8(v), nil + + case StateType_UI2: + v, err := toUint(val, 16) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to UI2", val, val) + } + return uint16(v), nil + + case StateType_UI4: + v, err := toUint(val, 32) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to UI4", val, val) + } + return uint32(v), nil + + case StateType_I1: + v, err := toInt(val, 8) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to I1", val, val) + } + return int8(v), nil + + case StateType_I2: + v, err := toInt(val, 16) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to I2", val, val) + } + return int16(v), nil + + case StateType_I4, StateType_Int: + v, err := toInt(val, 32) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to I4", val, val) + } + return int32(v), nil + + case StateType_R4: + v, err := toFloat(val, 32) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to R4", val, val) + } + return float32(v), nil + + case StateType_R8, StateType_Number, StateType_Fixed14_4: + v, err := toFloat(val, 64) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to R8", val, val) + } + return v, nil + + case StateType_Boolean: + b, err := toBool(val) + if err != nil { + return nil, fmt.Errorf("cannot cast %v (%T) to Boolean", val, val) + } + return b, nil + + case StateType_Char: + switch s := val.(type) { + case string: + if len(s) != 1 { + return nil, fmt.Errorf("invalid Char: string too long %q", s) + } + return rune(s[0]), nil + case rune: + return s, nil + default: + return nil, fmt.Errorf("cannot cast %v (%T) to Char", val, val) + } + + case StateType_String: + return fmt.Sprint(val), nil + + case StateType_UUID: + switch val := val.(type) { + case uuid.UUID: + return val, nil + case string: + u, err := uuid.Parse(strings.TrimSpace(val)) + if err != nil { + return nil, fmt.Errorf("invalid UUID %v: %v", val, err) + } + return u, nil + default: + return nil, fmt.Errorf("cannot cast %v (%T) to UUID", val, val) + } + + case StateType_URI: + switch val := val.(type) { + case *url.URL: + return val, nil + case string: + u, err := url.Parse(strings.TrimSpace(val)) + if err != nil { + return nil, fmt.Errorf("invalid URI %v: %v", val, err) + } + return u, nil + default: + return nil, fmt.Errorf("cannot cast %v (%T) to URI", val, val) + } + + case StateType_BinBase64, StateType_BinHex: + switch v := val.(type) { + case []byte: + return v, nil + case string: + return decodeBinary(t, v) + default: + return nil, fmt.Errorf("cannot cast %v (%T) to binary", val, val) + } + + case StateType_Date, StateType_DateTime, StateType_DateTimeTZ, + StateType_Time, StateType_TimeTZ: + switch v := val.(type) { + case time.Time: + return v, nil + case string: + return parseUPnPTime(t, v) + default: + return nil, fmt.Errorf("cannot cast %v (%T) to time", val, val) + } + + default: + return nil, fmt.Errorf("unsupported type: %v", t) + } +} +----------------- +------- /pmoupnp/devices/services/statevariables/statevartype_cmp.go ------ +package statevariables + +import ( + "bytes" + "fmt" + "log" + "strings" +) + +// Cmp compares two values of a given type 'StateVarType'. The comparison is +// made based on the specific type of 'a' and 'b'. It returns an integer +// indicating whether 'a' is less than, equal to, or greater than 'b'. If 'a' is +// less than 'b', it returns -1. If they are equal, it returns 0. If 'a' is +// greater than 'b', it returns 1. It also returns an error if any of the values +// can't be cast to the required type or if comparison isn't supported for the +// given type 'StateVarType'. +// +// - t: StateVarType representing the specific type to use for comparison. +// - a, b: The values to compare. They should be of type interface{} as they could be +// any valid Go type. +// +// Returns: An integer indicating the result of the comparison (-1 if 'a' is +// less than 'b', 0 if they are equal, and 1 if 'a' is greater than 'b'). It +// also returns an error if any values can't be cast or if comparison isn't +// supported for the given type. +// +// Example: +// +// result, err := t.Cmp(int32(5), int32(7)) // Returns -1 and nil error as 5 is less than 7. +func (t StateVarType) Cmp(a, b interface{}) (int, error) { + a, err1 := t.Cast(a) + b, err2 := t.Cast(b) + + if err1 != nil || err2 != nil { + log.Fatalf("Failed to cast for comparison: %v vs %v (errors: %v, %v)", a, b, err1, err2) + } + + switch { + case t.IsInteger(): + ai, err := toInt(a, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid int value for a: %w", err) + } + bi, err := toInt(b, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid int value for b: %w", err) + } + return cmpInt(ai, bi), nil + + case t.IsUnsignedInt(): + ai, err := toUint(a, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid uint value for a: %w", err) + } + bi, err := toUint(b, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid uint value for b: %w", err) + } + return cmpUint(ai, bi), nil + + case t.IsFloat(): + af, err := toFloat(a, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid float value for a: %w", err) + } + bf, err := toFloat(b, t.BitSize()) + if err != nil { + return 0, fmt.Errorf("invalid float value for b: %w", err) + } + return cmpFloat64(af, bf), nil + + case t == StateType_Boolean: + ab, err := toBool(a) + if err != nil { + return 0, fmt.Errorf("invalid bool value for a: %w", err) + } + bb, err := toBool(b) + if err != nil { + return 0, fmt.Errorf("invalid bool value for b: %w", err) + } + return cmpBool(ab, bb), nil + + case t == StateType_String || t == StateType_Char: + as, err := toString(a) + if err != nil { + return 0, fmt.Errorf("invalid string value for a") + } + bs, err := toString(b) + if err != nil { + return 0, fmt.Errorf("invalid string value for b") + } + return strings.Compare(as, bs), nil + + case t.IsTime(): + at, err := toTime(a) + if err != nil { + return 0, fmt.Errorf("invalid time value for a") + } + bt, err := toTime(b) + if err != nil { + return 0, fmt.Errorf("invalid time value for b") + } + return cmpTime(at, bt), nil + + default: + return 0, fmt.Errorf("comparison not supported for type %v", t) + } +} + +func (t StateVarType) Equal(a, b interface{}) (bool, error) { + switch { + case t.IsInteger(): + ai, err1 := toInt(a, 64) + bi, err2 := toInt(b, 64) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid integer value for type %s", t.String()) + } + return ai == bi, nil + + case t.IsFloat(): + af, err := toFloat(a, 64) + if err != nil { + return false, fmt.Errorf("invalid float value for type %s: %v", t.String(), err) + } + bf, err := toFloat(b, 64) + if err != nil { + return false, fmt.Errorf("invalid float value for type %s: %v", t.String(), err) + } + return af == bf, nil + + case t.IsString(): + as, ok1 := a.(string) + bs, ok2 := b.(string) + if !ok1 || !ok2 { + return false, fmt.Errorf("invalid string value for type %s", t.String()) + } + return as == bs, nil + + case t.IsBool(): + ab, err1 := toBool(a) + bb, err2 := toBool(b) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid boolean value for type %s", t.String()) + } + return ab == bb, nil + + case t.IsTime(): + at, err1 := toTime(a) + bt, err2 := toTime(b) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid time.Time value for type %s", t.String()) + } + return at.Equal(bt), nil + + case t.IsUUID(): + au, err1 := toUUID(a) + bu, err2 := toUUID(b) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid uuid.UUID value for type %s", t.String()) + } + return au == bu, nil + + case t.IsURI(): + au, err1 := toURI(a) + bu, err2 := toURI(b) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid *url.URL value for type %s", t.String()) + } + return au.String() == bu.String(), nil + + case t.IsBinary(): + ab, err1 := toBinary(a) + bb, err2 := toBinary(b) + if err1 != nil || err2 != nil { + return false, fmt.Errorf("invalid []byte value for type %s", t.String()) + } + return bytes.Equal(ab, bb), nil + + default: + return false, fmt.Errorf("equality not supported for type %s", t.String()) + } +} + +// InRange checks if a value falls within an inclusive range [min, max]. +// Uses the type's comparison logic. Returns true if val is between min and max (inclusive). +// +// Example: +// +// range := ValueRange{min: uint16(10), max: uint16(100)} +// StateType_UI2.InRange(uint16(50), range) // true +func (t StateVarType) InRange(val interface{}, interval *ValueRange) (bool, error) { + if interval == nil { + return true, nil + } + cmp1, err1 := t.Cmp(val, interval.min) + cmp2, err2 := t.Cmp(val, interval.max) + if err1 != nil || err2 != nil { + err := err1 + if err == nil { + err = err2 + } + return false, err + } + return cmp1 >= 0 && cmp2 <= 0, nil +} +----------------- +------- /pmoupnp/devices/services/statevariables/statevartype_typechecking.go ------ +package statevariables + +// IsNumeric checks whether a given StateVarType represents a numeric type or +// not. Numeric types are defined as those that can be used to store number-like +// values. The following types are considered numeric: UI1, UI2, UI4, I1, I2, +// I4, Int, R4, R8, Number and Fixed14_4. +// +// t: StateVarType to check if it's a numeric type or not. +// +// Returns true if the given StateVarType represents a numeric type; false +// otherwise. +func (t StateVarType) IsNumeric() bool { + switch t { + case StateType_UI1, StateType_UI2, StateType_UI4, + StateType_I1, StateType_I2, StateType_I4, + StateType_Int, + StateType_R4, StateType_R8, + StateType_Number, + StateType_Fixed14_4: + return true + default: + return false + } +} + +// IsInteger checks if the state variable type is integer or not. +// +// It returns a boolean value indicating whether the provided StateVarType (t) +// is an integer type or not. The function takes one parameter, t of type +// StateVarType, which represents the state variable type to be checked. +// +// Parameters: - t (StateVarType): The StateVarType to check for comparability. +// +// Returns: bool: If the state variable type is any of the defined integer types +// (StateType_UI1, StateType_UI2, StateType_UI4, StateType_I1, StateType_I2, +// StateType_I4, StateType_Int), it returns true. Otherwise, it returns false. +func (t StateVarType) IsInteger() bool { + switch t { + case StateType_UI1, StateType_UI2, StateType_UI4, + StateType_I1, StateType_I2, StateType_I4, + StateType_Int: + return true + default: + return false + } +} + +// IsSignedInt checks if the state variable type is a signed integer type. +// The function returns true for StateType_I1, StateType_I2, StateType_I4, and +// StateType_Int, otherwise it will return false. This method is part of the +// StateVarType enumeration in statevaluetype package. It takes no parameters +// but operates on the receiver 't' of type StateVarType. +// +// The returned value is a boolean. +func (t StateVarType) IsSignedInt() bool { + switch t { + case StateType_I1, StateType_I2, StateType_I4, StateType_Int: + return true + default: + return false + } +} + +// IsUnsignedInt checks if the state variable type is an unsigned integer. It +// returns a boolean indicating whether or not the current StateVarType +// represents an unsigned integer type, namely: StateType_UI1, StateType_UI2, +// and StateType_UI4. +func (t StateVarType) IsUnsignedInt() bool { + switch t { + case StateType_UI1, StateType_UI2, StateType_UI4: + return true + default: + return false + } +} + +// IsFloat returns a boolean indicating whether the given state variable type +// represents a float number. If the state variable type is one of R4, R8, Number or +// Fixed14_4 it returns true; otherwise, it returns false. +func (t StateVarType) IsFloat() bool { + switch t { + case StateType_R4, StateType_R8, StateType_Number, StateType_Fixed14_4: + return true + default: + return false + } +} + +// IsBool checks if a StateVarType is of type Boolean. It returns true if the +// StateVarType equals to StateType_Boolean, false otherwise. +func (t StateVarType) IsBool() bool { + return t == StateType_Boolean +} + +// IsString reports whether or not the state variable type represents a string +// value. +// +// This method returns true if the StateVarType is either StateType_String or +// StateType_Char, otherwise it returns false. +func (t StateVarType) IsString() bool { + switch t { + case StateType_String, StateType_Char: + return true + default: + return false + } +} + +// IsTime checks whether a given StateVarType is of time type or not. It accepts +// a StateVarType parameter 't' and returns a boolean value based on the check. +// +// The possible values for 't' are: StateType_Date, StateType_DateTime, +// StateType_DateTimeTZ, StateType_Time, StateType_TimeTZ. If 't' is any of +// these types, the function returns true; otherwise, it returns false. +func (t StateVarType) IsTime() bool { + switch t { + case StateType_Date, StateType_DateTime, StateType_DateTimeTZ, + StateType_Time, StateType_TimeTZ: + return true + default: + return false + } +} + +// IsUUID reports whether the receiver represents a UUID (Universally Unique +// Identifier). The StateVarType should be of type StateType_UUID to return +// true. Otherwise, it returns false. +func (t StateVarType) IsUUID() bool { + return t == StateType_UUID +} + +// IsURI checks if the given state variable type is a URI. +// +// This function returns true if and only if the receiver (StateVarType t) +// equals StateType_URI, which represents URIs in UPnP protocol. Otherwise, it +// returns false. +func (t StateVarType) IsURI() bool { + return t == StateType_URI +} + +// IsBinary checks if the given StateVarType is binary type or not. It returns +// true for types StateType_BinBase64 and StateType_BinHex, otherwise it returns +// false. +func (t StateVarType) IsBinary() bool { + switch t { + case StateType_BinBase64, StateType_BinHex: + return true + default: + return false + } +} + +// IsComparable function checks if a StateVarType is comparable or not. +// +// It returns false for binary types (StateType_BinBase64 and StateType_BinHex) +// as they are non-comparable. For all other types, it returns true indicating +// that these types can be compared. +// +// Parameters: - t (StateVarType): The StateVarType to check for comparability. +// +// Returns: bool: A boolean value indicating whether the given StateVarType is +// comparable or not. True means it's comparable, False means it isn't. +func (t StateVarType) IsComparable() bool { + // Tous les types sauf les binaires sont comparables + switch t { + case StateType_BinBase64, StateType_BinHex: + return false + default: + return true + } +} +----------------- +------- /pmoupnp/devices/services/statevariables/statevartype.go ------ +// package stateVariables provides comprehensive handling of UPnP state variable types. +// It includes type identification, value casting, comparison, and range validation +// for all standard UPnP state variable types. +package statevariables + +import ( + "strings" + "time" +) + +// StateVarType represents UPnP state variable types with corresponding Go type mappings. +type StateVarType int + +// Constants defining all supported UPnP state variable types +const ( + StateType_Unknown StateVarType = iota + StateType_UI1 // Unsigned 8-bit integer (Go: uint8) + StateType_UI2 // Unsigned 16-bit integer (Go: uint16) + StateType_UI4 // Unsigned 32-bit integer (Go: uint32) + StateType_I1 // Signed 8-bit integer (Go: int8) + StateType_I2 // Signed 16-bit integer (Go: int16) + StateType_I4 // Signed 32-bit integer (Go: int32) + StateType_Int // Synonymous with i4 (Go: int32) + StateType_R4 // 32-bit floating point (Go: float32) + StateType_R8 // 64-bit floating point (Go: float64) + StateType_Number // Synonymous with r8 (Go: float64) + StateType_Fixed14_4 // Fixed-point decimal (Go: float64) + StateType_Char // Single Unicode character (Go: rune) + StateType_String // Character string (Go: string) + StateType_Boolean // Boolean value (Go: bool) + StateType_BinBase64 // Base64-encoded binary (Go: []byte) + StateType_BinHex // Hex-encoded binary (Go: []byte) + StateType_Date // Date (YYYY-MM-DD) (Go: time.Time) + StateType_DateTime // DateTime without timezone (Go: time.Time) + StateType_DateTimeTZ // DateTime with timezone (Go: time.Time) + StateType_Time // Time without timezone (Go: time.Time) + StateType_TimeTZ // Time with timezone (Go: time.Time) + StateType_UUID // Universally unique identifier (Go: uuid.UUID) + StateType_URI // Uniform Resource Identifier (Go: *url.URL) +) + +// typeNames maps UPnP XML type names to StateVarType constants +var typeNames = map[string]StateVarType{ + "ui1": StateType_UI1, + "ui2": StateType_UI2, + "ui4": StateType_UI4, + "i1": StateType_I1, + "i2": StateType_I2, + "i4": StateType_I4, + "int": StateType_Int, + "r4": StateType_R4, + "r8": StateType_R8, + "number": StateType_Number, + "fixed.14.4": StateType_Fixed14_4, + "char": StateType_Char, + "string": StateType_String, + "boolean": StateType_Boolean, + "bin.base64": StateType_BinBase64, + "bin.hex": StateType_BinHex, + "date": StateType_Date, + "dateTime": StateType_DateTime, + "dateTime.tz": StateType_DateTimeTZ, + "time": StateType_Time, + "time.tz": StateType_TimeTZ, + "uuid": StateType_UUID, + "uri": StateType_URI, +} + +// typeStrings provides string representations for StateVarType constants +var typeStrings = [...]string{ + "unknown", + "ui1", + "ui2", + "ui4", + "i1", + "i2", + "i4", + "int", + "r4", + "r8", + "number", + "fixed.14.4", + "char", + "string", + "boolean", + "bin.base64", + "bin.hex", + "date", + "dateTime", + "dateTime.tz", + "time", + "time.tz", + "uuid", + "uri", +} + +// StateVarTypeFactory takes a string and attempts to build from it a valid +// StateVarType. The input string is cleaned before processing - +// leading/trailing spaces are trimmed, the case is lowered for comparison with +// known types, and if no match is found 'StateType_Unknown' is returned. +func StateVarTypeFactory(s string) StateVarType { + s = strings.ToLower(strings.TrimSpace(s)) + if val, ok := typeNames[s]; ok { + return val + } + return StateType_Unknown +} + +// String returns a string representation of the StateVarType. It defaults to +// "unknown" if the type is not recognized. +func (t StateVarType) String() string { + if int(t) >= 0 && int(t) < len(typeStrings) { + return typeStrings[t] + } + return "unknown" +} + +// BitSize returns the bit size of the StateVarType value, or -1 if not numeric. +// The possible return values are 8 for StateTypes I1, UI1, and 64 for others. +func (t StateVarType) BitSize() int { + // If t isn't numeric, return -1 + if !t.IsNumeric() { + return -1 + } + + // Check the value of t and return the appropriate bit size + switch t { + case StateType_I1, StateType_UI1: + return 8 + case StateType_I2, StateType_UI2: + return 16 + case StateType_I4, StateType_UI4, StateType_Int, StateType_R4: + return 32 + case StateType_R8, StateType_Number, StateType_Fixed14_4: + return 64 + default: + return 64 + } +} + +// NewStateValue creates and returns a new StateValue struct instance with the given name +// and the receiver's state variable type. The created StateValue is initialized with an +// empty map for event conditions. If name is an empty string, it will cause panic in later +// usage. Name is typically used to identify or represent a specific value or condition +// associated with the variable type 't'. +func (t StateVarType) NewStateValue(name string) *StateVariable { + return &StateVariable{ + name: name, + valueType: t, + eventConditions: make(map[string]StateConditionFunc), + } +} + +func (t StateVarType) DefaultValue() interface{} { + switch t { + case StateType_Unknown: + + case StateType_UI1, StateType_UI2, StateType_UI4: + return uint64(0) + + case StateType_I1, StateType_I2, StateType_I4, StateType_Int: + return int64(0) + + case StateType_R4, StateType_R8, StateType_Number, StateType_Fixed14_4: + return float64(0) + + case StateType_Char, StateType_String: + return "" + case StateType_Boolean: + return false + + case StateType_BinBase64: + return "" + case StateType_BinHex: + return "" + case StateType_Date: + return time.Unix(int64(1718985600), 0).UTC() + case StateType_DateTime: + return time.Unix(int64(1718985600), 0).UTC() + case StateType_DateTimeTZ: + return time.Unix(int64(1718985600), 0).UTC() + case StateType_Time: + return time.Unix(int64(1718985600), 0).UTC() + case StateType_TimeTZ: + return time.Unix(int64(1718985600), 0).UTC() + case StateType_UUID: + return "" + case StateType_URI: + return "" + + } + + return nil +} +-----------------