Remove long-dead plugins.
[wmaker-crm.git] / configure.ac
blob7992179dbb35b7794b52e0044fd43e4c7cce6d03
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(src/WindowMaker.h)
18 AM_INIT_AUTOMAKE(WindowMaker, 0.94.0-crm)
20 AC_PROG_LIBTOOL
22 AM_CONFIG_HEADER(src/config.h)
25 dnl Checks for host/os name
26 dnl =======================
27 dnl AC_CANONICAL_HOST -- already done by AC_PROG_LIBTOOL
30 dnl Checks for programs.
31 dnl ===================
32 AC_ISC_POSIX
33 AC_PROG_CC
34 dnl AC_PROG_MAKE_SET -- already done by AM_INIT_AUTOMAKE
35 #AC_PROG_RANLIB
36 dnl AC_PROG_INSTALL -- already done by AM_INIT_AUTOMAKE
37 AC_PROG_LN_S
38 AC_PROG_GCC_TRADITIONAL
41 dnl the prefix
42 dnl ==========
43 dnl
44 dnl move this earlier in the script... anyone know why this is handled
45 dnl in such a bizarre way?
47 test "x$prefix" = xNONE && prefix=$ac_default_prefix
48 dnl Let make expand exec_prefix.
49 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
52 _bindir=`eval echo $bindir`
53 _bindir=`eval echo $_bindir`
55 _libdir=`eval echo $libdir`
56 _libdir=`eval echo $_libdir`
57 lib_search_path="-L$_libdir"
59 inc_search_path=`eval echo $includedir`
60 inc_search_path="-I`eval echo $inc_search_path`"
63 dnl
64 dnl Check for RedHat bugs
65 dnl =====================
67 dnl WM_CHECK_REDCRAP_BUGS($prefix,$_bindir,$_libdir)
70 dnl
71 dnl Specify paths to look for libraries and headers
72 dnl ===============================================
73 AC_ARG_WITH(libs-from,
74 [  --with-libs-from        pass compiler flags to look for libraries],
75         [lib_search_path="$withval $lib_search_path"])
77 AC_ARG_WITH(incs-from,
78 [  --with-incs-from        pass compiler flags to look for header files],
79         [inc_search_path="$withval $inc_search_path"])
83 dnl Checks for library functions.
84 dnl ============================
85 dnl not used anywhere
86 dnl AC_FUNC_MEMCMP  
87 AC_FUNC_VPRINTF
88 AC_CHECK_FUNCS(gethostname select poll strerror strcasecmp strncasecmp \
89                setsid atexit mallinfo mkstemp snprintf vsnprintf asprintf \
90                vasprintf)
92 dnl ripped from samba
93 dnl 
94 AC_CACHE_CHECK([for C99 vsnprintf],_cv_HAVE_C99_VSNPRINTF,[
95 AC_TRY_RUN([
96 #include <sys/types.h>
97 #include <stdarg.h>
98 void foo(const char *format, ...) { 
99        va_list ap;
100        int len;
101        char buf[5];
103        va_start(ap, format);
104        len = vsnprintf(0, 0, format, ap);
105        va_end(ap);
106        if (len != 5) exit(1);
108        if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1);
110        exit(0);
112 main() { foo("hello"); }
114 _cv_HAVE_C99_VSNPRINTF=yes,_cv_HAVE_C99_VSNPRINTF=no,_cv_HAVE_C99_VSNPRINTF=cross)])
115 if test x"$_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
116     AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [define if you have vsnprintf with C99 semantics (set by configure)])
119 dnl Loading of dynamic libraries at runtime
120 dnl =======================================
121 DLLIBS=""
123 AC_CHECK_FUNC(dlopen, [HAVEDL="yes"], 
124         AC_CHECK_LIB(dl, dlopen, [DLLIBS="-ldl" HAVEDL="yes"],
125                          DLLIBS="" ))
127 if test "x$HAVEDL" = xyes; then
128     AC_CHECK_HEADERS(dlfcn.h)
133 dnl Check CPP
134 dnl =========
135 if test "x$CPP_PATH" = x; then
136     AC_PATH_PROG(CPP_PATH, cpp, notfound, 
137                 $PATH:/lib:/usr/bin:/bin:/usr/lib:/usr/ccs/lib)
141 dnl Tell stupid Solaris cpp that the files it will process have C++ like syntax
142 dnl RedHat 5.x is broken too, so it won't make a symlink from cpp to the
143 dnl standard locations
145 if test "$CPP_PATH" = "/usr/ccs/lib/cpp" -o "$CPP_PATH" = "notfound" ; then
146     if test "$GCC" = "yes"; then
147         CPP_PATH="gcc -E -x c"
148     else 
149         if test "$CPP_PATH" = "/usr/ccs/lib/cpp"; then
150             CPP_PATH="$CPP_PATH -B"
151         else
152             echo "cpp, the C preprocessor was not found in your system."
153             echo "Create a symbolic link from it to /lib/cpp and rerun configure"
154             exit
155         fi
156     fi
158 AC_DEFINE_UNQUOTED(CPP_PATH, "$CPP_PATH", [define to the path to cpp])
162 dnl Checks for header files.
163 dnl =======================
164 AC_HEADER_SYS_WAIT
165 AC_HEADER_TIME
166 AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h sys/time.h sys/types.h \
167                  libintl.h sys/select.h poll.h malloc.h ctype.h string.h \
168                  strings.h)
172 dnl Checks for typedefs, structures, and compiler characteristics.
173 dnl ==============================================================
174 AC_DECL_SYS_SIGLIST
175 AC_C_CONST
176 #AC_TYPE_SIZE_T
177 #AC_TYPE_PID_T
178 AC_TYPE_SIGNAL
182 dnl Compiler/architecture specific optimizations
183 dnl ============================================
186 dnl GCC/as with MMX support
187 dnl -----------------------
189 # until we fix it, leave it disabled
190 asm_support=no
191 mmx_support=no
193 check_for_mmx_support=yes
194 AC_ARG_ENABLE(mmx,
195    [  --disable-mmx          disable compilation of MMX inline assembly ],
196    [if test x$enableval != xyes; then
197     check_for_mmx_support=no
198     fi])
200 if test "$ac_cv_prog_gcc" = yes -a "$check_for_mmx_support" = yes; then
201 case $host_cpu in
202 *i?86*)
204     # gcc-3.3 or newer complains about some of our stuff without this
205     NOSTRICTALIASING="-fno-strict-aliasing"
207     AC_CACHE_CHECK(whether gcc supports x86 inline asm,
208                    ac_cv_c_inline_asm,
209                    [AC_TRY_LINK(,[{int x; asm volatile("movl %%eax, %%ebx\n\t pushal\n\t popal"::
210                           "m" (x),"m" (x),"m" (x),"m" (x),"m" (x),"m" (x),
211                           "m" (x),"m" (x),"m" (x),"m" (x),"m" (x),"m" (x));}],
212                    ac_cv_c_inline_asm=yes,
213                    ac_cv_c_inline_asm=no)])
215     if test "x$ac_cv_c_inline_asm" = xyes; then
216        AC_DEFINE(ASM_X86, 1, [define if processor is x86 (normally detected by configure)])
217        asm_support=yes
219        AC_CACHE_CHECK(whether gcc supports MMX(tm) inline asm,
220                       ac_cv_c_inline_mmx,
221                       [AC_TRY_LINK(,[asm ("movq %mm0, %mm1");],
222                       ac_cv_c_inline_mmx=yes,
223                       ac_cv_c_inline_mmx=no)])
225        if test "x$ac_cv_c_inline_mmx" = xyes; then
226           AC_DEFINE(ASM_X86_MMX, 1, [define if processor is x86 with MMX(tm) support (normally autodetected by configure)])
227           mmx_support=yes
228        fi
229     fi
230     ;;
231 esac
233 AC_SUBST(NOSTRICTALIASING)
236 dnl pkg-config
237 dnl ----------
238 dnl AC_ARG_VAR(PKGCONFIG, [pkg-config command])
239 AC_CHECK_PROG(PKGCONFIG, pkg-config, pkg-config) 
242 dnl gettext
243 dnl -------
246 dnl AM_GNU_GETTEXT
250 INTLIBS=""
252 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
253         AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
254                          INTLIBS="" ))
256 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
258 if test "$XGETTEXT" != ""; then 
259     if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
260         echo "xgettext isn't GNU version"
261         XGETTEXT=""
262     fi
265 if test "$LINGUAS" != ""; then
266     if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
267         AC_DEFINE(I18N, 1, [Internationalization (I18N) support (set by configure)])
268         PO=""
269 #       if test "$LINGUAS" = ""; then
270 #           ling=` (cd src/po; /bin/ls *.po) `
271 #           for l in $ling; do
272 #               lcode=`basename $l .po`
273 #               LINGUAS="$LINGUAS $lcode"
274 #           done
275 #       fi
276         echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
277     else
278         LINGUAS=""
279         PO=""
280         echo "xgettext and libintl.a don't both exist; will not build i18n support"
281     fi
282 else
283         INTLIBS=""
284         MOFILES=""
285         WPMOFILES=""
286         UTILMOFILES=""
287         PO=""
291 dnl The Tower of Babel
292 dnl ==================
294 dnl List of supported locales
295 dnl -------------------------
296 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"
297 supported_wprefs_locales="bg ca cs de es et fi fr hr hu it ja ko pt ru sk zh_CN zh_TW"
298 supported_wings_locales="bg ca cs de fr sk"
299 supported_util_locales="de"
301 for lang in $LINGUAS; do
302         ok=0
303         for l in $supported_locales; do
304                 if test "$l" = "$lang"; then
305                         ok=1
306                         break
307                 fi
308         done
309         if test "$ok" = 1; then
310                 MOFILES="$MOFILES $lang.mo"
311         else
312                 echo "Locale $lang is not supported."
313         fi
314         ok=0
315         for l in $supported_wprefs_locales; do
316                 if test "$l" = "$lang"; then
317                         ok=1
318                         break
319                 fi
320         done
321         if test "$ok" = 1; then
322                 WPMOFILES="$WPMOFILES $lang.mo"
323         fi
324         ok=0
325         for l in $supported_util_locales; do
326                 if test "$l" = "$lang"; then
327                         ok=1
328                         break
329                 fi
330         done
331         if test "$ok" = 1; then
332                 UTILMOFILES="$UTILMOFILES $lang.mo"
333         fi
334         ok=0
335         for l in $supported_wings_locales; do
336                 if test "$l" = "$lang"; then
337                         ok=1
338                         break
339                 fi
340         done
341         if test "$ok" = 1; then
342                 WINGSMOFILES="$WINGSMOFILES $lang.mo"
343         fi
344 done
347 dnl Kanji Characters support
348 dnl ========================
350 case $host_os in
351         freebsd*)
352                 AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"]);;
353         *)
354         ;;
355 esac
359 dnl Added by Oliver - Support for NLSDIR option,   Hi Oliver!
360 dnl ===========================================
361 AC_ARG_WITH(nlsdir, 
362         [  --with-nlsdir=PATH      specify where the locale stuff should go ])
365 if test "x$NLSDIR" = "x"; then
366         if test "x$with_nlsdir" != "x"; then
367                 NLSDIR=$with_nlsdir
368         else
369                 NLSDIR='$(prefix)/lib/locale'
370         fi
375 AC_SUBST(DLLIBS)
376 AC_SUBST(INTLIBS)
377 AC_SUBST(NLSDIR)
378 AC_SUBST(MOFILES)
379 AC_SUBST(WPMOFILES)
380 AC_SUBST(UTILMOFILES)
381 AC_SUBST(WINGSMOFILES)
382 AC_SUBST(supported_locales)
386 dnl Support for various hint things
387 dnl ===============================
390 dnl Beautify compilation messages
391 dnl ---------------------------------------------
392 AC_ARG_ENABLE(verbose-compile, AS_HELP_STRING([--disable-verbose-compile],
393                                [Streamline compilation messages (default off)]),
394   [
395         QUIET='@echo "     CC" $@;'
396         QUIET_AR='@echo "     AR" $@;'
397         LIBTOOL_ARG="--silent"
398         MAKEFLAGS="-s"
399         AC_SUBST(QUIET)
400         AC_SUBST(QUIET_AR)
401         AC_SUBST(LIBTOOL_ARG)
402         AC_SUBST(MAKEFLAGS)
408 dnl Networking stuff
411 NETLIBS=""
413 AC_CHECK_FUNC(connect,,
414         AC_CHECK_LIB(socket, connect, NETLIBS="$NETLIBS -lsocket"))
416 AC_CHECK_FUNC(gethostbyname,,
417         AC_CHECK_LIB(nsl, gethostbyname, NETLIBS="$NETLIBS -lnsl"))
419 AC_CHECK_FUNC(inet_aton, AC_DEFINE(HAVE_INET_ATON, 1, [define if you have then inet_aton function (set by configure)]),
420      for lib in resolv socket inet bsd; do
421         AC_CHECK_LIB($lib, inet_aton, [AC_DEFINE(HAVE_INET_ATON)
422                      NETLIBS="$NETLIBS -l$lib"; break],, $NETLIBS)
423      done)
425 AC_SUBST(NETLIBS)
428 dnl ===========================================
429 dnl             Stuff that uses X
430 dnl ===========================================
432 AC_PATH_XTRA
434 if test $no_x; then
435     AC_MSG_ERROR([The path for the X11 files not found!
436 Make sure you have X and it's headers and libraries (the -devel packages
437 in Linux) installed.])
440 X_LIBRARY_PATH=$x_libraries
442 XCFLAGS="$X_CFLAGS"
444 XLFLAGS="$X_LIBS"
446 XLIBS="-lX11 -lXmu $X_EXTRA_LIBS"
449 lib_search_path="$lib_search_path $XLFLAGS"
450 inc_search_path="$inc_search_path $XCFLAGS"
453 AC_SUBST(X_LIBRARY_PATH)
457 dnl Decide which locale function to use, setlocale() or _Xsetlocale()
458 dnl by MANOME Tomonori 
459 dnl ===========================================
460 use_locale=yes
461 AC_ARG_ENABLE(locale, 
462 [  --disable-locale        disable use of X locale support],
463                 use_locale=no)
465 if test "$use_locale" = yes; then
466         AC_CHECK_LIB(X11, _Xsetlocale,
467                 AC_DEFINE(X_LOCALE, 1, [define if you want support for X window's X_LOCALE (set by configure)]),,
468                 $XLFLAGS $XLIBS)
472 dnl Check whether XInternAtoms() exist
473 dnl ==================================
474 AC_CHECK_LIB(X11, XInternAtoms, 
475              AC_DEFINE(HAVE_XINTERNATOMS, 1, [define if your X server has XInternAtoms() (set by configure)]),,
476              $XLFLAGS $XLIBS)
478 dnl Check whether XConvertCase() exist
479 dnl ==================================
480 AC_CHECK_LIB(X11, XConvertCase, 
481              AC_DEFINE(HAVE_XCONVERTCASE, 1, [define if your X server has XConvertCase() (set by configure)]),,
482              $XLFLAGS $XLIBS)
485 dnl XKB keyboard language status
486 dnl ============================
487 AC_ARG_ENABLE(modelock,
488 [  --enable-modelock       XKB keyboard language status support],
489                 AC_DEFINE(XKB_MODELOCK, 1, [whether XKB language MODELOCK should be enabled]))
493 dnl Shape support
494 dnl =============
495 shape=yes
496 AC_ARG_ENABLE(shape, 
497 [  --disable-shape         disable shaped window extension support],
498                 shape=$enableval, shape=yes)
500 added_xext=no
502 if test "$shape" = yes; then
503         AC_CHECK_LIB(Xext, XShapeSelectInput, [XLIBS="-lXext $XLIBS"
504                 added_xext=yes
505                 AC_DEFINE(SHAPE, 1, [define if you want support for shaped windows (set by configure)])], 
506                 shape=no, $XLFLAGS $XLIBS)
510 dnl Xft2 antialiased font support
511 dnl =============================
513 xft=yes
514 XFTLIBS=""
516 if test "x$PKGCONFIG" != x -a "`$PKGCONFIG xft; echo $?`" = 0; then
517         XFTCONFIG="$PKGCONFIG xft"
518         pkgconfig_xft=yes
519 else
520         AC_CHECK_PROG(XFTCONFIG, xft-config, xft-config)
523 AC_MSG_CHECKING([for the Xft2 library])
525 if test "x$XFTCONFIG" != x; then
526         XFTLIBS=`$XFTCONFIG --libs`
527         XFTFLAGS=`$XFTCONFIG --cflags`
528         AC_MSG_RESULT([found])
529 else
530         AC_MSG_RESULT([not found])
531         echo
532         echo "ERROR!!! libXft2 is not installed or could not be found."
533         echo "         Xft2 is a requirement for building Window Maker."
534         echo "         Please install it (along with fontconfig) before continuing."
535         echo
536         exit 1
539 minXFT="2.1.0"
540 goodxft="no"
543 dnl The macro below will use $XFTFLAGS (defined above) to find Xft.h
545 WM_CHECK_XFT_VERSION($minXFT, goodxft=yes, goodxft=no)
547 if test "$goodxft" = no; then
548         echo
549         echo "ERROR!!! libXft on this system is an old version."
550         echo "         Please consider upgrading to at least version ${minXFT}."
551         echo
552         exit 1
555 AC_SUBST(XFTFLAGS)
556 AC_SUBST(XFTLIBS)
559 dnl XINERAMA support
560 dnl ================
561 xinerama=no
562 AC_ARG_ENABLE(xinerama,
563 [  --enable-xinerama       enable Xinerama extension support],
564                 xinerama=$enableval, xinerama=no)
566 if test "$xinerama" = yes; then
567         AC_CHECK_LIB(Xinerama, XineramaQueryScreens, 
568                 [XLIBS="-lXinerama $XLIBS"
569                 xfxine=yes],
570                 xfxine=no, $XLFLAGS $XLIBS)
572         AC_CHECK_LIB(Xext, XineramaGetInfo,
573                 [sunxine=yes
574                 ], sunxine=no, $XLFLAGS $XLIBS)
576         if test "$xfxine" = yes; then
577                 xine=1
578         fi
580         if test "$sunxine" = yes; then
581             xine=1
582             AC_DEFINE(SOLARIS_XINERAMA, 1, 
583                 [define if you want support for the XINERAMA extension and are in Solaris (set by configure)])
584         fi
586         if test "$xine" = 1; then
587             AC_DEFINE(XINERAMA, 1, 
588                 [define if you want support for the XINERAMA extension (set by configure)])
589         fi
594 dnl MIT-SHM support
595 dnl ===============
596 shm=yes
597 AC_ARG_ENABLE(shm,
598 [  --disable-shm           disable usage of MIT-SHM extension],
599                 shm=$enableval, shm=yes)
601 if test "$shm" = yes; then
602         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
604         if test "$ok" = yes; then
605         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
606         fi
608         if test "$ok" = yes; then
609                 if test "$added_xext" = no; then
610                         XLIBS="-lXext $XLIBS"
611                 fi
612                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
613         fi
617 dnl R6 Style Session Management Support
618 dnl ===================================
622 #AC_DEFINE(R6SM)
623 #AC_SUBST(XSMPLIBS)
627 dnl ==============================================
628 dnl         Graphic Format Libraries
629 dnl ==============================================
635 dnl XPM Support
636 dnl ===========
637 xpm=yes
638 AC_ARG_ENABLE(xpm, 
639 [  --disable-xpm           disable use of XPM pixmaps through libXpm],
640         xpm=$enableval, xpm=yes)
642 if test "$xpm" = yes; then
643     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
645     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
646         WM_CHECK_HEADER(X11/xpm.h)
647         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
648                 GFXLIBS="$GFXLIBS -lXpm"
649                 supported_gfx="XPM"
650                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
651         else
652                 supported_gfx="builtin-XPM"
653         fi
654     fi
657 # for wmlib
658 AC_SUBST(XCFLAGS)
659 # for test
660 AC_SUBST(XLFLAGS)
661 AC_SUBST(XLIBS)
663 AC_SUBST(X_EXTRA_LIBS)
665 dnl ===============================================
666 dnl             End of stuff that uses X
667 dnl ===============================================
671 dnl PNG Support
672 dnl ===========
673 png=yes
674 AC_ARG_ENABLE(png, 
675 [  --disable-png           disable PNG support through libpng],
676         png=$enableval, png=yes, png=no)
679 if test "$png" = yes ; then
680     WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
682     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
683         WM_CHECK_HEADER(png.h)
684         if test "x$ac_cv_header_png_h" = xyes; then
685             GFXLIBS="$GFXLIBS -lpng -lz" 
686             supported_gfx="$supported_gfx PNG"
687             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
688         fi
689     fi
693 dnl JPEG Support
694 dnl ============
695 jpeg=yes
696 ljpeg=""
697 AC_ARG_ENABLE(jpeg,
698 [  --disable-jpeg          disable JPEG support through libjpeg],
699         jpeg=$enableval, jpeg=yes, jpeg=no)
701 if test "$jpeg" = yes; then
702     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
704     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
706         ljpeg="-ljpeg"
708         WM_CHECK_HEADER(jpeglib.h)
709         if test "x$ac_cv_header_jpeglib_h" = xyes; then
710             GFXLIBS="$GFXLIBS -ljpeg"
711             supported_gfx="$supported_gfx JPEG"
712             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
713         fi
714     fi
718 dnl GIF Support
719 dnl ============
720 gif=yes
721 AC_ARG_ENABLE(gif,
722 [  --disable-gif           disable GIF support through libgif or libungif],
723         gif=$enableval, gif=yes, gif=no)
725 if test "$gif" = yes; then
726     my_libname=""
727     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
728     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
729         my_libname=-lungif
730     fi
732 dnl libungif is the same thing as libgif for all practical purposes.
734     if test "x$my_libname" = x; then
735         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
736         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
737             my_libname=-lgif
738         fi
739     fi
741     if test "$my_libname" != x; then
742         WM_CHECK_HEADER(gif_lib.h)
743         if test "x$ac_cv_header_gif_lib_h" = xyes; then
744             GFXLIBS="$GFXLIBS $my_libname"
745             supported_gfx="$supported_gfx GIF"
746             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
747         fi
748     fi
753 dnl TIFF Support
754 dnl ============
755 AC_ARG_ENABLE(tiff, 
756 [  --disable-tiff          disable use of TIFF images through libtiff],
757         tif=$enableval, tif=yes, tif=no)
760 # TIFF can optionally have JPEG and/or zlib support. Must find out
761 # when they are supported so that correct library flags are passed during
762 # detection and linkage
765 # By default use xpm icons if tiff is not found.
766 ICONEXT="xpm"
769 if test "$tif" = yes; then
770     my_libname=""
771     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
772     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
773         my_libname="-ltiff"
774     fi
776 dnl Retry with zlib
778     unset ac_cv_lib_tiff_TIFFGetVersion
779     if test "x$my_libname" = x; then
780         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
781         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
782             my_libname="-ltiff -lz"
783         fi
784     fi
786     if test "x$my_libname" = x; then
787         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
788         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
789             my_libname="-ltiff34"
790         fi
791     fi
794     if test "x$my_libname" != x; then
795         WM_CHECK_HEADER(tiffio.h)
796         if test "x$ac_cv_header_tiffio_h" = xyes; then
797             GFXLIBS="$my_libname $GFXLIBS"
798             ICONEXT="tiff"
799             supported_gfx="$supported_gfx TIFF"
800             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
801         fi
802     fi
805 LIBRARY_SEARCH_PATH="$lib_search_path"
806 HEADER_SEARCH_PATH="$inc_search_path"
808 AC_SUBST(LIBRARY_SEARCH_PATH)
809 AC_SUBST(HEADER_SEARCH_PATH)
812 AC_SUBST(GFXLIBS)
813 AC_SUBST(ICONEXT)
816 dnl ==============================================
817 dnl         End of Graphic Format Libraries
818 dnl ==============================================
822 dnl stdlib.h is checked here, because of conflict in jpeglib.h
823 AC_CHECK_HEADERS(stdlib.h)
825 # AC_PREFIX_PROGRAM(wmaker)
827 dnl Support for PIXMAPDIR option
828 dnl ============================
829 AC_ARG_WITH(pixmapdir,
830 [  --with-pixmapdir=PATH   specify where pixmaps are located [DATADIR/pixmaps]])
832 if test "x$with_pixmapdir" != "x"; then
833         pixmapdir=$with_pixmapdir
834 else
835         pixmapdir=`eval echo ${datadir}/pixmaps`
838 AC_DEFINE_UNQUOTED(PIXMAPDIR, "$pixmapdir", [define an extra path for pixmaps (set by configure)])
840 pkgdatadir=`eval echo $datadir`
841 AC_DEFINE_UNQUOTED(PKGDATADIR, "$pkgdatadir/WindowMaker", [where shared data is stored (defined by configure)])
843 _sysconfdir=`eval echo $sysconfdir`
844 AC_DEFINE_UNQUOTED(SYSCONFDIR, "$_sysconfdir", [where the configuration is stored (defined by configure)])
847 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
848 dnl ==============================================
850 AC_ARG_WITH(appspath,
851 [  --with-gnustepdir=PATH  specify the directory for GNUstep applications])
853 if test "x`echo $with_gnustepdir | grep ^/`" != "x"; then
854     appspath=$with_gnustepdir
857 if test "x$appspath$GNUSTEP_LOCAL_ROOT" = "x"; then
858     wprefs_base_dir=${prefix}
859     wprefs_datadir="${datadir}/WPrefs"
860     wprefs_bindir="${bindir}"
861 else
862     gnustepdir=$appspath
864     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
865         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
866         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
867     fi
869     wprefs_base_dir=$gnustepdir/Applications
870     wprefs_datadir=$wprefs_base_dir/WPrefs.app
871     wprefs_bindir=$wprefs_base_dir/WPrefs.app
874 AC_SUBST(wprefs_datadir)
875 AC_SUBST(wprefs_bindir)
878 dnl Enable User Defined Menu thing
879 dnl ==================================
880 AC_ARG_ENABLE(usermenu,
881 [  --enable-usermenu       user defined menus for applications
883 if test "$enableval" = yes; then
884         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
890 dnl Nicolai:  Program tests for Documentation Section
891 dnl =================================================
892 dnl DOCTYPES=""
893 dnl AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, ,$PATH)
894 dnl if test "x$MAKEINFO" != "x" ; then
895 dnl       DOCTYPES="$DOCTYPES info_doc"
896 dnl fi
897 dnl AC_CHECK_PROG(TEX, tex, tex, ,$PATH)
898 dnl if test "x$TEX" != "x" ; then
899 dnl       DOCTYPES="$DOCTYPES dvi_doc"
900 dnl fi
901 dnl AC_CHECK_PROG(DVIPS, dvips, dvips, ,$PATH)
902 dnl if test "x$DVIPS" != "x" ; then
903 dnl       DOCTYPES="$DOCTYPES ps_doc"
904 dnl fi
905 dnl AC_CHECK_PROG(PERL, perl, perl, ,$PATH)
906 dnl if test "x$PERL" != "x" ; then
907 dnl       DOCTYPES="$DOCTYPES html_doc"
908 dnl fi
909 dnl AC_PATH_PROG(PERL_PATH, perl, perl, ,$PATH)
910 dnl AC_CHECK_PROG(TEXI2HTML, texi2html, texi2html, ,$PATH)
911   
912 dnl AC_SUBST(DOCTYPES)
914 AC_OUTPUT(Makefile po/Makefile util/Makefile util/po/Makefile test/Makefile \
915         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
916         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
917         WINGs/Extras/Makefile WINGs/po/Makefile \
918         wmlib/Makefile wrlib/Makefile wrlib/tests/Makefile \
919         src/Makefile src/wconfig.h \
920         doc/Makefile doc/sk/Makefile \
921         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
922         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
923         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
924         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
925         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
926         WPrefs.app/po/Makefile \
927         contrib/Makefile contrib/WindowMaker.spec )
932 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
933 dnl ===================================================================
936 dnl echo "WFLAGS=\"$LIBPL_INC_PATH -I$prefix/include\"" > WINGs-flags
937 dnl echo "WLIBS=\"-L$exec_prefix/lib -lWINGs -lwraster $LIBPL_LIBS $GFXLIBS -lm\""\
938 dnl     | sed -e 's|\$(prefix)|'"$prefix|" >> WINGs-flags
940 dnl The #lp# and #rp# stuff below is a hack because [ and ] get lost when
941 dnl parsed by m4
943 cat <<EOF >get-wraster-flags
944 #!/bin/sh
946 WCFLAGS="$inc_search_path"
947 WLFLAGS="$lib_search_path"
948 WLIBS="-lwraster $GFXLIBS $XLIBS -lm"
950 usage="Usage: get-wraster-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
952 if test \$# -eq 0; then
953       echo "\${usage}" 1>&2
954       exit 1
957 while test \$# -gt 0; do
958   case \$1 in
959     --cflags)
960         echo \$WCFLAGS
961         ;;
962     --ldflags|--lflags)
963         echo \$WLFLAGS
964         ;;
965     --libs)
966         echo \$WLIBS
967         ;;
968     *)
969         echo "\${usage}" 1>&2
970         exit 1
971         ;;
972   esac
973   shift
974 done
979 cat <<EOF > wrlib/wrlib.pc
980 Name: wrlib
981 Description: Image manipulation and conversion library
982 Version: $VERSION
983 Libs: $lib_search_path -lwraster $GFXLIBS $XLIBS -lm
984 Cflags: $inc_search_path
987 cat <<EOF >get-wings-flags
988 #!/bin/sh
990 WCFLAGS="$inc_search_path"
991 WLFLAGS="$lib_search_path"
992 WLIBS="-lWINGs -lWUtil -lwraster $GFXLIBS $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS"
994 usage="Usage: get-wings-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
996 if test \$# -eq 0; then
997       echo "\${usage}" 1>&2
998       exit 1
1001 while test \$# -gt 0; do
1002   case \$1 in
1003     --cflags)
1004         echo \$WCFLAGS
1005         ;;
1006     --ldflags|--lflags)
1007         echo \$WLFLAGS
1008         ;;
1009     --libs)
1010         echo \$WLIBS
1011         ;;
1012     *)
1013         echo "\${usage}" 1>&2
1014         exit 1
1015         ;;
1016   esac
1017   shift
1018 done
1023 cat <<EOF > WINGs/WINGs.pc
1024 Name: WINGs
1025 Description: Small widget set with the NeXTStep(TM) look and feel
1026 Version: $VERSION
1027 Requires: wrlib
1028 Libs: $lib_search_path -lWINGs $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS
1029 Cflags: $inc_search_path
1032 cat <<EOF >get-wutil-flags
1033 #!/bin/sh
1035 WCFLAGS="-I`eval echo ${includedir}`"
1036 WLFLAGS="-L${_libdir}"
1037 WLIBS="-lWUtil $NETLIBS $INTLIBS"
1039 usage="Usage: get-wutil-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
1041 if test \$# -eq 0; then
1042       echo "\${usage}" 1>&2
1043       exit 1
1046 while test \$# -gt 0; do
1047   case \$1 in
1048     --cflags)
1049         echo \$WCFLAGS
1050         ;;
1051     --ldflags|--lflags)
1052         echo \$WLFLAGS
1053         ;;
1054     --libs)
1055         echo \$WLIBS
1056         ;;
1057     *)
1058         echo "\${usage}" 1>&2
1059         exit 1
1060         ;;
1061   esac
1062   shift
1063 done
1068 cat <<EOF > wmlib/wmlib.pc
1069 Name: wmlib
1070 Description: FIXME: What do I write here?
1071 Version: $VERSION
1072 Requires: wrlib
1073 Libs: $lib_search_path -lWUtil $NETLIBS $INTLIBS
1074 Cflags: $inc_search_path
1077 sed 's/#lp#/[/g' get-wraster-flags | sed 's/#rp#/]/g' > wrlib/get-wraster-flags
1078 sed 's/#lp#/[/g' get-wings-flags | sed 's/#rp#/]/g' > WINGs/get-wings-flags
1079 sed 's/#lp#/[/g' get-wutil-flags | sed 's/#rp#/]/g' > WINGs/get-wutil-flags
1081 chmod 755 wrlib/get-wraster-flags WINGs/get-wings-flags WINGs/get-wutil-flags
1083 rm -f get-wraster-flags get-wings-flags get-wutil-flags
1087 dnl Spit out the configuration
1088 dnl ==========================
1090 supported_gfx="$supported_gfx builtin-PPM"
1092 if test "x$MOFILES" = "x"; then
1093         mof=None
1094 else
1095         mof=`echo $MOFILES`
1098 if test "x$MOFILES" = "x"; then
1099         languages=None
1100 else
1101         languages=`echo $MOFILES | sed 's/.mo//g'`
1104 echo
1105 echo "Window Maker was configured as follows:"
1106 echo
1107 echo "Installation path prefix            : $prefix"
1108 echo "Installation path for binaries      : $_bindir"
1109 echo "Installation path for WPrefs.app    : $wprefs_base_dir" | sed -e 's|\${prefix}|'"$prefix|"
1110 echo "Supported graphic format libraries  : $supported_gfx"
1111 echo "Use assembly routines for wrlib     : $asm_support"
1112 echo "Use inline MMX(tm) x86 assembly     : $mmx_support"
1113 echo "Antialiased text support in WINGs   : $xft"
1114 echo "Xinerama extension support          : $xinerama"
1115 dnl echo "Virtual desktop support             : $vdesktop_on"
1116 echo "Translated message files to install : $mof"
1117 dnl echo "Supported languages beside English  : $languages"
1118 if test "x$MOFILES" != "x"; then
1119         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
1121 echo
1123 dnl WM_PRINT_REDCRAP_BUG_STATUS
1125 if test "x$ac_cv_header_jpeglib_h" != xyes; then
1126 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1127 echo
1128 echo "JPEG support will not be included because the JPEG library is"
1129 echo "not installed correctly or was not found. Background images"
1130 echo "from themes will not display as they usually are JPEG files."
1131 echo
1132 echo "To fix, download and install the jpeg library and/or make sure you"
1133 echo "installed all jpeg related packages, SPECIALLY the development packages"
1134 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
1135 echo
1136 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1140 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
1141 dnl ================================================
1142 dnl Local Variables:
1143 dnl compile-command: "autoconf"
1144 dnl End: