WindowMaker: New get_texture_image function
[wmaker-crm.git] / configure.ac
blob9cf51077a855abd3d4ef7e872e9d4c32e13a13d1
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.2, , 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))
218 dnl Check CPP
219 dnl =========
220 if test "x$CPP_PATH" = x; then
221     AC_PATH_PROG(CPP_PATH, cpp, notfound, 
222                 $PATH:/lib:/usr/bin:/bin:/usr/lib:/usr/ccs/lib)
226 dnl Tell stupid Solaris cpp that the files it will process have C++ like syntax
227 dnl RedHat 5.x is broken too, so it won't make a symlink from cpp to the
228 dnl standard locations
230 if test "$CPP_PATH" = "/usr/ccs/lib/cpp" -o "$CPP_PATH" = "notfound" ; then
231     if test "$GCC" = "yes"; then
232         CPP_PATH="gcc -E -x c"
233     else 
234         if test "$CPP_PATH" = "/usr/ccs/lib/cpp"; then
235             CPP_PATH="$CPP_PATH -B"
236         else
237             echo "cpp, the C preprocessor was not found in your system."
238             echo "Create a symbolic link from it to /lib/cpp and rerun configure"
239             exit
240         fi
241     fi
246 dnl Checks for header files.
247 dnl =======================
248 AC_HEADER_SYS_WAIT
249 AC_HEADER_TIME
250 AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h libintl.h poll.h malloc.h ctype.h \
251                  string.h strings.h)
254 dnl Checks for typedefs, structures, and compiler characteristics.
255 dnl ==============================================================
256 AC_DECL_SYS_SIGLIST
257 AC_C_CONST
258 AC_TYPE_SIZE_T
259 AC_TYPE_PID_T
260 AC_TYPE_SIGNAL
263 dnl pkg-config
264 dnl ==========
265 dnl AC_ARG_VAR(PKGCONFIG, [pkg-config command])
266 AC_CHECK_PROG(PKGCONFIG, pkg-config, pkg-config) 
268 dnl gettext
269 dnl =======
271 dnl AM_GNU_GETTEXT
273 INTLIBS=""
275 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
276         AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
277                          INTLIBS="" ))
279 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
281 if test "$XGETTEXT" != ""; then 
282     if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
283         echo "xgettext isn't GNU version"
284         XGETTEXT=""
285     fi
288 if test "$LINGUAS" != ""; then
289     if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
290         AC_DEFINE(I18N, 1, [Internationalization (I18N) support (set by configure)])
291         PO=""
292         echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
293     else
294         LINGUAS=""
295         PO=""
296         echo "xgettext and libintl.a don't both exist; will not build i18n support"
297     fi
298 else
299         INTLIBS=""
300         MOFILES=""
301         WPMOFILES=""
302         UTILMOFILES=""
303         PO=""
307 dnl The Tower of Babel
308 dnl ==================
310 dnl List of supported locales
311 dnl =========================
312 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"
313 supported_wprefs_locales="bg ca cs de es et fi fr hr hu it ja ko pt ru sk zh_CN zh_TW"
314 supported_wings_locales="bg ca cs de fr sk"
315 supported_util_locales="de es fr pt"
317 for lang in $LINGUAS; do
318         ok=0
319         for l in $supported_locales; do
320                 if test "$l" = "$lang"; then
321                         ok=1
322                         break
323                 fi
324         done
325         if test "$ok" = 1; then
326                 MOFILES="$MOFILES $lang.mo"
327         else
328                 echo "Locale $lang is not supported."
329         fi
330         ok=0
331         for l in $supported_wprefs_locales; do
332                 if test "$l" = "$lang"; then
333                         ok=1
334                         break
335                 fi
336         done
337         if test "$ok" = 1; then
338                 WPMOFILES="$WPMOFILES $lang.mo"
339         fi
340         ok=0
341         for l in $supported_util_locales; do
342                 if test "$l" = "$lang"; then
343                         ok=1
344                         break
345                 fi
346         done
347         if test "$ok" = 1; then
348                 UTILMOFILES="$UTILMOFILES $lang.mo"
349         fi
350         ok=0
351         for l in $supported_wings_locales; do
352                 if test "$l" = "$lang"; then
353                         ok=1
354                         break
355                 fi
356         done
357         if test "$ok" = 1; then
358                 WINGSMOFILES="$WINGSMOFILES $lang.mo"
359         fi
360 done
363 dnl Added by Oliver - Support for NLSDIR option
364 dnl ===========================================
365 AC_ARG_WITH(nlsdir, AS_HELP_STRING([--with-nlsdir=PATH], [specify where the locale stuff should go]))
367 if test "x$NLSDIR" = "x"; then
368         if test "x$with_nlsdir" != "x"; then
369                 NLSDIR=$with_nlsdir
370         else
371                 NLSDIR='$(prefix)/lib/locale'
372         fi
375 menutextdomain=
376 AC_ARG_WITH(menu-textdomain, AS_HELP_STRING([--with-menu-textdomain=DOMAIN], [specify gettext domain used for menu translations]),
377         [if test "x$withval" != "xno"; then
378          menutextdomain=$withval
379          fi])
380 AC_SUBST(menutextdomain)
382 AC_SUBST(INTLIBS)
383 AC_SUBST(NLSDIR)
384 AC_SUBST(MOFILES)
385 AC_SUBST(WPMOFILES)
386 AC_SUBST(UTILMOFILES)
387 AC_SUBST(WINGSMOFILES)
388 AC_SUBST(supported_locales)
390 dnl ===========================================
391 dnl             Stuff that uses X
392 dnl ===========================================
394 AC_PATH_XTRA
396 if test $no_x; then
397     AC_MSG_ERROR([The path for the X11 files not found!
398 Make sure you have X and it's headers and libraries (the -devel packages
399 in Linux) installed.])
402 X_LIBRARY_PATH=$x_libraries
403 XCFLAGS="$X_CFLAGS"
404 XLFLAGS="$X_LIBS"
405 XLIBS="-lX11 $X_EXTRA_LIBS"
406 LIBXMU="-lXmu"
407 AC_SUBST(LIBXMU)
409 lib_search_path="$lib_search_path $XLFLAGS"
410 inc_search_path="$inc_search_path $XCFLAGS"
412 AC_SUBST(X_LIBRARY_PATH)
414 dnl Decide which locale function to use, setlocale() or _Xsetlocale()
415 dnl by MANOME Tomonori 
416 dnl ===========================================
417 use_locale=yes
418 AC_ARG_ENABLE(locale, AS_HELP_STRING([--disable-locale], [disable use of X locale support]),
419               use_locale=no)
421 if test "$use_locale" = yes; then
422         AC_CHECK_LIB(X11, _Xsetlocale,
423                 AC_DEFINE(X_LOCALE, 1, [define if you want support for X window's X_LOCALE (set by configure)]),,
424                 $XLFLAGS $XLIBS)
427 dnl Check whether XInternAtoms() exist
428 dnl ==================================
429 AC_CHECK_LIB(X11, XInternAtoms, 
430              AC_DEFINE(HAVE_XINTERNATOMS, 1, [define if your X server has XInternAtoms() (set by configure)]),,
431              $XLFLAGS $XLIBS)
433 dnl Check whether XConvertCase() exist
434 dnl ==================================
435 AC_CHECK_LIB(X11, XConvertCase, 
436              AC_DEFINE(HAVE_XCONVERTCASE, 1, [define if your X server has XConvertCase() (set by configure)]),,
437              $XLFLAGS $XLIBS)
439 dnl XKB keyboard language status
440 dnl ============================
441 AC_ARG_ENABLE(modelock, AS_HELP_STRING([--enable-modelock], [XKB keyboard language status support]),
442                 AC_DEFINE(XKB_MODELOCK, 1, [whether XKB language MODELOCK should be enabled]))
444 dnl Shape support
445 dnl =============
446 shape=yes
447 AC_ARG_ENABLE(shape, AS_HELP_STRING([--disable-shape], [disable shaped window extension support]),
448                 shape=$enableval, shape=yes)
449 added_xext=no
451 if test "$shape" = yes; then
452         AC_CHECK_LIB(Xext, XShapeSelectInput, [XLIBS="-lXext $XLIBS"
453                 added_xext=yes
454                 AC_DEFINE(SHAPE, 1, [define if you want support for shaped windows (set by configure)])], 
455                 shape=no, $XLFLAGS $XLIBS)
458 dnl XRandR support
459 dnl ==============
460 xrandr=no
461 AC_ARG_ENABLE(xrandr, AS_HELP_STRING([--enable-xrandr], [enable XRandR window extension support]),
462                 xrandr=$enableval, xrandr=no)
463 added_xext=no
465 LIBXRANDR=
466 if test "$xrandr" = yes; then
467         AC_CHECK_LIB(Xrandr, XRRQueryExtension, [LIBXRANDR=-lXrandr
468                 added_xext=yes
469                 AC_DEFINE(HAVE_XRANDR, 1, [define if you want support for XRandR (set by configure)])],
470                 xrandr=no, $XLFLAGS $XLIBS)
472 AC_SUBST(LIBXRANDR)
475 dnl libWINGS uses math functions, check whether usage requires linking
476 dnl against libm
478 AC_CHECK_FUNC(atan,[mathneedslibm=no;LIBM=],[mathneedslibm=dunno])
479 if test "x$mathneedslibm" = "xdunno" ; then
480         AC_CHECK_LIB(m, atan, [LIBM=-lm])
482 AC_SUBST(LIBM)
486 dnl libWINGS uses FcPatternDel from libfontconfig
488 AC_MSG_CHECKING([for fontconfig library])
489 FCLIBS=`$PKGCONFIG fontconfig --libs`
490 if test "x$FCLIBS" = "x" ; then
491         AC_MSG_RESULT([not found])
492 else
493         AC_MSG_RESULT([found])
495 AC_SUBST(FCLIBS)
498 dnl Xft2 antialiased font support
499 dnl =============================
501 xft=yes
502 XFTLIBS=""
504 if test "x$PKGCONFIG" != x -a "`$PKGCONFIG xft; echo $?`" = 0; then
505         XFTCONFIG="$PKGCONFIG xft"
506         pkgconfig_xft=yes
507 else
508         AC_CHECK_PROG(XFTCONFIG, xft-config, xft-config)
511 AC_MSG_CHECKING([for the Xft2 library])
513 if test "x$XFTCONFIG" != x; then
514         XFTLIBS=`$XFTCONFIG --libs`
515         XFTFLAGS=`$XFTCONFIG --cflags`
516         AC_MSG_RESULT([found])
517 else
518         AC_MSG_RESULT([not found])
519         echo
520         echo "ERROR!!! libXft2 is not installed or could not be found."
521         echo "         Xft2 is a requirement for building Window Maker."
522         echo "         Please install it (along with fontconfig) before continuing."
523         echo
524         exit 1
527 minXFT="2.1.0"
528 goodxft="no"
531 dnl The macro below will use $XFTFLAGS (defined above) to find Xft.h
533 WM_CHECK_XFT_VERSION($minXFT, goodxft=yes, goodxft=no)
535 if test "$goodxft" = no; then
536         echo
537         echo "ERROR!!! libXft on this system is an old version."
538         echo "         Please consider upgrading to at least version ${minXFT}."
539         echo
540         exit 1
543 AC_SUBST(XFTFLAGS)
544 AC_SUBST(XFTLIBS)
547 dnl XINERAMA support
548 dnl ================
549 xinerama=no
550 AC_ARG_ENABLE(xinerama, AS_HELP_STRING([--enable-xinerama], [enable Xinerama extension support]),
551                 xinerama=$enableval, xinerama=no)
553 LIBXINERAMA=
554 if test "$xinerama" = yes; then
555         AC_CHECK_LIB(Xinerama, XineramaQueryScreens, 
556                 [LIBXINERAMA=-lXinerama
557                 xfxine=yes],
558                 xfxine=no, $XLFLAGS $XLIBS)
560         AC_CHECK_LIB(Xext, XineramaGetInfo,
561                 [sunxine=yes
562                 ], sunxine=no, $XLFLAGS $XLIBS)
564         if test "$xfxine" = yes; then
565                 xine=1
566         fi
568         if test "$sunxine" = yes; then
569             xine=1
570             AC_DEFINE(SOLARIS_XINERAMA, 1, 
571                 [define if you want support for the XINERAMA extension and are in Solaris (set by configure)])
572         fi
574         if test "$xine" = 1; then
575             AC_DEFINE(XINERAMA, 1, 
576                 [define if you want support for the XINERAMA extension (set by configure)])
577         fi
579 AC_SUBST(LIBXINERAMA)
582 dnl MIT-SHM support
583 dnl ===============
584 shm=yes
585 AC_ARG_ENABLE(shm, AS_HELP_STRING([--disable-shm], [disable usage of MIT-SHM extension]),
586                 shm=$enableval, shm=yes)
588 if test "$shm" = yes; then
589         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
591         if test "$ok" = yes; then
592         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
593         fi
595         if test "$ok" = yes; then
596                 if test "$added_xext" = no; then
597                         XLIBS="-lXext $XLIBS"
598                 fi
599                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
600         fi
604 dnl R6 Style Session Management Support
605 dnl ===================================
609 #AC_DEFINE(R6SM)
610 #AC_SUBST(XSMPLIBS)
614 dnl ==============================================
615 dnl         Graphic Format Libraries
616 dnl ==============================================
618 dnl XPM Support
619 dnl ===========
620 xpm=yes
621 AC_ARG_ENABLE(xpm, AS_HELP_STRING([--disable-xpm], [disable use of XPM pixmaps through libXpm]),
622         xpm=$enableval, xpm=yes)
624 if test "$xpm" = yes; then
625     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
627     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
628         WM_CHECK_HEADER(X11/xpm.h)
629         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
630                 GFXLIBS="$GFXLIBS -lXpm"
631                 supported_gfx="XPM"
632                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
633         else
634                 supported_gfx="builtin-XPM"
635         fi
636     fi
639 # for wmlib
640 AC_SUBST(XCFLAGS)
641 # for test
642 AC_SUBST(XLFLAGS)
643 AC_SUBST(XLIBS)
644 AC_SUBST(X_EXTRA_LIBS)
646 dnl ===============================================
647 dnl             End of stuff that uses X
648 dnl ===============================================
650 dnl PNG Support
651 dnl ===========
652 png=yes
653 AC_ARG_ENABLE(png, AS_HELP_STRING([--disable-png], [disable PNG support through libpng]),
654         png=$enableval, png=yes, png=no)
656 if test "$png" = yes ; then
657     my_libname=""
658     WM_CHECK_LIB(png, png_get_valid, [-lm])
659     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
660         my_libname="-lpng"
661     fi
663 dnl Retry with zlib
665     if test "x$my_libname" = x; then
666         unset ac_cv_lib_png_png_get_valid
667         WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
668         if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
669             my_libname="-lpng -lz"
670         fi
671     fi
673     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
674         WM_CHECK_HEADER(png.h)
675         if test "x$ac_cv_header_png_h" = xyes; then
676             GFXLIBS="$GFXLIBS $my_libname"
677             supported_gfx="$supported_gfx PNG"
678             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
679         fi
680     fi
684 dnl JPEG Support
685 dnl ============
686 jpeg=yes
687 ljpeg=""
688 AC_ARG_ENABLE(jpeg, AS_HELP_STRING([--disable-jpeg], [disable JPEG support through libjpeg]),
689         jpeg=$enableval, jpeg=yes, jpeg=no)
691 if test "$jpeg" = yes; then
692     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
694     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
696         ljpeg="-ljpeg"
698         WM_CHECK_HEADER(jpeglib.h)
699         if test "x$ac_cv_header_jpeglib_h" = xyes; then
700             GFXLIBS="$GFXLIBS -ljpeg"
701             supported_gfx="$supported_gfx JPEG"
702             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
703         fi
704     fi
708 dnl GIF Support
709 dnl ============
710 gif=yes
711 AC_ARG_ENABLE(gif, AS_HELP_STRING([--disable-gif], [disable GIF support through libgif or libungif]),
712         gif=$enableval, gif=yes, gif=no)
714 if test "$gif" = yes; then
715     my_libname=""
716     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
717     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
718         my_libname=-lungif
719     fi
721 dnl libungif is the same thing as libgif for all practical purposes.
723     if test "x$my_libname" = x; then
724         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
725         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
726             my_libname=-lgif
727         fi
728     fi
730     if test "$my_libname" != x; then
731         WM_CHECK_HEADER(gif_lib.h)
732         if test "x$ac_cv_header_gif_lib_h" = xyes; then
733             GFXLIBS="$GFXLIBS $my_libname"
734             supported_gfx="$supported_gfx GIF"
735             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
736         fi
737     fi
742 dnl TIFF Support
743 dnl ============
744 AC_ARG_ENABLE(tiff, 
745 AS_HELP_STRING([--disable-tiff], [disable use of TIFF images through libtiff]),
746         tif=$enableval, tif=yes, tif=no)
749 # TIFF can optionally have JPEG and/or zlib support. Must find out
750 # when they are supported so that correct library flags are passed during
751 # detection and linkage
754 # By default use xpm icons if tiff is not found.
755 ICONEXT="xpm"
758 if test "$tif" = yes; then
759     my_libname=""
760     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
761     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
762         my_libname="-ltiff"
763     fi
765 dnl Retry with zlib
767     unset ac_cv_lib_tiff_TIFFGetVersion
768     if test "x$my_libname" = x; then
769         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
770         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
771             my_libname="-ltiff -lz"
772         fi
773     fi
775     if test "x$my_libname" = x; then
776         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
777         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
778             my_libname="-ltiff34"
779         fi
780     fi
783     if test "x$my_libname" != x; then
784         WM_CHECK_HEADER(tiffio.h)
785         if test "x$ac_cv_header_tiffio_h" = xyes; then
786             GFXLIBS="$my_libname $GFXLIBS"
787             ICONEXT="tiff"
788             supported_gfx="$supported_gfx TIFF"
789             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
790         fi
791     fi
794 LIBRARY_SEARCH_PATH="$lib_search_path"
795 HEADER_SEARCH_PATH="$inc_search_path"
797 AC_SUBST(LIBRARY_SEARCH_PATH)
798 AC_SUBST(HEADER_SEARCH_PATH)
801 AC_SUBST(GFXLIBS)
802 AC_SUBST(ICONEXT)
805 dnl ==============================================
806 dnl         End of Graphic Format Libraries
807 dnl ==============================================
811 dnl stdlib.h is checked here, because of conflict in jpeglib.h
812 AC_CHECK_HEADERS(stdlib.h)
814 # AC_PREFIX_PROGRAM(wmaker)
816 dnl Support for PIXMAPDIR option
817 dnl ============================
818 AC_ARG_WITH(pixmapdir, AS_HELP_STRING([--with-pixmapdir=PATH], [specify where pixmaps are located [DATADIR/pixmaps]]))
820 if test "x$with_pixmapdir" != "x"; then
821         pixmapdir=$with_pixmapdir
822 else
823         pixmapdir='${datadir}/pixmaps'
825 AC_SUBST(pixmapdir)
828 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
829 dnl ==============================================
831 AC_ARG_WITH(gnustepdir, AS_HELP_STRING([--with-gnustepdir=PATH], [specify the directory for GNUstep applications]))
833 if test "x`echo $with_gnustepdir | grep ^/`" != "x"; then
834     appspath=$with_gnustepdir
837 if test "x$appspath$GNUSTEP_LOCAL_ROOT" = "x"; then
838     wprefs_base_dir=${prefix}
839     wprefs_datadir="${datadir}/WPrefs"
840     wprefs_bindir="${bindir}"
841 else
842     gnustepdir=$appspath
844     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
845         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
846         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
847     fi
849     wprefs_base_dir=$gnustepdir/Applications
850     wprefs_datadir=$wprefs_base_dir/WPrefs.app
851     wprefs_bindir=$wprefs_base_dir/WPrefs.app
854 AC_SUBST(wprefs_datadir)
855 AC_SUBST(wprefs_bindir)
858 dnl Enable User Defined Menu thing
859 dnl ==============================
860 AC_ARG_ENABLE(usermenu, AS_HELP_STRING([--enable-usermenu], [user defined menus for applications]),
861 if test "$enableval" = yes; then
862         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
866 gl_LD_VERSION_SCRIPT
868 AC_OUTPUT(Makefile po/Makefile util/Makefile util/po/Makefile test/Makefile \
869         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
870         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
871         WINGs/Extras/Makefile WINGs/po/Makefile \
872         wmlib/Makefile wrlib/Makefile wrlib/tests/Makefile \
873         src/Makefile src/wconfig.h \
874         doc/Makefile doc/sk/Makefile doc/cs/Makefile \
875         doc/ru/Makefile \
876         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
877         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
878         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
879         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
880         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
881         WPrefs.app/po/Makefile )
884 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
885 dnl ===================================================================
887 dnl echo "WFLAGS=\"$LIBPL_INC_PATH -I$prefix/include\"" > WINGs-flags
888 dnl echo "WLIBS=\"-L$exec_prefix/lib -lWINGs -lwraster $LIBPL_LIBS $GFXLIBS -lm\""\
889 dnl     | sed -e 's|\$(prefix)|'"$prefix|" >> WINGs-flags
891 dnl The #lp# and #rp# stuff below is a hack because [ and ] get lost when
892 dnl parsed by m4
894 AC_SUBST(lib_search_path)
895 AC_SUBST(inc_search_path)
898 dnl Spit out the configuration
899 dnl ==========================
901 supported_gfx="$supported_gfx builtin-PPM"
903 if test "x$MOFILES" = "x"; then
904         mof=None
905 else
906         mof=`echo $MOFILES`
909 if test "x$MOFILES" = "x"; then
910         languages=None
911 else
912         languages=`echo $MOFILES | sed 's/.mo//g'`
915 echo
916 echo "Window Maker was configured as follows:"
917 echo
918 echo "Installation path prefix            : $prefix"
919 echo "Installation path for binaries      : $_bindir"
920 echo "Installation path for libraries     : $libdir"
921 echo "Installation path for WPrefs.app    : $wprefs_base_dir" | sed -e 's|\${prefix}|'"$prefix|"
922 echo "Supported graphic format libraries  : $supported_gfx"
923 echo "Antialiased text support in WINGs   : $xft"
924 echo "Xinerama extension support          : $xinerama"
925 echo "XRandR extension support            : $xrandr"
926 echo "Translated message files to install : $mof"
927 dnl echo "Supported languages beside English  : $languages"
928 if test "x$MOFILES" != "x"; then
929         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
931 echo
933 dnl WM_PRINT_REDCRAP_BUG_STATUS
935 if test "x$ac_cv_header_jpeglib_h" != xyes; then
936 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
937 echo
938 echo "JPEG support will not be included because the JPEG library is"
939 echo "not installed correctly or was not found. Background images"
940 echo "from themes will not display as they usually are JPEG files."
941 echo
942 echo "To fix, download and install the jpeg library and/or make sure you"
943 echo "installed all jpeg related packages, SPECIALLY the development packages"
944 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
945 echo
946 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
950 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
951 dnl ================================================
952 dnl Local Variables:
953 dnl compile-command: "autoconf"
954 dnl End: