Updated Slovenian translation
[banshee.git] / configure.ac
blob6830799e85dcd47edab73d7bdd84eb0accf6c2b9
1 dnl Granularly define the version components
2 dnl Remember to also update the Display Version
3 m4_define([banshee_version_major], [1])
4 m4_define([banshee_version_minor], [7])
5 m4_define([banshee_version_micro], [3])
7 dnl set to 0 when doing an official release
8 m4_define([banshee_version_pre_release], [0])
10 m4_define([concat], $1$2$3$4)
12 dnl create base version string
13 m4_define([banshee_version], concat(
14         banshee_version_major.,
15         banshee_version_minor.,
16         banshee_version_micro))
18 dnl create the release version
19 m4_define([banshee_version],
20         m4_if(banshee_version_pre_release, [0],
21                 banshee_version,
22                 concat(banshee_version, banshee_version_pre_release)))
24 dnl this can sometimes differ manually
25 m4_define([banshee_display_version],
26         ["1.7.2"])
28 m4_define([banshee_api_version],
29         [banshee_version_major.banshee_version_minor])
31 m4_define([banshee_asm_version],
32         [banshee_api_version.0.0])
34 AC_PREREQ(2.52)
35 AC_INIT([banshee-1], banshee_version,
36         [http://bugzilla.gnome.org/enter_bug.cgi?product=banshee])
38 AM_INIT_AUTOMAKE([1.9 dist-bzip2 tar-ustar dist-zip foreign])
39 AM_MAINTAINER_MODE
40 AM_CONFIG_HEADER([config.h])
41 AC_CONFIG_MACRO_DIR([build/m4])
42 AC_SUBST([ACLOCAL_AMFLAGS], ["-I build/m4/shamrock -I build/m4/banshee -I build/m4/shave \${ACLOCAL_FLAGS}"])
44 IT_PROG_INTLTOOL([0.35.0])
45 AC_PROG_LIBTOOL
46 AC_PROG_INSTALL
48 dnl How to configure for distcheck
49 DISTCHECK_CONFIGURE_FLAGS="--disable-docs --enable-mtp --enable-daap --enable-podcast --enable-release"
50 AC_SUBST(DISTCHECK_CONFIGURE_FLAGS)
52 dnl Export Version Info
53 AC_SUBST([API_VERSION], [banshee_api_version])
54 AC_SUBST([ASM_VERSION], [banshee_asm_version])
55 AC_SUBST([DISPLAY_VERSION], [banshee_display_version])
57 dnl Expansions
58 SHAMROCK_EXPAND_LIBDIR
59 SHAMROCK_EXPAND_BINDIR
60 SHAMROCK_EXPAND_DATADIR
62 dnl libbanshee/native dependencies (required)
63 BANSHEE_CHECK_LIBBANSHEE
64 BANSHEE_CHECK_GSTREAMER
66 dnl For the new media backend using gstreamer-sharp
67 BANSHEE_CHECK_GSTREAMER_SHARP
69 BANSHEE_CHECK_NOW_PLAYING_X11
71 dnl User help
72 SHAMROCK_CHECK_GNOME_DOC_UTILS(0.17.3)
74 dnl Mono and gmcs
75 SHAMROCK_CHECK_MONO_MODULE(1.9.1)
76 SHAMROCK_FIND_MONO_2_0_COMPILER
77 SHAMROCK_FIND_MONO_RUNTIME
78 SHAMROCK_CHECK_MONO_2_0_GAC_ASSEMBLIES([        
79         System.Data
80         Mono.Cairo
81         Mono.Posix
82         ICSharpCode.SharpZipLib
85 dnl Check for mono >= 2.4.3 for LibraryWatcher extension, with fix for bnc#322330
86 PKG_CHECK_MODULES(MONO_2_4_3, mono >= 2.4.3, HAVE_MONO_2_4_3=yes, HAVE_MONO_2_4_3=no)
87 AM_CONDITIONAL(ENABLE_LIBRARY_WATCHER, test "x$HAVE_MONO_2_4_3" = "xyes")
89 dnl Check for GNOME >= 2.28 to see if we should remove
90 dnl 'Media Player' from the app Name, bgo#596242, except
91 dnl in MeeGo where GNOME >= 2.28, but we want the full name
92 PKG_CHECK_MODULES(GNOME_2_28, gnome-desktop-2.0 >= 2.28,
93         HAVE_GNOME_2_28=yes, HAVE_GNOME_2_28=no)
94 PKG_CHECK_MODULES(MEEGO_PANEL, moblin-panel,
95         HAVE_MEEGO_PANEL=yes, HAVE_MEEGO_PANEL=no)
96 if test "x$HAVE_GNOME_2_28" = "xno" -o "x$HAVE_MEEGO_PANEL" = "xyes"; then
97         BANSHEE_DESKTOP_NAME="_Name=Banshee Media Player"
98 else
99         BANSHEE_DESKTOP_NAME="_Name=Banshee"
101 AC_SUBST(BANSHEE_DESKTOP_NAME)
103 dnl NDesk DBus libraries
104 BANSHEE_CHECK_NDESK_DBUS
106 dnl Mono.Addins libraries
107 BANSHEE_CHECK_MONO_ADDINS
109 dnl notify-sharp library
110 BANSHEE_CHECK_NOTIFY_SHARP
112 dnl Boo
113 BANSHEE_CHECK_BOO
115 dnl Monodoc (optional through --disable-docs)
116 SHAMROCK_CHECK_MONODOC
118 dnl webkit (optional through --disable-webkit)
119 BANSHEE_CHECK_LIBWEBKIT
121 dnl gdata (optional through --disable-youtube)
122 BANSHEE_CHECK_YOUTUBE
124 dnl gtk#-beans and gio#
125 BANSHEE_CHECK_GIO_SHARP
127 dnl Moonlight (optional through --enable-moonlight)
128 BANSHEE_CHECK_MOONLIGHT
130 dnl NUnit (optional)
131 SHAMROCK_CHECK_NUNIT
133 dnl External TagLib# libraries (optional)
134 BANSHEE_CHECK_TAGLIB_SHARP
136 dnl Required dependencies (managed/core)
137 BANSHEE_CHECK_GTK_SHARP
139 dnl OS X (optional through --enable-osx)
140 BANSHEE_CHECK_OSX
142 PKG_CHECK_MODULES(SQLITE, sqlite3 >= 3.4)
144 dnl GNOME (optional)
145 AC_ARG_ENABLE(gnome, 
146         AC_HELP_STRING([--disable-gnome], 
147                 [Disable GNOME support]), 
148         , enable_gnome="yes")
149 if test "x$enable_gnome" = "xyes"; then
150         BANSHEE_CHECK_GNOME_SHARP
151         AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
152         AM_GCONF_SOURCE_2
153         AM_CONDITIONAL(ENABLE_GNOME, true)
154 else
155         AM_CONDITIONAL(GCONF_SCHEMAS_INSTALL, false)
156         AM_CONDITIONAL(ENABLE_GNOME, false)
159 dnl DAP support (each module is optional)
160 BANSHEE_CHECK_DAP_MTP
161 BANSHEE_CHECK_DAP_IPOD
162 BANSHEE_CHECK_DAP_KARMA
164 dnl DAAP support (optional)
165 BANSHEE_CHECK_DAAP
167 dnl RemoteAudio support (optional)
168 BANSHEE_CHECK_REMOTE_AUDIO
170 dnl MonoTorrent support (optional)
171 BANSHEE_CHECK_TORRENT
173 dnl MeeGo integration (optional)
174 BANSHEE_CHECK_MEEGO
176 dnl Gapless, if we have a new-enough playbin2
177 ENABLE_GAPLESS="no"
178 AC_ARG_ENABLE(gapless-playback,
179         AC_HELP_STRING([--enable-gapless-playback],
180                 [Enable gapless playback engine (requires gst-plugins-base > 0.10.25.2)]),
181                 enable_gapless=$enableval,
182                 enable_gapless=auto)
183 if test "x$enable_gapless" != "xno" ; then
184         PKG_CHECK_MODULES([GST_PLUGINS_BASE], [gstreamer-plugins-base-0.10 > 0.10.25.2], ENABLE_GAPLESS=yes, ENABLE_GAPLESS=no)
185         if test "x$enable_gapless" == "xyes" -a "x$ENABLE_GAPLESS" == "xno" ; then
186                 AC_MSG_ERROR([Gapless playback requires gstreamer-plugins-base > 0.10.25.2])
187         fi
189 AM_CONDITIONAL(ENABLE_GAPLESS, test "x$ENABLE_GAPLESS" = "xyes")   
191 dnl i18n
192 SHAMROCK_CONFIGURE_I18N($PACKAGE)
194 dnl the bird is the word
195 AC_ARG_ENABLE(podcast, 
196         AC_HELP_STRING([--disable-podcast], 
197                 [Disable Podcasting support]), 
198         , enable_podcast="yes")
199 AM_CONDITIONAL(ENABLE_PODCAST, test "x$enable_podcast" = "xyes")
201 AC_ARG_ENABLE(release,
202         AC_HELP_STRING([--enable-release],
203                 [Use release configuration]),
204         enable_release=yes, enable_release=`(test ! -d .svn && test ! -d .git) && echo "yes" || echo "no"`)
205 AM_CONDITIONAL(ENABLE_RELEASE, test "x$enable_release" = "xyes")
206 ENABLE_RELEASE=$enable_release
207 AC_SUBST(ENABLE_RELEASE)
208 if test "x$enable_release" = "xyes"; then
209         GMCS_FLAGS="-define:RELEASE"
210 else
211         GMCS_FLAGS="-warnaserror"
213 AC_SUBST(GMCS_FLAGS)
215 AM_CONDITIONAL(HYENA_PKG_CONFIG, false)
217 AC_ARG_WITH(vendor-build-id,
218         AC_HELP_STRING([--with-vendor-build-id=<vendor-build-id>],
219                 [Set a vendor build ID, recommended for packagers]),
220         [vendor_build_id="$withval"], [
221                 test -d .git \
222                         && vendor_build_id="git-checkout" \
223                         || vendor_build_id="source-tarball"
224         ])
225 BUILD_VENDOR_ID="$vendor_build_id"
226 BUILD_HOST_OS="$host_os"
227 BUILD_HOST_CPU="$host_cpu"
228 BUILD_TIME=`date +"%F %T %Z"`
229 AC_SUBST(BUILD_VENDOR_ID)
230 AC_SUBST(BUILD_HOST_OS)
231 AC_SUBST(BUILD_HOST_CPU)
232 AC_SUBST(BUILD_TIME)
234 SHAVE_INIT([build/m4/shave], [enable])
236 dnl generated files
237 AC_OUTPUT([
238 Makefile
240 build/Makefile
241 build/m4/Makefile
242 build/m4/shave/shave
243 build/m4/shave/shave-libtool
244 build/pkg-config/Makefile
246 data/Makefile
247 data/org.bansheeproject.Banshee.service
248 data/org.bansheeproject.CollectionIndexer.service
249 data/audio-profiles/Makefile
250 data/desktop-files/Makefile
251 data/desktop-files/common.desktop
252 data/icon-theme-hicolor/Makefile
254 help/Makefile
256 docs/Makefile
257 docs/Hyena/Makefile
258 docs/Banshee/Makefile
260 po/Makefile.in
262 tests/Makefile
263 tests/Analyzer/Makefile
264 tests/Performance/Makefile
266 extras/Makefile
268 libbanshee/Makefile
270 gstreamer/Makefile
271 gstreamer/equalizer/Makefile
273 src/Hyena/Makefile
274 src/Hyena/build/Makefile
275 src/Hyena/build/pkg-config/Makefile
276 src/Hyena/build/m4/Makefile
277 src/Hyena/Mono.Data.Sqlite/Makefile
278 src/Hyena/Hyena/Makefile
279 src/Hyena/Hyena.Data.Sqlite/Makefile
280 src/Hyena/Hyena.Gui/Makefile
282 src/Makefile
283 src/AssemblyInfo.cs
285 src/Clients/Makefile
286 src/Clients/Beroe/Makefile
287 src/Clients/Booter/Makefile
288 src/Clients/Booter/banshee-1.linux
289 src/Clients/Booter/banshee-1.darwin
290 src/Clients/Halie/Makefile
291 src/Clients/Muinshee/Makefile
292 src/Clients/Nereid/Makefile
293 src/Clients/MeeGo/Makefile
295 src/Core/Makefile
296 src/Core/Banshee.CollectionIndexer/Makefile
297 src/Core/Banshee.Core/Makefile
298 src/Core/Banshee.Services/Makefile
299 src/Core/Banshee.ThickClient/Makefile
300 src/Core/Banshee.Widgets/Makefile
301 src/Core/Banshee.WebBrowser/Makefile
302 src/Core/Banshee.WebBrowser/libossifer/Makefile
304 src/Backends/Makefile
305 src/Backends/Banshee.Gio/Makefile
306 src/Backends/Banshee.Gnome/Makefile
307 src/Backends/Banshee.GStreamer/Makefile
308 src/Backends/Banshee.GStreamerSharp/Makefile
309 src/Backends/Banshee.Hal/Makefile
310 src/Backends/Banshee.Unix/Makefile
311 src/Backends/Banshee.Osx/Makefile
312 src/Backends/Banshee.NowPlaying.X11/Makefile
313 src/Backends/Banshee.NowPlaying.X11/libbnpx11/Makefile
315 src/Libraries/Makefile
316 src/Libraries/Lastfm/Makefile
317 src/Libraries/Lastfm.Gui/Makefile
318 src/Libraries/Migo/Makefile
319 src/Libraries/Mono.Media/Makefile
320 src/Libraries/Mtp/Makefile
321 src/Libraries/Mtp/Mtp.dll.config
322 src/Libraries/MusicBrainz/Makefile
324 src/Dap/Makefile
325 src/Dap/Banshee.Dap/Makefile
326 src/Dap/Banshee.Dap.Ipod/Makefile
327 src/Dap/Banshee.Dap.MassStorage/Makefile
328 src/Dap/Banshee.Dap.Mtp/Makefile
329 src/Dap/Banshee.Dap.Karma/Makefile
331 src/Extensions/Makefile
332 src/Extensions/Banshee.AmazonMp3/Makefile
333 src/Extensions/Banshee.AmazonMp3.Store/Makefile
334 src/Extensions/Banshee.Audiobook/Makefile
335 src/Extensions/Banshee.AudioCd/Makefile
336 src/Extensions/Banshee.BooScript/Makefile
337 src/Extensions/Banshee.Bpm/Makefile
338 src/Extensions/Banshee.CoverArt/Makefile
339 src/Extensions/Banshee.Daap/Makefile
340 src/Extensions/Banshee.Emusic/Makefile
341 src/Extensions/Banshee.FileSystemQueue/Makefile
342 src/Extensions/Banshee.InternetArchive/Makefile
343 src/Extensions/Banshee.Fixup/Makefile
344 src/Extensions/Banshee.InternetRadio/Makefile
345 src/Extensions/Banshee.Lastfm/Makefile
346 src/Extensions/Banshee.LastfmStreaming/Makefile
347 src/Extensions/Banshee.LibraryWatcher/Makefile
348 src/Extensions/Banshee.MiniMode/Makefile
349 src/Extensions/Banshee.MiroGuide/Makefile
350 src/Extensions/Banshee.MeeGo/Makefile
351 src/Extensions/Banshee.MultimediaKeys/Makefile
352 src/Extensions/Banshee.NotificationArea/Makefile
353 src/Extensions/Banshee.NowPlaying/Makefile
354 src/Extensions/Banshee.PlayQueue/Makefile
355 src/Extensions/Banshee.PlayerMigration/Makefile
356 src/Extensions/Banshee.Podcasting/Makefile
357 src/Extensions/Banshee.SqlDebugConsole/Makefile
358 src/Extensions/Banshee.Sample/Makefile
359 src/Extensions/Banshee.Torrent/Makefile
360 src/Extensions/Banshee.RemoteAudio/Makefile
361 src/Extensions/Banshee.Wikipedia/Makefile
362 src/Extensions/Banshee.YouTube/Makefile
364 extras/metrics/Makefile
367 cat <<EOF
369 ${PACKAGE}-${VERSION}
371   Build Environment
372     Install Prefix:    ${prefix}
373     Datadir:           ${expanded_datadir}
374     Libdir:            ${expanded_libdir}
376     C Compiler:        ${CC}
377     Mono C# Compiler:  ${MCS} ${GMCS_FLAGS}
378     Mono Runtime:      ${MONO}
380   Video/Graphics:
381     Graphics System:   ${GRAPHICS_SUBSYSTEM}
382     X11 Video:         ${have_xvidmode}
383     Clutter:           ${enable_clutter}
385   Operating System/Desktop Environment:
386     GNOME Support:     ${enable_gnome}
387     OSX Support:       ${enable_osx}
388     MeeGo Support:     ${enable_meego}
390   Digital Audio Player (DAP) Support:
391     Mass Storage:      yes
392     MTP:               ${enable_libmtp}
393     iPod:              ${enable_ipodsharp}
394     Karma:             ${enable_karmasharp}
396   Extra Features:
397     Web Browser:       ${have_libwebkit} (webkit-1.0 >= 1.2.0, libsoup-2.4 >= 2.26)
398       + GNOME Proxy    ${have_libsoup_gnome} (libsoup-gnome-2.4 >= 2.26)
399       + Amazon MP3     ${have_libwebkit}
400       + Miro Guide     ${have_libwebkit}
401       + Wikipedia      ${have_libwebkit}
402     Boo Scripting:     ${enable_boo}
403     Builtin Equalizer: ${enable_builtin_equalizer}
404     DAAP:              ${enable_daap}
405     GIO Backend:       ${enable_gio} (glib >= 2.22, gtk-sharp-beans, and gio-sharp)
406     Library Watcher:   ${HAVE_MONO_2_4_3} (Mono >= 2.4.3)
407     Podcasts:          ${enable_podcast}
408     Gapless playback:  ${ENABLE_GAPLESS} (gstreamer-plugins-base > 0.10.25.2)
409     YouTube extension: ${enable_youtube} (gdata-sharp >= 1.4)
411   Build/Development:
412     Unit Tests:        ${do_tests} (requires nunit >= ${NUNIT_REQUIRED})
413     API Docs:          ${enable_docs} (requires monodocer and mdassembler)
414     User Help:         ${enable_user_help} (requires gnome-doc-utils >= 0.17.3)
415     Custom a11y:       ${gtksharp_with_a11y} (requires gtk-sharp >= 2.12.10)
416     Release Build:     ${enable_release}
417     Vendor Build ID:   ${vendor_build_id}
421 # Unstable/in-development features; only show them if they were manually enabled
422 if test "x$enable_moonlight" = "xyes";    then br=yes; echo "  Moonlight Effects:   ${enable_moonlight}";    fi
423 if test "x$enable_remote_audio" = "xyes"; then br=yes; echo "  Remote Audio:        ${enable_remote_audio}"; fi
424 if test "x$enable_torrent" = "xyes";      then br=yes; echo "  Torrent Podcasts:    ${enable_torrent}";      fi
425 if test "x$enable_gst_sharp" = "xyes";    then br=yes; echo "  Gst# Backend:        ${enable_gst_sharp} (unfinished, experimental!)";      fi
427 if test -d ${expanded_libdir}/${PACKAGE}; then
428         if test x$br = xyes; then echo; fi
429         echo "  WARNING: An existing Banshee install is in ${expanded_libdir}/${PACKAGE}"
430         echo "           Remove the existing install before installing this build."
431         echo "           Installing over an existing install will cause conflicts!"
432         echo