* configure reorganisation
[framework/uifw/expedite.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 # get rid of that stupid cache mechanism
4 rm -f config.cache
5
6 AC_INIT([expedite], [0.6.0], [enlightenment-devel@lists.sourceforge.net])
7 AC_PREREQ([2.52])
8 AC_CONFIG_SRCDIR([configure.ac])
9 AC_CANONICAL_BUILD
10 AC_CANONICAL_HOST
11
12 AM_INIT_AUTOMAKE(1.6 dist-bzip2)
13 AM_CONFIG_HEADER(config.h)
14
15 PKG_PROG_PKG_CONFIG
16
17
18 ### Additional options to configure
19
20 ## Simple X11 build/link
21
22 ## Evas engines
23
24 AC_ARG_ENABLE(simple-x11,
25    [AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking])],
26    [want_evas_simple_x11=$enableval]
27 )
28
29 # Software X11
30 EXPEDITE_CHECK_ENGINE([software-x11], [Software X11], "yes")
31
32 # XRender X11
33 EXPEDITE_CHECK_ENGINE([xrender-x11], [XRender X11], "yes")
34
35 # OpenGL X11
36 EXPEDITE_CHECK_ENGINE([opengl-x11], [OpenGL X11], "yes")
37
38 # Software XCB
39 EXPEDITE_CHECK_ENGINE([software-xcb], [Software XCB], "yes")
40
41 # DirectDraw
42 EXPEDITE_CHECK_ENGINE([software-ddraw], [Software DirectDraw], "yes", [ddraw_libs="-lddraw -ldxguid"])
43 AC_SUBST(ddraw_libs)
44
45 # Direct3D
46 EXPEDITE_CHECK_ENGINE([direct3d], [Direct3D], "yes", [d3d_libs="-ld3d9 -ld3dx9d"])
47 AC_SUBST(d3d_libs)
48
49 # OpenGL GLEW
50 EXPEDITE_CHECK_ENGINE([opengl-glew], [OpenGL Glew], "yes", [glew_libs="-lglew32 -lgdi32"])
51 AC_SUBST(glew_libs)
52
53 # Software SDL
54 EXPEDITE_CHECK_ENGINE([software-sdl], [Software SDL], "yes")
55
56 # FB
57 EXPEDITE_CHECK_ENGINE([fb], [Framebuffer], "yes")
58
59 # DIRECTFB
60 EXPEDITE_CHECK_ENGINE([directfb], [DirectFB], "yes")
61
62 # Quartz
63 EXPEDITE_CHECK_ENGINE([quartz], [Quartz], "yes", [quartz_libs="-framework Cocoa -framework ApplicationServices"])
64 AC_SUBST(quartz_libs)
65
66 AM_CONDITIONAL(BUILD_QUARTZ, test "x$have_quartz" = "xyes")
67
68 # Software 16bit X11
69 EXPEDITE_CHECK_ENGINE([software-16-x11], [Software 16 bits X11], "yes")
70
71 # 16bit DirectDraw
72 EXPEDITE_CHECK_ENGINE([software-16-ddraw], [Software 16 bits DirectDraw], "yes", [ddraw_libs="-lddraw -ldxguid"])
73 AC_SUBST(ddraw_16_libs)
74
75 # 16bit WinCE
76 EXPEDITE_CHECK_ENGINE([software-16-wince], [Software 16 bits WinCE], "yes", [wince_16_libs="-laygshell"])
77 AC_SUBST(wince_16_libs)
78
79 ### Checks for programs
80
81 AC_ISC_POSIX
82 m4_ifdef([AC_PROG_OBJC],
83    [AC_PROG_OBJC],
84    [
85     AC_CHECK_TOOL([OBJC], [gcc])
86     AC_SUBST([OBJC])
87     AC_SUBST([OBJCFLAGS])
88    ]
89 )
90 AC_PROG_CXX
91 AC_PROG_CC
92
93
94 ### Checks for libraries
95
96 # Evil library for compilation on Windows
97
98 case "$host_os" in
99    mingw32ce*)
100       PKG_CHECK_MODULES([EVIL], [evil])
101       AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if Evil library is installed])
102       ;;
103 esac
104
105 # Evas
106
107 PKG_CHECK_MODULES([EVAS], evas)
108
109 # Xlib
110
111 if test "x$have_software_x11" = "xyes" -o "x$have_software_16_x11" = "xyes" -o "x$have_xrender_x11" = "xyes" -o "x$have_opengl_x11" = "xyes"; then
112    AC_PATH_XTRA
113    AC_CHECK_HEADERS([X11/Xlib.h X11/Xutil.h],
114       [have_x11="yes"],
115       [have_x11="no"])
116    if test "x$want_evas_simple_x11" = "xyes"; then
117       x_libs="${x_libs} -lX11 -lXext"
118    else
119       x_dir=${x_dir:-/usr/X11R6}
120       x_cflags=${x_cflags:--I${x_includes:-$x_dir/include}}
121       x_libs="${x_libs:--L${x_libraries:-$x_dir/lib}} -lX11 -lXext"
122    fi
123 fi
124 AM_CONDITIONAL(BUILD_X11, test "x$have_x11" = "xyes")
125
126 AC_SUBST(x_cflags)
127 AC_SUBST(x_libs)
128
129 # XCB
130
131 if test "x$have_software_xcb" = "xyes"; then
132    PKG_CHECK_MODULES([XCB], [xcb xcb-keysyms], [have_software_xcb="yes"], [have_software_xcb="no"])
133 fi
134 AM_CONDITIONAL(BUILD_XCB, test "x$have_xcb" = "xyes")
135 if test "x$have_xcb" = "xyes"; then
136    AC_DEFINE(BUILD_XCB, 1, [build xcb support])
137 fi
138
139 # SDL
140
141 if test "x$have_software_sdl" = "xyes"; then
142    PKG_CHECK_MODULES([SDL], [sdl], [have_sdl="yes"], [have_sdl="no"])
143 fi
144 AM_CONDITIONAL(BUILD_SDL, test "x$have_sdl" = "xyes")
145
146 # DirectFB
147
148 if test "x$have_directfb" = "xyes"; then
149    PKG_CHECK_MODULES([DIRECTFB], [directfb], [have_directfb="yes"], [have_directfb="no"])
150 fi
151 AM_CONDITIONAL(BUILD_DIRECTFB, test "x$have_directfb" = "xyes")
152
153
154 ### Checks for header files
155
156
157 ### Checks for types
158
159
160 ### Checks for structures
161
162
163 ### Checks for compiler characteristics
164
165 AM_PROG_CC_STDC
166 AC_HEADER_STDC
167 AC_C_CONST
168 AM_PROG_CC_C_O
169
170 WIN32_CFLAGS=""
171 case "$host_os" in
172    cegcc*)
173       WIN32_CFLAGS="-mwin32"
174       ;;
175 esac
176 AC_SUBST(WIN32_CFLAGS)
177
178
179 ### Checks for linker characteristics
180
181 lt_enable_auto_import=""
182 case "$host_os" in
183    mingw* | cegcc*)
184       lt_enable_auto_import="-Wl,--enable-auto-import"
185       ;;
186 esac
187 AC_SUBST(lt_enable_auto_import)
188
189
190 ### Checks for library functions
191
192
193 AC_OUTPUT([
194 Makefile
195 src/Makefile
196 src/bin/Makefile
197 data/Makefile
198 ])
199
200 echo
201 echo "  $PACKAGE $VERSION"
202 echo
203 echo "  Engines:"
204 echo "    Software X11.................: ${have_software_x11}"
205 echo "    X Render X11.................: ${have_xrender_x11}"
206 echo "    Open GL X11..................: ${have_opengl_x11}"
207 echo "    Software XCB.................: ${have_software_xcb}"
208 echo "    Software DirectDraw..........: ${have_software_ddraw}"
209 echo "    Direct3D.....................: ${have_direct3d}"
210 echo "    Open GL Glew.................: ${have_opengl_glew}"
211 echo "    Software SDL.................: ${have_software_sdl}"
212 echo "    FB...........................: ${have_fb}"
213 echo "    DirectFB.....................: ${have_directfb}"
214 echo "    Quartz.......................: ${have_quartz}"
215 echo "    Software X11 16 bits.........: ${have_software_16_x11}"
216 echo "    Software DirectDraw 16 bits..: ${have_software_16_ddraw}"
217 echo "    Software WinCE 16 bits.......: ${have_software_16_wince}"
218 echo
219 echo "  Installation:"
220 echo "    prefix.......................: ${prefix}"
221 echo