Commit Graph

64 Commits

Author SHA1 Message Date
Jörn Heusipp
bd951f9a47 Make sndfile.h independent of build system variables
Fixes <https://github.com/libsndfile/libsndfile/issues/868>.
2022-09-12 10:39:37 +02:00
evpobr
269ae40a3b Fix CMake build from Autotools tarball, closes #816 2022-04-03 12:05:00 +05:00
evpobr
7e2db6e8ef Create SECURITY.md 2021-11-18 09:57:37 +05:00
DavidKorczynski
110e26d9c2
Add new fuzzer for OSS-Fuzz (#769)
Adds a fuzzer targeting sf_read_double, sf_read_int and sf_read_short.

Co-authored-by: evpobr <evpobr@gmail.com>
2021-08-15 09:38:48 +05:00
evpobr
383e6e90e4 cmake: Read ABI version from configure.ac 2021-05-25 15:31:11 +05:00
evpobr
494a6d633e autotools: Use ABI version for symbol scripts 2021-05-21 15:27:37 +05:00
Arthur Taylor
163f725631 Rename mp3 -> mpeg (file sources and function names) 2021-03-25 10:26:15 -07:00
Arthur Taylor
663a59aa6e mpeg: Add MPEG Encode, Decode and Tests
Use SF_FORMAT_MP3 major and SF_FORMAT_MPEG_LAYER_(I|II|III) subformats.
2021-03-25 10:26:15 -07:00
evpobr
89bed47c45 Add CHANGELOG.md
Other changes:

* Rename the old `NEWS` file to `NEWS.OLD`.
* Update documentation links.
2021-02-01 09:15:19 +05:00
evpobr
f87a1ffe9c Make SSE2 configurable for CMake builds #666
See ENABLE_SSE2 option explanation in README.md.
2020-12-11 15:12:54 +05:00
evpobr
dc982dad37 Improve CMake SQLite3 find module
Make it compatible with official find module (CMake >= 3.14).
2020-10-27 17:01:46 +05:00
evpobr
942acc65bf Update site documentation
* Use GitHub's Jekyll static site generator.
* Move all documentation to docs/ directory.
* Convert HTML to Markdown.
2020-10-19 16:52:27 +05:00
evpobr
4a253ba0dc Update documentaton links 2020-10-05 12:21:19 +05:00
Max Dymond
20c65fecd9 Add ossfuzz support for libsndfile
Fixes #476

Add a fuzzer (`sndfile_fuzzer`) which can be compiled and run
by the OSS-Fuzz infrastructure.
2020-08-28 14:41:37 +05:00
evpobr
acfcd147da Move public headers to include directory 2020-08-26 11:59:26 +05:00
evpobr
4f6f65752b doc/index.html: Extract formats table to formats.html
It is too wide for index page, especially for mobile devices.

Now it is moved to formats.html.
2020-08-23 12:27:21 +05:00
evpobr
73e09a1705 CMake: Fix Vorbis dependency handling
* Fix Vorbis not found for CMake < 3.17 (closes #530)
* Update FindVorbis module documentation
* Remove unused VorbisEnc.cmake
* Fix bug in SndFileConfig.cmake.in
2020-08-02 16:13:38 +05:00
evpobr
e6909192ce CMake improvements
* Fix Ogg and Opus imported targets
* Better SndFileConfig.cmake module with dependency checks
* Fix config-file package installation directory
* Prefer config-file package mode for Windows CI builds
* Update README.md
* Allow CMAKE_MSVC_RUNTIME_LIBRARY option to set MSVC ABI
* Fix some bugs in FindFLAC.cmake (closes #505)
2020-03-08 17:34:27 +11:00
Arthur Taylor
326e4533f3 Opus file support
Ogg: Introduce new functions ogg_sync_fseek(), ogg_ftell(), ogg_next_page(),
ogg_stream_next_page(), ogg_sync_last_page_before(), and
ogg_stream_unpack_page(). Use ogg_sync_* for ogg_read_first_page(). Bump libogg
version requirement from 1.1.3 to 1.3.0 as LibOgg 1.3.0 is required for
ogg_stream_pageout_fill() and ogg_stream_flush_fill().

Opus: Add opus support. Document added commands
SFC_(GET|SET)_ORIGINAL_SAMPLERATE. Added or extended tests ogg_opus_test,
compression_size_test, floating_point_test, lossy_comp_test, string_test,
external_libs_test. Change Opus to non-experimental.
2019-02-20 19:30:30 +11:00
evpobr
6710ff3fc6 CMake: updates & fixes 2018-08-25 12:16:36 +10:00
David Seifert
f6818f39d7 More portable Make constructs in Makefile.am 2018-04-21 09:23:25 +10:00
David Seifert
818ad38a7f Makefile.am: Use more portable suffix rules
Closes: https://github.com/erikd/libsndfile/issues/369
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2018-03-25 11:55:02 +11:00
Arthur Taylor
64e5a3f182 Add NMS ADPCM codec implementation and support
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2018-02-03 19:44:33 +11:00
Jan Starý
2acea2723a sndfile-play: Remove BEOS support
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2018-02-03 13:10:10 +11:00
Erik de Castro Lopo
dfe09db021 Makefile.am: Resurect test-tarball target 2017-10-28 12:55:50 +11:00
David Seifert
b17f14d613 Make git checkout buildable out-of-tree
Currently, libsndfile requires in-tree bootstrapping and creation
of the tarball. For Gentoo, some users might want to build the
latest git checkout. This commit makes out-of-tree building of all
the necessary dependencies possible.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2017-10-08 18:23:58 +11:00
David Seifert
e6c42ff027 Make build system completely non-recursive 2017-09-26 19:35:56 +10:00
David Seifert
28f7f80a7e Use -C instead of cd'ing into dir for $(MAKE) 2017-06-06 06:41:55 +10:00
David Seifert
2e24132b84 Do not add Makefile.am in M4/ dir 2017-06-06 06:41:55 +10:00
evpobr
9ebb96ca72 More CMake polishing
* Add win32_ordinal_test to test suite
* Add examples targets
* Add sndfile-regtest target
* Improve compatibility with MSVC
* Check direct.h header
* Add define to enable math constants
* Don't use CTest if tests are disabled
* Make packaging configurable
* Suppress annoying MSVC warnings
* Add ENABLE_BOW_DOCS option
* Add ENABLE_STATIC_RUNTIME option
* Add package config support
* Tune large files support messages
* Don't build tests when static libs disabled
* Use VS solution folders feature
* Fix option value set twice
* Rename sndfile target to sndfile-shared
* Mark M_LIBRARY variable as advanced
* Fix config packages installation directory
* Rename ENABLE_PACKAGING option for clarity
* CPack fixes
* Add CMake modules to Makefile.am
* Update documentation

Closes: https://github.com/erikd/libsndfile/issues/71
2017-04-25 19:21:40 +10:00
Erik de Castro Lopo
7c402ad94b Fix 'make distcheck' 2017-04-06 19:29:22 +10:00
Erik de Castro Lopo
1c0ea87cc3 Rework CMake build system
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2017-04-05 19:38:36 +10:00
evpobr
e427dd8674 Add .editorconfig
EditorConfig (http://editorconfig.org/) helps developers define and
maintain consistent coding styles between different editors and IDEs.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Closes: https://github.com/erikd/libsndfile/pull/173
2017-04-03 20:23:49 +10:00
David Seifert
1bfb5a908f Refactor generation of test-suite
It's more preferable to generate the testsuite when running 'make dist'
or 'make distcheck' instead of running it from the configure script.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2017-01-28 21:16:21 +11:00
David Seifert
0fd257e432 Make programs optional
Some distributions build multiple ABIs (x86 and am64) to support
legacy platforms. For the non-native ABIs, building the programs
and examples is pointless and a waste of resources.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
2017-01-28 21:16:21 +11:00
Erik de Castro Lopo
6776ceafa8 CMake: Detect and link external libs (FLAC/vorbis/ogg)
Works on Linux, not tested elsewhere.
2016-07-02 21:16:40 +10:00
Erik de Castro Lopo
f59bab6215 Makefile.am: Add CMake files to EXTRA_DIST 2016-07-02 17:25:15 +10:00
Erik de Castro Lopo
47239eb126 Makefile.am : Fix DISTCHECK_CONFIGURE_FLAGS.
The required flag changed from --enable-gcc-werror to --enable-werror
some time ago.
2014-12-06 19:28:24 +11:00
Erik de Castro Lopo
a463af3946 Scripts/ : Add to EXTRA_DIST.
Add: Scripts/android-configure.sh Scripts/linux-to-win-cross-configure.sh
Rename: build-test-tarball.mk.in -> Scripts/build-test-tarball.mk.in
2013-09-08 13:06:37 +10:00
Erik de Castro Lopo
0d6a1b0725 Make sure checkprograms are built as part of 'make test-tarball'. 2013-04-05 19:21:18 +11:00
Erik de Castro Lopo
66c5d9490c configure.ac : Use PKG_INSTALLDIR when it exists. 2013-02-05 19:44:05 +11:00
Erik de Castro Lopo
5983e8ca46 Move ACLOCAL_AMFLAGS setup to Makefile.am. 2011-08-07 19:54:24 +10:00
Erik de Castro Lopo
24fac32d57 Add 'checkprograms' Make target. 2011-07-07 19:47:51 +10:00
Erik de Castro Lopo
c114f21ecf Makefile.am : Add *~ to CLEANFILES. 2010-10-06 22:16:41 +11:00
Erik de Castro Lopo
369bef7747 Makefile.am : Make sure everything is built before building test-tarball. 2009-09-27 21:46:30 +10:00
Erik de Castro Lopo
2e4c8c26a0 build-test-tarball.mk.in : Add a Make script to build a tarball of all the test binaries and the test wrapper script. 2009-09-27 13:32:41 +10:00
Erik de Castro Lopo
d10b3d6bc3 Makefile.am : Remove Mingw-make-dist.sh from EXTRA_DIST. 2009-03-25 21:47:20 +11:00
Erik de Castro Lopo
50112e2bb7 Move real utility programs from examples/ to new directory programs/ . 2008-10-21 22:49:55 +11:00
Erik de Castro Lopo
ebb11f24d3 Makefile.am : Add DISTCHECK_CONFIGURE_FLAGS. 2008-02-10 10:26:05 +11:00
Erik de Castro Lopo
947657361e Fix build when Octave headers are not present. 2007-09-07 10:16:40 +10:00