1 AC_INIT(lightmediascanner, 0.4.5.0, barbieri@profusion.mobi)
3 AC_CONFIG_SRCDIR(configure.ac)
8 AM_INIT_AUTOMAKE(foreign 1.11 silent-rules subdir-objects dist-bzip2)
9 AM_CONFIG_HEADER(config.h)
10 AC_USE_SYSTEM_EXTENSIONS
11 AC_CONFIG_MACRO_DIR([m4])
13 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
21 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
24 VMAJ=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $1);}'`
25 VMIN=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $2);}'`
26 VMIC=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $3);}'`
27 SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $4);}'`
28 version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN"
29 AC_SUBST(version_info)
31 pluginsdir="${libdir}/lightmediascanner/plugins"
34 AS_AC_EXPAND(PLUGINSDIR, $pluginsdir)
35 AC_DEFINE_UNQUOTED(PLUGINSDIR, ["$PLUGINSDIR"], [Where plugins are installed.])
37 AC_CHECK_FUNCS(realpath)
41 PKG_CHECK_MODULES(SQLITE3, [sqlite3 >= 3.3])
45 AM_CONDITIONAL(HAVE_VORBIS, false)
46 AM_CONDITIONAL(USE_TREMOR, false)
47 define([CHECK_MODULE_OGG],
49 AC_CHECK_HEADERS(tremor/ivorbiscodec.h tremor/ivorbisfile.h, HAVE_IVORBIS_HEADERS=yes, HAVE_IVORBIS_HEADERS=no)
50 if test "x$HAVE_IVORBIS_HEADERS" = "xyes"; then
51 AC_CHECK_LIB(vorbisidec, ogg_sync_bufferin, HAVE_IVORBIS_LIBS=yes, HAVE_IVORBIS_LIBS=no)
54 AM_CONDITIONAL(USE_TREMOR, test "x$HAVE_IVORBIS_LIBS" = "xyes")
55 if test "x$HAVE_IVORBIS_LIBS" = "xyes"; then
56 AC_DEFINE(USE_TREMOR, 1, Define if libvorbisidec (aka tremor) support is enabled)
57 VORBIS_LIBS="-lvorbisidec"
60 AC_LMS_CHECK_PKG(VORBIS, vorbis, [], [OGG=false])
64 AM_CONDITIONAL(HAVE_MP4V2, false)
65 define([CHECK_MODULE_MP4],
67 AC_CHECK_HEADERS(mp4.h, HAVE_MP4_HEADERS=yes, HAVE_MP4_HEADERS=no)
68 AC_CHECK_HEADERS(mp4v2/mp4v2.h, HAVE_MP4V2_HEADERS=yes, HAVE_MP4V2_HEADERS=no)
69 if test "x$HAVE_MP4_HEADERS" = "xyes" -o "x$HAVE_MP4V2_HEADERS" = "xyes"; then
70 AC_CHECK_LIB(mp4v2, MP4Read, [MP4=true], [MP4=false])
73 if test "x$HAVE_MP4V2_HEADERS" = "xyes"; then
74 AC_DEFINE(HAVE_MP4V2, 1, Define if mp4v2.h is present)
76 if test "x$HAVE_MP4_HEADERS" = "xyes"; then
77 AC_DEFINE(HAVE_MP4, 1, Define if mp4.h is present)
80 # test for new 2.0 api
81 if test "x$HAVE_MP4V2_HEADERS" = "xyes"; then
82 AC_MSG_CHECKING([mp4v2 2.0 API (MP4Read and MP4Close)])
83 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
84 [[#include <mp4v2/mp4v2.h>]],
85 [[MP4FileHandle fh = MP4Read("/tmp");
90 AC_DEFINE(HAVE_MP4V2_2_0_API, 1, Define to 1 if you have mp4v2 2.0 api)
91 ], [AC_MSG_RESULT([no])])
98 AM_CONDITIONAL(HAVE_FLAC, false)
99 define([CHECK_MODULE_FLAC],
101 AC_LMS_CHECK_PKG(FLAC, flac, [], [FLAC=false])
104 # plugins declarations
105 AC_LMS_OPTIONAL_MODULE([dummy], true)
106 AC_LMS_OPTIONAL_MODULE([jpeg], true)
107 AC_LMS_OPTIONAL_MODULE([png], true)
108 AC_LMS_OPTIONAL_MODULE([video-dummy], true)
109 AC_LMS_OPTIONAL_MODULE([audio-dummy], true)
110 AC_LMS_OPTIONAL_MODULE([m3u], true)
111 AC_LMS_OPTIONAL_MODULE([ogg], true, [CHECK_MODULE_OGG])
112 AC_LMS_OPTIONAL_MODULE([pls], true)
113 AC_LMS_OPTIONAL_MODULE([asf], true)
114 AC_LMS_OPTIONAL_MODULE([rm], true)
115 AC_LMS_OPTIONAL_MODULE([mp4], true, [CHECK_MODULE_MP4])
116 AC_LMS_OPTIONAL_MODULE([id3], true)
117 AC_LMS_OPTIONAL_MODULE([flac], true, [CHECK_MODULE_FLAC])
118 AC_LMS_OPTIONAL_MODULE([wave], true)
121 #####################################################################
122 # Default CFLAGS and LDFLAGS
123 #####################################################################
125 CC_CHECK_FLAGS_APPEND(with_cflags, [CFLAGS], [\
127 -DANOTHER_BRICK_IN_THE \
138 -Wmissing-include-dirs \
139 -Wformat-nonliteral \
140 -Wold-style-definition \
143 -Wdeclaration-after-statement \
145 -Wmissing-prototypes \
146 -Wstrict-prototypes \
148 -Wmissing-declarations \
152 -Wstrict-aliasing=2 \
155 -Wno-overlength-strings \
156 -Wno-unused-parameter \
157 -Wno-missing-field-initializers \
164 -fdiagnostics-show-option \
165 -fvisibility=hidden \
166 -ffunction-sections \
168 AC_SUBST([WARNINGFLAGS], $with_cflags)
171 CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [ \
174 AC_SUBST([GCLDFLAGS], $with_ldflags)
179 lightmediascanner.spec
191 echo "[$]@" | sed -e 's/^[[ \t]]*\([[^ \t]]*\)[[ \t]]*$/\1/g'
195 for mod in $OPTIONAL_MODULES; do
196 MODS="$MODS ${COLOR_HGREEN}+$mod${COLOR_END}"
198 MODS=$(txt_strip $MODS)
201 for mod in $UNUSED_OPTIONAL_MODULES; do
202 UNUSED_MODS="$UNUSED_MODS ${COLOR_HRED}-$mod${COLOR_END}"
204 UNUSED_MODS=$(txt_strip $UNUSED_MODS)
209 * project........: $PACKAGE $VERSION
210 * prefix.........: $(txt_strip $prefix)
211 * CFLAGS.........: $(txt_strip $CFLAGS)
214 echo -e " * modules........: $MODS $UNUSED_MODS"