Merge branch 'master' of git://git.opendreambox.org/git/enigma2
[openblackhole/openblackhole-enigma2.git] / configure.ac
1 AC_INIT(enigma2,2.4)
2 AM_INIT_AUTOMAKE(enigma2,2.4)
3
4 TUXBOX_APPS
5 TUXBOX_APPS_DIRECTORY
6
7 AC_PROG_CC
8 AC_PROG_CXX
9 AC_PROG_RANLIB
10
11 AC_ARG_WITH(boxtype,
12         [  --with-boxtype=NAME box type [[none,dm7025,dm800...]]],
13         [BOXTYPE="$withval"],[BOXTYPE="dm800"])
14
15 AC_SUBST(BOXTYPE)
16 AC_DEFINE_UNQUOTED(BOXTYPE,"$BOXTYPE",[box type])
17
18 AC_ARG_WITH(libsdl,
19         AC_HELP_STRING([--with-libsdl], [use sdl, yes or no]),
20         [[withsdl=$withval]],
21         [[withsdl=yes]]
22 )
23
24 AC_ARG_WITH(alsa,
25         AC_HELP_STRING([--with-alsa], [use alsa, yes or no]),
26         [[withalsa=$withval]],
27         [[withalsa=yes]]
28 )
29
30 if test "$withalsa" = "yes" ; then
31         _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(ALSA, alsa, HAVE_ALSA)
32         LDFLAGS="$LDFLAGS $ALSA_LIBS"
33 fi
34
35 AC_ARG_WITH(textlcd,
36         AC_HELP_STRING([--with-textlcd], [use ascii based lcd, yes or no]),
37         [[withtextlcd=$withval]],
38         [[withtextlcd=yes]]
39 )
40
41 if test "$withtextlcd" = "yes" ; then
42         AC_DEFINE(HAVE_TEXTLCD, 1,[Define when using an ascii based lcd device])
43 fi
44
45 AC_CHECK_HEADER(dreamdvd/ddvdlib.h,have_ddvdlib="yes",have_ddvdlib="no")
46 if test x"${have_ddvdlib}" = xyes ; then
47         AC_DEFINE(HAVE_DDVDLIB, 1,[Define if ddvdlib is available])
48 else
49         AC_MSG_NOTICE([ddvdlib not found... dont build dvd plugin])
50 fi
51 AM_CONDITIONAL(HAVE_DDVDLIB, test "$have_ddvdlib" = "yes")
52
53 AM_PATH_PYTHON()
54 AC_PYTHON_DEVEL
55 #AM_PATH_XINE(1.1.0,, AC_MSG_ERROR([*** Please install xine-lib (devel) first ***]))
56
57 TUXBOX_APPS_DVB
58
59 _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(FREETYPE, freetype2, HAVE_FREETYPE2)
60 if test "$HAVE_FREETYPE2" = "no" ; then
61         TUXBOX_APPS_LIB_CONFIG(FREETYPE, freetype-config)
62 fi
63 TUXBOX_APPS_LIB_PKGCONFIG(FRIBIDI,fribidi)
64 TUXBOX_APPS_LIB_PKGCONFIG(ID3TAG,id3tag)
65 TUXBOX_APPS_LIB_PKGCONFIG(MAD,mad)
66 #TUXBOX_APPS_LIB_PKGCONFIG(PLUGINS,tuxbox-plugins)
67 TUXBOX_APPS_LIB_PKGCONFIG(PNG,libpng)
68 TUXBOX_APPS_LIB_PKGCONFIG(SIGC,sigc++-1.2)
69 TUXBOX_APPS_LIB_PKGCONFIG(DVBSI,libdvbsi++)
70 _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(GSTREAMER,gstreamer,HAVE_GSTREAMER)
71 _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(GSTREAMERPBUTILS,gstreamer-pbutils,HAVE_GSTSTREAMERPBUTILS)
72 _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(LIBXINE,libxine,HAVE_LIBXINE)
73 AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
74 JPEG_LIBS="-ljpeg"
75 AC_SUBST(JPEG_LIBS)
76
77 AC_SUBST(LIBUNGIF_LIBS,"")
78 AC_CHECK_HEADERS(gif_lib.h,
79         AC_CHECK_LIB(ungif,DGifOpen,
80         [AC_DEFINE(HAVE_LIBUNGIF,1,[Define if you have libgif/libungif including devel headers])
81                 LIBUNGIF_LIBS="-lungif"],
82                 [AC_CHECK_LIB(gif,DGifOpen,
83                         [AC_DEFINE(HAVE_LIUNBGIF,1)
84                         LIBUNGIF_LIBS="-lgif"])]))
85
86 TUXBOX_APPS_LIB_PKGCONFIG(XML2,libxml-2.0)
87
88 # ok, we are in trouble: XMLCCWRAP only defines C++ symbols. So let's just check if linking works,
89 # and assume everything will be ok. Then just check for the "exit" symbol, which should be always there.
90 AC_LANG_SAVE
91 AC_LANG_CPLUSPLUS
92 TUXBOX_APPS_LIB_SYMBOL(XMLCCWRAP, xmlccwrap, exit)
93 AC_LANG_RESTORE
94
95 if test "$withsdl" = "yes" ; then
96         _TUXBOX_APPS_LIB_PKGCONFIG_OPTIONAL(SDL,sdl,WITH_SDL)
97         if test "$WITH_SDL" = "no" ; then
98                 TUXBOX_APPS_LIB_CONFIG(SDL,sdl-config)
99                 AC_DEFINE_UNQUOTED([WITH_SDL],[$withsdl],[With SDL])
100         fi
101 fi
102 # allow 'if WITH_SDL' conditionals in Makefile.am
103 AM_CONDITIONAL(WITH_SDL, test "$WITH_SDL" = "yes")
104
105 CPPFLAGS="$CPPFLAGS "'-I$(top_srcdir)'
106 CPPFLAGS="$CPPFLAGS -D_REENTRANT $PYTHON_CPPFLAGS $MD5SUM_CFLAGS $FREETYPE_CFLAGS $FRIBIDI_CFLAGS $ID3TAG_CFLAGS $MAD_CFLAGS $PLUGINS_CFLAGS $PNG_CFLAGS $SDL_CFLAGS $SIGC_CFLAGS $XMLTREE_CFLAGS $DVBSI_CFLAGS $GSTREAMER_CFLAGS $GSTREAMERPBUTILS_CFLAGS $LIBXINE_CFLAGS $LIBUNGIF_CFLAGS"
107 #CPPFLAGS="$CPPFLAGS -DMEMLEAK_CHECK"
108 CXXFLAGS="$CXXFLAGS -fno-rtti -fno-exceptions -Wall"
109
110 #if test "$GCC" = "yes"
111 #then
112 #        gccmajor=`$CC -dumpversion | head -n 1 | awk '{print $NF;}' | cut -d. -f1`
113 #        if test "$gccmajor" -gt "3"
114 #        then
115 #                CXXFLAGS="$CXXFLAGS -fvisibility=hidden -fvisibility-inlines-hidden -fno-threadsafe-statics"
116 #        fi
117 #fi
118
119 LDFLAGS="$LDFLAGS -pthread $PYTHON_LDFLAGS $SDL_LDFLAGS $GSTREAMER_LDFLAGS $GSTREAMERPBUTILS_LDFLAGS $LIBXINE_LDFLAGS $LIBUNGIF_LDFLAGS"
120 #LDFLAGS="-rdynamic $LDFLAGS"
121
122 TUXBOX_APPS_GETTEXT
123
124 AC_OUTPUT([
125 Makefile
126 data/Makefile
127 data/fonts/Makefile
128 data/countries/Makefile
129 data/defaults/Makefile
130 data/defaults/Dream/Makefile
131 data/extensions/Makefile
132 data/skin_default/Makefile
133 data/skin_default/menu/Makefile
134 data/skin_default/icons/Makefile
135 data/skin_default/buttons/Makefile
136 data/skin_default/spinner/Makefile
137 include/Makefile
138 lib/Makefile
139 lib/actions/Makefile
140 lib/base/Makefile
141 lib/driver/Makefile
142 lib/dvb/Makefile
143 lib/dvb/lowlevel/Makefile
144 lib/dvb_ci/Makefile
145 lib/gdi/Makefile
146 lib/gui/Makefile
147 lib/mmi/Makefile
148 lib/nav/Makefile
149 lib/network/Makefile
150 lib/python/Makefile
151 lib/python/Components/Makefile
152 lib/python/Components/Converter/Makefile
153 lib/python/Components/Renderer/Makefile
154 lib/python/Components/Sources/Makefile
155 lib/python/Screens/Makefile
156 lib/python/Plugins/Makefile
157 lib/python/Plugins/SystemPlugins/SoftwareUpdate/Makefile
158 lib/python/Plugins/SystemPlugins/ConfigurationBackup/Makefile
159 lib/python/Plugins/SystemPlugins/CableScan/Makefile
160 lib/python/Plugins/SystemPlugins/FastScan/Makefile
161 lib/python/Plugins/DemoPlugins/Makefile
162 lib/python/Plugins/DemoPlugins/TestPlugin/Makefile
163 lib/python/Plugins/Extensions/CutListEditor/Makefile
164 lib/python/Plugins/Extensions/CutListEditor/meta/Makefile
165 lib/python/Plugins/Extensions/DVDBurn/Makefile
166 lib/python/Plugins/Extensions/DVDBurn/meta/Makefile
167 lib/python/Plugins/Extensions/DVDPlayer/Makefile
168 lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile
169 lib/python/Plugins/Extensions/DVDPlayer/src/Makefile
170 lib/python/Plugins/Extensions/GraphMultiEPG/Makefile
171 lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile
172 lib/python/Plugins/Extensions/Makefile
173 lib/python/Plugins/Extensions/MediaPlayer/Makefile
174 lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile
175 lib/python/Plugins/Extensions/MediaScanner/Makefile
176 lib/python/Plugins/Extensions/MediaScanner/meta/Makefile
177 lib/python/Plugins/Extensions/Modem/Makefile
178 lib/python/Plugins/Extensions/PicturePlayer/Makefile
179 lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile
180 lib/python/Plugins/Extensions/PicturePlayer/data/Makefile
181 lib/python/Plugins/Extensions/SocketMMI/Makefile
182 lib/python/Plugins/Extensions/SocketMMI/meta/Makefile
183 lib/python/Plugins/Extensions/SocketMMI/src/Makefile
184 lib/python/Plugins/Extensions/TuxboxPlugins/Makefile
185 lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile
186 lib/python/Plugins/SystemPlugins/CleanupWizard/Makefile
187 lib/python/Plugins/SystemPlugins/CleanupWizard/meta/Makefile
188 lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile
189 lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile
190 lib/python/Plugins/SystemPlugins/CrashlogAutoSubmit/Makefile
191 lib/python/Plugins/SystemPlugins/CrashlogAutoSubmit/meta/Makefile
192 lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile
193 lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile
194 lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile
195 lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile
196 lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile
197 lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile
198 lib/python/Plugins/SystemPlugins/Hotplug/Makefile
199 lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile
200 lib/python/Plugins/SystemPlugins/Makefile
201 lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile
202 lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile
203 lib/python/Plugins/SystemPlugins/NFIFlash/Makefile
204 lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile
205 lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile
206 lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile
207 lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile
208 lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile
209 lib/python/Plugins/SystemPlugins/Satfinder/Makefile
210 lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile
211 lib/python/Plugins/SystemPlugins/SkinSelector/Makefile
212 lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile
213 lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile
214 lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile
215 lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile
216 lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile
217 lib/python/Plugins/SystemPlugins/VideoTune/Makefile
218 lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile
219 lib/python/Plugins/SystemPlugins/Videomode/Makefile
220 lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile
221 lib/python/Plugins/SystemPlugins/WirelessLan/Makefile
222 lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile
223 lib/python/Tools/Makefile
224 lib/service/Makefile
225 lib/components/Makefile
226 po/Makefile
227 main/Makefile
228 tools/Makefile
229 enigma2.pc
230 ])
231
232 #lib/python/Plugins/Extensions/SimpleRSS/Makefile
233 #lib/python/Plugins/Extensions/FileManager/Makefile