xinerama stuff for solaris
[wmaker-crm.git] / configure.ac
blobea7e43cd97065617b077c4f58d661c9d4018a50d
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.81.0)
20 AC_PROG_LIBTOOL
22 # by Marcelo Magallon <mmagallo@efis.ucr.ac.cr>
23 # Turn around -rpath problem with libtool 1.0c
24 # This define should be improbable enough to not conflict with anything
25 case ${host} in
26   *-pc-linux-gnu)
27     AC_MSG_RESULT([Fixing libtool for -rpath problems.])
28     sed < libtool > libtool-2 \
29     's/^hardcode_libdir_flag_spec.*$/hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ "/'
30     mv libtool-2 libtool
31     chmod 755 libtool
32   ;;
33 esac
36 AM_CONFIG_HEADER(src/config.h)
39 dnl Checks for host/os name
40 dnl =======================
41 dnl AC_CANONICAL_HOST -- already done by AC_PROG_LIBTOOL
44 dnl Checks for programs.
45 dnl ===================
46 AC_ISC_POSIX
47 AC_PROG_CC
48 dnl AC_PROG_MAKE_SET -- already done by AM_INIT_AUTOMAKE
49 #AC_PROG_RANLIB
50 dnl AC_PROG_INSTALL -- already done by AM_INIT_AUTOMAKE
51 AC_PROG_LN_S
52 AC_PROG_GCC_TRADITIONAL
55 dnl the prefix
56 dnl ==========
57 dnl
58 dnl move this earlier in the script... anyone know why this is handled
59 dnl in such a bizarre way?
61 test "x$prefix" = xNONE && prefix=$ac_default_prefix
62 dnl Let make expand exec_prefix.
63 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
66 _bindir=`eval echo $bindir`
67 _bindir=`eval echo $_bindir`
69 _libdir=`eval echo $libdir`
70 _libdir=`eval echo $_libdir`
71 lib_search_path="-L$_libdir"
73 inc_search_path=`eval echo $includedir`
74 inc_search_path="-I`eval echo $inc_search_path`"
77 dnl
78 dnl Check for RedHat bugs
79 dnl =====================
81 dnl WM_CHECK_REDCRAP_BUGS($prefix,$_bindir,$_libdir)
84 dnl
85 dnl Specify paths to look for libraries and headers
86 dnl ===============================================
87 AC_ARG_WITH(libs-from,
88 [  --with-libs-from        pass compiler flags to look for libraries],
89         [lib_search_path="$withval $lib_search_path"])
91 AC_ARG_WITH(incs-from,
92 [  --with-incs-from        pass compiler flags to look for header files],
93         [inc_search_path="$withval $inc_search_path"])
97 dnl Checks for library functions.
98 dnl ============================
99 dnl not used anywhere
100 dnl AC_FUNC_MEMCMP  
101 AC_FUNC_VPRINTF
102 AC_FUNC_ALLOCA
103 AC_CHECK_FUNCS(gethostname select poll strerror strcasecmp strncasecmp setsid atexit mallinfo mkstemp snprintf vsnprintf asprintf vasprintf)
106 dnl ripped from samba
107 dnl 
108 AC_CACHE_CHECK([for C99 vsnprintf],_cv_HAVE_C99_VSNPRINTF,[
109 AC_TRY_RUN([
110 #include <sys/types.h>
111 #include <stdarg.h>
112 void foo(const char *format, ...) { 
113        va_list ap;
114        int len;
115        char buf[5];
117        va_start(ap, format);
118        len = vsnprintf(0, 0, format, ap);
119        va_end(ap);
120        if (len != 5) exit(1);
122        if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1);
124        exit(0);
126 main() { foo("hello"); }
128 _cv_HAVE_C99_VSNPRINTF=yes,_cv_HAVE_C99_VSNPRINTF=no,_cv_HAVE_C99_VSNPRINTF=cross)])
129 if test x"$_cv_HAVE_C99_VSNPRINTF" = x"yes"; then
130     AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [define if you have vsnprintf with C99 semantics (set by configure)])
133 dnl Loading of dynamic libraries at runtime
134 dnl =======================================
135 DLLIBS=""
137 AC_CHECK_FUNC(dlopen, [HAVEDL="yes"], 
138         AC_CHECK_LIB(dl, dlopen, [DLLIBS="-ldl" HAVEDL="yes"],
139                          DLLIBS="" ))
141 if test "x$HAVEDL" = xyes; then
142     AC_CHECK_HEADERS(dlfcn.h)
147 dnl Check CPP
148 dnl =========
149 if test "x$CPP_PATH" = x; then
150     AC_PATH_PROG(CPP_PATH, cpp, notfound, 
151                 $PATH:/lib:/usr/bin:/bin:/usr/lib:/usr/ccs/lib)
155 dnl Tell stupid Solaris cpp that the files it will process have C++ like syntax
156 dnl RedHat 5.x is broken too, so it won't make a symlink from cpp to the
157 dnl standard locations
159 if test "$CPP_PATH" = "/usr/ccs/lib/cpp" -o "$CPP_PATH" = "notfound" ; then
160     if test "$GCC" = "yes"; then
161         CPP_PATH="gcc -E -x c"
162     else 
163         if test "$CPP_PATH" = "/usr/ccs/lib/cpp"; then
164             CPP_PATH="$CPP_PATH -B"
165         else
166             echo "cpp, the C preprocessor was not found in your system."
167             echo "Create a symbolic link from it to /lib/cpp and rerun configure"
168             exit
169         fi
170     fi
172 AC_DEFINE_UNQUOTED(CPP_PATH, "$CPP_PATH", [define to the path to cpp])
176 dnl Checks for header files.
177 dnl =======================
178 AC_HEADER_SYS_WAIT
179 AC_HEADER_TIME
180 AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h sys/time.h sys/types.h libintl.h sys/select.h poll.h malloc.h ctype.h string.h strings.h)
184 dnl Checks for typedefs, structures, and compiler characteristics.
185 dnl ==============================================================
186 AC_DECL_SYS_SIGLIST
187 AC_C_CONST
188 #AC_TYPE_SIZE_T
189 #AC_TYPE_PID_T
190 AC_TYPE_SIGNAL
194 dnl Compiler/architecture specific optimizations
195 dnl ============================================
198 dnl GCC/as with MMX support
199 dnl -----------------------
201 # until we fix it, leave it disabled
202 asm_support=no
203 mmx_support=no
204 if test "$ac_cv_prog_gcc" = yes; then
205     x86=0
206     changequote(,)dnl
207     case "$host_cpu" in
208        i[3456]86) x86=1
209        ;;
210     esac
211     changequote([,])dnl
213     if test "$host_os" != "linux" -a "$host_os" != "linux-gnu" ; then
214        x86=0
215     fi
217     if test $x86 = 1; then
218        AC_DEFINE(ASM_X86, 1, [define if processor is x86 (normally detected by configure)])
219        asm_support=yes
221        AC_CACHE_CHECK(whether gcc supports MMX(tm) inline asm,
222                       ac_cv_c_inline_mmx,
223                       [AC_TRY_LINK(,[asm ("movq %mm0, %mm1");],
224                       ac_cv_c_inline_mmx=yes,
225                       ac_cv_c_inline_mmx=no)])
227        if test "x$ac_cv_c_inline_mmx" = xyes; then
228           AC_DEFINE(ASM_X86_MMX, 1, [define if processor is x86 with MMX(tm) support (normally autodetected by configure)])
229           mmx_support=yes
230        fi
231     fi
236 dnl gettext
237 dnl =======
240 dnl AM_GNU_GETTEXT
244 INTLIBS=""
246 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
247         AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
248                          INTLIBS="" ))
250 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
252 if test "$XGETTEXT" != ""; then 
253     if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
254         echo "xgettext isn't GNU version"
255         XGETTEXT=""
256     fi
259 if test "$LINGUAS" != ""; then
260     if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
261         AC_DEFINE(I18N, 1, [Internationalization (I18N) support (set by configure)])
262         PO=""
263 #       if test "$LINGUAS" = ""; then
264 #           ling=` (cd src/po; /bin/ls *.po) `
265 #           for l in $ling; do
266 #               lcode=`basename $l .po`
267 #               LINGUAS="$LINGUAS $lcode"
268 #           done
269 #       fi
270         echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
271     else
272         LINGUAS=""
273         PO=""
274         echo "xgettext and libintl.a don't both exist; will not build i18n support"
275     fi
276 else
277         INTLIBS=""
278         MOFILES=""
279         WPMOFILES=""
280         PO=""
284 dnl The Tower of Babel
285 dnl ==================
287 dnl List of supported locales
288 dnl -------------------------
289 supported_locales="be bg ca cs da de el es et fi fr gl hr hu it ja ko ms nl no pl pt ro ru sk sv tr zh_CN zh_TW.Big5"
290 supported_wprefs_locales="bg ca cs de es et fi fr hr hu it ja ko pt ru sk zh_CN zh_TW.Big5"
291 supported_wings_locales="bg ca cs de fr sk"
293 for lang in $LINGUAS; do
294         ok=0
295         for l in $supported_locales; do
296                 if test "$l" = "$lang"; then
297                         ok=1
298                         break
299                 fi
300         done
301         if test "$ok" = 1; then
302                 MOFILES="$MOFILES $lang.mo"
303         else
304                 echo "Locale $lang is not supported."
305         fi
306         ok=0
307         for l in $supported_wprefs_locales; do
308                 if test "$l" = "$lang"; then
309                         ok=1
310                         break
311                 fi
312         done
313         if test "$ok" = 1; then
314                 WPMOFILES="$WPMOFILES $lang.mo"
315         fi
316         ok=0
317         for l in $supported_wings_locales; do
318                 if test "$l" = "$lang"; then
319                         ok=1
320                         break
321                 fi
322         done
323         if test "$ok" = 1; then
324                 WINGSMOFILES="$WINGSMOFILES $lang.mo"
325         fi
326 done
329 dnl Kanji Characters support
330 dnl ========================
332 case $host_os in
333         freebsd*)
334                 AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"]);;
335         *)
336         ;;
337 esac
341 dnl Added by Oliver - Support for NLSDIR option,   Hi Oliver!
342 dnl ===========================================
343 AC_ARG_WITH(nlsdir, 
344         [  --with-nlsdir=PATH      specify where the locale stuff should go ])
347 if test "x$NLSDIR" = "x"; then
348         if test "x$with_nlsdir" != "x"; then
349                 NLSDIR=$with_nlsdir
350         else
351                 NLSDIR='$(prefix)/lib/locale'
352         fi
357 AC_SUBST(DLLIBS)
358 AC_SUBST(INTLIBS)
359 AC_SUBST(NLSDIR)
360 AC_SUBST(MOFILES)
361 AC_SUBST(WPMOFILES)
362 AC_SUBST(WINGSMOFILES)
363 AC_SUBST(supported_locales)
367 dnl Support for various hint things
368 dnl ===============================
371 AC_ARG_ENABLE(gnome,
372   [  --enable-gnome          enable stuff needed for GNOME ],
373   [if test x$enableval = xyes; then
374     AC_DEFINE(GNOME_STUFF, 1, [define if you want GNOME stuff support])
375     gnome_on=yes
376   fi])
379 AC_ARG_ENABLE(kde,
380   [  --enable-kde            enable support for KDE window manager (kwm) hints ],
381   [if test x$enableval = xyes; then
382     AC_DEFINE(KWM_HINTS, 1, [define if you want KDE hint support])
383     kde_on=yes
384   fi])
387 AC_ARG_ENABLE(openlook,
388   [  --enable-openlook       enable support for OPEN LOOK(tm) (olwm) hints ],
389   [if test x$enableval = xyes; then
390     AC_DEFINE(OLWM_HINTS, 1, [define if you want OPEN LOOK(tm) hint support])
391     openlook_on=yes
392   fi])
396 dnl Disable some stuff that are duplicated in kde
397 dnl ---------------------------------------------
398 AC_ARG_ENABLE(lite,
399   [  --enable-lite           disable some stuff (dont use it) ],
400   [if test x$enableval = xyes; then
401         LITE=yes
402         AC_DEFINE(LITE, 1, [define if you want the 'lite' version])
403         AC_SUBST(LITE)
404   fi])
409 dnl Networking stuff
412 NETLIBS=""
414 AC_CHECK_FUNC(connect,,
415         AC_CHECK_LIB(socket, connect, NETLIBS="$NETLIBS -lsocket"))
417 AC_CHECK_FUNC(gethostbyname,,
418         AC_CHECK_LIB(nsl, gethostbyname, NETLIBS="$NETLIBS -lnsl"))
420 AC_CHECK_FUNC(inet_aton, AC_DEFINE(HAVE_INET_ATON, 1, [define if you have then inet_aton function (set by configure)]),
421      for lib in resolv socket inet bsd; do
422         AC_CHECK_LIB($lib, inet_aton, [AC_DEFINE(HAVE_INET_ATON)
423                      NETLIBS="$NETLIBS -l$lib"; break],, $NETLIBS)
424      done)
426 AC_SUBST(NETLIBS)
429 dnl ===========================================
430 dnl             Stuff that uses X
431 dnl ===========================================
433 AC_PATH_XTRA
435 if test $no_x; then
436     AC_MSG_ERROR([The path for the X11 files not found!
437 Make sure you have X and it's headers and libraries (the -devel packages
438 in Linux) installed.])
441 X_LIBRARY_PATH=$x_libraries
443 XCFLAGS="$X_CFLAGS"
445 XLFLAGS="$X_LIBS"
447 XLIBS="-lX11 $X_EXTRA_LIBS"
450 lib_search_path="$lib_search_path $XLFLAGS"
451 inc_search_path="$inc_search_path $XCFLAGS"
454 AC_SUBST(X_LIBRARY_PATH)
458 dnl Decide which locale function to use, setlocale() or _Xsetlocale()
459 dnl by MANOME Tomonori 
460 dnl ===========================================
461 use_locale=yes
462 AC_ARG_ENABLE(locale, 
463 [  --disable-locale        disable use of X locale support],
464                 use_locale=no)
466 if test "$use_locale" = yes; then
467         AC_CHECK_LIB(X11, _Xsetlocale,
468                 AC_DEFINE(X_LOCALE, 1, [define if you want support for X window's X_LOCALE (set by configure)]),,
469                 $XLFLAGS $XLIBS)
473 dnl Check whether XInternAtoms() exist
474 dnl ==================================
475 AC_CHECK_LIB(X11, XInternAtoms, 
476              AC_DEFINE(HAVE_XINTERNATOMS, 1, [define if your X server has XInternAtoms() (set by configure)]),,
477              $XLFLAGS $XLIBS)
479 dnl Check whether XConvertCase() exist
480 dnl ==================================
481 AC_CHECK_LIB(X11, XConvertCase, 
482              AC_DEFINE(HAVE_XCONVERTCASE, 1, [define if your X server has XConvertCase() (set by configure)]),,
483              $XLFLAGS $XLIBS)
486 dnl XKB keyboard language status
487 dnl ============================
488 AC_ARG_ENABLE(modelock,
489 [  --enable-modelock       XKB keyboard language status support],
490                 AC_DEFINE(XKB_MODELOCK, 1, [whether XKB language MODELOCK should be enabled]))
494 dnl Shape support
495 dnl =============
496 shape=yes
497 AC_ARG_ENABLE(shape, 
498 [  --disable-shape         disable shaped window extension support],
499                 shape=$enableval, shape=yes)
501 added_xext=no
503 if test "$shape" = yes; then
504         AC_CHECK_LIB(Xext, XShapeSelectInput, [XLIBS="-lXext $XLIBS"
505                 added_xext=yes
506                 AC_DEFINE(SHAPE, 1, [define if you want support for shaped windows (set by configure)])], 
507                 shape=no, $XLFLAGS $XLIBS)
511 dnl Xft antialiased font support
512 dnl ============================
513 xft=yes
514 XFTLIBS=""
515 AC_ARG_ENABLE(xft, 
516 [  --disable-xft           disable Xft antialiased font support],
517                 xft=$enableval, xft=yes)
519 if test "$xft" = yes; then
520         AC_CHECK_LIB(Xft, XftDrawCreate, [XFTLIBS="-lXft"
521                 AC_SUBST(XFTLIBS)
522                 AC_DEFINE(XFT, 1, [define if you want support for antialiased fonts (set by configure)])],
523                 xft=no, $XLFLAGS $XLIBS)
527 dnl XINERAMA support
528 dnl ================
529 xinerama=no
530 AC_ARG_ENABLE(xinerama,
531 [  --enable-xinerama       enable Xinerama extension support],
532                 xinerama=$enableval, xinerama=no)
534 if test "$xinerama" = yes; then
535         AC_CHECK_LIB(Xinerama, XineramaQueryScreens, 
536                 [XLIBS="-lXinerama $XLIBS"
537                 AC_DEFINE(XINERAMA, 1, [define if you want support for the XINERAMA extension (XFree86 version/set by configure)])
538                 xinerama=yes],
539                 xinerama=no, $XLFLAGS $XLIBS)
541         AC_CHECK_LIB(Xext, XineramaGetInfo,
542                 [AC_DEFINE(SOLARIS_XINERAMA, 1, [define if you want support for the XINERAMA extension (Solaris version/set by configure)])
543                 xinerama=yes],
544                 xinerama=no, $XLFLAGS $XLIBS)
549 dnl MIT-SHM support
550 dnl ===============
551 shm=yes
552 AC_ARG_ENABLE(shm,
553 [  --disable-shm           disable usage of MIT-SHM extension],
554                 shm=$enableval, shm=yes)
556 if test "$shm" = yes; then
557         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
559         if test "$ok" = yes; then
560         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
561         fi
563         if test "$ok" = yes; then
564                 if test "$added_xext" = no; then
565                         XLIBS="-lXext $XLIBS"
566                 fi
567                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
568         fi
572 dnl R6 Style Session Management Support
573 dnl ===================================
577 #AC_DEFINE(R6SM)
578 #AC_SUBST(XSMPLIBS)
582 dnl ==============================================
583 dnl         Graphic Format Libraries
584 dnl ==============================================
590 dnl XPM Support
591 dnl ===========
592 xpm=yes
593 AC_ARG_ENABLE(xpm, 
594 [  --disable-xpm           disable use of XPM pixmaps through libXpm],
595         xpm=$enableval, xpm=yes)
597 if test "$xpm" = yes; then
598     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
600     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
601         WM_CHECK_HEADER(X11/xpm.h)
602         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
603                 GFXLIBS="$GFXLIBS -lXpm"
604                 supported_gfx="XPM"
605                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
606         else
607                 supported_gfx="builtin-XPM"
608         fi
609     fi
612 # for wmlib
613 AC_SUBST(XCFLAGS)
614 # for test
615 AC_SUBST(XLFLAGS)
616 AC_SUBST(XLIBS)
618 AC_SUBST(X_EXTRA_LIBS)
620 dnl ===============================================
621 dnl             End of stuff that uses X
622 dnl ===============================================
626 dnl PNG Support
627 dnl ===========
628 png=yes
629 AC_ARG_ENABLE(png, 
630 [  --disable-png           disable PNG support through libpng],
631         png=$enableval, png=yes, png=no)
634 if test "$png" = yes ; then
635     WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
637     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
638         WM_CHECK_HEADER(png.h)
639         if test "x$ac_cv_header_png_h" = xyes; then
640             GFXLIBS="$GFXLIBS -lpng -lz" 
641             supported_gfx="$supported_gfx PNG"
642             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
643         fi
644     fi
648 dnl JPEG Support
649 dnl ============
650 jpeg=yes
651 ljpeg=""
652 AC_ARG_ENABLE(jpeg,
653 [  --disable-jpeg          disable JPEG support through libjpeg],
654         jpeg=$enableval, jpeg=yes, jpeg=no)
656 if test "$jpeg" = yes; then
657     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
659     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
661         ljpeg="-ljpeg"
663         WM_CHECK_HEADER(jpeglib.h)
664         if test "x$ac_cv_header_jpeglib_h" = xyes; then
665             GFXLIBS="$GFXLIBS -ljpeg"
666             supported_gfx="$supported_gfx JPEG"
667             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
668         fi
669     fi
673 dnl GIF Support
674 dnl ============
675 gif=yes
676 AC_ARG_ENABLE(gif,
677 [  --disable-gif           disable GIF support through libgif or libungif],
678         gif=$enableval, gif=yes, gif=no)
680 if test "$gif" = yes; then
681     my_libname=""
682     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
683     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
684         my_libname=-lungif
685     fi
687 dnl libungif is the same thing as libgif for all practical purposes.
689     if test "x$my_libname" = x; then
690         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
691         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
692             my_libname=-lgif
693         fi
694     fi
696     if test "$my_libname" != x; then
697         WM_CHECK_HEADER(gif_lib.h)
698         if test "x$ac_cv_header_gif_lib_h" = xyes; then
699             GFXLIBS="$GFXLIBS $my_libname"
700             supported_gfx="$supported_gfx GIF"
701             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
702         fi
703     fi
708 dnl TIFF Support
709 dnl ============
710 AC_ARG_ENABLE(tiff, 
711 [  --disable-tiff          disable use of TIFF images through libtiff],
712         tif=$enableval, tif=yes, tif=no)
715 # TIFF can optionally have JPEG and/or zlib support. Must find out
716 # when they are supported so that correct library flags are passed during
717 # detection and linkage
720 # By default use xpm icons if tiff is not found.
721 ICONEXT="xpm"
724 if test "$tif" = yes; then
725     my_libname=""
726     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
727     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
728         my_libname="-ltiff"
729     fi
731 dnl Retry with zlib
733     unset ac_cv_lib_tiff_TIFFGetVersion
734     if test "x$my_libname" = x; then
735         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
736         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
737             my_libname="-ltiff -lz"
738         fi
739     fi
741     if test "x$my_libname" = x; then
742         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
743         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
744             my_libname="-ltiff34"
745         fi
746     fi
749     if test "x$my_libname" != x; then
750         WM_CHECK_HEADER(tiffio.h)
751         if test "x$ac_cv_header_tiffio_h" = xyes; then
752             GFXLIBS="$my_libname $GFXLIBS"
753             ICONEXT="tiff"
754             supported_gfx="$supported_gfx TIFF"
755             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
756         fi
757     fi
760 LIBRARY_SEARCH_PATH="$lib_search_path"
761 HEADER_SEARCH_PATH="$inc_search_path"
763 AC_SUBST(LIBRARY_SEARCH_PATH)
764 AC_SUBST(HEADER_SEARCH_PATH)
767 AC_SUBST(GFXLIBS)
768 AC_SUBST(ICONEXT)
771 dnl ==============================================
772 dnl         End of Graphic Format Libraries
773 dnl ==============================================
777 dnl stdlib.h is checked here, because of conflict in jpeglib.h
778 AC_CHECK_HEADERS(stdlib.h)
780 # AC_PREFIX_PROGRAM(wmaker)
782 dnl Support for PIXMAPDIR option
783 dnl ============================
784 AC_ARG_WITH(pixmapdir,
785 [  --with-pixmapdir=PATH   specify where pixmaps are located [DATADIR/pixmaps]])
787 if test "x$with_pixmapdir" != "x"; then
788         pixmapdir=$with_pixmapdir
789 else
790         pixmapdir=`eval echo ${datadir}/pixmaps`
793 AC_DEFINE_UNQUOTED(PIXMAPDIR, "$pixmapdir", [define an extra path for pixmaps (set by configure)])
795 pkgdatadir=`eval echo $datadir`
796 AC_DEFINE_UNQUOTED(PKGDATADIR, "$pkgdatadir/WindowMaker", [where shared data is stored (defined by configure)])
798 _sysconfdir=`eval echo $sysconfdir`
799 AC_DEFINE_UNQUOTED(SYSCONFDIR, "$_sysconfdir", [where the configuration is stored (defined by configure)])
802 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
803 dnl ==============================================
805 appspath=""
807 AC_ARG_WITH(appspath,
808 [  --with-appspath=PATH    specify the directory for GNUstep applications], appspath=$withval )
810 if test "x$appspath" = "x"; then
811     gnustepdir='$(prefix)/GNUstep'
813     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
814         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
815         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
816     fi
818     with_appspath=$gnustepdir/Apps
821 wprefsdir=$with_appspath/WPrefs.app
823 AC_SUBST(wprefsdir)
826 dnl Enable User Defined Menu thing
827 dnl ==================================
828 AC_ARG_ENABLE(usermenu,
829 [  --enable-usermenu       user defined menus for applications
831 if test "$enableval" = yes; then
832         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
838 dnl Nicolai:  Program tests for Documentation Section
839 dnl =================================================
840 dnl DOCTYPES=""
841 dnl AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, ,$PATH)
842 dnl if test "x$MAKEINFO" != "x" ; then
843 dnl       DOCTYPES="$DOCTYPES info_doc"
844 dnl fi
845 dnl AC_CHECK_PROG(TEX, tex, tex, ,$PATH)
846 dnl if test "x$TEX" != "x" ; then
847 dnl       DOCTYPES="$DOCTYPES dvi_doc"
848 dnl fi
849 dnl AC_CHECK_PROG(DVIPS, dvips, dvips, ,$PATH)
850 dnl if test "x$DVIPS" != "x" ; then
851 dnl       DOCTYPES="$DOCTYPES ps_doc"
852 dnl fi
853 dnl AC_CHECK_PROG(PERL, perl, perl, ,$PATH)
854 dnl if test "x$PERL" != "x" ; then
855 dnl       DOCTYPES="$DOCTYPES html_doc"
856 dnl fi
857 dnl AC_PATH_PROG(PERL_PATH, perl, perl, ,$PATH)
858 dnl AC_CHECK_PROG(TEXI2HTML, texi2html, texi2html, ,$PATH)
859   
860 dnl AC_SUBST(DOCTYPES)
862 AC_OUTPUT(Makefile po/Makefile util/Makefile test/Makefile \
863         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
864         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
865         WINGs/Extras/Makefile WINGs/po/Makefile \
866         wmlib/Makefile wrlib/Makefile src/Makefile src/wconfig.h \
867         doc/Makefile doc/sk/Makefile \
868         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
869         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
870         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
871         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
872         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
873         WPrefs.app/po/Makefile \
874         contrib/Makefile contrib/WindowMaker.spec )
875 #       plugins/Makefile plugins/libwmfun/Makefile)
880 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
881 dnl ===================================================================
884 dnl echo "WFLAGS=\"$LIBPL_INC_PATH -I$prefix/include\"" > WINGs-flags
885 dnl echo "WLIBS=\"-L$exec_prefix/lib -lWINGs -lwraster $LIBPL_LIBS $GFXLIBS -lm\""\
886 dnl     | sed -e 's|\$(prefix)|'"$prefix|" >> WINGs-flags
888 dnl The #lp# and #rp# stuff below is a hack because [ and ] get lost when
889 dnl parsed by m4
891 cat <<EOF >get-wraster-flags
892 #!/bin/sh
894 WCFLAGS="$inc_search_path"
895 WLFLAGS="$lib_search_path"
896 WLIBS="-lwraster $GFXLIBS $XLIBS -lm"
898 usage="Usage: get-wraster-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
900 if test \$# -eq 0; then
901       echo "\${usage}" 1>&2
902       exit 1
905 while test \$# -gt 0; do
906   case \$1 in
907     --cflags)
908         echo \$WCFLAGS
909         ;;
910     --ldflags|--lflags)
911         echo \$WLFLAGS
912         ;;
913     --libs)
914         echo \$WLIBS
915         ;;
916     *)
917         echo "\${usage}" 1>&2
918         exit 1
919         ;;
920   esac
921   shift
922 done
927 cat <<EOF > wrlib/wrlib.pc
928 Name: wrlib
929 Description: Image manipulation and conversion library
930 Version: $VERSION
931 Libs: $lib_search_path -lwraster $GFXLIBS $XLIBS -lm
932 Cflags: $inc_search_path
935 cat <<EOF >get-wings-flags
936 #!/bin/sh
938 WCFLAGS="$inc_search_path"
939 WLFLAGS="$lib_search_path"
940 WLIBS="-lWINGs -lwraster $GFXLIBS $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS"
942 usage="Usage: get-wings-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
944 if test \$# -eq 0; then
945       echo "\${usage}" 1>&2
946       exit 1
949 while test \$# -gt 0; do
950   case \$1 in
951     --cflags)
952         echo \$WCFLAGS
953         ;;
954     --ldflags|--lflags)
955         echo \$WLFLAGS
956         ;;
957     --libs)
958         echo \$WLIBS
959         ;;
960     *)
961         echo "\${usage}" 1>&2
962         exit 1
963         ;;
964   esac
965   shift
966 done
971 cat <<EOF > WINGs/WINGs.pc
972 Name: WINGs
973 Description: Small widget set with the NeXTStep(TM) look and feel
974 Version: $VERSION
975 Requires: wrlib
976 Libs: $lib_search_path -lWINGs $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS
977 Cflags: $inc_search_path
980 cat <<EOF >get-wutil-flags
981 #!/bin/sh
983 WCFLAGS="-I`eval echo ${includedir}`"
984 WLFLAGS="-L${_libdir}"
985 WLIBS="-lWUtil $NETLIBS $INTLIBS"
987 usage="Usage: get-wutil-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
989 if test \$# -eq 0; then
990       echo "\${usage}" 1>&2
991       exit 1
994 while test \$# -gt 0; do
995   case \$1 in
996     --cflags)
997         echo \$WCFLAGS
998         ;;
999     --ldflags|--lflags)
1000         echo \$WLFLAGS
1001         ;;
1002     --libs)
1003         echo \$WLIBS
1004         ;;
1005     *)
1006         echo "\${usage}" 1>&2
1007         exit 1
1008         ;;
1009   esac
1010   shift
1011 done
1016 cat <<EOF > wmlib/wmlib.pc
1017 Name: wmlib
1018 Description: FIXME: What do I write here?
1019 Version: $VERSION
1020 Requires: wrlib
1021 Libs: $lib_search_path -lWUtil $NETLIBS $INTLIBS
1022 Cflags: $inc_search_path
1025 sed 's/#lp#/[/g' get-wraster-flags | sed 's/#rp#/]/g' > wrlib/get-wraster-flags
1026 sed 's/#lp#/[/g' get-wings-flags | sed 's/#rp#/]/g' > WINGs/get-wings-flags
1027 sed 's/#lp#/[/g' get-wutil-flags | sed 's/#rp#/]/g' > WINGs/get-wutil-flags
1029 chmod 755 wrlib/get-wraster-flags WINGs/get-wings-flags WINGs/get-wutil-flags
1031 rm -f get-wraster-flags get-wings-flags get-wutil-flags
1035 dnl Spit out the configuration
1036 dnl ==========================
1038 supported_gfx="$supported_gfx builtin-PPM"
1040 if test "x$MOFILES" = "x"; then
1041         mof=none
1042 else
1043         mof=`echo $MOFILES`
1046 if test "x$MOFILES" = "x"; then
1047         languages=none
1048 else
1049         languages=`echo $MOFILES | sed 's/.mo//g'`
1053 echo
1054 echo "Window Maker was configured as follows:"
1055 echo
1056 echo "Installation path prefix            : $prefix"
1057 echo "Installation path for binaries      : $_bindir"
1058 echo "Installation path for WPrefs.app    : $wprefsdir" | sed -e 's|\$(prefix)|'"$prefix|"
1059 echo "Supported graphic format libraries  : $supported_gfx"
1060 echo "Antialiased font support for WINGs  : $xft"
1061 echo "Xinerama extension support          : $xinerama"
1062 echo "Use assembly routines for wrlib     : $asm_support"
1063 echo "Use inline MMX(tm) x86 assembly     : $mmx_support"
1064 echo "Translated message files to install : $mof"
1065 dnl echo "Supported languages beside English  : $languages"
1066 if test "x$MOFILES" != "x"; then
1067         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
1069 echo
1071 dnl WM_PRINT_REDCRAP_BUG_STATUS
1073 if test "x$ac_cv_header_jpeglib_h" != xyes; then
1074 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1075 echo
1076 echo "JPEG support will not be included because the JPEG library is"
1077 echo "not installed correctly or was not found. Background images"
1078 echo "from themes will not display as they usually are JPEG files."
1079 echo
1080 echo "To fix, download and install the jpeg library and/or make sure you"
1081 echo "installed all jpeg related packages, SPECIALLY the development packages"
1082 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
1083 echo
1084 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1088 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
1089 dnl ================================================
1090 dnl Local Variables:
1091 dnl compile-command: "autoconf"
1092 dnl End: