declare get_pixmap_icon_from_* as static functions
[wmaker-crm.git] / configure.ac
blobddec73091871248e66383e9575162ad8b5a4e252
1 dnl
2 dnl Window Maker autoconf input.
3 dnl
4 dnl Process with:
5 dnl               aclocal
6 dnl               autoheader
7 dnl               autoconf
8 dnl               libtoolize --force --automake
9 dnl               automake -a --gnu --include-deps
10 dnl
11 dnl
14 AC_INIT(WindowMaker, 0.95.3, , WindowMaker, http://www.windowmaker.org/)
15 AC_CONFIG_SRCDIR(src/WindowMaker.h)
16 AC_CONFIG_MACRO_DIR([m4])
17 AM_CONFIG_HEADER(config.h)
18 AM_INIT_AUTOMAKE([1.11 silent-rules])
20 AH_BOTTOM([#include "config-paths.h"])
22 dnl libtool library versioning
23 dnl =======================
24 dnl
25 dnl current
26 dnl revision
27 dnl age
28 dnl
29 dnl 1. Start with version information of ‘0:0:0’ for each libtool library.
30 dnl 2. Update the version information only immediately before a public
31 dnl release of your software. More frequent updates are unnecessary, and
32 dnl only guarantee that the current interface number gets larger faster.
33 dnl 3. If the library source code has changed at all since the last
34 dnl update, then increment revision (‘c:r:a’ becomes ‘c:r+1:a’).
35 dnl 4. If any interfaces have been added, removed, or changed since the
36 dnl last update, increment current, and set revision to 0.
37 dnl 5. If any interfaces have been added since the last public release,
38 dnl then increment age.
39 dnl 6. If any interfaces have been removed or changed since the last
40 dnl public release, then set age to 0.
41 dnl
42 dnl libwraster
43 WRASTER_CURRENT=4
44 WRASTER_REVISION=0
45 WRASTER_AGE=1
46 WRASTER_VERSION=$WRASTER_CURRENT:$WRASTER_REVISION:$WRASTER_AGE
47 AC_SUBST(WRASTER_VERSION)
48 dnl
49 dnl libWINGs
50 WINGS_CURRENT=2
51 WINGS_REVISION=1
52 WINGS_AGE=0
53 WINGS_VERSION=$WINGS_CURRENT:$WINGS_REVISION:$WINGS_AGE
54 AC_SUBST(WINGS_VERSION)
55 dnl
56 dnl libWUtil
57 WUTIL_CURRENT=2
58 WUTIL_REVISION=0
59 WUTIL_AGE=0
60 WUTIL_VERSION=$WUTIL_CURRENT:$WUTIL_REVISION:$WUTIL_AGE
61 AC_SUBST(WUTIL_VERSION)
64 dnl Checks for host/os name
65 dnl =======================
66 dnl AC_CANONICAL_HOST -- already done by AC_PROG_LIBTOOL
68 dnl Checks for programs.
69 dnl ===================
70 AC_ISC_POSIX
71 AC_PROG_CC
72 AC_PROG_LN_S
73 AC_PROG_GCC_TRADITIONAL
74 AC_PROG_LIBTOOL
76 AX_CFLAGS_GCC_OPTION(-Wall)
77 AX_CFLAGS_GCC_OPTION(-Wextra -Wno-sign-compare -Wno-unused-parameter)
79 dnl Platform-specific Makefile setup
80 dnl ================================
82 case "${host}" in
83         *-*-linux*|*-*-cygwin*|*-gnu*)
84                 WM_OSDEP="linux"
85                 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600"
86         ;;
87         *-*-freebsd*|*-k*bsd-gnu*)
88                 WM_OSDEP="bsd"
89                 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600 -DFREEBSD"
90         ;;
91         *-*-netbsd*)
92                 WM_OSDEP="bsd"
93                 CFLAGS="$CFLAGS -DNETBSD"
94         ;;
95         *-*-openbsd*)
96                 WM_OSDEP="bsd"
97         CFLAGS="$CFLAGS -DOPENBSD"
98         ;;
99         *-*-dragonfly*)
100                 WM_OSDEP="bsd"
101                 CFLAGS="$CFLAGS -DDRAGONFLYBSD"
102         ;;
103         *-apple-darwin*)
104                 WM_OSDEP="darwin"
105         ;;
106         *-*-solaris*)
107                 WM_OSDEP="stub"         # solaris.c when done
108         ;;
109         *)
110                 WM_OSDEP="stub"
111         ;;
112 esac
113 AC_SUBST(WM_OSDEP)
116 dnl the prefix
117 dnl ==========
119 dnl move this earlier in the script... anyone know why this is handled
120 dnl in such a bizarre way?
122 test "x$prefix" = xNONE && prefix=$ac_default_prefix
123 dnl Let make expand exec_prefix.
124 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
127 _bindir=`eval echo $bindir`
128 _bindir=`eval echo $_bindir`
130 lib_search_path='-L${libdir}'
132 inc_search_path='-I${includedir}'
134 dnl ===============================================
135 dnl Specify paths to look for libraries and headers
136 dnl ===============================================
137 AC_ARG_WITH(libs-from, AS_HELP_STRING([--with-libs-from], [pass compiler flags to look for libraries]),
138         [lib_search_path="$withval $lib_search_path"])
140 AC_ARG_WITH(incs-from, AS_HELP_STRING([--with-incs-from], [pass compiler flags to look for header files]),
141         [inc_search_path="$withval $inc_search_path"])
144 dnl Boehm GC
145 dnl ========
146 with_boehm_gc=no
147 AC_ARG_ENABLE([boehm-gc],
148     [AS_HELP_STRING([--enable-boehm-gc], [use Boehm GC instead of the default libc malloc() [default=no]])],
149     [with_boehm_gc=$enableval])
151 AS_IF([test "x$with_boehm_gc" = "xyes"],
152     AC_SEARCH_LIBS([GC_malloc], [gc],
153         [AC_DEFINE(USE_BOEHM_GC, 1, [Define if Boehm GC is to be used])],
154         [AC_MSG_FAILURE([--enable-boehm-gc specified but test for libgc failed])]
155     )
158 dnl LCOV
159 dnl ====
160 AC_ARG_ENABLE([lcov],
161     [AS_HELP_STRING([--enable-lcov[=output-directory]], [enable coverage data generation using LCOV (GCC only) [default=no]])],
162     [],
163     [enable_lcov=no])
165 AS_IF([test "x$enable_lcov" != "xno"],
166     [AX_CFLAGS_GCC_OPTION(-fprofile-arcs -ftest-coverage)
167     if test "x$enable_lcov" = "xyes"; then
168         lcov_output_directory="coverage-report"
169     else
170         lcov_output_directory="${enable_lcov}/coverage-report"
171     fi
172     AC_SUBST(lcov_output_directory)]
174 AM_CONDITIONAL([USE_LCOV], [test "x$enable_lcov" != "xno"])
177 dnl ============================
178 dnl Checks for library functions
179 dnl ============================
180 dnl not used anywhere
181 AC_FUNC_MEMCMP
182 AC_FUNC_VPRINTF
183 AC_CHECK_FUNCS(gethostname select poll strcasecmp strncasecmp \
184                setsid mallinfo mkstemp sysconf)
186 dnl Check for strlcat/strlcpy
187 dnl =========================
188 AC_ARG_WITH([libbsd],
189   [AS_HELP_STRING([--without-libbsd], [do not use libbsd for strlcat and strlcpy [default=check]])],
190   [AS_IF([test "x$with_libbsd" != "xno"],
191     [with_libbsd=bsd]
192     [with_libbsd=]
193   )],
194   [with_libbsd=bsd])
196 tmp_libs=$LIBS
197 AC_SEARCH_LIBS([strlcat],[$with_libbsd],
198   [AC_DEFINE(HAVE_STRLCAT, 1, [Define if strlcat is available])],
199   []
201 AC_SEARCH_LIBS([strlcpy],[$with_libbsd],
202   [AC_DEFINE(HAVE_STRLCAT, 1, [Define if strlcpy is available])],
203   []
205 LIBS=$tmp_libs
207 LIBBSD=
208 AS_IF([test "x$ac_cv_search_strlcat" = "x-lbsd" -o "x$ac_cv_search_strlcpy" = "x-lbsd"],
209   [LIBBSD=-lbsd
210    AC_CHECK_HEADERS([bsd/string.h])]
212 AC_SUBST(LIBBSD)
214 dnl Check for inotify
215 dnl =================
216 AC_CHECK_HEADERS(sys/inotify.h, AC_DEFINE(HAVE_INOTIFY, 1, Check for inotify))
219 dnl Checks for header files.
220 dnl =======================
221 AC_HEADER_SYS_WAIT
222 AC_HEADER_TIME
223 AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h libintl.h poll.h malloc.h ctype.h \
224                  string.h strings.h)
227 dnl Checks for typedefs, structures, and compiler characteristics.
228 dnl ==============================================================
229 AC_DECL_SYS_SIGLIST
230 AC_C_CONST
231 AC_TYPE_SIZE_T
232 AC_TYPE_PID_T
233 AC_TYPE_SIGNAL
236 dnl pkg-config
237 dnl ==========
238 dnl AC_ARG_VAR(PKGCONFIG, [pkg-config command])
239 AC_CHECK_PROG(PKGCONFIG, pkg-config, pkg-config) 
241 dnl gettext
242 dnl =======
244 dnl AM_GNU_GETTEXT
246 INTLIBS=""
248 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
249         AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
250                          INTLIBS="" ))
252 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
254 if test "$XGETTEXT" != ""; then 
255     if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
256         echo "xgettext isn't GNU version"
257         XGETTEXT=""
258     fi
261 if test "$LINGUAS" != ""; then
262     if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
263         AC_DEFINE(I18N, 1, [Internationalization (I18N) support (set by configure)])
264         PO=""
265         echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
266     else
267         LINGUAS=""
268         PO=""
269         echo "xgettext and libintl.a don't both exist; will not build i18n support"
270     fi
271 else
272         INTLIBS=""
273         MOFILES=""
274         WPMOFILES=""
275         UTILMOFILES=""
276         PO=""
280 dnl The Tower of Babel
281 dnl ==================
283 dnl List of supported locales
284 dnl =========================
285 supported_locales="be bg bs ca cs da de el es et fi fr gl hr hu hy it ja ko ms nl no pl pt ro ru sk sv tr zh_CN zh_TW"
286 supported_wprefs_locales="bg ca cs de es et fi fr hr hu it ja ko pt ru sk zh_CN zh_TW"
287 supported_wings_locales="bg ca cs de fr sk"
288 supported_util_locales="de es fr pt"
290 for lang in $LINGUAS; do
291         ok=0
292         for l in $supported_locales; do
293                 if test "$l" = "$lang"; then
294                         ok=1
295                         break
296                 fi
297         done
298         if test "$ok" = 1; then
299                 MOFILES="$MOFILES $lang.mo"
300         else
301                 echo "Locale $lang is not supported."
302         fi
303         ok=0
304         for l in $supported_wprefs_locales; do
305                 if test "$l" = "$lang"; then
306                         ok=1
307                         break
308                 fi
309         done
310         if test "$ok" = 1; then
311                 WPMOFILES="$WPMOFILES $lang.mo"
312         fi
313         ok=0
314         for l in $supported_util_locales; do
315                 if test "$l" = "$lang"; then
316                         ok=1
317                         break
318                 fi
319         done
320         if test "$ok" = 1; then
321                 UTILMOFILES="$UTILMOFILES $lang.mo"
322         fi
323         ok=0
324         for l in $supported_wings_locales; do
325                 if test "$l" = "$lang"; then
326                         ok=1
327                         break
328                 fi
329         done
330         if test "$ok" = 1; then
331                 WINGSMOFILES="$WINGSMOFILES $lang.mo"
332         fi
333 done
336 dnl Added by Oliver - Support for NLSDIR option
337 dnl ===========================================
338 AC_ARG_WITH(nlsdir, AS_HELP_STRING([--with-nlsdir=PATH], [specify where the locale stuff should go]))
340 if test "x$NLSDIR" = "x"; then
341         if test "x$with_nlsdir" != "x"; then
342                 NLSDIR=$with_nlsdir
343         else
344                 NLSDIR='$(prefix)/lib/locale'
345         fi
348 menutextdomain=
349 AC_ARG_WITH(menu-textdomain, AS_HELP_STRING([--with-menu-textdomain=DOMAIN], [specify gettext domain used for menu translations]),
350         [if test "x$withval" != "xno"; then
351          menutextdomain=$withval
352          fi])
353 AC_SUBST(menutextdomain)
355 AC_SUBST(INTLIBS)
356 AC_SUBST(NLSDIR)
357 AC_SUBST(MOFILES)
358 AC_SUBST(WPMOFILES)
359 AC_SUBST(UTILMOFILES)
360 AC_SUBST(WINGSMOFILES)
361 AC_SUBST(supported_locales)
363 dnl ===========================================
364 dnl             Stuff that uses X
365 dnl ===========================================
367 AC_PATH_XTRA
369 if test $no_x; then
370     AC_MSG_ERROR([The path for the X11 files not found!
371 Make sure you have X and it's headers and libraries (the -devel packages
372 in Linux) installed.])
375 X_LIBRARY_PATH=$x_libraries
376 XCFLAGS="$X_CFLAGS"
377 XLFLAGS="$X_LIBS"
378 XLIBS="-lX11 $X_EXTRA_LIBS"
379 LIBXMU="-lXmu"
380 AC_SUBST(LIBXMU)
382 lib_search_path="$lib_search_path $XLFLAGS"
383 inc_search_path="$inc_search_path $XCFLAGS"
385 AC_SUBST(X_LIBRARY_PATH)
387 dnl Decide which locale function to use, setlocale() or _Xsetlocale()
388 dnl by MANOME Tomonori 
389 dnl ===========================================
390 use_locale=yes
391 AC_ARG_ENABLE(locale, AS_HELP_STRING([--disable-locale], [disable use of X locale support]),
392               use_locale=no)
394 if test "$use_locale" = yes; then
395         AC_CHECK_LIB(X11, _Xsetlocale,
396                 AC_DEFINE(X_LOCALE, 1, [define if you want support for X window's X_LOCALE (set by configure)]),,
397                 $XLFLAGS $XLIBS)
400 dnl Check whether XInternAtoms() exist
401 dnl ==================================
402 AC_CHECK_LIB(X11, XInternAtoms, 
403              AC_DEFINE(HAVE_XINTERNATOMS, 1, [define if your X server has XInternAtoms() (set by configure)]),,
404              $XLFLAGS $XLIBS)
406 dnl Check whether XConvertCase() exist
407 dnl ==================================
408 AC_CHECK_LIB(X11, XConvertCase, 
409              AC_DEFINE(HAVE_XCONVERTCASE, 1, [define if your X server has XConvertCase() (set by configure)]),,
410              $XLFLAGS $XLIBS)
412 dnl XKB keyboard language status
413 dnl ============================
414 AC_ARG_ENABLE(modelock, AS_HELP_STRING([--enable-modelock], [XKB keyboard language status support]),
415                 AC_DEFINE(XKB_MODELOCK, 1, [whether XKB language MODELOCK should be enabled]))
417 dnl Shape support
418 dnl =============
419 shape=yes
420 AC_ARG_ENABLE(shape, AS_HELP_STRING([--disable-shape], [disable shaped window extension support]),
421                 shape=$enableval, shape=yes)
422 added_xext=no
424 if test "$shape" = yes; then
425         AC_CHECK_LIB(Xext, XShapeSelectInput, [XLIBS="-lXext $XLIBS"
426                 added_xext=yes
427                 AC_DEFINE(SHAPE, 1, [define if you want support for shaped windows (set by configure)])], 
428                 shape=no, $XLFLAGS $XLIBS)
431 dnl XRandR support
432 dnl ==============
433 xrandr=no
434 AC_ARG_ENABLE(xrandr, AS_HELP_STRING([--enable-xrandr], [enable XRandR window extension support (NOT recommended, buggy)]),
435                 xrandr=$enableval, xrandr=no)
436 added_xext=no
438 LIBXRANDR=
439 if test "$xrandr" = yes; then
440         AC_CHECK_LIB(Xrandr, XRRQueryExtension, [LIBXRANDR=-lXrandr
441                 added_xext=yes
442                 AC_DEFINE(HAVE_XRANDR, 1, [define if you want support for XRandR (set by configure)])],
443                 xrandr=no, $XLFLAGS $XLIBS)
445 AC_SUBST(LIBXRANDR)
448 dnl libWINGS uses math functions, check whether usage requires linking
449 dnl against libm
451 AC_CHECK_FUNC(atan,[mathneedslibm=no;LIBM=],[mathneedslibm=dunno])
452 if test "x$mathneedslibm" = "xdunno" ; then
453         AC_CHECK_LIB(m, atan, [LIBM=-lm])
455 AC_SUBST(LIBM)
459 dnl libWINGS uses FcPatternDel from libfontconfig
461 AC_MSG_CHECKING([for fontconfig library])
462 FCLIBS=`$PKGCONFIG fontconfig --libs`
463 if test "x$FCLIBS" = "x" ; then
464         AC_MSG_RESULT([not found])
465 else
466         AC_MSG_RESULT([found])
468 AC_SUBST(FCLIBS)
471 dnl Xft2 antialiased font support
472 dnl =============================
474 xft=yes
475 XFTLIBS=""
477 if test "x$PKGCONFIG" != x -a "`$PKGCONFIG xft; echo $?`" = 0; then
478         XFTCONFIG="$PKGCONFIG xft"
479         pkgconfig_xft=yes
480 else
481         AC_CHECK_PROG(XFTCONFIG, xft-config, xft-config)
484 AC_MSG_CHECKING([for the Xft2 library])
486 if test "x$XFTCONFIG" != x; then
487         XFTLIBS=`$XFTCONFIG --libs`
488         XFTFLAGS=`$XFTCONFIG --cflags`
489         AC_MSG_RESULT([found])
490 else
491         AC_MSG_RESULT([not found])
492         echo
493         echo "ERROR!!! libXft2 is not installed or could not be found."
494         echo "         Xft2 is a requirement for building Window Maker."
495         echo "         Please install it (along with fontconfig) before continuing."
496         echo
497         exit 1
500 minXFT="2.1.0"
501 goodxft="no"
504 dnl The macro below will use $XFTFLAGS (defined above) to find Xft.h
506 WM_CHECK_XFT_VERSION($minXFT, goodxft=yes, goodxft=no)
508 if test "$goodxft" = no; then
509         echo
510         echo "ERROR!!! libXft on this system is an old version."
511         echo "         Please consider upgrading to at least version ${minXFT}."
512         echo
513         exit 1
516 AC_SUBST(XFTFLAGS)
517 AC_SUBST(XFTLIBS)
520 dnl XINERAMA support
521 dnl ================
522 xinerama=no
523 AC_ARG_ENABLE(xinerama, AS_HELP_STRING([--enable-xinerama], [enable Xinerama extension support]),
524                 xinerama=$enableval, xinerama=no)
526 LIBXINERAMA=
527 if test "$xinerama" = yes; then
528         AC_CHECK_LIB(Xinerama, XineramaQueryScreens, 
529                 [LIBXINERAMA=-lXinerama
530                 xfxine=yes],
531                 xfxine=no, $XLFLAGS $XLIBS)
533         AC_CHECK_LIB(Xext, XineramaGetInfo,
534                 [sunxine=yes
535                 ], sunxine=no, $XLFLAGS $XLIBS)
537         if test "$xfxine" = yes; then
538                 xine=1
539         fi
541         if test "$sunxine" = yes; then
542             xine=1
543             AC_DEFINE(SOLARIS_XINERAMA, 1, 
544                 [define if you want support for the XINERAMA extension and are in Solaris (set by configure)])
545         fi
547         if test "$xine" = 1; then
548             AC_DEFINE(XINERAMA, 1, 
549                 [define if you want support for the XINERAMA extension (set by configure)])
550         fi
552 AC_SUBST(LIBXINERAMA)
555 dnl MIT-SHM support
556 dnl ===============
557 shm=yes
558 AC_ARG_ENABLE(shm, AS_HELP_STRING([--disable-shm], [disable usage of MIT-SHM extension]),
559                 shm=$enableval, shm=yes)
561 if test "$shm" = yes; then
562         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
564         if test "$ok" = yes; then
565         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
566         fi
568         if test "$ok" = yes; then
569                 if test "$added_xext" = no; then
570                         XLIBS="-lXext $XLIBS"
571                 fi
572                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
573         fi
577 dnl R6 Style Session Management Support
578 dnl ===================================
582 #AC_DEFINE(R6SM)
583 #AC_SUBST(XSMPLIBS)
587 dnl ==============================================
588 dnl         Graphic Format Libraries
589 dnl ==============================================
591 dnl XPM Support
592 dnl ===========
593 xpm=yes
594 AC_ARG_ENABLE(xpm, AS_HELP_STRING([--disable-xpm], [disable use of XPM pixmaps through libXpm]),
595         xpm=$enableval, xpm=yes)
597 if test "$xpm" = yes; then
598     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
600     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
601         WM_CHECK_HEADER(X11/xpm.h)
602         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
603                 GFXLIBS="$GFXLIBS -lXpm"
604                 supported_gfx="XPM"
605                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
606         else
607                 supported_gfx="builtin-XPM"
608         fi
609     fi
612 # for wmlib
613 AC_SUBST(XCFLAGS)
614 # for test
615 AC_SUBST(XLFLAGS)
616 AC_SUBST(XLIBS)
617 AC_SUBST(X_EXTRA_LIBS)
619 dnl ===============================================
620 dnl             End of stuff that uses X
621 dnl ===============================================
623 dnl PNG Support
624 dnl ===========
625 png=yes
626 AC_ARG_ENABLE(png, AS_HELP_STRING([--disable-png], [disable PNG support through libpng]),
627         png=$enableval, png=yes, png=no)
629 if test "$png" = yes ; then
630     my_libname=""
631     WM_CHECK_LIB(png, png_get_valid, [-lm])
632     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
633         my_libname="-lpng"
634     fi
636 dnl Retry with zlib
638     if test "x$my_libname" = x; then
639         unset ac_cv_lib_png_png_get_valid
640         WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
641         if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
642             my_libname="-lpng -lz"
643         fi
644     fi
646     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
647         WM_CHECK_HEADER(png.h)
648         if test "x$ac_cv_header_png_h" = xyes; then
649             GFXLIBS="$GFXLIBS $my_libname"
650             supported_gfx="$supported_gfx PNG"
651             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
652         fi
653     fi
657 dnl JPEG Support
658 dnl ============
659 jpeg=yes
660 ljpeg=""
661 AC_ARG_ENABLE(jpeg, AS_HELP_STRING([--disable-jpeg], [disable JPEG support through libjpeg]),
662         jpeg=$enableval, jpeg=yes, jpeg=no)
664 if test "$jpeg" = yes; then
665     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
667     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
669         ljpeg="-ljpeg"
671         WM_CHECK_HEADER(jpeglib.h)
672         if test "x$ac_cv_header_jpeglib_h" = xyes; then
673             GFXLIBS="$GFXLIBS -ljpeg"
674             supported_gfx="$supported_gfx JPEG"
675             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
676         fi
677     fi
681 dnl GIF Support
682 dnl ============
683 gif=yes
684 AC_ARG_ENABLE(gif, AS_HELP_STRING([--disable-gif], [disable GIF support through libgif or libungif]),
685         gif=$enableval, gif=yes, gif=no)
687 if test "$gif" = yes; then
688     my_libname=""
689     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
690     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
691         my_libname=-lungif
692     fi
694 dnl libungif is the same thing as libgif for all practical purposes.
696     if test "x$my_libname" = x; then
697         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
698         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
699             my_libname=-lgif
700         fi
701     fi
703     if test "$my_libname" != x; then
704         WM_CHECK_HEADER(gif_lib.h)
705         if test "x$ac_cv_header_gif_lib_h" = xyes; then
706             GFXLIBS="$GFXLIBS $my_libname"
707             supported_gfx="$supported_gfx GIF"
708             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
709         fi
710     fi
715 dnl TIFF Support
716 dnl ============
717 AC_ARG_ENABLE(tiff, 
718 AS_HELP_STRING([--disable-tiff], [disable use of TIFF images through libtiff]),
719         tif=$enableval, tif=yes, tif=no)
722 # TIFF can optionally have JPEG and/or zlib support. Must find out
723 # when they are supported so that correct library flags are passed during
724 # detection and linkage
727 # By default use xpm icons if tiff is not found.
728 ICONEXT="xpm"
731 if test "$tif" = yes; then
732     my_libname=""
733     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
734     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
735         my_libname="-ltiff"
736     fi
738 dnl Retry with zlib
740     unset ac_cv_lib_tiff_TIFFGetVersion
741     if test "x$my_libname" = x; then
742         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
743         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
744             my_libname="-ltiff -lz"
745         fi
746     fi
748     if test "x$my_libname" = x; then
749         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
750         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
751             my_libname="-ltiff34"
752         fi
753     fi
756     if test "x$my_libname" != x; then
757         WM_CHECK_HEADER(tiffio.h)
758         if test "x$ac_cv_header_tiffio_h" = xyes; then
759             GFXLIBS="$my_libname $GFXLIBS"
760             ICONEXT="tiff"
761             supported_gfx="$supported_gfx TIFF"
762             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
763         fi
764     fi
767 LIBRARY_SEARCH_PATH="$lib_search_path"
768 HEADER_SEARCH_PATH="$inc_search_path"
770 AC_SUBST(LIBRARY_SEARCH_PATH)
771 AC_SUBST(HEADER_SEARCH_PATH)
774 AC_SUBST(GFXLIBS)
775 AC_SUBST(ICONEXT)
778 dnl ==============================================
779 dnl         End of Graphic Format Libraries
780 dnl ==============================================
784 dnl stdlib.h is checked here, because of conflict in jpeglib.h
785 AC_CHECK_HEADERS(stdlib.h)
787 # AC_PREFIX_PROGRAM(wmaker)
789 dnl Support for PIXMAPDIR option
790 dnl ============================
791 AC_ARG_WITH(pixmapdir, AS_HELP_STRING([--with-pixmapdir=PATH], [specify where pixmaps are located [DATADIR/pixmaps]]))
793 if test "x$with_pixmapdir" != "x"; then
794         pixmapdir=$with_pixmapdir
795 else
796         pixmapdir='${datadir}/pixmaps'
798 AC_SUBST(pixmapdir)
801 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
802 dnl ==============================================
804 AC_ARG_WITH(gnustepdir, AS_HELP_STRING([--with-gnustepdir=PATH], [specify the directory for GNUstep applications]))
806 if test "x`echo $with_gnustepdir | grep ^/`" != "x"; then
807     appspath=$with_gnustepdir
810 if test "x$appspath$GNUSTEP_LOCAL_ROOT" = "x"; then
811     wprefs_base_dir=${prefix}
812     wprefs_datadir="${datadir}/WPrefs"
813     wprefs_bindir="${bindir}"
814 else
815     gnustepdir=$appspath
817     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
818         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
819         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
820     fi
822     wprefs_base_dir=$gnustepdir/Applications
823     wprefs_datadir=$wprefs_base_dir/WPrefs.app
824     wprefs_bindir=$wprefs_base_dir/WPrefs.app
827 AC_SUBST(wprefs_datadir)
828 AC_SUBST(wprefs_bindir)
831 dnl Enable User Defined Menu thing
832 dnl ==============================
833 AC_ARG_ENABLE(usermenu, AS_HELP_STRING([--enable-usermenu], [user defined menus for applications]),
834 if test "$enableval" = yes; then
835         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
839 gl_LD_VERSION_SCRIPT
841 AC_OUTPUT(Makefile po/Makefile util/Makefile util/po/Makefile test/Makefile \
842         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
843         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
844         WINGs/Extras/Makefile WINGs/po/Makefile \
845         wmlib/Makefile wrlib/Makefile wrlib/tests/Makefile \
846         src/Makefile src/wconfig.h \
847         doc/Makefile doc/sk/Makefile doc/cs/Makefile \
848         doc/ru/Makefile \
849         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
850         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
851         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
852         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
853         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
854         WPrefs.app/po/Makefile )
857 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
858 dnl ===================================================================
860 dnl echo "WFLAGS=\"$LIBPL_INC_PATH -I$prefix/include\"" > WINGs-flags
861 dnl echo "WLIBS=\"-L$exec_prefix/lib -lWINGs -lwraster $LIBPL_LIBS $GFXLIBS -lm\""\
862 dnl     | sed -e 's|\$(prefix)|'"$prefix|" >> WINGs-flags
864 dnl The #lp# and #rp# stuff below is a hack because [ and ] get lost when
865 dnl parsed by m4
867 AC_SUBST(lib_search_path)
868 AC_SUBST(inc_search_path)
871 dnl Spit out the configuration
872 dnl ==========================
874 supported_gfx="$supported_gfx builtin-PPM"
876 if test "x$MOFILES" = "x"; then
877         mof=None
878 else
879         mof=`echo $MOFILES`
882 if test "x$MOFILES" = "x"; then
883         languages=None
884 else
885         languages=`echo $MOFILES | sed 's/.mo//g'`
888 echo
889 echo "Window Maker was configured as follows:"
890 echo
891 echo "Installation path prefix            : $prefix"
892 echo "Installation path for binaries      : $_bindir"
893 echo "Installation path for libraries     : $libdir"
894 echo "Installation path for WPrefs.app    : $wprefs_base_dir" | sed -e 's|\${prefix}|'"$prefix|"
895 echo "Supported graphic format libraries  : $supported_gfx"
896 echo "Antialiased text support in WINGs   : $xft"
897 echo "Xinerama extension support          : $xinerama"
898 echo "XRandR extension support            : $xrandr"
899 echo "Translated message files to install : $mof"
900 dnl echo "Supported languages beside English  : $languages"
901 if test "x$MOFILES" != "x"; then
902         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
904 echo
906 dnl WM_PRINT_REDCRAP_BUG_STATUS
908 if test "x$ac_cv_header_jpeglib_h" != xyes; then
909 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
910 echo
911 echo "JPEG support will not be included because the JPEG library is"
912 echo "not installed correctly or was not found. Background images"
913 echo "from themes will not display as they usually are JPEG files."
914 echo
915 echo "To fix, download and install the jpeg library and/or make sure you"
916 echo "installed all jpeg related packages, SPECIALLY the development packages"
917 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
918 echo
919 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
923 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
924 dnl ================================================
925 dnl Local Variables:
926 dnl compile-command: "autoconf"
927 dnl End: