Max Kellermann
d20a8258b4
configure.ac: added variable $enable_encoder
...
$enable_encoder specifies whether one or more encoder plugins are
enabled. This simplifies several checks, and allows easier
integration of more encoder plugins.
2009-04-01 21:54:38 +02:00
Max Kellermann
67e0a71ab3
configure.ac: moved encoder checks to separate encoder section
2009-04-01 21:06:53 +02:00
Max Kellermann
a3823c7657
Merge branch 'master' of git://git.musicpd.org/jrk/mpd
2009-04-01 15:36:24 +02:00
Avuton Olrich
85cecbddde
configure: remove --*-mp3, it is broken and not worth supporting
2009-04-01 06:06:06 -07:00
Jochen Keil
192e29107d
Configure/Make dependencies for cue/cue_tag.h/.c
...
Autoconf/automake support for libcue which
is needed for cue/cue_tag.h/.c.
Libcue will have/has pkg-config support
so this is fairly straightforward.
2009-03-31 22:17:56 +02:00
Max Kellermann
cd2d47b01c
configure.ac: use more MPD_AUTO_PKG()
2009-03-28 21:48:09 +01:00
Max Kellermann
87e0b1adc4
configure.ac: added M4 function MPD_AUTO_PKG() for ALSA
...
MPD_AUTO_PKG() runs pkg-config and then forwards control to
MPD_AUTO_RESULT(). This is a commonly used short cut.
2009-03-28 21:48:07 +01:00
Max Kellermann
33aeac4fcb
Makefile.am: use PULSE_CFLAGS and PULSE_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:39:26 +01:00
Max Kellermann
5164cc1ff8
Makefile.am: use JACK_CFLAGS and JACK_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:38:53 +01:00
Max Kellermann
50c53e4b24
Makefile.am: use SAMPLERATE_CFLAGS and SAMPLERATE_LIBS
...
Don't add those to MPD_CFLAGS and MPD_LIBS.
2009-03-28 21:38:44 +01:00
Max Kellermann
de7c16d1be
configure.ac: removed debug line
2009-03-28 11:12:09 +01:00
Max Kellermann
53ed647b22
configure.ac: fail when ALSA is enabled but not found
...
This patch adds a small autoconf M4 library which deals with
auto-detected features. The default for those features is "auto",
which is like the old default: if the library is present on the
system, enable the feature, disable otherwise. If the user explicitly
enables that feature (--enable-alsa), and the library is not present,
configure must fail, because it cannot fulfill the request.
2009-03-28 11:10:40 +01:00
Max Kellermann
f5548a8654
mpcdec: support the new libmpcdec SV8 API
2009-03-27 19:51:59 +01:00
Max Kellermann
8fa44d53ab
configure.ac: require GLib 2.6
...
We're using GLib macros which were introduced in GLib 2.6, like
G_GNUC_MALLOC. Let's just drop support for GLib versions older than
2.6 instead of adding more complicated compatibility hacks.
2009-03-27 18:04:34 +01:00
Max Kellermann
bba127a392
solaris: new audio output plugin for Solaris /dev/audio
2009-03-16 09:55:10 +01:00
Avuton Olrich
f35432af5a
configure: Merge lame*encoder to lame
2009-03-16 08:44:48 +01:00
Avuton Olrich
b356bcf6fa
configure: don't warn just because we don't have an optional library.
2009-03-16 08:44:46 +01:00
Avuton Olrich
e773cfa32b
configure: error out against streaming output, not encoder.
2009-03-16 08:44:44 +01:00
Avuton Olrich
f1fb4e99a6
configure: Always run pkg-config for shout, define AC_DEFINE if enabled
...
[mk: don't run pkg-config when shout is disabled]
2009-03-16 08:44:41 +01:00
Avuton Olrich
04b092bbfe
configure: add shout autoconf argument.
2009-03-15 12:37:24 -07:00
Avuton Olrich
7b5c658f7e
configure: Fail if trying to build with streaming output and no encoder
2009-03-15 12:17:11 -07:00
Avuton Olrich
f5c75d8846
configure: Move encoders to their own report section.
2009-03-15 12:02:43 -07:00
Avuton Olrich
a672cf1c63
configure: replace all instances shout*[mp3|ogg] with [lame|oggvorbis]*encoder
2009-03-15 11:46:44 -07:00
Avuton Olrich
50c2dde5b5
configure.ac: Enable ENCODER if httpd_output, even if SHOUT is disabled.
2009-03-15 19:05:32 +01:00
Max Kellermann
e62580db0b
httpd: new output plugin to replace "shout"
...
Let's get rid of the "shout" plugin, and the awfully complicated
icecast daemon setup! MPD can do better if it's doing the HTTP server
stuff on its own. This new plugin has several advantages:
- easier to set up - only one daemon, no password settings, no mount
settings
- MPD controls the encoder and thus already knows the packet
boundaries - icecast has to parse them
- MPD doesn't bother to encode data while nobody is listening
This implementation is very experimental (no header parsing, ignores
request URI, no icy-metadata, ...). It should be able to suport
several encoders in parallel in the future (with different bit rates,
different codec, ...), to make MPD the perfect streaming server. Once
MPD gets multi-player support, we can even mount several different
radio stations on one server.
2009-03-15 03:32:34 +01:00
Max Kellermann
a7318a6476
configure.ac: add -pg to MPD_LIBS with --enable-gprof
2009-03-11 09:20:29 +01:00
Max Kellermann
940af669b3
poison: added valgrind support
...
If the header valgrind/memcheck.h is available, add
VALGRIND_MAKE_MEM_NOACCESS() and VALGRIND_MAKE_MEM_UNDEFINED()
support, which enables nice warnings in the valgrind memory checker.
2009-03-09 19:10:18 +01:00
Max Kellermann
2ba5278440
configure.ac: fix --enable-bzip2 and --enable-iso9660 variable name
...
Another "remove redundant explicit $enableval assignments" breakage.
2009-03-07 23:05:25 +01:00
Max Kellermann
9ed409cdcc
configure.ac: fix --enable-X variable names
...
The patch "remove redundant explicit $enableval assignments" broke
several options with non-standard variable names.
2009-03-07 15:50:19 +01:00
Avuton Olrich
55b0fed293
configure: global indention and trim line wc to 80 when practical.
2009-03-06 08:30:59 -08:00
Avuton Olrich
771c061964
configure: Move the faad stuff to m4/faad.m4
2009-03-06 08:30:59 -08:00
Avuton Olrich
aebb522639
configure: No capitalization on beginning of help strings.
...
Most strings have no capitalization at the beinning, make all strings
non-capital.
2009-03-06 08:30:59 -08:00
Avuton Olrich
67cecf4e95
configure: specify that faad2 prefix is optional in the help string
2009-03-06 08:30:59 -08:00
Avuton Olrich
cf1c27a232
configure: trim down the line length for the faad help strings
2009-03-06 08:30:59 -08:00
Avuton Olrich
775a277a10
configure: trim down the line length for the zeroconf help string
2009-03-06 08:30:59 -08:00
Avuton Olrich
7c907b9d9d
configure: trim down the Tremor AC_ARG_WITH() statements
2009-03-06 08:30:59 -08:00
Avuton Olrich
bc65890abf
configure: Group libmad stuff together, rename --enable-mp3 --enable-mad
2009-03-06 08:30:59 -08:00
Avuton Olrich
721b6f3e61
configure: remove redundant explicit $enableval assignments.
2009-03-06 08:30:59 -08:00
Avuton Olrich
38ead091f9
configure: remove duplicate LAME report, unify rest under SHOUTcast header.
2009-03-05 23:25:50 -08:00
Avuton Olrich
7cd9dbd574
configure: make all tests the same, when possible.
2009-03-05 23:17:00 -08:00
Avuton Olrich
cd52258211
configure: Add 'Streaming Support' section to the configure display.
...
Add 'Streaming Support section to the configure display, clarify
the text and unify with the rest of the display.
2009-03-06 06:51:00 +01:00
Avuton Olrich
6ab53cf62a
configure: display the status of lastfm protocol support
2009-03-06 06:50:50 +01:00
Avuton Olrich
f6413d2d5f
configure: Fix configure warning presented by lastfm radio.
...
The configure problem was:
./configure: line 6934: ,: command not found
2009-03-05 16:46:19 -08:00
Max Kellermann
4220e6b0ad
input_lastfm: new input plugin for last.fm radio
...
The lastfm input plugin enables MPD to play lastfm:// URLs. This
plugin is not complete yet: it plays only the first song in the
last.fm playlist, and the playlist parser isn't even implemented
properly.
2009-03-02 23:11:31 +01:00
Max Kellermann
b4f84fab34
configure.ac: make "xmlto" optional
...
Even when --enable-documentation is passed, don't abort if "xmlto" was
not found.
2009-03-01 01:26:04 +01:00
Avuton Olrich
88793c7189
configure: don't fail if pipe_output is the only output plugin.
2009-02-28 08:13:31 -08:00
Avuton Olrich
731cc8cf08
configure: move id3 and lame to 'Other Features'
2009-02-28 08:09:43 -08:00
Avuton Olrich
d1d4c3245c
configure: don't fail if mp4 is the only enabled input plugin.
2009-02-28 07:55:39 -08:00
Avuton Olrich
a31f3c89fb
configure: move the configure status stuff in alphabetical order.
2009-02-28 07:50:13 -08:00
Avuton Olrich
374e090985
pipe: Fix wording in configure and add configure status.
2009-02-28 07:41:05 -08:00
Michal Nazarewicz
cabbf7ab4a
pipe: new audio output plugin which runs a command
...
[mk: adapted to new output plugin API]
2009-02-28 16:11:59 +01:00
Max Kellermann
bdb3129f18
configure.ac: declare AM_CFLAGS
...
Moved generic compiler options to AM_CFLAGS. MPD_CFLAGS/MPD_LIBS will
hopefully fade away one day, in favor of more fine-grained variables.
2009-02-25 16:46:07 +01:00
Max Kellermann
d89ba3bcce
configure.ac: fix comma errors
...
Removed superfluous commas.
2009-02-24 10:00:21 +01:00
Max Kellermann
3b1a9aeca0
Makefile.am: no recursive makefiles
...
Recursive Makefiles are inefficient and error prone (no proper way to
declare dependencies). Since there's no disadvantage in having one
single Makefile, let's do it.
2009-02-23 10:04:51 +01:00
Max Kellermann
f6e5c00726
shout: use the new encoder API
...
Removed shout's encoder plugin API in favor of the new generic encoder
plugin API.
2009-02-22 17:18:28 +01:00
Max Kellermann
f7c685f1ab
encoder: added lame mp3 encoder
...
This new LAME encoder plugin is based on the existing shout_mp3.c
plugin.
2009-02-22 17:18:03 +01:00
Max Kellermann
3a6619d62c
encoder: added vorbis encoder
...
This new vorbis encoder plugin is based on the existing shout_ogg.c
plugin.
2009-02-22 17:17:26 +01:00
Max Kellermann
a9dde676be
added the encoder API
...
The new generic encoder API will replace shout's custom encoder API.
2009-02-22 17:11:14 +01:00
Max Kellermann
9f8740a0d6
configure.ac: check ${host_os} instead of ${host}
...
The configure.ac script does not care about the host architecture, it
only cares about the OS. Use ${host_os} instead of ${host} to
simplify the matching expressions.
2009-02-18 23:07:13 +01:00
Max Kellermann
f2717a7139
configure.ac: added AC_CANONICAL_HOST
...
Without AC_CANONICAL_HOST, ${host_os} etc. are not defined.
2009-02-18 23:01:08 +01:00
Max Kellermann
54387d1451
configure.ac: added switch for test programs
...
The switch syntax is "--enable-test". There are no test programs yet.
2009-02-18 19:27:05 +01:00
Max Kellermann
51c59f6228
mp4ff: use faacDecInit2() to find the AAC track
...
Use faacDecInit2() instead of AudioSpecificConfig() to detect the AAC
track in the MP4 file. This has a great advantage: it initializes the
libfaad decoder, which the caller would normally do anyway - but now
we can go without the AudioSpecificConfig() call. When decoder==NULL
(called from mp4_tag_dup()), fall back to a mp4ff_get_track_type()==1
check, like other audio players do.
2009-02-18 18:39:12 +01:00
Max Kellermann
ef64449cb6
doc: generate API documentation with doxygen
...
When configured with --enable-documentation, use doxygen.
2009-02-13 09:11:22 +01:00
Max Kellermann
f6c8dd4961
configure.ac: always check for C++ compiler
...
Currently, only the sidplay decoder plugin requires C++, and in all
other cases, MPD could build well without a C++ compiler.
Unfortunately, autoconf/automake are confused when we have a
conditional AC_PROG_CXX check. We could add lots of workarounds for
individual problems, but let's just always require a C++ compiler, and
forget about this autotools limitation.
2009-02-12 18:14:14 +01:00
Max Kellermann
1492339463
wildmidi: new decoder plugin for MIDI files
2009-02-12 16:43:18 +01:00
Max Kellermann
e56a90f3b3
fluidsynth: new decoder plugin for MIDI files
...
There are a few problems left in this plugin:
- fluidsynth decodes in real time, while MPD prefers to buffer as
quickly as possible; as a workaround, this plugin uses a timer
object to synchronize with real-time playback
- I don't know yet how fluidsynth tells me when the song has ended
- the "soundfont" configuration setting is not yet documented, and it
will likely change soon (in favor of a per-decoder configuration
block)
2009-02-12 08:43:26 +01:00
Max Kellermann
de2e13cafe
configure.ac: define conditional am__fastdepCXX
...
When the sidplay plugin is disabled, "./configure" does not look for
the C++ compiler. This creates an odd situation: automake requires
the am__fastdepCXX conditional, although configure did not generate
it. Work around this autotools limitation by manually disabling
am__fastdepCXX.
2009-02-11 22:05:46 +01:00
Max Kellermann
1136f6fb7a
sidplay: new decoder plugin for playing C64 SID files
2009-02-11 20:31:17 +01:00
Max Kellermann
82fee1390c
configure.ac: removed misplaced comma
2009-02-11 19:58:53 +01:00
Max Kellermann
bee688e99a
configure.ac: define HAVE_FFMPEG after all checks
...
Don't define HAVE_FFMPEG if the ffmpeg libraries were found via
pkg-config, but ffmpeg support was disabled because
avcodec_decode_audio2() is not available.
2009-02-09 22:22:54 +01:00
Max Kellermann
b6e5c24878
configure.ac: raised protocol version to "0.15.0"
...
The protocol has been extended since MPD 0.14: playlist ranges,
stickers. About time to give the protocol a new version number!
2009-02-04 18:52:34 +01:00
Max Kellermann
cd98a72ca6
configure.ac: make DocBook processing optional
...
Disable the HTML documentation generator by default. Most users will
pick it from the web site.
2009-02-04 15:25:57 +01:00
Max Kellermann
5900827675
configure.ac: detect jack_set_info_function()
...
jack_set_info_function() is not provided by older libjack versions.
Attempt to detect if it is available.
2009-01-30 19:43:25 +01:00
Max Kellermann
864dee823d
configure.ac: disable MMS by default
...
MMS streaming is experimental; sync the default value with the help
text.
2009-01-29 23:44:24 +01:00
Max Kellermann
caa4d28f04
added support for the MMS protocol
...
This patch implements the MMS protocol, by using libmms. It is quite
experimental: it does not support seeking yet, and it is currently
using synchronous I/O, which causes MPD to hang while waiting for the
server.
2009-01-29 21:42:10 +01:00
Max Kellermann
c77c61bf3f
oggvorbis: define HAVE_OGGVORBIS when tremor is enabled
...
When tremor (libvorbisidec) is used, HAVE_OGGVORBIS was not defined.
2009-01-15 22:54:31 +01:00
Max Kellermann
9069a244a4
configure.ac: added the --enable-sqlite option
...
MPD will (optionall) use sqlite databases in the future. Add a
configure option to enable that. There is no code yet to really use
sqlite, so the practical use of this patch is limited.
2009-01-12 09:56:14 +01:00
Max Kellermann
c057af6cea
configure.ac: removed duplicate PKG_PROG_PKG_CONFIG
2009-01-11 17:39:23 +01:00
Max Kellermann
ad7b7a1664
configure.ac: declare MPD_LIBS and MPD_CFLAGS first
...
Declare and initialize MPD_LIBS and MPD_CFLAGS before the "OS specific
defaults" section.
2009-01-06 09:07:02 +01:00
Max Kellermann
b8a1cf30e8
configure.ac: moved checks to argument declarations I
...
Zeroconf, curl, libsamplerate. No libid3tag for now, because
libid3tag should be automatically disabled when no decoders using it
are enabled.
2009-01-05 09:44:48 +01:00
Max Kellermann
2856be540f
configure.ac: moved checks to argument declarations I
...
Don't separate basic options from their according tests. Due to lots
of interdependencies, we won't do that for the plugins yet.
2009-01-05 09:43:07 +01:00
Max Kellermann
3f4bfd22c6
configure.ac: reordered plugin types
...
Print input plugins first, then archive, metadatab, decoder,
converter, encoder, output plugins.
2009-01-05 09:41:45 +01:00
Max Kellermann
283bca7523
configure.ac: moved build options down
...
Initialize the CFLAGS (warnings, errors) after all the libraries,
because some library checks may be broken with -Werror or -pedantic.
2009-01-05 09:31:11 +01:00
Max Kellermann
0fb21e67ef
configure.ac: use AC_CHECK_HEADERS to check for locale.h
...
AC_CHECK_HEADERS defines HAVE_LOCALE_H, so we don't have to manually
define HAVE_LOCALE.
2009-01-05 09:31:09 +01:00
Max Kellermann
694a919b8e
configure.ac: moved mandatory checks up
...
First do the checks for mandatory stuff (libc features, glib,
pkg-config), then all the options.
2009-01-05 09:31:04 +01:00
Max Kellermann
e178a6f6a7
configure.ac: removed obsolete checks
...
Don't check for inttypes.h and langinfo.h.
2009-01-05 09:31:02 +01:00
Max Kellermann
ac0fe98ffb
use GLib byte order macros
2009-01-05 08:17:22 +01:00
Max Kellermann
c844bd602d
configure.ac: disable ID3 support when libid3tag was not found
...
Fix a typo.
2009-01-05 08:04:43 +01:00
Max Kellermann
1cad0c5b1d
configure.ac: detect libid3tag without pkg-config
...
libid3tag comes without a pkg-config file, and it is usually added by
distribution packages. For those without .pc file, attempt to
auto-detect the library with AC_CHECK_LIB.
2009-01-04 15:31:06 +01:00
Max Kellermann
4e0973a8f7
configure.ac: link with -lws2_32 on WIN32
...
All socket functions are provided by ws2_32.dll.
2009-01-03 13:21:25 +01:00
Max Kellermann
71e7ce5d8e
main: use the GLib main loop
...
This is a rather huge patch, which unfortunately cannot be splitted.
Instead of using our custom ioops.h library, convert everything to use
the GLib main loop.
2008-12-30 19:24:39 +01:00
Max Kellermann
49fa9708d5
zeroconf: moved code to zeroconf-avahi.c and zeroconf-bonjour.c
...
Moved implementation specific code to their own sources, internal
declarations in zeroconf-internal.h.
2008-12-30 16:43:58 +01:00
Max Kellermann
274b919966
main: use g_setenv() instead of setenv()
...
Removed the fallback setenv() implementation for solaris.
2008-12-29 17:37:40 +01:00
Max Kellermann
702d6a641d
configure.ac: append archive libraries to $MPD_LIBS
...
All archive plugins used to overwrite $MPD_LIBS, ignoring the existing
value. Make them append instead, keeping the old value.
2008-12-29 11:27:11 +01:00
Max Kellermann
dfe235900f
configure.ac: check for archive libraries only if enabled
...
Don't bother to look for libbz2, libzzip and libiso9660 if the plugins
are disabled.
2008-12-29 10:01:33 +01:00
Max Kellermann
8a8fdfb0ad
configure.ac: removed pthread checks
...
We're now using GLib threading.
2008-12-29 08:20:19 +01:00
Max Kellermann
c01aa53e6a
log: support syslog()
...
Allow logging to syslog if log_file is configured to "syslog".
2008-12-28 19:48:53 +01:00
Viliam Mateicka
d838a1ad24
decoder: new plugin using modplug library
2008-12-28 17:11:18 +01:00
Viliam Mateicka
166d326950
configure.ac: fixed description to bzip2 compile option
2008-12-27 20:16:00 +01:00
Avuton Olrich
e18ded8ded
Add an "Archive support" section to the configure results screen.
2008-12-27 09:54:00 -08:00