configure.ac: add macro MPD_ENABLE_AUTO_PKG_LIB
This commit is contained in:
parent
b3f5b4932c
commit
c643b6ff16
@ -792,7 +792,7 @@ libtag_a_SOURCES =\
|
|||||||
src/tag/ApeReplayGain.cxx src/tag/ApeReplayGain.hxx \
|
src/tag/ApeReplayGain.cxx src/tag/ApeReplayGain.hxx \
|
||||||
src/tag/ApeTag.cxx src/tag/ApeTag.hxx
|
src/tag/ApeTag.cxx src/tag/ApeTag.hxx
|
||||||
|
|
||||||
if HAVE_ID3TAG
|
if ENABLE_ID3TAG
|
||||||
libtag_a_SOURCES += \
|
libtag_a_SOURCES += \
|
||||||
src/tag/TagId3.cxx src/tag/TagId3.hxx \
|
src/tag/TagId3.cxx src/tag/TagId3.hxx \
|
||||||
src/tag/TagRva2.cxx src/tag/TagRva2.hxx \
|
src/tag/TagRva2.cxx src/tag/TagRva2.hxx \
|
||||||
@ -870,7 +870,7 @@ libdecoder_a_SOURCES += \
|
|||||||
src/decoder/plugins/DsdLib.hxx
|
src/decoder/plugins/DsdLib.hxx
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if HAVE_MAD
|
if ENABLE_MAD
|
||||||
libdecoder_a_SOURCES += \
|
libdecoder_a_SOURCES += \
|
||||||
src/decoder/plugins/MadDecoderPlugin.cxx \
|
src/decoder/plugins/MadDecoderPlugin.cxx \
|
||||||
src/decoder/plugins/MadDecoderPlugin.hxx
|
src/decoder/plugins/MadDecoderPlugin.hxx
|
||||||
@ -1538,7 +1538,7 @@ if ENABLE_ARCHIVE
|
|||||||
noinst_PROGRAMS += test/visit_archive
|
noinst_PROGRAMS += test/visit_archive
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if HAVE_ID3TAG
|
if ENABLE_ID3TAG
|
||||||
noinst_PROGRAMS += test/dump_rva2
|
noinst_PROGRAMS += test/dump_rva2
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -1796,7 +1796,7 @@ test_read_tags_SOURCES = test/read_tags.cxx \
|
|||||||
src/AudioFormat.cxx src/CheckAudioFormat.cxx \
|
src/AudioFormat.cxx src/CheckAudioFormat.cxx \
|
||||||
$(DECODER_SRC)
|
$(DECODER_SRC)
|
||||||
|
|
||||||
if HAVE_ID3TAG
|
if ENABLE_ID3TAG
|
||||||
test_dump_rva2_LDADD = \
|
test_dump_rva2_LDADD = \
|
||||||
$(TAG_LIBS) \
|
$(TAG_LIBS) \
|
||||||
libutil.a \
|
libutil.a \
|
||||||
|
35
configure.ac
35
configure.ac
@ -306,11 +306,6 @@ AC_ARG_ENABLE(bzip2,
|
|||||||
[enable bzip2 archive support (default: auto)]),,
|
[enable bzip2 archive support (default: auto)]),,
|
||||||
enable_bzip2=auto)
|
enable_bzip2=auto)
|
||||||
|
|
||||||
AC_ARG_ENABLE(smbclient,
|
|
||||||
AS_HELP_STRING([--enable-smbclient],
|
|
||||||
[enable support for libsmbclient (default: auto)]),,
|
|
||||||
[enable_smbclient=auto])
|
|
||||||
|
|
||||||
default_enable_daemon=yes
|
default_enable_daemon=yes
|
||||||
if test x$host_is_android = xyes || test x$host_is_android = xyes; then
|
if test x$host_is_android = xyes || test x$host_is_android = xyes; then
|
||||||
default_enable_daemon=no
|
default_enable_daemon=no
|
||||||
@ -358,11 +353,6 @@ AC_ARG_ENABLE(httpd-output,
|
|||||||
MPD_DEPENDS([enable_httpd_output], [enable_glib],
|
MPD_DEPENDS([enable_httpd_output], [enable_glib],
|
||||||
[Cannot use --enable-httpd-output with --disable-glib])
|
[Cannot use --enable-httpd-output with --disable-glib])
|
||||||
|
|
||||||
AC_ARG_ENABLE(id3,
|
|
||||||
AS_HELP_STRING([--enable-id3],
|
|
||||||
[enable id3 support]),,
|
|
||||||
enable_id3=auto)
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(inotify,
|
AC_ARG_ENABLE(inotify,
|
||||||
AS_HELP_STRING([--disable-inotify],
|
AS_HELP_STRING([--disable-inotify],
|
||||||
[disable support Inotify automatic database update (default: enabled) ]),,
|
[disable support Inotify automatic database update (default: enabled) ]),,
|
||||||
@ -389,11 +379,6 @@ AC_ARG_ENABLE([libwrap],
|
|||||||
AS_HELP_STRING([--enable-libwrap], [use libwrap]),,
|
AS_HELP_STRING([--enable-libwrap], [use libwrap]),,
|
||||||
[enable_libwrap=auto])
|
[enable_libwrap=auto])
|
||||||
|
|
||||||
AC_ARG_ENABLE(mad,
|
|
||||||
AS_HELP_STRING([--enable-mad],
|
|
||||||
[enable libmad mp3 decoder plugin]),,
|
|
||||||
enable_mad=auto)
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(mikmod,
|
AC_ARG_ENABLE(mikmod,
|
||||||
AS_HELP_STRING([--enable-mikmod],
|
AS_HELP_STRING([--enable-mikmod],
|
||||||
[enable the mikmod decoder (default: disable)]),,
|
[enable the mikmod decoder (default: disable)]),,
|
||||||
@ -686,13 +671,9 @@ dnl Metadata Plugins
|
|||||||
dnl ---------------------------------------------------------------------------
|
dnl ---------------------------------------------------------------------------
|
||||||
|
|
||||||
dnl -------------------------------- libid3tag --------------------------------
|
dnl -------------------------------- libid3tag --------------------------------
|
||||||
MPD_AUTO_PKG_LIB(id3, ID3TAG, id3tag, id3tag, id3_file_open, [-lid3tag -lz], [],
|
MPD_ENABLE_AUTO_PKG_LIB(id3, ID3TAG,
|
||||||
|
id3tag, id3tag, id3_file_open, [-lid3tag -lz], [],
|
||||||
[id3tag], [libid3tag not found])
|
[id3tag], [libid3tag not found])
|
||||||
if test x$enable_id3 = xyes; then
|
|
||||||
AC_DEFINE(HAVE_ID3TAG, 1, [Define to use id3tag])
|
|
||||||
fi
|
|
||||||
|
|
||||||
AM_CONDITIONAL(HAVE_ID3TAG, test x$enable_id3 = xyes)
|
|
||||||
|
|
||||||
dnl ---------------------------------------------------------------------------
|
dnl ---------------------------------------------------------------------------
|
||||||
dnl Autodiscovery
|
dnl Autodiscovery
|
||||||
@ -780,13 +761,9 @@ MPD_ENABLE_AUTO_PKG(curl, CURL, [libcurl >= 7.18],
|
|||||||
[libcurl HTTP streaming], [libcurl not found])
|
[libcurl HTTP streaming], [libcurl not found])
|
||||||
|
|
||||||
dnl ----------------------------------- smbclient -----------------------------
|
dnl ----------------------------------- smbclient -----------------------------
|
||||||
MPD_AUTO_PKG_LIB(smbclient, SMBCLIENT, [smbclient >= 0.2],
|
MPD_ENABLE_AUTO_PKG_LIB(smbclient, SMBCLIENT, [smbclient >= 0.2],
|
||||||
[smbclient], [smbc_init], [-lsmbclient], [],
|
[smbclient], [smbc_init], [-lsmbclient], [],
|
||||||
[smbclient input plugin], [libsmbclient not found])
|
[smbclient input plugin], [libsmbclient not found])
|
||||||
if test x$enable_smbclient = xyes; then
|
|
||||||
AC_DEFINE(ENABLE_SMBCLIENT, 1, [Define when libsmbclient is used])
|
|
||||||
fi
|
|
||||||
AM_CONDITIONAL(ENABLE_SMBCLIENT, test x$enable_smbclient = xyes)
|
|
||||||
|
|
||||||
dnl ----------------------------------- NFS -----------------------------
|
dnl ----------------------------------- NFS -----------------------------
|
||||||
MPD_ENABLE_AUTO_PKG(nfs, NFS, [libnfs],
|
MPD_ENABLE_AUTO_PKG(nfs, NFS, [libnfs],
|
||||||
@ -978,13 +955,9 @@ if test x$enable_gme = xyes; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
dnl ---------------------------------- libmad ---------------------------------
|
dnl ---------------------------------- libmad ---------------------------------
|
||||||
MPD_AUTO_PKG_LIB(mad, MAD, [mad],
|
MPD_ENABLE_AUTO_PKG_LIB(mad, MAD, [mad],
|
||||||
mad, mad_stream_init, [-lmad], [],
|
mad, mad_stream_init, [-lmad], [],
|
||||||
[libmad MP3 decoder plugin], [libmad not found])
|
[libmad MP3 decoder plugin], [libmad not found])
|
||||||
if test x$enable_mad = xyes; then
|
|
||||||
AC_DEFINE(HAVE_MAD, 1, [Define to use libmad])
|
|
||||||
fi
|
|
||||||
AM_CONDITIONAL(HAVE_MAD, test x$enable_mad = xyes)
|
|
||||||
|
|
||||||
enable_shout2="$enable_shout"
|
enable_shout2="$enable_shout"
|
||||||
MPD_AUTO_PKG(shout, SHOUT, [shout],
|
MPD_AUTO_PKG(shout, SHOUT, [shout],
|
||||||
|
@ -97,6 +97,25 @@ AC_DEFUN([MPD_ENABLE_AUTO_PKG], [
|
|||||||
AM_CONDITIONAL(ENABLE_$2, test x$[]enable_$1 = xyes)
|
AM_CONDITIONAL(ENABLE_$2, test x$[]enable_$1 = xyes)
|
||||||
])
|
])
|
||||||
|
|
||||||
|
dnl Wrapper for AC_ARG_ENABLE and MPD_AUTO_PKG_LIB
|
||||||
|
dnl
|
||||||
|
dnl Parameters: varname1, varname2, pkg, libname, symname, libs, cflags, description, errmsg, default, pre
|
||||||
|
AC_DEFUN([MPD_ENABLE_AUTO_PKG_LIB], [
|
||||||
|
AC_ARG_ENABLE(translit([$1], [_], [-]),
|
||||||
|
AS_HELP_STRING([--enable-]translit([$1], [_], [-]),
|
||||||
|
[enable $4 (default: auto)]),,
|
||||||
|
[enable_$1=]ifelse([$10], [], [auto], [$10]))
|
||||||
|
|
||||||
|
$11
|
||||||
|
|
||||||
|
MPD_AUTO_PKG_LIB($1, $2, $3, $4, $5, $6, $7, $8, $9)
|
||||||
|
if test x$[]enable_$1 = xyes; then
|
||||||
|
AC_DEFINE(ENABLE_$2, 1,
|
||||||
|
[Define to enable $4])
|
||||||
|
fi
|
||||||
|
AM_CONDITIONAL(ENABLE_$2, test x$[]enable_$1 = xyes)
|
||||||
|
])
|
||||||
|
|
||||||
dnl Wrapper for MPD_ENABLE_AUTO_PKG and MPD_DEPENDS
|
dnl Wrapper for MPD_ENABLE_AUTO_PKG and MPD_DEPENDS
|
||||||
dnl
|
dnl
|
||||||
dnl Parameters: varname1, varname2, pkg, description, errmsg, default, dep_variable, dep_errmsg
|
dnl Parameters: varname1, varname2, pkg, description, errmsg, default, dep_variable, dep_errmsg
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
const struct DecoderPlugin *const decoder_plugins[] = {
|
const struct DecoderPlugin *const decoder_plugins[] = {
|
||||||
#ifdef HAVE_MAD
|
#ifdef ENABLE_MAD
|
||||||
&mad_decoder_plugin,
|
&mad_decoder_plugin,
|
||||||
#endif
|
#endif
|
||||||
#ifdef ENABLE_MPG123
|
#ifdef ENABLE_MPG123
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
#include <id3tag.h>
|
#include <id3tag.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -101,7 +101,7 @@ dsdlib_valid_freq(uint32_t samplefreq)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
void
|
void
|
||||||
dsdlib_tag_id3(InputStream &is,
|
dsdlib_tag_id3(InputStream &is,
|
||||||
const struct tag_handler *handler,
|
const struct tag_handler *handler,
|
||||||
|
@ -244,7 +244,7 @@ dsdiff_read_metadata_extra(Decoder *decoder, InputStream &is,
|
|||||||
/** offset for title tag */
|
/** offset for title tag */
|
||||||
offset_type title_offset = 0;
|
offset_type title_offset = 0;
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
offset_type id3_offset = 0;
|
offset_type id3_offset = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -269,7 +269,7 @@ dsdiff_read_metadata_extra(Decoder *decoder, InputStream &is,
|
|||||||
chunk_size = chunk_header->GetSize();
|
chunk_size = chunk_header->GetSize();
|
||||||
title_offset = is.GetOffset();
|
title_offset = is.GetOffset();
|
||||||
}
|
}
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
/* 'ID3 ' chunk, offspec. Used by sacdextract */
|
/* 'ID3 ' chunk, offspec. Used by sacdextract */
|
||||||
if (chunk_header->id.Equals("ID3 ")) {
|
if (chunk_header->id.Equals("ID3 ")) {
|
||||||
chunk_size = chunk_header->GetSize();
|
chunk_size = chunk_header->GetSize();
|
||||||
@ -283,7 +283,7 @@ dsdiff_read_metadata_extra(Decoder *decoder, InputStream &is,
|
|||||||
|
|
||||||
/* done processing chunk headers, process tags if any */
|
/* done processing chunk headers, process tags if any */
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
if (id3_offset != 0) {
|
if (id3_offset != 0) {
|
||||||
/* a ID3 tag has preference over the other tags, do not process
|
/* a ID3 tag has preference over the other tags, do not process
|
||||||
other tags if we have one */
|
other tags if we have one */
|
||||||
|
@ -47,7 +47,7 @@ struct DsfMetaData {
|
|||||||
unsigned sample_rate, channels;
|
unsigned sample_rate, channels;
|
||||||
bool bitreverse;
|
bool bitreverse;
|
||||||
offset_type n_blocks;
|
offset_type n_blocks;
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
offset_type id3_offset;
|
offset_type id3_offset;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
@ -111,7 +111,7 @@ dsf_read_metadata(Decoder *decoder, InputStream &is,
|
|||||||
if (sizeof(dsf_header) != chunk_size)
|
if (sizeof(dsf_header) != chunk_size)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
const offset_type metadata_offset = dsf_header.pmeta.Read();
|
const offset_type metadata_offset = dsf_header.pmeta.Read();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -174,7 +174,7 @@ dsf_read_metadata(Decoder *decoder, InputStream &is,
|
|||||||
metadata->n_blocks = data_size / block_size;
|
metadata->n_blocks = data_size / block_size;
|
||||||
metadata->channels = channels;
|
metadata->channels = channels;
|
||||||
metadata->sample_rate = samplefreq;
|
metadata->sample_rate = samplefreq;
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
metadata->id3_offset = metadata_offset;
|
metadata->id3_offset = metadata_offset;
|
||||||
#endif
|
#endif
|
||||||
/* check bits per sample format, determine if bitreverse is needed */
|
/* check bits per sample format, determine if bitreverse is needed */
|
||||||
@ -352,7 +352,7 @@ dsf_scan_stream(InputStream &is,
|
|||||||
audio_format.sample_rate);
|
audio_format.sample_rate);
|
||||||
tag_handler_invoke_duration(handler, handler_ctx, songtime);
|
tag_handler_invoke_duration(handler, handler_ctx, songtime);
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
/* Add available tags from the ID3 tag */
|
/* Add available tags from the ID3 tag */
|
||||||
dsdlib_tag_id3(is, handler, handler_ctx, metadata.id3_offset);
|
dsdlib_tag_id3(is, handler, handler_ctx, metadata.id3_offset);
|
||||||
#endif
|
#endif
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
|
|
||||||
#include <mad.h>
|
#include <mad.h>
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
#include <id3tag.h>
|
#include <id3tag.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -251,7 +251,7 @@ MadDecoder::FillBuffer()
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
static bool
|
static bool
|
||||||
parse_id3_replay_gain_info(ReplayGainInfo &rgi,
|
parse_id3_replay_gain_info(ReplayGainInfo &rgi,
|
||||||
struct id3_tag *tag)
|
struct id3_tag *tag)
|
||||||
@ -285,7 +285,7 @@ parse_id3_replay_gain_info(ReplayGainInfo &rgi,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
gcc_pure
|
gcc_pure
|
||||||
static MixRampInfo
|
static MixRampInfo
|
||||||
parse_id3_mixramp(struct id3_tag *tag)
|
parse_id3_mixramp(struct id3_tag *tag)
|
||||||
@ -317,7 +317,7 @@ parse_id3_mixramp(struct id3_tag *tag)
|
|||||||
inline void
|
inline void
|
||||||
MadDecoder::ParseId3(size_t tagsize, Tag **mpd_tag)
|
MadDecoder::ParseId3(size_t tagsize, Tag **mpd_tag)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
id3_byte_t *allocated = nullptr;
|
id3_byte_t *allocated = nullptr;
|
||||||
|
|
||||||
const id3_length_t count = stream.bufend - stream.this_frame;
|
const id3_length_t count = stream.bufend - stream.this_frame;
|
||||||
@ -369,7 +369,7 @@ MadDecoder::ParseId3(size_t tagsize, Tag **mpd_tag)
|
|||||||
id3_tag_delete(id3_tag);
|
id3_tag_delete(id3_tag);
|
||||||
|
|
||||||
delete[] allocated;
|
delete[] allocated;
|
||||||
#else /* !HAVE_ID3TAG */
|
#else /* !ENABLE_ID3TAG */
|
||||||
(void)mpd_tag;
|
(void)mpd_tag;
|
||||||
|
|
||||||
/* This code is enabled when libid3tag is disabled. Instead
|
/* This code is enabled when libid3tag is disabled. Instead
|
||||||
@ -386,7 +386,7 @@ MadDecoder::ParseId3(size_t tagsize, Tag **mpd_tag)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef HAVE_ID3TAG
|
#ifndef ENABLE_ID3TAG
|
||||||
/**
|
/**
|
||||||
* This function emulates libid3tag when it is disabled. Instead of
|
* This function emulates libid3tag when it is disabled. Instead of
|
||||||
* doing a real analyzation of the frame, it just checks whether the
|
* doing a real analyzation of the frame, it just checks whether the
|
||||||
@ -402,7 +402,7 @@ id3_tag_query(const void *p0, size_t length)
|
|||||||
? (p[8] << 7) + p[9] + 10
|
? (p[8] << 7) + p[9] + 10
|
||||||
: 0;
|
: 0;
|
||||||
}
|
}
|
||||||
#endif /* !HAVE_ID3TAG */
|
#endif /* !ENABLE_ID3TAG */
|
||||||
|
|
||||||
static enum mp3_action
|
static enum mp3_action
|
||||||
RecoverFrameError(struct mad_stream &stream)
|
RecoverFrameError(struct mad_stream &stream)
|
||||||
|
@ -29,7 +29,7 @@ struct Tag;
|
|||||||
struct id3_tag;
|
struct id3_tag;
|
||||||
class Error;
|
class Error;
|
||||||
|
|
||||||
#ifdef HAVE_ID3TAG
|
#ifdef ENABLE_ID3TAG
|
||||||
|
|
||||||
bool
|
bool
|
||||||
tag_id3_scan(Path path_fs,
|
tag_id3_scan(Path path_fs,
|
||||||
|
Loading…
Reference in New Issue
Block a user