Add configure switch for compiling with either gstreamer-0.10
[openblackhole/openblackhole-enigma2.git] / configure.ac
1 AC_INIT([enigma2],[4],[forum@openpli.org])
2 AM_INIT_AUTOMAKE([dist-bzip2 no-define tar-pax -Wno-portability])
3 AC_CONFIG_HEADERS([enigma2_config.h])
4
5 #dnl versions of gstreamer and plugins-base
6 AC_ARG_WITH(gstversion,
7         AS_HELP_STRING([--with-gstversion],[use gstreamer version (major.minor)]),
8         [GST_MAJORMINOR=$withval],[GST_MAJORMINOR=0.10])
9
10 # Silent rules are available since 1.11, but older versions
11 # are still in use. So don't use them unconditionally.
12 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
13
14 AC_USE_SYSTEM_EXTENSIONS
15 AC_SYS_LARGEFILE
16
17 AC_PROG_CC
18 AC_PROG_CXX
19 m4_ifdef([LT_INIT], [LT_INIT], [AC_PROG_LIBTOOL])
20 AC_CONFIG_MACRO_DIR([m4])
21 AC_OPENMP()
22
23 AC_PATH_PROG(MSGFMT, msgfmt, AC_MSG_ERROR(Could not find msgfmt))
24
25 AM_PATH_PYTHON
26 AX_PYTHON_DEVEL
27 AX_PKG_SWIG
28 AX_SWIG_ENABLE_CXX
29 AX_SWIG_PYTHON
30 AX_PTHREAD
31
32 TUXBOX_APPS_DVB
33
34 if test "x$GST_MAJORMINOR" != "x1"
35 then
36         PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10 gstreamer-pbutils-0.10)
37 else
38         PKG_CHECK_MODULES(GSTREAMER, gstreamer-1.0 gstreamer-pbutils-1.0)
39 fi
40
41 AM_CONDITIONAL(HAVE_GIT_DIR, test -d "$srcdir/.git")
42 AM_CONDITIONAL(HAVE_FAKE_GIT_DIR, test -f "$srcdir/.git/last_commit_info")
43
44 dnl versions of gstreamer and plugins-base
45 AC_ARG_WITH(gstversion,
46         AS_HELP_STRING([--with-gstversion],[use gstreamer version (major.minor)]),
47         [GST_MAJORMINOR=$withval],[GST_MAJORMINOR=0.10])
48
49 PKG_CHECK_MODULES(BASE, [freetype2 fribidi gstreamer-$GST_MAJORMINOR gstreamer-pbutils-$GST_MAJORMINOR libdvbsi++ libpng libxml-2.0 sigc++-1.2 libssl libcrypto])
50 PKG_CHECK_MODULES(LIBDDVD, libdreamdvd, HAVE_LIBDDVD="yes", HAVE_LIBDDVD="no")
51 AM_CONDITIONAL(HAVE_LIBDDVD, test "$HAVE_LIBDDVD" = "yes")
52
53 AC_CHECK_LIB([dl], [dlopen], [LIBDL_LIBS="-ldl"], [AC_MSG_ERROR([Could not find libdl])])
54 AC_SUBST(LIBDL_LIBS)
55 AC_CHECK_LIB([jpeg], [jpeg_set_defaults], [LIBJPEG_LIBS="-ljpeg"], [AC_MSG_ERROR([Could not find libjpeg])])
56 AC_SUBST(LIBJPEG_LIBS)
57 AC_CHECK_LIB([ungif], [DGifOpen], [LIBGIF_LIBS="-lungif"], [AC_CHECK_LIB([gif], [DGifOpen], [LIBGIF_LIBS="-lgif"], [AC_MSG_ERROR([Could not find libgif or libungif])])])
58 AC_SUBST(LIBGIF_LIBS)
59
60 AC_LANG_PUSH([C++])
61 AC_CHECK_LIB([xmlccwrap], [exit], [LIBXMLCCWRAP_LIBS="-lxmlccwrap"], [AC_MSG_ERROR([Could not find libxmlccwrap])])
62 AC_SUBST(LIBXMLCCWRAP_LIBS)
63 AC_LANG_POP
64
65 AC_ARG_WITH(boxtype,
66         [  --with-boxtype=NAME box type [[none,dm7025,dm800...]]],
67         [BOXTYPE="$withval"],[BOXTYPE="dm800"])
68 AC_SUBST(BOXTYPE)
69 AC_DEFINE_UNQUOTED(BOXTYPE,"$BOXTYPE",[box type])
70
71 AM_CONDITIONAL(DREAMBOX, test `echo "$BOXTYPE" | cut -b 1-2` == "dm")
72 AM_CONDITIONAL(HAVE_TEMPFANCONTROL, test "$BOXTYPE" == dm8000 -o "$BOXTYPE" == dm800se -o "$BOXTYPE" == dm500hd)
73 if test `echo "$BOXTYPE" | cut -b 1-2` == "dm"; then
74         AC_DEFINE(DREAMBOX, 1, [Dreambox hardware])
75         AC_DEFINE(KEY_PLAY_ACTUALLY_IS_KEY_PLAYPAUSE, 1,[define when rc sends a KEY_PLAY event for its KEY_PLAYPAUSE key])
76 fi
77 if test "$BOXTYPE" == "vusolo2" -o "$BOXTYPE" == "vuduo2" -o "$BOXTYPE" == "vusolose"; then
78         AC_DEFINE(VUPLUS_RC_WORKAROUND, 1, [workaround for problem with vusolo2/vuduo2/vusolose event/rc driver])
79 fi
80
81 AC_ARG_WITH(textlcd,
82         AC_HELP_STRING([--with-textlcd], [use ascii based lcd, yes or no]),
83         [[withtextlcd=$withval]],
84         [[withtextlcd=no]]
85 )
86 if test x"$withtextlcd" != xno ; then
87         AC_DEFINE(HAVE_TEXTLCD, 1,[Define when using an ascii based lcd device])
88 fi
89 AM_CONDITIONAL(HAVE_TEXTLCD, test x"$withtextlcd" != xno)
90
91 AC_ARG_WITH(colorlcd,
92         AC_HELP_STRING([--with-colorlcd], [use 96x64 16bpp color display, yes or no]),
93         [[withcolorlcd=$withval]],
94         [[withcolorlcd=no]]
95 )
96 if test x"$withcolorlcd" != xno ; then
97         AC_DEFINE(HAVE_COLORLCD, 1,[Define when using a 96x64 color display device])
98 fi
99 AM_CONDITIONAL(HAVE_COLORLCD, test x"$withcolorlcd" != xno)
100
101
102 AC_ARG_WITH(oldpvr,
103         AC_HELP_STRING([--with-oldpvr], [use /dev/misc/pvr instead of /dev/dvb/adapterX/dvrX, yes or no]),
104         [[witholdpvr=$withval]],
105         [[witholdpvr=no]]
106 )
107 if test x"$witholdpvr" != xno ; then
108         AC_DEFINE(HAVE_OLDPVR, 1,[Define when using /dev/misc/pvr])
109 fi
110 AM_CONDITIONAL(HAVE_OLDPVR, test x"$witholdpvr" != xno)
111
112 if test `echo "$BOXTYPE" | cut -b 1-2` == "vu"; then
113         AC_DEFINE(FORCE_NO_BLENDING_ACCELERATION, 1,[define when the framebuffer acceleration does not have alphablending support, though the autodetection might indicate that it does])
114         AC_DEFINE(FORCE_NO_FILL_ACCELERATION, 1,[define when the framebuffer acceleration does not have fill support])
115         AC_DEFINE(FORCE_ADVANCED_REMOTE, 1,[define to fixup the input device identification when the remote control is actually an 'advanced' remote (with play/forward/rewind keys)])
116 fi
117
118 AC_ARG_WITH(libsdl,
119         AS_HELP_STRING([--with-libsdl],[use libsdl, yes or no]),
120         [with_libsdl=$withval],[with_libsdl=no])
121 if test "$with_libsdl" = "yes"; then
122         PKG_CHECK_MODULES(LIBSDL, sdl)
123 fi
124 AM_CONDITIONAL(HAVE_LIBSDL, test "$with_libsdl" = "yes")
125
126 AC_ARG_WITH(libxine,
127         AS_HELP_STRING([--with-libxine],[use libxine, yes or no]),
128         [with_libxine=$withval],[with_libxine=no])
129 if test "$with_libxine" = "yes"; then
130         PKG_CHECK_MODULES(LIBXINE, libxine)
131         AC_DEFINE([WITH_XINE],[1],[Define to 1 if you have libxine])
132 fi
133 AM_CONDITIONAL(HAVE_LIBXINE, test "$with_libxine" = "yes")
134
135 AC_ARG_WITH(debug,
136         AS_HELP_STRING([--without-debug],[disable debugging code]),
137         [with_debug="$withval"],[with_debug="yes"])
138 if test "$with_debug" = "yes"; then
139         DEBUG_CFLAGS="-ggdb3"
140         AC_DEFINE([DEBUG],[1],[Define to 1 to enable debugging code])
141 fi
142
143 AC_ARG_WITH(memcheck,
144         AS_HELP_STRING([--with-memcheck],[enable memory leak checks]),
145         [with_memcheck="$withval"],[with_memcheck="no"])
146 if test "$with_memcheck" = "yes"; then
147         AC_DEFINE([MEMLEAK_CHECK],[1],[Define to 1 to enable memory leak checks])
148 fi
149
150 AC_ARG_WITH(po,
151         AS_HELP_STRING([--with-po],[enable updating of po files]),
152         [with_po="$withval"],[with_po="no"])
153 if test "$with_po" = "yes"; then
154         AC_PATH_PROG(MSGINIT, msginit)
155         AC_PATH_PROG(MSGMERGE, msgmerge)
156         AC_PATH_PROG(MSGUNIQ, msguniq)
157         AC_PATH_PROG(XGETTEXT, xgettext)
158         if test -z "$MSGINIT" -o -z "$MSGMERGE" -o -z "$MSGUNIQ" -o -z "$XGETTEXT"; then
159                 AC_MSG_ERROR([Could not find required gettext tools])
160         fi
161 fi
162 AM_CONDITIONAL(UPDATE_PO, test "$with_po" = "yes")
163
164 ENIGMA2_CFLAGS="-fno-rtti -fno-exceptions"
165 AC_SUBST(ENIGMA2_CFLAGS)
166
167 CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS"
168 CFLAGS="$CFLAGS $DEBUG_CFLAGS -Wall"
169 CXXFLAGS="$CXXFLAGS $DEBUG_CFLAGS -Wall $BASE_CFLAGS $ENIGMA2_CFLAGS $PTHREAD_CFLAGS $OPENMP_CFLAGS"
170
171 AC_CONFIG_FILES([
172 Makefile
173 data/Makefile
174 data/fonts/Makefile
175 data/countries/Makefile
176 data/extensions/Makefile
177 data/keymaps/Makefile
178 data/hw_info/Makefile
179 data/rc_models/Makefile
180 data/skin_default/Makefile
181 data/skin_default/menu/Makefile
182 data/skin_default/icons/Makefile
183 data/skin_default/buttons/Makefile
184 data/skin_default/spinner/Makefile
185 data/skin_default/LCDIcons/Makefile
186 include/Makefile
187 lib/Makefile
188 lib/base/eenv.cpp
189 lib/python/Makefile
190 lib/python/Components/Makefile
191 lib/python/Components/Converter/Makefile
192 lib/python/Components/Renderer/Makefile
193 lib/python/Components/Sources/Makefile
194 lib/python/Screens/Makefile
195 lib/python/Plugins/Makefile
196 lib/python/Plugins/SystemPlugins/CableScan/Makefile
197 lib/python/Plugins/SystemPlugins/FastScan/Makefile
198 lib/python/Plugins/SystemPlugins/OSDPositionSetup/Makefile
199 lib/python/Plugins/SystemPlugins/OSD3DSetup/Makefile
200 lib/python/Plugins/SystemPlugins/HdmiCEC/Makefile
201 lib/python/Plugins/SystemPlugins/VideoClippingSetup/Makefile
202 lib/python/Plugins/Extensions/CutListEditor/Makefile
203 lib/python/Plugins/Extensions/CutListEditor/meta/Makefile
204 lib/python/Plugins/Extensions/DVDBurn/Makefile
205 lib/python/Plugins/Extensions/DVDBurn/meta/Makefile
206 lib/python/Plugins/Extensions/DVDPlayer/Makefile
207 lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile
208 lib/python/Plugins/Extensions/GraphMultiEPG/Makefile
209 lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile
210 lib/python/Plugins/Extensions/Makefile
211 lib/python/Plugins/Extensions/MediaPlayer/Makefile
212 lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile
213 lib/python/Plugins/Extensions/MediaScanner/Makefile
214 lib/python/Plugins/Extensions/MediaScanner/meta/Makefile
215 lib/python/Plugins/Extensions/PicturePlayer/Makefile
216 lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile
217 lib/python/Plugins/Extensions/PicturePlayer/data/Makefile
218 lib/python/Plugins/Extensions/SocketMMI/Makefile
219 lib/python/Plugins/Extensions/SocketMMI/meta/Makefile
220 lib/python/Plugins/Extensions/SocketMMI/src/Makefile
221 lib/python/Plugins/Extensions/TuxboxPlugins/Makefile
222 lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile
223 lib/python/Plugins/PLi/Makefile
224 lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile
225 lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile
226 lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile
227 lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile
228 lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile
229 lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile
230 lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile
231 lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile
232 lib/python/Plugins/SystemPlugins/Hotplug/Makefile
233 lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile
234 lib/python/Plugins/SystemPlugins/Makefile
235 lib/python/Plugins/SystemPlugins/TempFanControl/Makefile
236 lib/python/Plugins/SystemPlugins/TempFanControl/meta/Makefile
237 lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile
238 lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile
239 lib/python/Plugins/SystemPlugins/NFIFlash/Makefile
240 lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile
241 lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile
242 lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile
243 lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile
244 lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile
245 lib/python/Plugins/SystemPlugins/Satfinder/Makefile
246 lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile
247 lib/python/Plugins/SystemPlugins/SkinSelector/Makefile
248 lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile
249 lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile
250 lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile
251 lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile
252 lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile
253 lib/python/Plugins/SystemPlugins/VideoTune/Makefile
254 lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile
255 lib/python/Plugins/SystemPlugins/Videomode/Makefile
256 lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile
257 lib/python/Plugins/SystemPlugins/WirelessLan/Makefile
258 lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile
259 lib/python/Tools/Makefile
260 po/Makefile
261 main/Makefile
262 tools/Makefile
263 tools/enigma2.sh
264 enigma2.pc
265 ])
266 AC_OUTPUT