wIconChangeTitle rewrited
[wmaker-crm.git] / configure.ac
blob6820f15039dbdff6586ac07d52557cd7e51a42d7
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.4, , WindowMaker, http://www.windowmaker.org/)
15 AC_CONFIG_SRCDIR(src/WindowMaker.h)
16 AC_CONFIG_MACRO_DIR([m4])
17 AC_CONFIG_HEADERS(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
77 dnl Debugging Options
78 dnl =================
79 AC_ARG_ENABLE(debug,
80     [AS_HELP_STRING([--enable-debug], [enable debugging options, @<:@default=no@:>@])],
81     [AS_CASE(["$enableval"],
82         [yes], [debug=yes],
83         [no],  [debug=no],
84         [AC_MSG_ERROR([bad value $enableval for --enable-debug])] )],
85     [debug=no])
86 AS_IF([test "x$debug" = "xyes"],
87     [CFLAGS="-g -O0 -DDEBUG"])
90 AX_CFLAGS_GCC_OPTION(-Wall)
91 AX_CFLAGS_GCC_OPTION(-Wextra -Wno-sign-compare -Wno-unused-parameter)
93 dnl Platform-specific Makefile setup
94 dnl ================================
96 case "${host}" in
97         *-*-linux*|*-*-cygwin*|*-gnu*)
98                 WM_OSDEP="linux"
99                 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600"
100         ;;
101         *-*-freebsd*|*-k*bsd-gnu*)
102                 WM_OSDEP="bsd"
103                 CFLAGS="$CFLAGS -D_XOPEN_SOURCE=600 -DFREEBSD"
104         ;;
105         *-*-netbsd*)
106                 WM_OSDEP="bsd"
107                 CFLAGS="$CFLAGS -DNETBSD"
108         ;;
109         *-*-openbsd*)
110                 WM_OSDEP="bsd"
111                 CFLAGS="$CFLAGS -DOPENBSD"
112         ;;
113         *-*-dragonfly*)
114                 WM_OSDEP="bsd"
115                 CFLAGS="$CFLAGS -DDRAGONFLYBSD"
116         ;;
117         *-apple-darwin*)
118                 WM_OSDEP="darwin"
119         ;;
120         *-*-solaris*)
121                 WM_OSDEP="stub"         # solaris.c when done
122         ;;
123         *)
124                 WM_OSDEP="stub"
125         ;;
126 esac
127 AC_SUBST(WM_OSDEP)
130 dnl the prefix
131 dnl ==========
133 dnl move this earlier in the script... anyone know why this is handled
134 dnl in such a bizarre way?
136 test "x$prefix" = xNONE && prefix=$ac_default_prefix
137 dnl Let make expand exec_prefix.
138 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
141 _bindir=`eval echo $bindir`
142 _bindir=`eval echo $_bindir`
144 lib_search_path='-L${libdir}'
146 inc_search_path='-I${includedir}'
148 dnl ===============================================
149 dnl Specify paths to look for libraries and headers
150 dnl ===============================================
151 AC_ARG_WITH(libs-from, AS_HELP_STRING([--with-libs-from], [pass compiler flags to look for libraries]),
152         [lib_search_path="$withval $lib_search_path"])
154 AC_ARG_WITH(incs-from, AS_HELP_STRING([--with-incs-from], [pass compiler flags to look for header files]),
155         [inc_search_path="$withval $inc_search_path"])
158 dnl Boehm GC
159 dnl ========
160 with_boehm_gc=no
161 AC_ARG_ENABLE([boehm-gc],
162     [AS_HELP_STRING([--enable-boehm-gc], [use Boehm GC instead of the default libc malloc() [default=no]])],
163     [with_boehm_gc=$enableval])
165 AS_IF([test "x$with_boehm_gc" = "xyes"],
166     AC_SEARCH_LIBS([GC_malloc], [gc],
167         [AC_DEFINE(USE_BOEHM_GC, 1, [Define if Boehm GC is to be used])],
168         [AC_MSG_FAILURE([--enable-boehm-gc specified but test for libgc failed])],
169         []
170     )
173 dnl LCOV
174 dnl ====
175 AC_ARG_ENABLE([lcov],
176     [AS_HELP_STRING([--enable-lcov[=output-directory]], [enable coverage data generation using LCOV (GCC only) [default=no]])],
177     [],
178     [enable_lcov=no])
180 AS_IF([test "x$enable_lcov" != "xno"],
181     [AX_CFLAGS_GCC_OPTION(-fprofile-arcs -ftest-coverage)
182     if test "x$enable_lcov" = "xyes"; then
183         lcov_output_directory="coverage-report"
184     else
185         lcov_output_directory="${enable_lcov}/coverage-report"
186     fi
187     AC_SUBST(lcov_output_directory)]
189 AM_CONDITIONAL([USE_LCOV], [test "x$enable_lcov" != "xno"])
192 dnl ============================
193 dnl Checks for library functions
194 dnl ============================
195 dnl not used anywhere
196 AC_FUNC_MEMCMP
197 AC_FUNC_VPRINTF
198 AC_CHECK_FUNCS(gethostname select poll strcasecmp strncasecmp \
199                setsid mallinfo mkstemp sysconf)
201 dnl Check for strlcat/strlcpy
202 dnl =========================
203 AC_ARG_WITH([libbsd],
204   [AS_HELP_STRING([--without-libbsd], [do not use libbsd for strlcat and strlcpy [default=check]])],
205   [AS_IF([test "x$with_libbsd" != "xno"],
206     [with_libbsd=bsd]
207     [with_libbsd=]
208   )],
209   [with_libbsd=bsd])
211 tmp_libs=$LIBS
212 AC_SEARCH_LIBS([strlcat],[$with_libbsd],
213   [AC_DEFINE(HAVE_STRLCAT, 1, [Define if strlcat is available])],
214   [],
215   []
217 AC_SEARCH_LIBS([strlcpy],[$with_libbsd],
218   [AC_DEFINE(HAVE_STRLCAT, 1, [Define if strlcpy is available])],
219   [],
220   []
222 LIBS=$tmp_libs
224 LIBBSD=
225 AS_IF([test "x$ac_cv_search_strlcat" = "x-lbsd" -o "x$ac_cv_search_strlcpy" = "x-lbsd"],
226   [LIBBSD=-lbsd
227    AC_CHECK_HEADERS([bsd/string.h])]
229 AC_SUBST(LIBBSD)
231 dnl Check for inotify
232 dnl =================
233 AC_CHECK_HEADERS(sys/inotify.h, AC_DEFINE(HAVE_INOTIFY, 1, Check for inotify))
236 dnl Checks for header files.
237 dnl =======================
238 AC_HEADER_SYS_WAIT
239 AC_HEADER_TIME
240 AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h libintl.h poll.h malloc.h ctype.h \
241                  string.h strings.h)
244 dnl Checks for typedefs, structures, and compiler characteristics.
245 dnl ==============================================================
246 AC_DECL_SYS_SIGLIST
247 AC_C_CONST
248 AC_TYPE_SIZE_T
249 AC_TYPE_PID_T
250 AC_TYPE_SIGNAL
253 dnl pkg-config
254 dnl ==========
255 dnl AC_ARG_VAR(PKGCONFIG, [pkg-config command])
256 AC_CHECK_PROG(PKGCONFIG, pkg-config, pkg-config) 
258 dnl gettext
259 dnl =======
261 dnl AM_GNU_GETTEXT
263 INTLIBS=""
265 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
266         AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
267                          INTLIBS="" ))
269 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
271 if test "$XGETTEXT" != ""; then 
272     if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
273         echo "xgettext isn't GNU version"
274         XGETTEXT=""
275     fi
278 if test "$LINGUAS" != ""; then
279     if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
280         AC_DEFINE(I18N, 1, [Internationalization (I18N) support (set by configure)])
281         PO=""
282         echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
283     else
284         LINGUAS=""
285         PO=""
286         echo "xgettext and libintl.a don't both exist; will not build i18n support"
287     fi
288 else
289         INTLIBS=""
290         MOFILES=""
291         WPMOFILES=""
292         UTILMOFILES=""
293         PO=""
297 dnl The Tower of Babel
298 dnl ==================
300 dnl List of supported locales
301 dnl =========================
302 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"
303 supported_wprefs_locales="bg ca cs de es et fi fr hr hu it ja ko pt ru sk zh_CN zh_TW"
304 supported_wings_locales="bg ca cs de fr sk"
305 supported_util_locales="de es fr pt"
307 for lang in $LINGUAS; do
308         ok=0
309         for l in $supported_locales; do
310                 if test "$l" = "$lang"; then
311                         ok=1
312                         break
313                 fi
314         done
315         if test "$ok" = 1; then
316                 MOFILES="$MOFILES $lang.mo"
317         else
318                 echo "Locale $lang is not supported."
319         fi
320         ok=0
321         for l in $supported_wprefs_locales; do
322                 if test "$l" = "$lang"; then
323                         ok=1
324                         break
325                 fi
326         done
327         if test "$ok" = 1; then
328                 WPMOFILES="$WPMOFILES $lang.mo"
329         fi
330         ok=0
331         for l in $supported_util_locales; do
332                 if test "$l" = "$lang"; then
333                         ok=1
334                         break
335                 fi
336         done
337         if test "$ok" = 1; then
338                 UTILMOFILES="$UTILMOFILES $lang.mo"
339         fi
340         ok=0
341         for l in $supported_wings_locales; do
342                 if test "$l" = "$lang"; then
343                         ok=1
344                         break
345                 fi
346         done
347         if test "$ok" = 1; then
348                 WINGSMOFILES="$WINGSMOFILES $lang.mo"
349         fi
350 done
353 dnl Added by Oliver - Support for NLSDIR option
354 dnl ===========================================
355 AC_ARG_WITH(nlsdir, AS_HELP_STRING([--with-nlsdir=PATH], [specify where the locale stuff should go]))
357 if test "x$NLSDIR" = "x"; then
358         if test "x$with_nlsdir" != "x"; then
359                 NLSDIR=$with_nlsdir
360         else
361                 NLSDIR='$(prefix)/lib/locale'
362         fi
365 menutextdomain=
366 AC_ARG_WITH(menu-textdomain, AS_HELP_STRING([--with-menu-textdomain=DOMAIN], [specify gettext domain used for menu translations]),
367         [if test "x$withval" != "xno"; then
368          menutextdomain=$withval
369          fi])
370 AC_SUBST(menutextdomain)
372 AC_SUBST(INTLIBS)
373 AC_SUBST(NLSDIR)
374 AC_SUBST(MOFILES)
375 AC_SUBST(WPMOFILES)
376 AC_SUBST(UTILMOFILES)
377 AC_SUBST(WINGSMOFILES)
378 AC_SUBST(supported_locales)
380 dnl ===========================================
381 dnl             Stuff that uses X
382 dnl ===========================================
384 AC_PATH_XTRA
386 if test $no_x; then
387     AC_MSG_ERROR([The path for the X11 files not found!
388 Make sure you have X and it's headers and libraries (the -devel packages
389 in Linux) installed.])
392 X_LIBRARY_PATH=$x_libraries
393 XCFLAGS="$X_CFLAGS"
394 XLFLAGS="$X_LIBS"
395 XLIBS="-lX11 $X_EXTRA_LIBS"
396 LIBXMU="-lXmu"
397 AC_SUBST(LIBXMU)
399 lib_search_path="$lib_search_path $XLFLAGS"
400 inc_search_path="$inc_search_path $XCFLAGS"
402 AC_SUBST(X_LIBRARY_PATH)
404 dnl Decide which locale function to use, setlocale() or _Xsetlocale()
405 dnl by MANOME Tomonori 
406 dnl ===========================================
407 use_locale=yes
408 AC_ARG_ENABLE(locale, AS_HELP_STRING([--disable-locale], [disable use of X locale support]),
409               use_locale=no)
411 if test "$use_locale" = yes; then
412         AC_CHECK_LIB(X11, _Xsetlocale,
413                 AC_DEFINE(X_LOCALE, 1, [define if you want support for X window's X_LOCALE (set by configure)]),,
414                 $XLFLAGS $XLIBS)
417 dnl Check whether XInternAtoms() exist
418 dnl ==================================
419 AC_CHECK_LIB(X11, XInternAtoms, 
420              AC_DEFINE(HAVE_XINTERNATOMS, 1, [define if your X server has XInternAtoms() (set by configure)]),,
421              $XLFLAGS $XLIBS)
423 dnl Check whether XConvertCase() exist
424 dnl ==================================
425 AC_CHECK_LIB(X11, XConvertCase, 
426              AC_DEFINE(HAVE_XCONVERTCASE, 1, [define if your X server has XConvertCase() (set by configure)]),,
427              $XLFLAGS $XLIBS)
429 dnl XKB keyboard language status
430 dnl ============================
431 AC_ARG_ENABLE(modelock, AS_HELP_STRING([--enable-modelock], [XKB keyboard language status support]),
432                 AC_DEFINE(XKB_MODELOCK, 1, [whether XKB language MODELOCK should be enabled]))
434 dnl Shape support
435 dnl =============
436 shape=yes
437 AC_ARG_ENABLE(shape, AS_HELP_STRING([--disable-shape], [disable shaped window extension support]),
438                 shape=$enableval, shape=yes)
439 added_xext=no
441 if test "$shape" = yes; then
442         AC_CHECK_LIB(Xext, XShapeSelectInput, [XLIBS="-lXext $XLIBS"
443                 added_xext=yes
444                 AC_DEFINE(SHAPE, 1, [define if you want support for shaped windows (set by configure)])], 
445                 shape=no, $XLFLAGS $XLIBS)
448 dnl XRandR support
449 dnl ==============
450 xrandr=no
451 AC_ARG_ENABLE(xrandr, AS_HELP_STRING([--enable-xrandr], [enable XRandR window extension support (NOT recommended, buggy)]),
452                 xrandr=$enableval, xrandr=no)
453 added_xext=no
455 LIBXRANDR=
456 if test "$xrandr" = yes; then
457         AC_CHECK_LIB(Xrandr, XRRQueryExtension, [LIBXRANDR=-lXrandr
458                 added_xext=yes
459                 AC_DEFINE(HAVE_XRANDR, 1, [define if you want support for XRandR (set by configure)])],
460                 xrandr=no, $XLFLAGS $XLIBS)
462 AC_SUBST(LIBXRANDR)
465 dnl libWINGS uses math functions, check whether usage requires linking
466 dnl against libm
468 AC_CHECK_FUNC(atan,[mathneedslibm=no;LIBM=],[mathneedslibm=dunno])
469 if test "x$mathneedslibm" = "xdunno" ; then
470         AC_CHECK_LIB(m, atan, [LIBM=-lm])
472 AC_SUBST(LIBM)
476 dnl libWINGS uses FcPatternDel from libfontconfig
478 AC_MSG_CHECKING([for fontconfig library])
479 FCLIBS=`$PKGCONFIG fontconfig --libs`
480 if test "x$FCLIBS" = "x" ; then
481         AC_MSG_RESULT([not found])
482 else
483         AC_MSG_RESULT([found])
485 AC_SUBST(FCLIBS)
488 dnl Xft2 antialiased font support
489 dnl =============================
491 xft=yes
492 XFTLIBS=""
494 if test "x$PKGCONFIG" != x -a "`$PKGCONFIG xft; echo $?`" = 0; then
495         XFTCONFIG="$PKGCONFIG xft"
496         pkgconfig_xft=yes
497 else
498         AC_CHECK_PROG(XFTCONFIG, xft-config, xft-config)
501 AC_MSG_CHECKING([for the Xft2 library])
503 if test "x$XFTCONFIG" != x; then
504         XFTLIBS=`$XFTCONFIG --libs`
505         XFTFLAGS=`$XFTCONFIG --cflags`
506         AC_MSG_RESULT([found])
507 else
508         AC_MSG_RESULT([not found])
509         echo
510         echo "ERROR!!! libXft2 is not installed or could not be found."
511         echo "         Xft2 is a requirement for building Window Maker."
512         echo "         Please install it (along with fontconfig) before continuing."
513         echo
514         exit 1
517 minXFT="2.1.0"
518 goodxft="no"
521 dnl The macro below will use $XFTFLAGS (defined above) to find Xft.h
523 WM_CHECK_XFT_VERSION($minXFT, goodxft=yes, goodxft=no)
525 if test "$goodxft" = no; then
526         echo
527         echo "ERROR!!! libXft on this system is an old version."
528         echo "         Please consider upgrading to at least version ${minXFT}."
529         echo
530         exit 1
533 AC_SUBST(XFTFLAGS)
534 AC_SUBST(XFTLIBS)
537 dnl XINERAMA support
538 dnl ================
539 xinerama=no
540 AC_ARG_ENABLE(xinerama, AS_HELP_STRING([--enable-xinerama], [enable Xinerama extension support]),
541                 xinerama=$enableval, xinerama=no)
543 LIBXINERAMA=
544 if test "$xinerama" = yes; then
545         AC_CHECK_LIB(Xinerama, XineramaQueryScreens, 
546                 [LIBXINERAMA=-lXinerama
547                 xfxine=yes],
548                 xfxine=no, $XLFLAGS $XLIBS)
550         AC_CHECK_LIB(Xext, XineramaGetInfo,
551                 [sunxine=yes
552                 ], sunxine=no, $XLFLAGS $XLIBS)
554         if test "$xfxine" = yes; then
555                 xine=1
556         fi
558         if test "$sunxine" = yes; then
559             xine=1
560             AC_DEFINE(SOLARIS_XINERAMA, 1, 
561                 [define if you want support for the XINERAMA extension and are in Solaris (set by configure)])
562         fi
564         if test "$xine" = 1; then
565             AC_DEFINE(XINERAMA, 1, 
566                 [define if you want support for the XINERAMA extension (set by configure)])
567         fi
569 AC_SUBST(LIBXINERAMA)
572 dnl MIT-SHM support
573 dnl ===============
574 shm=yes
575 AC_ARG_ENABLE(shm, AS_HELP_STRING([--disable-shm], [disable usage of MIT-SHM extension]),
576                 shm=$enableval, shm=yes)
578 if test "$shm" = yes; then
579         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
581         if test "$ok" = yes; then
582         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
583         fi
585         if test "$ok" = yes; then
586                 if test "$added_xext" = no; then
587                         XLIBS="-lXext $XLIBS"
588                 fi
589                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
590         fi
594 dnl R6 Style Session Management Support
595 dnl ===================================
599 #AC_DEFINE(R6SM)
600 #AC_SUBST(XSMPLIBS)
604 dnl ==============================================
605 dnl         Graphic Format Libraries
606 dnl ==============================================
608 dnl XPM Support
609 dnl ===========
610 xpm=yes
611 AC_ARG_ENABLE(xpm, AS_HELP_STRING([--disable-xpm], [disable use of XPM pixmaps through libXpm]),
612         xpm=$enableval, xpm=yes)
614 if test "$xpm" = yes; then
615     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
617     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
618         WM_CHECK_HEADER(X11/xpm.h)
619         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
620                 GFXLIBS="$GFXLIBS -lXpm"
621                 supported_gfx="XPM"
622                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
623         else
624                 supported_gfx="builtin-XPM"
625         fi
626     fi
629 # for wmlib
630 AC_SUBST(XCFLAGS)
631 # for test
632 AC_SUBST(XLFLAGS)
633 AC_SUBST(XLIBS)
634 AC_SUBST(X_EXTRA_LIBS)
636 dnl ===============================================
637 dnl             End of stuff that uses X
638 dnl ===============================================
640 dnl PNG Support
641 dnl ===========
642 png=yes
643 AC_ARG_ENABLE(png, AS_HELP_STRING([--disable-png], [disable PNG support through libpng]),
644         png=$enableval, png=yes, png=no)
646 if test "$png" = yes ; then
647     my_libname=""
648     WM_CHECK_LIB(png, png_get_valid, [-lm])
649     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
650         my_libname="-lpng"
651     fi
653 dnl Retry with zlib
655     if test "x$my_libname" = x; then
656         unset ac_cv_lib_png_png_get_valid
657         WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
658         if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
659             my_libname="-lpng -lz"
660         fi
661     fi
663     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
664         WM_CHECK_HEADER(png.h)
665         if test "x$ac_cv_header_png_h" = xyes; then
666             GFXLIBS="$GFXLIBS $my_libname"
667             supported_gfx="$supported_gfx PNG"
668             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
669         fi
670     fi
674 dnl JPEG Support
675 dnl ============
676 jpeg=yes
677 ljpeg=""
678 AC_ARG_ENABLE(jpeg, AS_HELP_STRING([--disable-jpeg], [disable JPEG support through libjpeg]),
679         jpeg=$enableval, jpeg=yes, jpeg=no)
681 if test "$jpeg" = yes; then
682     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
684     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
686         ljpeg="-ljpeg"
688         WM_CHECK_HEADER(jpeglib.h)
689         if test "x$ac_cv_header_jpeglib_h" = xyes; then
690             GFXLIBS="$GFXLIBS -ljpeg"
691             supported_gfx="$supported_gfx JPEG"
692             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
693         fi
694     fi
698 dnl GIF Support
699 dnl ============
700 gif=yes
701 AC_ARG_ENABLE(gif, AS_HELP_STRING([--disable-gif], [disable GIF support through libgif or libungif]),
702         gif=$enableval, gif=yes, gif=no)
704 if test "$gif" = yes; then
705     my_libname=""
706     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
707     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
708         my_libname=-lungif
709     fi
711 dnl libungif is the same thing as libgif for all practical purposes.
713     if test "x$my_libname" = x; then
714         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
715         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
716             my_libname=-lgif
717         fi
718     fi
720     if test "$my_libname" != x; then
721         WM_CHECK_HEADER(gif_lib.h)
722         if test "x$ac_cv_header_gif_lib_h" = xyes; then
723             GFXLIBS="$GFXLIBS $my_libname"
724             supported_gfx="$supported_gfx GIF"
725             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
726         fi
727     fi
732 dnl TIFF Support
733 dnl ============
734 AC_ARG_ENABLE(tiff, 
735 AS_HELP_STRING([--disable-tiff], [disable use of TIFF images through libtiff]),
736         tif=$enableval, tif=yes, tif=no)
739 # TIFF can optionally have JPEG and/or zlib support. Must find out
740 # when they are supported so that correct library flags are passed during
741 # detection and linkage
744 # By default use xpm icons if tiff is not found.
745 ICONEXT="xpm"
748 if test "$tif" = yes; then
749     my_libname=""
750     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
751     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
752         my_libname="-ltiff"
753     fi
755 dnl Retry with zlib
757     unset ac_cv_lib_tiff_TIFFGetVersion
758     if test "x$my_libname" = x; then
759         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
760         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
761             my_libname="-ltiff -lz"
762         fi
763     fi
765     if test "x$my_libname" = x; then
766         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
767         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
768             my_libname="-ltiff34"
769         fi
770     fi
773     if test "x$my_libname" != x; then
774         WM_CHECK_HEADER(tiffio.h)
775         if test "x$ac_cv_header_tiffio_h" = xyes; then
776             GFXLIBS="$my_libname $GFXLIBS"
777             ICONEXT="tiff"
778             supported_gfx="$supported_gfx TIFF"
779             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
780         fi
781     fi
784 LIBRARY_SEARCH_PATH="$lib_search_path"
785 HEADER_SEARCH_PATH="$inc_search_path"
787 AC_SUBST(LIBRARY_SEARCH_PATH)
788 AC_SUBST(HEADER_SEARCH_PATH)
791 AC_SUBST(GFXLIBS)
792 AC_SUBST(ICONEXT)
795 dnl ==============================================
796 dnl         End of Graphic Format Libraries
797 dnl ==============================================
801 dnl stdlib.h is checked here, because of conflict in jpeglib.h
802 AC_CHECK_HEADERS(stdlib.h)
804 # AC_PREFIX_PROGRAM(wmaker)
806 dnl Support for PIXMAPDIR option
807 dnl ============================
808 AC_ARG_WITH(pixmapdir, AS_HELP_STRING([--with-pixmapdir=PATH], [specify where pixmaps are located [DATADIR/pixmaps]]))
810 if test "x$with_pixmapdir" != "x"; then
811         pixmapdir=$with_pixmapdir
812 else
813         pixmapdir='${datadir}/pixmaps'
815 AC_SUBST(pixmapdir)
818 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
819 dnl ==============================================
821 AC_ARG_WITH(gnustepdir, AS_HELP_STRING([--with-gnustepdir=PATH], [specify the directory for GNUstep applications]))
823 if test "x`echo $with_gnustepdir | grep ^/`" != "x"; then
824     appspath=$with_gnustepdir
827 if test "x$appspath$GNUSTEP_LOCAL_ROOT" = "x"; then
828     wprefs_base_dir=${prefix}
829     wprefs_datadir="${datadir}/WPrefs"
830     wprefs_bindir="${bindir}"
831 else
832     gnustepdir=$appspath
834     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
835         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
836         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
837     fi
839     wprefs_base_dir=$gnustepdir/Applications
840     wprefs_datadir=$wprefs_base_dir/WPrefs.app
841     wprefs_bindir=$wprefs_base_dir/WPrefs.app
844 AC_SUBST(wprefs_datadir)
845 AC_SUBST(wprefs_bindir)
848 dnl Enable User Defined Menu thing
849 dnl ==============================
850 AC_ARG_ENABLE(usermenu, AS_HELP_STRING([--enable-usermenu], [user defined menus for applications]),
851 if test "$enableval" = yes; then
852         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
856 gl_LD_VERSION_SCRIPT
858 AC_OUTPUT(Makefile po/Makefile util/Makefile util/po/Makefile test/Makefile \
859         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
860         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
861         WINGs/Extras/Makefile WINGs/po/Makefile \
862         wmlib/Makefile wrlib/Makefile wrlib/tests/Makefile \
863         src/Makefile src/wconfig.h \
864         doc/Makefile doc/sk/Makefile doc/cs/Makefile \
865         doc/ru/Makefile \
866         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
867         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
868         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
869         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
870         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
871         WPrefs.app/po/Makefile )
874 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
875 dnl ===================================================================
877 dnl echo "WFLAGS=\"$LIBPL_INC_PATH -I$prefix/include\"" > WINGs-flags
878 dnl echo "WLIBS=\"-L$exec_prefix/lib -lWINGs -lwraster $LIBPL_LIBS $GFXLIBS -lm\""\
879 dnl     | sed -e 's|\$(prefix)|'"$prefix|" >> WINGs-flags
881 dnl The #lp# and #rp# stuff below is a hack because [ and ] get lost when
882 dnl parsed by m4
884 AC_SUBST(lib_search_path)
885 AC_SUBST(inc_search_path)
888 dnl Spit out the configuration
889 dnl ==========================
891 supported_gfx="$supported_gfx builtin-PPM"
893 if test "x$MOFILES" = "x"; then
894         mof=None
895 else
896         mof=`echo $MOFILES`
899 if test "x$MOFILES" = "x"; then
900         languages=None
901 else
902         languages=`echo $MOFILES | sed 's/.mo//g'`
905 echo
906 echo "Window Maker was configured as follows:"
907 echo
908 echo "Installation path prefix            : $prefix"
909 echo "Installation path for binaries      : $_bindir"
910 echo "Installation path for libraries     : $libdir"
911 echo "Installation path for WPrefs.app    : $wprefs_base_dir" | sed -e 's|\${prefix}|'"$prefix|"
912 echo "Supported graphic format libraries  : $supported_gfx"
913 echo "Antialiased text support in WINGs   : $xft"
914 echo "Xinerama extension support          : $xinerama"
915 echo "XRandR extension support            : $xrandr"
916 echo "Translated message files to install : $mof"
917 dnl echo "Supported languages beside English  : $languages"
918 if test "x$MOFILES" != "x"; then
919         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
921 AS_IF([test "x$debug" = "xyes"], [echo "Debug information enabled           : $debug"])
922 echo
924 dnl WM_PRINT_REDCRAP_BUG_STATUS
926 if test "x$ac_cv_header_jpeglib_h" != xyes; then
927 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
928 echo
929 echo "JPEG support will not be included because the JPEG library is"
930 echo "not installed correctly or was not found. Background images"
931 echo "from themes will not display as they usually are JPEG files."
932 echo
933 echo "To fix, download and install the jpeg library and/or make sure you"
934 echo "installed all jpeg related packages, SPECIALLY the development packages"
935 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
936 echo
937 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
941 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
942 dnl ================================================
943 dnl Local Variables:
944 dnl compile-command: "autoconf"
945 dnl End: