added support fo generating pkgconfig files for WINGs, wrlib and wmlib ("Marcelo...
[wmaker-crm.git] / configure.ac
blob278dd5bce367a912e117048dd4b0e3c07d5555c7
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, [XLIBS="-lXinerama $XLIBS"
536                 AC_DEFINE(XINERAMA, 1, [define if you want support for the XINERAMA extension (set by configure)])],
537                 xinerama=no, $XLFLAGS $XLIBS)
542 dnl MIT-SHM support
543 dnl ===============
544 shm=yes
545 AC_ARG_ENABLE(shm,
546 [  --disable-shm           disable usage of MIT-SHM extension],
547                 shm=$enableval, shm=yes)
549 if test "$shm" = yes; then
550         AC_CHECK_LIB(Xext, XShmAttach, ok=yes, ok=no, $XLFLAGS $XLIBS)
552         if test "$ok" = yes; then
553         AC_CHECK_FUNC(shmget, ok=yes, ok=no)
554         fi
556         if test "$ok" = yes; then
557                 if test "$added_xext" = no; then
558                         XLIBS="-lXext $XLIBS"
559                 fi
560                 AC_DEFINE(XSHM, 1, [define if X's shared memory extension is available (set by configure)])
561         fi
565 dnl R6 Style Session Management Support
566 dnl ===================================
570 #AC_DEFINE(R6SM)
571 #AC_SUBST(XSMPLIBS)
575 dnl ==============================================
576 dnl         Graphic Format Libraries
577 dnl ==============================================
583 dnl XPM Support
584 dnl ===========
585 xpm=yes
586 AC_ARG_ENABLE(xpm, 
587 [  --disable-xpm           disable use of XPM pixmaps through libXpm],
588         xpm=$enableval, xpm=yes)
590 if test "$xpm" = yes; then
591     WM_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [$XLFLAGS $XLIBS])
593     if test "x$ac_cv_lib_Xpm_XpmCreatePixmapFromData" = xyes; then
594         WM_CHECK_HEADER(X11/xpm.h)
595         if test "x$ac_cv_header_X11_xpm_h" = xyes; then
596                 GFXLIBS="$GFXLIBS -lXpm"
597                 supported_gfx="XPM"
598                 AC_DEFINE(USE_XPM, 1, [define if XPM libraries are available (set by configure)])
599         else
600                 supported_gfx="builtin-XPM"
601         fi
602     fi
605 # for wmlib
606 AC_SUBST(XCFLAGS)
607 # for test
608 AC_SUBST(XLFLAGS)
609 AC_SUBST(XLIBS)
611 AC_SUBST(X_EXTRA_LIBS)
613 dnl ===============================================
614 dnl             End of stuff that uses X
615 dnl ===============================================
619 dnl PNG Support
620 dnl ===========
621 png=yes
622 AC_ARG_ENABLE(png, 
623 [  --disable-png           disable PNG support through libpng],
624         png=$enableval, png=yes, png=no)
627 if test "$png" = yes ; then
628     WM_CHECK_LIB(png, png_get_valid, [-lz -lm])
630     if test "x$ac_cv_lib_png_png_get_valid" = xyes; then
631         WM_CHECK_HEADER(png.h)
632         if test "x$ac_cv_header_png_h" = xyes; then
633             GFXLIBS="$GFXLIBS -lpng -lz" 
634             supported_gfx="$supported_gfx PNG"
635             AC_DEFINE(USE_PNG, 1, [define if PNG libraries are available (set by configure)])
636         fi
637     fi
641 dnl JPEG Support
642 dnl ============
643 jpeg=yes
644 ljpeg=""
645 AC_ARG_ENABLE(jpeg,
646 [  --disable-jpeg          disable JPEG support through libjpeg],
647         jpeg=$enableval, jpeg=yes, jpeg=no)
649 if test "$jpeg" = yes; then
650     WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
652     if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
654         ljpeg="-ljpeg"
656         WM_CHECK_HEADER(jpeglib.h)
657         if test "x$ac_cv_header_jpeglib_h" = xyes; then
658             GFXLIBS="$GFXLIBS -ljpeg"
659             supported_gfx="$supported_gfx JPEG"
660             AC_DEFINE(USE_JPEG, 1, [define if JPEG libraries are available (set by configure)])
661         fi
662     fi
666 dnl GIF Support
667 dnl ============
668 gif=yes
669 AC_ARG_ENABLE(gif,
670 [  --disable-gif           disable GIF support through libgif or libungif],
671         gif=$enableval, gif=yes, gif=no)
673 if test "$gif" = yes; then
674     my_libname=""
675     WM_CHECK_LIB(ungif, DGifOpenFileName, [$XLFLAGS $XLIBS])
676     if test "x$ac_cv_lib_ungif_DGifOpenFileName" = xyes; then
677         my_libname=-lungif
678     fi
680 dnl libungif is the same thing as libgif for all practical purposes.
682     if test "x$my_libname" = x; then
683         WM_CHECK_LIB(gif, DGifOpenFileName, [$XLFLAGS $XLIBS])
684         if test "x$ac_cv_lib_gif_DGifOpenFileName" = xyes; then
685             my_libname=-lgif
686         fi
687     fi
689     if test "$my_libname" != x; then
690         WM_CHECK_HEADER(gif_lib.h)
691         if test "x$ac_cv_header_gif_lib_h" = xyes; then
692             GFXLIBS="$GFXLIBS $my_libname"
693             supported_gfx="$supported_gfx GIF"
694             AC_DEFINE(USE_GIF, 1, [define if GIF libraries are available (set by configure)])
695         fi
696     fi
701 dnl TIFF Support
702 dnl ============
703 AC_ARG_ENABLE(tiff, 
704 [  --disable-tiff          disable use of TIFF images through libtiff],
705         tif=$enableval, tif=yes, tif=no)
708 # TIFF can optionally have JPEG and/or zlib support. Must find out
709 # when they are supported so that correct library flags are passed during
710 # detection and linkage
713 # By default use xpm icons if tiff is not found.
714 ICONEXT="xpm"
717 if test "$tif" = yes; then
718     my_libname=""
719     WM_CHECK_LIB(tiff, TIFFGetVersion, [-lm])
720     if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
721         my_libname="-ltiff"
722     fi
724 dnl Retry with zlib
726     unset ac_cv_lib_tiff_TIFFGetVersion
727     if test "x$my_libname" = x; then
728         WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
729         if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
730             my_libname="-ltiff -lz"
731         fi
732     fi
734     if test "x$my_libname" = x; then
735         WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
736         if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
737             my_libname="-ltiff34"
738         fi
739     fi
742     if test "x$my_libname" != x; then
743         WM_CHECK_HEADER(tiffio.h)
744         if test "x$ac_cv_header_tiffio_h" = xyes; then
745             GFXLIBS="$my_libname $GFXLIBS"
746             ICONEXT="tiff"
747             supported_gfx="$supported_gfx TIFF"
748             AC_DEFINE(USE_TIFF, 1, [define if TIFF libraries are available (set by configure)])     
749         fi
750     fi
753 LIBRARY_SEARCH_PATH="$lib_search_path"
754 HEADER_SEARCH_PATH="$inc_search_path"
756 AC_SUBST(LIBRARY_SEARCH_PATH)
757 AC_SUBST(HEADER_SEARCH_PATH)
760 AC_SUBST(GFXLIBS)
761 AC_SUBST(ICONEXT)
764 dnl ==============================================
765 dnl         End of Graphic Format Libraries
766 dnl ==============================================
770 dnl stdlib.h is checked here, because of conflict in jpeglib.h
771 AC_CHECK_HEADERS(stdlib.h)
773 # AC_PREFIX_PROGRAM(wmaker)
775 dnl Support for PIXMAPDIR option
776 dnl ============================
777 AC_ARG_WITH(pixmapdir,
778 [  --with-pixmapdir=PATH   specify where pixmaps are located [DATADIR/pixmaps]])
780 if test "x$with_pixmapdir" != "x"; then
781         pixmapdir=$with_pixmapdir
782 else
783         pixmapdir=`eval echo ${datadir}/pixmaps`
786 AC_DEFINE_UNQUOTED(PIXMAPDIR, "$pixmapdir", [define an extra path for pixmaps (set by configure)])
788 pkgdatadir=`eval echo $datadir`
789 AC_DEFINE_UNQUOTED(PKGDATADIR, "$pkgdatadir/WindowMaker", [where shared data is stored (defined by configure)])
791 _sysconfdir=`eval echo $sysconfdir`
792 AC_DEFINE_UNQUOTED(SYSCONFDIR, "$_sysconfdir", [where the configuration is stored (defined by configure)])
795 dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
796 dnl ==============================================
798 appspath=""
800 AC_ARG_WITH(appspath,
801 [  --with-appspath=PATH    specify the directory for GNUstep applications], appspath=$withval )
803 if test "x$appspath" = "x"; then
804     gnustepdir='$(prefix)/GNUstep'
806     if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
807         gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s|^${prefix}|prefix|"`
808         gnustepdir=`echo $gnustepdir | sed -e 's|^prefix|${prefix}|'`
809     fi
811     with_appspath=$gnustepdir/Apps
814 wprefsdir=$with_appspath/WPrefs.app
816 AC_SUBST(wprefsdir)
819 dnl Enable User Defined Menu thing
820 dnl ==================================
821 AC_ARG_ENABLE(usermenu,
822 [  --enable-usermenu       user defined menus for applications
824 if test "$enableval" = yes; then
825         AC_DEFINE(USER_MENU, 1, [define if you want user defined menus for applications])
831 dnl Nicolai:  Program tests for Documentation Section
832 dnl =================================================
833 dnl DOCTYPES=""
834 dnl AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, ,$PATH)
835 dnl if test "x$MAKEINFO" != "x" ; then
836 dnl       DOCTYPES="$DOCTYPES info_doc"
837 dnl fi
838 dnl AC_CHECK_PROG(TEX, tex, tex, ,$PATH)
839 dnl if test "x$TEX" != "x" ; then
840 dnl       DOCTYPES="$DOCTYPES dvi_doc"
841 dnl fi
842 dnl AC_CHECK_PROG(DVIPS, dvips, dvips, ,$PATH)
843 dnl if test "x$DVIPS" != "x" ; then
844 dnl       DOCTYPES="$DOCTYPES ps_doc"
845 dnl fi
846 dnl AC_CHECK_PROG(PERL, perl, perl, ,$PATH)
847 dnl if test "x$PERL" != "x" ; then
848 dnl       DOCTYPES="$DOCTYPES html_doc"
849 dnl fi
850 dnl AC_PATH_PROG(PERL_PATH, perl, perl, ,$PATH)
851 dnl AC_CHECK_PROG(TEXI2HTML, texi2html, texi2html, ,$PATH)
852   
853 dnl AC_SUBST(DOCTYPES)
855 AC_OUTPUT(Makefile po/Makefile util/Makefile test/Makefile \
856         WINGs/Makefile WINGs/WINGs/Makefile WINGs/Documentation/Makefile \
857         WINGs/Examples/Makefile WINGs/Resources/Makefile WINGs/Tests/Makefile \
858         WINGs/Extras/Makefile WINGs/po/Makefile \
859         wmlib/Makefile wrlib/Makefile src/Makefile src/wconfig.h \
860         doc/Makefile doc/sk/Makefile \
861         WindowMaker/Makefile WindowMaker/Backgrounds/Makefile \
862         WindowMaker/Defaults/Makefile WindowMaker/IconSets/Makefile \
863         WindowMaker/Icons/Makefile WindowMaker/Pixmaps/Makefile \
864         WindowMaker/Styles/Makefile WindowMaker/Themes/Makefile \
865         WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
866         WPrefs.app/po/Makefile \
867         contrib/Makefile contrib/WindowMaker.spec )
868 #       plugins/Makefile plugins/libwmfun/Makefile)
873 dnl Output some helpful data for compiling wraster and WINGs/WUtil apps
874 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 cat <<EOF >get-wraster-flags
885 #!/bin/sh
887 WCFLAGS="$inc_search_path"
888 WLFLAGS="$lib_search_path"
889 WLIBS="-lwraster $GFXLIBS $XLIBS -lm"
891 usage="Usage: get-wraster-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
893 if test \$# -eq 0; then
894       echo "\${usage}" 1>&2
895       exit 1
898 while test \$# -gt 0; do
899   case \$1 in
900     --cflags)
901         echo \$WCFLAGS
902         ;;
903     --ldflags|--lflags)
904         echo \$WLFLAGS
905         ;;
906     --libs)
907         echo \$WLIBS
908         ;;
909     *)
910         echo "\${usage}" 1>&2
911         exit 1
912         ;;
913   esac
914   shift
915 done
920 cat <<EOF > wrlib/wrlib.pc
921 Name: wrlib
922 Description: Image manipulation and conversion library
923 Version: $VERSION
924 Libs: $lib_search_path -lwraster $GFXLIBS $XLIBS -lm
925 Cflags: $inc_search_path
928 cat <<EOF >get-wings-flags
929 #!/bin/sh
931 WCFLAGS="$inc_search_path"
932 WLFLAGS="$lib_search_path"
933 WLIBS="-lWINGs -lwraster $GFXLIBS $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS"
935 usage="Usage: get-wings-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
937 if test \$# -eq 0; then
938       echo "\${usage}" 1>&2
939       exit 1
942 while test \$# -gt 0; do
943   case \$1 in
944     --cflags)
945         echo \$WCFLAGS
946         ;;
947     --ldflags|--lflags)
948         echo \$WLFLAGS
949         ;;
950     --libs)
951         echo \$WLIBS
952         ;;
953     *)
954         echo "\${usage}" 1>&2
955         exit 1
956         ;;
957   esac
958   shift
959 done
964 cat <<EOF > WINGs/WINGs.pc
965 Name: WINGs
966 Description: Small widget set with the NeXTStep(TM) look and feel
967 Version: $VERSION
968 Requires: wrlib
969 Libs: $lib_search_path -lWINGs $XFTLIBS $XLIBS -lm $NETLIBS $INTLIBS
970 Cflags: $inc_search_path
973 cat <<EOF >get-wutil-flags
974 #!/bin/sh
976 WCFLAGS="-I`eval echo ${includedir}`"
977 WLFLAGS="-L${_libdir}"
978 WLIBS="-lWUtil $NETLIBS $INTLIBS"
980 usage="Usage: get-wutil-flags #lp#--cflags#rp# #lp#--ldflags#rp# #lp#--libs#rp#"
982 if test \$# -eq 0; then
983       echo "\${usage}" 1>&2
984       exit 1
987 while test \$# -gt 0; do
988   case \$1 in
989     --cflags)
990         echo \$WCFLAGS
991         ;;
992     --ldflags|--lflags)
993         echo \$WLFLAGS
994         ;;
995     --libs)
996         echo \$WLIBS
997         ;;
998     *)
999         echo "\${usage}" 1>&2
1000         exit 1
1001         ;;
1002   esac
1003   shift
1004 done
1009 cat <<EOF > wmlib/wmlib.pc
1010 Name: wmlib
1011 Description: FIXME: What do I write here?
1012 Version: $VERSION
1013 Requires: wrlib
1014 Libs: $lib_search_path -lWUtil $NETLIBS $INTLIBS
1015 Cflags: $inc_search_path
1018 sed 's/#lp#/[/g' get-wraster-flags | sed 's/#rp#/]/g' > wrlib/get-wraster-flags
1019 sed 's/#lp#/[/g' get-wings-flags | sed 's/#rp#/]/g' > WINGs/get-wings-flags
1020 sed 's/#lp#/[/g' get-wutil-flags | sed 's/#rp#/]/g' > WINGs/get-wutil-flags
1022 chmod 755 wrlib/get-wraster-flags WINGs/get-wings-flags WINGs/get-wutil-flags
1024 rm -f get-wraster-flags get-wings-flags get-wutil-flags
1028 dnl Spit out the configuration
1029 dnl ==========================
1031 supported_gfx="$supported_gfx builtin-PPM"
1033 if test "x$MOFILES" = "x"; then
1034         mof=none
1035 else
1036         mof=`echo $MOFILES`
1039 if test "x$MOFILES" = "x"; then
1040         languages=none
1041 else
1042         languages=`echo $MOFILES | sed 's/.mo//g'`
1046 echo
1047 echo "Window Maker was configured as follows:"
1048 echo
1049 echo "Installation path prefix            : $prefix"
1050 echo "Installation path for binaries      : $_bindir"
1051 echo "Installation path for WPrefs.app    : $wprefsdir" | sed -e 's|\$(prefix)|'"$prefix|"
1052 echo "Supported graphic format libraries  : $supported_gfx"
1053 echo "Antialiased font support for WINGs  : $xft"
1054 echo "Xinerama extension support          : $xinerama"
1055 echo "Use assembly routines for wrlib     : $asm_support"
1056 echo "Use inline MMX(tm) x86 assembly     : $mmx_support"
1057 echo "Translated message files to install : $mof"
1058 dnl echo "Supported languages beside English  : $languages"
1059 if test "x$MOFILES" != "x"; then
1060         echo "Installation path for translations  : $NLSDIR" | sed -e 's|\$(prefix)|'"$prefix|"
1062 echo
1064 dnl WM_PRINT_REDCRAP_BUG_STATUS
1066 if test "x$ac_cv_header_jpeglib_h" != xyes; then
1067 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1068 echo
1069 echo "JPEG support will not be included because the JPEG library is"
1070 echo "not installed correctly or was not found. Background images"
1071 echo "from themes will not display as they usually are JPEG files."
1072 echo
1073 echo "To fix, download and install the jpeg library and/or make sure you"
1074 echo "installed all jpeg related packages, SPECIALLY the development packages"
1075 echo "like jpeg-devel (if you use some prepackaged version of libjpeg)."
1076 echo
1077 echo "WARNING   WARNING   WARNING   WARNING   WARNING   WARNING   WARNING"
1081 dnl This is for Emacs.  I'm lazy, I know... (nicolai)
1082 dnl ================================================
1083 dnl Local Variables:
1084 dnl compile-command: "autoconf"
1085 dnl End: