Commit Graph

72 Commits

Author SHA1 Message Date
Max Kellermann
dd3752956a m4/mpd_auto.m4: fix inverted assignment after auto-detection
Broken by commit cdbdcec
2014-11-24 18:27:04 +01:00
Max Kellermann
1a61b01315 configure.ac: add macro MPD_AUTO 2014-11-23 07:39:05 +01:00
Max Kellermann
c643b6ff16 configure.ac: add macro MPD_ENABLE_AUTO_PKG_LIB 2014-11-22 23:50:21 +01:00
Max Kellermann
b3f5b4932c configure.ac: add macro MPD_ENABLE_AUTO_PKG
Simplify the definition of many build options.
2014-11-21 22:19:57 +01:00
Max Kellermann
cdbdcec715 m4/mpd_auto.m4: reduce "eval" bloat
Don't assign bash variables; instead, use the m4 parameters directly.
2014-11-21 14:39:33 +01:00
Max Kellermann
bc5a53574c decoder/faad: remove workaround for ancient libfaad2 ABI bug
Many years ago, FAAD had a serious ABI bug: the NeAACDecInit()
prototype in its header declared the "samplerate" parameter to be
"unsigned long *", but internally, the function assumed it was
"uint32_t *" instead.  On 32 bit machines, that was no difference, but
on 64 bit, this left one portion of the return value uninitialized;
and worse, on big-endian, the wrong word was filled.  This bug had to
be worked around in MPD (commit 9c4e97a6).

A few months later, the bug was fixed in the FAAD CVS in commit 1.117
on file libfaad/decoder.c; the commit message was:

 "Use public headers internally to prevent duplicate declarations"

The commit message was too brief at best; the problem was not
duplicate declarations, but a prototype mismatch.  No mention of the
bug fix in the ChangeLog.

The MPD project never learned about this bug fix, and so MPD would
always pass a "uin32_t *" dressed up as a "unsigned long *".  Nearly 6
years later, it's about time to fix this second ABI problem.  Let's
kill the workaround!
2014-10-25 20:42:50 +02:00
Max Kellermann
30dd29e251 configure.ac: improve database dependency checks
Abort if --enable-libmpdclient or --enable-upnp are used with
--disable-database, instead of ignoring the mismatch silently.
2014-10-24 23:43:21 +02:00
Max Kellermann
0801b3f495 configure.ac: check for Boost 2014-06-11 09:27:17 +02:00
Max Kellermann
657f00fe36 m4: update to pkg-config 0.28 2014-06-11 09:27:17 +02:00
Max Kellermann
044c81b644 m4: update to autoconf-archive 20140228 2014-06-11 08:08:33 +02:00
Max Kellermann
b10276ff98 m4/ucred.m4: don't define _GNU_SOURCE
Not necessary anymore, because we enable this flag unconditionally
now.
2014-03-15 18:31:54 +01:00
Max Kellermann
797bbeabeb m4: add missing file ax_pthread.m4 from autoconf-archive 2014-03-01 06:24:55 +01:00
Denis Krjuchkov
46bab7e4b9 Add infrastructure for using multiple event loops
This change adds two configuration options:

  --with-eventloop=[glib|internal|auto]
  --with-pollmethod=[epoll|auto]

First allows switching between GLib event loop and internal one.
Second chooses backend to use for internal event loop.
Conditional compilation symbols are changed accordingly.
Additional helper macro MPD_OPTIONAL_FUNC_NODEF is added as well.
2013-11-27 17:28:36 +06:00
Max Kellermann
a0105b45ae configure.ac: add function MPD_AUTO_LIB and use it 2013-10-17 00:09:08 +02:00
Max Kellermann
fdc7d13ad1 configure.ac: pass option name to MPD_OPTIONAL_FUNC() 2013-08-07 19:23:00 +02:00
Max Kellermann
47e16dbee3 configure.ac: add option --enable-eventfd
Remove the runtime check for eventfd(), hard-code the feature once
it's been selected at compile time.  The class WakeFD is splitted into
EventFD and EventPipe, using WakeFD as a macro diversion.
2013-08-06 23:32:21 +02:00
Max Kellermann
3dd8beb380 decoder/faad: use the newer NeAAC* API
Drop support for the old faacDec* API.
2013-01-29 16:17:15 +01:00
Max Kellermann
ae77406b8e faad.m4: clear FAAD_LIBS if faad got auto-disabled
Fixes build errors on systems without libfaad, when --disable-aac was
not specified.
2013-01-29 15:52:43 +01:00
Max Kellermann
2d16069211 faad.m4: don't add -I. to temporary CFLAGS 2013-01-29 15:51:31 +01:00
Max Kellermann
d18314fa05 faad.m4: remove faad --with-* options
Some of these are not implemented properly and never worked.  And the
others are not useful; you can easily set environment variables
instead.
2013-01-29 15:40:44 +01:00
Max Kellermann
88c17926e4 decoder/mp4ff: delete obsolete plugin
The underlying library has been obsolete for many years.
2013-01-28 21:32:14 +01:00
Max Kellermann
6837e5a6a0 Merge branch 'v0.17.x' 2013-01-03 22:53:53 +01:00
Denis Krjuchkov
0f1a180e15 mpd_auto.m4: Pass libraries to AC_CHECK_LIB in MPD_AUTO_PKG_LIB
Rationale: vanilla libid3tag does not have any pkg-config stuff
and fails to detect because symbols from libz are not found.
2013-01-03 19:59:41 +01:00
Max Kellermann
814eebf976 configure.ac: copy missing file m4/ax_check_link_flag.m4
Needed by ax_append_link_flags.m4.
2012-08-03 14:40:04 +02:00
Max Kellermann
b25b7693ba configure.ac: enable --gc-sections
Produce a smaller binary by removing all unused functions.
2012-08-02 19:09:29 +02:00
Max Kellermann
2571accfc3 configure.ac: require C++11 compiler
We'll add some C++11 code soon.
2012-08-01 09:59:12 +02:00
Max Kellermann
18da582c87 configure.ac: replace MPD_CHECK_FLAG with autoconf-archive scripts
Use standard scripts instead of MPD's custom implementation.
2012-07-30 11:10:04 +02:00
Max Kellermann
072f83b240 configure.ac: use $LIBS instead of $MPD_LIBS 2011-10-09 18:29:25 +02:00
Max Kellermann
cbd6770f2f configure.ac: substitute FAAD_CFLAGS, FAAD_LIBS
Don't use MPC_CFLAGS, MPD_LIBS.
2011-10-09 18:25:09 +02:00
Max Kellermann
a1b8806422 configure.ac: fail if libid3tag was enabled explicitly, but not found
Add M4 function MPD_AUTO_PKG_LIB for pkg-config with AC_CHECK_LIB
fallback.
2011-09-01 10:58:36 +02:00
Max Kellermann
8c0afd8557 Merge branch 'v0.15.x' into v0.16.x
Conflicts:
	NEWS
	configure.ac
	src/directory.h
2011-01-07 23:50:23 +01:00
Max Kellermann
3149d1abf9 configure.ac: eliminate bashism "echo -n"
Use "printf" instead.
2011-01-07 17:31:30 +01:00
Max Kellermann
59a417fc84 configure.ac: avoid GNU extension in "expr match" call 2011-01-07 17:29:19 +01:00
Max Kellermann
b75d53413d configure.ac: use AC_LANG_SOURCE
Fixes autotools warnings.
2011-01-07 17:25:52 +01:00
Avuton Olrich
615ccd1070 configure.ac: Add optional third variable to results.
Add optional third value to results() to allow for non "yes" answers which are
considered positive.
2010-04-21 12:23:38 -07:00
Avuton Olrich
6ed69e6395 libOggFLAC.m4: Remove libOggFLAC.m4 as it's buggy. 2010-04-21 12:23:38 -07:00
Avuton Olrich
b135483abc configure.ac: New pretty print results menu.
This commit adds a new pretty print menu, we've (far) outgrown the old
menu which because hard to traverse.
2010-04-21 12:23:37 -07:00
Avuton Olrich
7df94b1718 lame.m4: Remove unused macro file 2010-04-15 20:23:53 -07:00
Max Kellermann
7a24e496d5 configure.ac: new libwrap autoconf test
Use MPD_AUTO_RESULT().  Don't force libwrap by default.
2010-01-20 21:42:43 +01:00
Davide Camurri
7a62818ffd client: optionally use libwrap 2010-01-20 21:04:07 +01:00
Max Kellermann
a2de0f0fc5 configure.ac: use $FAAD_LIBS in libmp4ff check
Append $FAAD_LIBS to $LIBS when detecting libmp4ff.  $FAAD_LIBS may
contain an important -L flag.
2009-05-26 16:00:23 +02:00
Max Kellermann
bad2342141 configure.ac: removed the --disable-lametest option
The M4 function AM_PATH_LAME (m4/lame.m4) defined a configure flag
named "--disable-lametest".  This is redundant with configure.ac's
--disable-lame-encoder, and specifying both options may break the
build.  Since AM_PATH_LAME is only called when the encoder plugin is
enabled, we can safely remove that --disable-lametest option.
2009-05-15 18:27:58 +02:00
Avuton Olrich
f9372600b8 configure: Fix where mp4 was not explicitly disabled. 2009-04-29 03:11:14 -07:00
Max Kellermann
d23a23db10 configure.ac: added function MPD_AUTO_PRE
This function checks whether a prerequisite for a feature was found.
2009-04-15 22:23:46 +02:00
Max Kellermann
a6ed888f9f configure.ac: print feature name in error message
When MPD_AUTO_DISABLED prints a fatal error message, include the
feature name.  This might be an important piece of information for the
user, just in case the preceding line doesn't tell him.
2009-04-15 21:57:12 +02:00
Max Kellermann
7d9380fd91 configure.ac: fix error on disabled features
In the MPD_AUTO_DISABLED() function, I forgot to check for "explicitly
disabled".
2009-03-29 21:44:55 +02: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
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
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