Go to file
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
CMake libsndfile.cmake: Set __USE_MINGW_ANSI_STDIO as needed 2016-07-07 19:53:00 +10:00
doc Version 1.0.28 2017-04-02 18:52:51 +10:00
examples Compile tests only when running 'make check' 2017-01-28 21:16:21 +11:00
M4 Add API exported functions visibility control 2017-03-15 06:13:19 +11:00
man Fix spelling errors 2016-07-20 20:05:38 +10:00
Octave Do not use old variable INCLUDES and use modern AM_INIT_AUTOMAKE invocation. 2013-04-07 20:05:08 +10:00
programs Make 'test-sndfile-metadata-set.py' py2/py3 compatible 2017-01-28 21:16:21 +11:00
regtest Compile 'sndfile-regtest' only when sqlite3 is available 2017-01-28 21:16:21 +11:00
Scripts Scripts/static-deps-build.mk: Update Vorbis and FLAC versions 2017-03-26 11:50:49 +11:00
src Include sfconfig.h as needed 2017-04-03 18:54:49 +10:00
tests Include sfconfig.h as needed 2017-04-03 18:54:49 +10:00
Win32 Remove cruft from Win32 dir. 2008-10-08 21:19:23 +11:00
.editorconfig Add .editorconfig 2017-04-03 20:23:49 +10:00
.gitattributes Add .gitattributes file 2016-09-06 18:17:43 +10:00
.gitignore Remove 'INSTALL' file, as it is part of the cruft automake installs always 2017-01-28 21:16:21 +11:00
.travis.yml .travis.yml: Switch from Ubuntu Precise to Trusty 2015-12-07 19:28:22 +11:00
AUTHORS AUTHORS : Add contributors. 2014-09-02 06:17:37 +10:00
autogen.sh autogen.sh: Only add hook if .git exists 2016-11-14 05:54:15 +11:00
Building-for-Android.md Add file Building-for-Android.md 2016-07-16 22:07:41 +10:00
ChangeLog Fix some typos. 2014-10-27 06:17:57 +11:00
CMakeLists.txt CMake: More fixes 2016-07-03 14:14:17 +10:00
configure.ac configure.ac: Test if -Wvla is supported before adding it 2017-04-03 18:48:38 +10:00
CONTRIBUTING.md Add CONTRIBUTING.md, closes #202 2017-03-14 19:40:21 +11:00
COPYING First snapshot of the public project. 2007-05-14 19:55:24 +10:00
echo-install-dirs.in Use pkgconfigdir variable as it is not sure it will be libdir/pkgconfig. 2013-04-28 21:35:08 +10:00
libsndfile.spec.in libsndfile.spec.in : Change field name 'URL' to 'Url'. 2011-12-19 20:22:34 +11:00
make_lite.py Clean out cruft. 2008-04-05 20:13:47 +11:00
Makefile.am Add .editorconfig 2017-04-03 20:23:49 +10:00
NEWS Version 1.0.28 2017-04-02 18:52:51 +10:00
README Version 1.0.28 2017-04-02 18:52:51 +10:00
README.md Add CONTRIBUTING.md, closes #202 2017-03-14 19:40:21 +11:00
sndfile.pc.in sndfile.pc.in: missing update from 95828ca2 2016-04-30 07:29:07 +10:00

libsndfile

Build Status

libsndfile is a C library for reading and writing files containing sampled audio data.

Hacking

The canonical source code repository for libsndfile is at https://github.com/erikd/libsndfile/.

You can grab the source code using:

$ git clone git://github.com/erikd/libsndfile.git

For building for Android see BuildingForAndroid.

There are currently two build systems; the official GNU autotool based one and a more limited and experimental CMake based build system. Use of the CMake build system is documented below.

Setting up a build environment for libsndfile on Debian or Ubuntu is as simple as:

sudo apt install autoconf autogen automake build-essential libasound2-dev \
    libflac-dev libogg-dev libtool libvorbis-dev pkg-config python

For other Linux distributions or any of the *BSDs, the setup should be similar although the package install tools and package names may be slightly different.

Similarly on Mac OS X, assuming brew is already installed:

brew install autoconf autogen automake flac libogg libtool libvorbis pkg-config

Once the build environment has been set up, building and testing libsndfile is as simple as:

$ ./autogen.sh
$ ./configure --enable-werror
$ make
$ make check

The CMake build system.

The CMake build system is still experimental and probably only works on linux because it still relies on GNU autotools for bootstrapping. Using it as simple as:

$ Scripts/cmake-build.sh

I would be happy to accept patches to make the CMake build system more portable.

Submitting Patches.

See CONTRIBUTING.md for details.