From 3d748ebe7d900e96670ff3d455896998dfba6191 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 20 Jan 2022 13:33:11 +0100 Subject: 5.45 --- Makefile.in | 67 +- README | 22 +- README.hacking | 9 + aclocal.m4 | 6 +- config.h.in | 61 +- configure | 14236 ++++++++++++++++++----------------- configure.ac | 5014 ++++++++++++ configure.in | 4928 ------------ driver/Makefile.in | 125 +- driver/XScreenSaver.ad.in | 12 +- driver/demo-Gtk-conf.c | 15 +- driver/demo-Gtk.c | 201 +- driver/lock.c | 11 +- driver/passwd-pam.c | 2 +- driver/pdf2jpeg.m | 2 +- driver/prefs.c | 6 +- driver/remote.c | 12 +- driver/screens.c | 18 +- driver/stderr.c | 18 +- driver/subprocs.c | 64 +- driver/timers.c | 3 + driver/windows.c | 57 +- driver/xscreensaver-command.c | 10 +- driver/xscreensaver-command.man | 12 +- driver/xscreensaver-demo.glade2.in | 3136 -------- driver/xscreensaver-demo.glade2p | 19 - driver/xscreensaver-demo.ui | 2912 +++++++ driver/xscreensaver-getimage-file | 45 +- driver/xscreensaver-getimage-video | 7 +- driver/xscreensaver-getimage.c | 22 +- driver/xscreensaver-systemd.c | 1043 ++- driver/xscreensaver-text | 33 +- driver/xscreensaver.c | 289 +- driver/xscreensaver.h | 10 +- driver/xscreensaver.man | 12 +- driver/xset.c | 4 +- intltool-update.in | 613 -- jwxyz/jwxyz-cocoa.h | 16 +- jwxyz/jwxyz-cocoa.m | 56 +- jwxyz/jwxyz-gl.c | 6 +- jwxyz/jwxyz.m | 30 +- jwxyz/jwxyzI.h | 2 +- jwxyz/jwzgles.c | 2 +- jwxyz/jwzgles.h | 1 - po/Makefile.in.in | 6 +- po/POTFILES.in | 8 +- po/da.po | 2 +- po/de.po | 2 +- po/es.po | 2 +- po/et.po | 2 +- po/fi.po | 2 +- po/fr.po | 2 +- po/hu.po | 2 +- po/it.po | 2 +- po/ja.po | 2 +- po/ko.po | 2 +- po/nb.po | 2 +- po/nl.po | 2 +- po/pl.po | 2 +- po/pt.po | 2 +- po/pt_BR.po | 2 +- po/ru.po | 2 +- po/sk.po | 2 +- po/sv.po | 2 +- po/vi.po | 2 +- po/wa.po | 2 +- po/zh_CN.po | 2 +- po/zh_TW.po | 2 +- utils/Makefile.in | 2 +- utils/font-retry.c | 13 +- utils/grabclient.c | 20 +- utils/grabscreen.h | 4 +- utils/textclient-mobile.c | 2 +- utils/textclient.c | 80 +- utils/textclient.h | 4 +- utils/usleep.h | 4 - utils/utf8wc.c | 6 +- utils/version.h | 2 +- utils/xshm.c | 14 +- utils/yarandom.c | 4 +- xscreensaver.spec | 23 +- 81 files changed, 17220 insertions(+), 16185 deletions(-) create mode 100644 configure.ac delete mode 100644 configure.in delete mode 100644 driver/xscreensaver-demo.glade2.in delete mode 100644 driver/xscreensaver-demo.glade2p create mode 100644 driver/xscreensaver-demo.ui delete mode 100644 intltool-update.in diff --git a/Makefile.in b/Makefile.in index 52f1b4f..30a1db9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -9,7 +9,7 @@ SHELL = /bin/sh SUBDIRS = utils jwxyz hacks/images hacks hacks/glx driver po SUBDIRS2 = $(SUBDIRS) OSX android TARFILES = README README.hacking README.VMS INSTALL \ - configure configure.in Makefile.in config.h.in \ + configure configure.ac Makefile.in config.h.in \ config.h-vms install-sh setup.com config.guess aclocal.m4 \ ax_pthread.m4 config.sub makevms.com \ intltool-merge.in intltool-extract.in intltool-update.in \ @@ -101,9 +101,12 @@ _tar: # of autoconf other than the ones I've tried (2.12 and 2.13.) # configure:: + rm -f configure aclocal autoconf autoheader + +configure:: @TMP=configure.$$$$ ; \ echo "munging configure's --help message..." ; \ ( perl -e ' \ @@ -111,26 +114,24 @@ configure:: while (<>) { $$file .= $$_; } \ $$_ = $$file; \ \ - s/^(Configuration:)$$/\n$$1\n/m; \ - s/^(Directory and file names:)$$/\n$$1\n/m; \ - s/^ --sbindir=.*\n//m; \ - s/^ --sysconfdir.*\n//m; \ - s/^ --sharedstatedir.*\n.*\n//m; \ - s/^ --localstatedir.*\n//m; \ - s/^ --infodir.*\n//m; \ - s/^(Host type:)$$/\n$$1\n/m; \ - s/\nFeatures and packages:\n.*library files are in DIR\n/\n/s;\ - s/--enable and --with options recognized://m; \ - s/\n --with-x .*?(["\n])/$$1/s; \ - s/\n(Installation options:\n)/$$1/s; \ + s/\nInstallation directories:.*?\n\n/\n/s; \ + s/\nOptional Features:.*?\n\n/\n/s; \ + s/\nOptional Packages:.*?\n\n/\n/s; \ \ - s/^ --oldincludedir=.*$$/ \ - --x-includes=DIR X include files are in DIR\n \ - --x-libraries=DIR X library files are in DIR/m; \ + s/^ +--sbindir=.*\n//m; \ + s/^ +--sysconfdir.*\n//m; \ + s/^ +--sharedstatedir.*\n.*\n//m; \ + s/^ +--oldincludedir.*\n//m; \ + s/^ +--infodir.*\n//m; \ + s/^ +--htmldir.*\n//m; \ + s/^ +--dvidir.*\n//m; \ + s/^ +--pdfdir.*\n//m; \ + s/^ +--psdir.*\n//m; \ + s/^ +--with-x .*\n//m; \ \ - s@mandir=.\$$\{prefix}/man.@mandir=\\\$${datadir}/man@; \ + s/(\n\n)\n+/$$1/gs; \ \ - s@rm -f conftest@rm -rf conftest@g; \ + s/rm -f conftest/rm -rf conftest/g; \ \ print;' \ < configure \ @@ -362,3 +363,33 @@ count:: grep -v helper | \ grep -v ljlatest | \ wc -l + + +cerebrum:: + rsync -vax . cerebrum:src/xscreensaver/ \ + --omit-dir-times \ + --delete-during \ + --exclude .git \ + --exclude OSX \ + --exclude android \ + --exclude archive \ + --exclude build \ + --exclude gen \ + --exclude videos \ + --include '*.asm' \ + --include '*.c' \ + --include '*.gif' \ + --include '*.h' \ + --include '*.in' \ + --include '*.jpg' \ + --include '*.m' \ + --include '*.m4' \ + --include '*.pdb' \ + --include '*.png' \ + --include '*.po' \ + --include '*.xml' \ + --include '*.xpm' \ + --include 'configure*' \ + --include '*/' \ + --exclude '*' + diff --git a/README b/README index 0b55bd1..692c739 100644 --- a/README +++ b/README @@ -25,12 +25,12 @@ To compile for a Unix system with X11: make install If you are on an "apt"-based system, "apt-get build-dep xscreensaver" - might install most of the compilation dependencies. + might install most of the compilation dependencies. You may need to + uncomment a line in /etc/apt/sources.list first. To compile for macOS X or iOS: - Use the included XCode project. Requires XCode 6 and macOS 10.8 - or newer. + Use the included XCode project. Probably requires XCode 11 or newer. To compile for Android: @@ -46,6 +46,22 @@ XScreenSaver has an extensive manual -- please read it! =============================================================================== +5.45 * New hacks, `covid19', `headroom', `sphereeversion' and `beats'. + * Shader updates to `hypertorus'. + * No more image-loading pause in `glslideshow'. + * BSOD supports GNOME. + * Image loaders support SVG. + * macOS: Fixed text loading on 10.15. + * X11: `xscreensaver-systemd' now allows video players to request that + the screen not blank. + * X11: -log implies -verbose -no-capture-stderr. + * X11: Glade -> GtkBuilder. + * Android: These hacks work now: `carousel', `juggler3d', `molecule', + `photopile', `polyominoes'. + * Various bug fixes. + +5.44.1 * macOS: fixed some signing problems in the DMG. + 5.44 * New hacks, `gibson', `etruscanvenus' and `scooter'. * BSOD supports Tivo and Nintendo. * New color options in `romanboy', `projectiveplane', `hypertorus' diff --git a/README.hacking b/README.hacking index f2958b4..09147f7 100644 --- a/README.hacking +++ b/README.hacking @@ -50,6 +50,11 @@ Requirements for inclusion with the XScreenSaver collection your name and the current year). The GNU GPL is not compatible with the rest of XScreenSaver. + - No clocks! Just as time travellers always try to kill Hitler on their + first trip, everyone seems to think that their first screen saver + should be a clock of some kind. Nobody needs to know what time it is + with such frequency. Fight The Tyranny Of The Clock. + ========================================================================== The XScreenSaver API @@ -184,6 +189,10 @@ Programming Tips in long-lived processes where no such cleanup takes place. Consider Valgrind or gcc -fsanitize=leak to find memory leaks. + - Again, don't use global variables. If you are doing your developent + under X11, test your saver from the command line with the "-pair" + argument. If that crashes, you're using global variables! + ========================================================================== macOS, iOS and Android diff --git a/aclocal.m4 b/aclocal.m4 index d25f855..bebda60 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16.1 -*- Autoconf -*- +# generated automatically by aclocal 1.16.2 -*- Autoconf -*- -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -701,7 +701,7 @@ AC_DEFUN([AM_NLS], AC_SUBST([USE_NLS]) ]) -# Copyright (C) 2006-2018 Free Software Foundation, Inc. +# Copyright (C) 2006-2020 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/config.h.in b/config.h.in index 9f66b48..b725818 100644 --- a/config.h.in +++ b/config.h.in @@ -1,7 +1,7 @@ -/* config.h.in. Generated from configure.in by autoheader. */ +/* config.h.in. Generated from configure.ac by autoheader. */ -/* config.h.in --- xscreensaver, Copyright (c) 1991-2014 Jamie Zawinski. +/* config.h.in --- xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski. * * The best way to set these parameters is by running the included `configure' * script. That examines your system, and generates `config.h' from @@ -67,9 +67,7 @@ /* Define this if you have the X Double Buffer Extension. */ #undef HAVE_DOUBLE_BUFFER_EXTENSION -/* Define this if you have the XDPMS extension. This is standard on - sufficiently-recent XFree86 systems, and possibly elsewhere. (It's - available if the file /usr/include/X11/extensions/dpms.h exists.) */ +/* Define this if you have the XDPMS extension. */ #undef HAVE_DPMS_EXTENSION /* Define this if your system is Digital or SCO Unix with so-called ``Enhanced @@ -126,15 +124,18 @@ /* Define this if you have the -lgle from GLE version 3 */ #undef HAVE_GLE3 +/* Define this if your OpenGL implementation supports the OpenGL Shading + Language (GLSL). This requires at least OpenGL 2.0. HAVE_GL should be + defined, too. */ +#undef HAVE_GLSL + /* Define this if you have Gtk (any version.) */ #undef HAVE_GTK /* Define this if you have Gtk 2.x. */ #undef HAVE_GTK2 -/* Define this if you are running HPUX with so-called ``Secure Passwords'' (if - you have /usr/include/hpsecurity.h, you probably have this.) I haven't - tested this one, let me know if it works. */ +/* Define this if you have HPUX with so-called "Secure Passwords". */ #undef HAVE_HPUX_PASSWD /* Define this if you do pings with a `struct icmp' and an `icmp_id' slot. */ @@ -192,6 +193,11 @@ have different names.) (HAVE_GL should be defined too.) */ #undef HAVE_MESA_GL +/* Using the MIT-SCREEN-SAVER extension means that the X server will crash at + random times, and fading and hysteresis won't work. Don't use this. You'll + be sorry. See comment in xscreensaver.c. */ +#undef HAVE_MIT_SAVER_EXTENSION + /* Define this if you have Motif. */ #undef HAVE_MOTIF @@ -233,17 +239,13 @@ /* Define to 1 if you have the `putenv' function. */ #undef HAVE_PUTENV -/* Define this if you have the Resize and Rotate extension. This is standard - on sufficiently-recent XFree86 systems, and possibly elsewhere. (It's - available if the file /usr/include/X11/extensions/Xrandr.h exists.) */ +/* Define this if you have the Resize and Rotate extension. */ #undef HAVE_RANDR /* Define this if the RANDR library is version 1.2 or newer. */ #undef HAVE_RANDR_12 -/* Define this if you have the XReadDisplay extension (I think this is an - SGI-only thing; it's in .) A few of the - screenhacks will take advantage of this if it's available. */ +/* Define this if you have the SGI XReadDisplay extension. */ #undef HAVE_READ_DISPLAY_EXTENSION /* Define to 1 if you have the `realpath' function. */ @@ -267,6 +269,12 @@ /* Define to 1 if you have the `setrlimit' function. */ #undef HAVE_SETRLIMIT +/* Define this if you have the SGI SCREEN_SAVER extension. */ +#undef HAVE_SGI_SAVER_EXTENSION + +/* Define this if you have the SGI-VIDEO-CONTROL extension. */ +#undef HAVE_SGI_VC_EXTENSION + /* Define this if your system uses 'shadow' passwords, that is, the passwords live in /etc/shadow instead of /etc/passwd, and one reads them with getspnam() instead of getpwnam(). (Note that SCO systems do some random @@ -340,22 +348,17 @@ /* Define this if you have the functions XF86VidModeGetModeLine() and XF86VidModeGetViewPort(), in support of virtual desktops where the X - server's root window is bigger than the actual screen. This is an XFree86 - thing, and probably doesn't exist elsewhere. (It's available if the file - /usr/include/X11/extensions/xf86vmode.h exists.) */ + server's root window is bigger than the actual screen. */ #undef HAVE_XF86VMODE /* Define this if you have the functions XF86VidModeGetGamma() and XF86VidModeSetGamma(), which allow clients to change the gamma response of - the monitor. This is an XFree86 4.0.x thing, and probably doesn't exist - elsewhere. (It's available if the file - /usr/include/X11/extensions/xf86vmode.h exists and has stuff about gamma in - it.) */ + the monitor. */ #undef HAVE_XF86VMODE_GAMMA /* Define this if you have the functions XF86VidModeGetGammaRamp() and XF86VidModeSetGammaRamp(), which provide finer-grained control than - XF86VidMode[GS]etGamma(). These appeared in XFree86 4.1.0. */ + XF86VidMode[GS]etGamma(). */ #undef HAVE_XF86VMODE_GAMMA_RAMP /* Define this if you have libXft2. */ @@ -365,14 +368,13 @@ which allows the Ctrl-Sh-Reset key sequence to be temporarily disabled.) */ #undef HAVE_XHPDISABLERESET -/* Define this if you have the Xinerama extension. This is standard on - sufficiently-recent XFree86 systems, and possibly elsewhere. (It's - available if the file /usr/include/X11/extensions/Xinerama.h exists.) */ +/* Define this if you have the X11R5 XIDLE extension. */ +#undef HAVE_XIDLE_EXTENSION + +/* Define this if you have the Xinerama extension. */ #undef HAVE_XINERAMA -/* Define this if you have the Xinput extension. This is standard since X11R5, - and is thus almost everywhere. (It's available if the file - /usr/include/X11/extensions/XInput.h exists.) */ +/* Define this if you have the Xinput extension. */ #undef HAVE_XINPUT /* Define this if you have the XmComboBox Motif widget (Motif 2.0.) */ @@ -394,9 +396,6 @@ /* Define this to remove the option of locking the screen at all. */ #undef NO_LOCKING -/* This is the same as GETTEXT_PACKAGE, but for the glade generated code. */ -#undef PACKAGE - /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT diff --git a/configure b/configure index 68e04e2..e2aead7 100755 --- a/configure +++ b/configure @@ -664,8 +664,6 @@ SCRIPTS_OSX EXES_SYSTEMD EXES_OSX OBJCC -COMMENT_DEMO_GLADE2_GTK_2_22_TAIL -COMMENT_DEMO_GLADE2_GTK_2_22_HEAD WITH_BROWSER DEFAULT_TEXT_FILE DEFAULT_IMAGE_DIRECTORY @@ -700,10 +698,13 @@ ALL_DEMO_PROGRAMS PREFERRED_DEMO_PROGRAM INCLUDES setcap_program +PTHREAD_CFLAGS +PTHREAD_LIBS +PTHREAD_CC +ax_pthread_config +login_manager_tmp gnome_url_show_program gnome_open_program -pkg_config -login_manager_tmp MKINSTALLDIRS POSUB POFILES @@ -753,6 +754,7 @@ INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE USE_NLS +pkg_config X_EXTRA_LIBS X_LIBS X_PRE_LIBS @@ -766,10 +768,6 @@ INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM CPP -PTHREAD_CFLAGS -PTHREAD_LIBS -PTHREAD_CC -ax_pthread_config OBJEXT EXEEXT ac_ct_CC @@ -827,22 +825,28 @@ SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking -with_x_app_defaults -with_pthread enable_largefile with_x enable_nls +with_app_defaults with_hackdir enable_subdir with_configdir with_dpms_ext +with_xf86vmode_ext with_xinerama_ext +with_randr_ext with_xinput_ext -with_xf86vmode_ext with_xf86gamma_ext -with_randr_ext +with_xidle_ext +with_sgi_ext +with_sgivc_ext +with_readdisplay +with_xshm_ext +with_xdbe_ext with_proc_interrupts with_proc_oom +with_systemd enable_locking enable_root_passwd with_pam @@ -851,25 +855,22 @@ enable_pam_check_account_type with_kerberos with_shadow with_passwd_helper -with_login_manager with_gtk with_motif +with_login_manager +with_image_directory +with_text_file +with_browser with_gl with_gle with_gles +with_jpeg with_png with_pixbuf -with_jpeg with_xft -with_systemd -with_xshm_ext -with_xdbe_ext -with_readdisplay -with_image_directory -with_text_file -with_browser -with_setuid_hacks +with_pthread with_setcap_hacks +with_setuid_hacks with_record_animation ' ac_precious_vars='build_alias @@ -1511,83 +1512,79 @@ Optional Features: --disable-largefile omit support for large files --disable-nls do not use Native Language Support -Screen locking options: - --enable-locking Compile in support for locking the display. - --disable-locking Do not allow locking at all. - - --enable-root-passwd Allow root passwd to unlock screen. - --disable-root-passwd Do not allow that. - --enable-pam-check-account-type - Whether PAM should check the result of account - modules when authenticating. Only do this if you - have account configured properly on your system. Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - - --with-pthread Enables POSIX threads, for SMP support. --with-x use the X Window System +Installation Options: -Installation options: + --prefix=PREFIX Install root of architecture-independent files. + --exec-prefix=EPREFIX Install root of architecture-dependent files. + --with-app-defaults=DIR Where to install the default settings file. --with-hackdir=DIR Where to install the hundreds of demo executables. - Default: `PREFIX/libexec/xscreensaver/' - --with-configdir=DIR Where to install the data files that describe each - of the display modes to the GUI. - Default: `PREFIX/share/xscreensaver/config/' - --with-x-app-defaults=DIR - Where to install xscreensaver configuration file. - - --with-dpms-ext Include support for the DPMS extension. - --with-xinerama-ext Include support for the XINERAMA extension. + --with-configdir=DIR Where to install the GUI configuration files. + +Server Extension Options: + + --with-dpms-ext Include support for power management. + --with-xf86vmode-ext Include support for virtual screens. + --with-xinerama-ext Include support for multiple monitors. + --with-randr-ext Include different support for multiple monitors. --with-xinput-ext Include support for the XInput extension. - --with-xf86vmode-ext Include support for XFree86 virtual screens. --with-xf86gamma-ext Include support for XFree86 gamma fading. - --with-randr-ext Include support for the X Resize+Rotate extension. + --with-xidle-ext Include support for the X11R5 XIDLE extension. + --with-sgi-ext Include support for the SGI SCREEN_SAVER extension. + --with-sgivc-ext Include support for the SGI-VIDEO-CONTROL extension. + --with-readdisplay Include support for the SGI XReadDisplay extension. + --with-xshm-ext Include support for the Shared Memory extension. + --with-xdbe-ext Include support for the DOUBLE-BUFFER extension. --with-proc-interrupts Include support for consulting the /proc/interrupts file to notice keyboard activity. - --with-proc-oom Include support for disabling the OOM-killer. + --with-proc-oom Include support for disabling the OOM-killer. + --with-systemd Support systemd requests to lock on suspend, and to + allow video players to inhibit the screen saver. + +Screen Locking Options: + + --disable-locking Do not allow locking of the display at all. --with-pam Include support for PAM (Pluggable Auth Modules.) - --with-pam-service-name NAME arg is the name of the PAM service that - xscreensaver will authenticate as. + --with-pam-service-name Set the name of the xscreensaver PAM service. + --enable-pam-account Whether PAM should check the result of account + modules when authenticating. Only do this if you + have "account" modules configured on your system. + --enable-root-passwd Allow the root passwd to unlock, if not using PAM. --with-kerberos Include support for Kerberos authentication. --with-shadow Include support for shadow password authentication. --with-passwd-helper Include support for an external password verification helper program. - --with-login-manager Put a "New Login" button on the unlock dialog that - runs a login manager like gdmflexiserver or kdmctl. -User interface options: +User Interface Options: --with-gtk Use the Gtk toolkit for the user interface. - --with-motif Use the Motif toolkit for the user interface - (no longer supported.) + --with-motif Use the Motif toolkit for the user interface. + --with-login-manager Put a "New Login" button on the unlock dialog that + runs a login manager like gdmflexiserver or kdmctl. + --with-image-directory Some demos will display random images from here. + --with-text-file=FILE Some demos will use this as a source of text. + --with-browser=BROWSER The web browser used to open the "Help" URL. -Graphics options: +Graphics Options: --with-gl Build those demos which depend on OpenGL. - --with-gle Build those demos which depend on GLE - (the OpenGL "extrusion" library.) + --with-gle Build those demos which depend on GLE (extrusion). --with-gles Target OpenGL ES 1.x API instead of OpenGL 1.3. - --with-png Include support for the PNG library. - --with-pixbuf Include support for the GDK-Pixbuf library in some - demos, which will make it possible for them to read - GIF, JPEG, and PNG files as well. --with-jpeg Include support for the JPEG library. + --with-png Include support for the PNG library. + --with-pixbuf Include support for the GDK-Pixbuf library, which + allows the display of JPEG, PNG, GIF and SVG images. --with-xft Include support for the X Freetype library. - --with-systemd Build xscreensaver-systemd to lock on suspend. - --with-xshm-ext Include support for the Shared Memory extension. - --with-xdbe-ext Include support for the DOUBLE-BUFFER extension. - --with-readdisplay Include support for the XReadDisplay extension. - --with-image-directory Arg is the default directory from which some demos - will choose random images to display. - --with-text-file=FILE By default, some demos may display this file. - --with-browser=BROWSER Specify the web browser used to show the help URL. - --with-setuid-hacks Allow some demos to be installed `setuid root' - (which is needed in order to ping other hosts.) - --with-setcap-hacks Allow some demos to be installed with setcap - (which is needed in order to ping other hosts.) + --with-pthread Enables POSIX threads, for SMP support. + --with-setcap-hacks Build the "sonar" demo with libcap, which allows + it to ping other hosts without being setuid. + --with-setuid-hacks Install the "sonar" demo as setuid root, which is + needed in order to ping other hosts without setcap. --with-record-animation Include code for generating MP4 videos. Some influential environment variables: @@ -1719,52 +1716,6 @@ fi } # ac_fn_c_try_compile -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - test -x conftest$ac_exeext - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_link - # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. @@ -2016,6 +1967,52 @@ $as_echo "$ac_res" >&6; } } # ac_fn_c_check_type +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly @@ -2510,31 +2507,17 @@ echo "command line was: $0 $@" # This only ever existed in X11R4 and X11R5. -#AH_TEMPLATE([HAVE_XIDLE_EXTENSION], -# [Define this if you have the XIDLE extension installed. If you -# have the XIDLE extension, this is recommended. (You have this -# extension if the file /usr/include/X11/extensions/xidle.h -# exists.) Turning on this flag lets XScreenSaver work better with -# servers which support this extension; but it will still work -# with servers which do not suport it, so it's a good idea to -# compile in support for it if you can.]) - -# Using this extension will crash your X server and make fading not work. -#AH_TEMPLATE([HAVE_MIT_SAVER_EXTENSION], -# [Define this if you have the MIT-SCREEN-SAVER extension -# installed. See the caveats about this extension, above. -# (It's available if /usr/include/X11/extensions/scrnsaver.h -# exists.)]) + + + # This only ever existed on SGI hardware. -#AH_TEMPLATE([HAVE_SGI_SAVER_EXTENSION], -# [Define this if you have the SGI SCREEN_SAVER extension. This is -# standard on Irix systems, and not available elsewhere.]) + # This only ever existed on SGI hardware. -#AH_TEMPLATE([HAVE_SGI_VC_EXTENSION], -# [Define this if you have the SGI-VIDEO-CONTROL extension. This -# is standard on Irix systems, and not available elsewhere.]) + + + @@ -2674,15 +2657,6 @@ for d in utils jwxyz hacks hacks/glx driver ; do fi done -############################################################################### -# -# Query AX_PTHREAD, and figure out which compiler gets used. -# -############################################################################### - - - - ############################################################################### # # Function to figure out how to run the compiler. @@ -2797,22 +2771,6 @@ perl_version_cmd='print $]' # -############################################################################### -# -# Handle the --with-x-app-defaults option HERE -# -############################################################################### - - -# Check whether --with-x-app-defaults was given. -if test "${with_x_app_defaults+set}" = set; then : - withval=$with_x_app_defaults; ac_cv_x_app_defaults="$withval" -else - eval ac_x_app_defaults="$withval" -fi - - - @@ -2879,7 +2837,6 @@ fi - ############################################################################### ############################################################################### # @@ -2892,7 +2849,6 @@ fi test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - # random compiler setup ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do @@ -3786,1389 +3742,1377 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -have_pthread=no - with_pthread_req=unspecified - - # AX_PTHREAD is from the GNU Autoconf Archive. - # https://savannah.gnu.org/projects/autoconf-archive/ - # =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_pthread.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) -# -# DESCRIPTION -# -# This macro figures out how to build C programs using POSIX threads. It -# sets the PTHREAD_LIBS output variable to the threads library and linker -# flags, and the PTHREAD_CFLAGS output variable to any special C compiler -# flags that are needed. (The user can also force certain compiler -# flags/libs to be tested by setting these environment variables.) -# -# Also sets PTHREAD_CC to any special C compiler that is needed for -# multi-threaded programs (defaults to the value of CC otherwise). (This -# is necessary on AIX to use the special cc_r compiler alias.) -# -# NOTE: You are assumed to not only compile your program with these flags, -# but also link it with them as well. e.g. you should link with -# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS -# -# If you are only building threads programs, you may wish to use these -# variables in your default LIBS, CFLAGS, and CC: -# -# LIBS="$PTHREAD_LIBS $LIBS" -# CFLAGS="$CFLAGS $PTHREAD_CFLAGS" -# CC="$PTHREAD_CC" -# -# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant -# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name -# (e.g. PTHREAD_CREATE_UNDETACHED on AIX). -# -# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the -# PTHREAD_PRIO_INHERIT symbol is defined when compiling with -# PTHREAD_CFLAGS. -# -# ACTION-IF-FOUND is a list of shell commands to run if a threads library -# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it -# is not found. If ACTION-IF-FOUND is not specified, the default action -# will define HAVE_PTHREAD. -# -# Please let the authors know if this macro fails on any platform, or if -# you have any other suggestions or comments. This macro was based on work -# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help -# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by -# Alejandro Forero Cuervo to the autoconf macro repository. We are also -# grateful for the helpful feedback of numerous users. -# -# Updated for Autoconf 2.68 by Daniel Richard G. -# -# LICENSE -# -# Copyright (c) 2008 Steven G. Johnson -# Copyright (c) 2011 Daniel Richard G. -# -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. - -#serial 21 - -# This is what autoupdate's m4 run will expand. It fires -# the warning (with _au_warn_XXX), outputs it into the -# updated configure.ac (with AC_DIAGNOSE), and then outputs -# the replacement expansion. + if test -z "$GCC"; then + # not using GCC + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to request ANSI compilation" >&5 +$as_echo_n "checking how to request ANSI compilation... " >&6; } + case "$host" in + *-hpux* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: HPUX: adding -Ae" >&5 +$as_echo "HPUX: adding -Ae" >&6; } + CC="$CC -Ae" + ;; + *-aix* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX: adding -qlanglvl=ansi -qhalt=e" >&5 +$as_echo "AIX: adding -qlanglvl=ansi -qhalt=e" >&6; } + CC="$CC -qlanglvl=ansi -qhalt=e" + ;; + *-dec-* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: DEC: adding -std1 -ieee" >&5 +$as_echo "DEC: adding -std1 -ieee" >&6; } + CC="$CC -std1" + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no idea" >&5 +$as_echo "no idea" >&6; } + ;; + esac + else + # using GCC + case "$host" in + *-solaris*) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: Solaris: adding -D__EXTENSIONS__" >&5 +$as_echo "Solaris: adding -D__EXTENSIONS__" >&6; } + CC="$CC -D__EXTENSIONS__" + ;; + esac + fi -# This is an auxiliary macro that is also run when -# autoupdate runs m4. It simply calls m4_warning, but -# we need a wrapper so that each warning is emitted only -# once. We break the quoting in m4_warning's argument in -# order to expand this macro's arguments, not AU_DEFUN's. + OBJCC="$CC" + # This test makes cross-compiling fail, so let's just assume that nobody + # is using a K&R compiler any more... + # +# AC_MSG_CHECKING([whether the compiler works on ANSI C]) +# AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], +# AC_MSG_RESULT(yes), +# AC_MSG_RESULT(no) +# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.), +# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.)) -# Finally, this is the expansion that is picked up by -# autoconf. It tells the user to run autoupdate, and -# then outputs the replacement expansion. We do not care -# about autoupdate's warning because that contains -# information on what to do *after* running autoupdate. + if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on gcc compiler warnings." >&5 +$as_echo "Turning on gcc compiler warnings." >&6; } + CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" + OBJCC="$OBJCC -Wall" + # As of gcc 3.4, we have "-Wdeclaration-after-statement" + # and so perhaps now we can do without -pedantic? + else + case "$host" in + *-irix5* |*-irix6.0-3* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on SGI compiler warnings." >&5 +$as_echo "Turning on SGI compiler warnings." >&6; } + CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" + ;; +# *-dec-osf* ) +# if test -z "$GCC"; then +# AC_MSG_RESULT(Turning on DEC C compiler warnings.) +# CC="$CC -migrate -w0 -verbose -warnprotos" +# fi +# ;; + esac + fi +if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wno-overlength-strings" >&5 +$as_echo_n "checking whether gcc accepts -Wno-overlength-strings... " >&6; } +if ${ac_cv_gcc_accepts_no_overlength+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c -Wno-overlength-strings conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_no_overlength=no + else + ac_cv_gcc_accepts_no_overlength=yes + CC="$CC -Wno-overlength-strings" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_overlength" >&5 +$as_echo "$ac_cv_gcc_accepts_no_overlength" >&6; } + ac_gcc_accepts_no_overlength="$ac_cv_gcc_accepts_no_overlength" + fi +if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wdeclaration-after-statement" >&5 +$as_echo_n "checking whether gcc accepts -Wdeclaration-after-statement... " >&6; } +if ${ac_cv_gcc_accepts_no_decl_after+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c -Wdeclaration-after-statement conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_no_decl_after=no + else + ac_cv_gcc_accepts_no_decl_after=yes + CC="$CC -Wdeclaration-after-statement" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_decl_after" >&5 +$as_echo "$ac_cv_gcc_accepts_no_decl_after" >&6; } + ac_gcc_accepts_no_decl_after="$ac_cv_gcc_accepts_no_decl_after" + fi - # This affects CC, LIBS, and CFLAGS, instead of defining new variables. +if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -no-cpp-precomp" >&5 +$as_echo_n "checking whether gcc accepts -no-cpp-precomp... " >&6; } +if ${ac_cv_gcc_accepts_no_cpp_precomp+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c -no-cpp-precomp conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_no_cpp_precomp=no + else + ac_cv_gcc_accepts_no_cpp_precomp=yes + CC="$CC -no-cpp-precomp" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_cpp_precomp" >&5 +$as_echo "$ac_cv_gcc_accepts_no_cpp_precomp" >&6; } + ac_gcc_accepts_no_cpp_precomp="$ac_cv_gcc_accepts_no_cpp_precomp" + fi +if test -n "$GCC"; then -# Check whether --with-pthread was given. -if test "${with_pthread+set}" = set; then : - withval=$with_pthread; with_pthread="$withval"; with_pthread_req="$withval" + case "$host" in + *-darwin* ) + # Fucking Apple let // comments sneak into OpenGL headers, so + # we *must* allow // comments when compiling on Mac OS 10.6! FUCK! + ;; + *) + if test -n "$GCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -std=c89" >&5 +$as_echo_n "checking whether gcc accepts -std=c89... " >&6; } +if ${ac_cv_gcc_accepts_std+:} false; then : + $as_echo_n "(cached) " >&6 else - with_pthread=yes + rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c -std=c89 conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_std=no + else + ac_cv_gcc_accepts_std=yes + CC="$CC -std=c89" + fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_std" >&5 +$as_echo "$ac_cv_gcc_accepts_std" >&6; } + ac_gcc_accepts_std="$ac_cv_gcc_accepts_std" + fi + ;; + esac - if test "$with_pthread" = yes; then - # AX_PTHREAD might want a different compiler. - + { $as_echo "$as_me:${as_lineno-$LINENO}: result: Disabling C++ comments in ANSI C code." >&5 +$as_echo "Disabling C++ comments in ANSI C code." >&6; } + # + # The reason that // comments are banned from xscreensaver is that gcc is + # basically the only compiler in the world that supports them in C code. + # All other vendors support them only in their C++ compilers, not in their + # ANSI C compilers. This means that it's a portability problem: every time + # these comments have snuck into the xscreensaver source code, I've gotten + # complaints about it the next day. So we turn off support for them in gcc + # as well to prevent them from accidentially slipping in. + # + if test "$ac_gcc_accepts_std" = yes ; then + # + # -std=c89 defines __STRICT_ANSI__, which we don't want. + # (That appears to be the only additional preprocessor symbol + # it defines, in addition to the syntax changes it makes.) + # + # -std=gnu89 is no good, because // comments were a GNU extension + # before they were in the ANSI C 99 spec... (gcc 2.96 permits // + # with -std=gnu89 but not with -std=c89.) + # + # $CC already contains "-std=c89" via AC_GCC_ACCEPTS_STD + CC="$CC -U__STRICT_ANSI__" +# else +# # The old way: +# CC="$CC -Wp,-lang-c89" + fi + fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : -ax_pthread_ok=no - -# We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on True64 or Sequent). -# It gets checked for in the link test anyway. +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext -# First of all, check if the user has set any of the PTHREAD_LIBS, -# etcetera environment variables, and if threads linking works using -# them: -if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5 -$as_echo_n "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_join (); -int -main () -{ -return pthread_join (); - ; - return 0; -} +#include _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ax_pthread_ok=yes -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 -$as_echo "$ax_pthread_ok" >&6; } - if test x"$ax_pthread_ok" = xno; then - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break fi +rm -f conftest.err conftest.i conftest.$ac_ext -# We must check for the threads library under a number of different -# names; the ordering is very important because some systems -# (e.g. DEC) have both -lpthread and -lpthreads, where one of the -# libraries is broken (non-POSIX). - -# Create a list of thread flags to try. Items starting with a "-" are -# C compiler flags, and other items are library names, except for "none" -# which indicates that we try without any flags at all, and "pthread-config" -# which is a program returning the flags for the Pth emulation library. +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi -ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" + done + ac_cv_prog_CPP=$CPP -# The ordering *is* (sometimes) important. Some notes on the -# individual items follow: +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : -# pthreads: AIX (must check this before -lpthread) -# none: in case threads are in libc; should be tried before -Kthread and -# other compiler flags to prevent continual compiler warnings -# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) -# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) -# -pthreads: Solaris/gcc -# -mthreads: Mingw32/gcc, Lynx/gcc -# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads too; -# also defines -D_REENTRANT) -# ... -mt is also the pthreads flag for HP/aCC -# pthread: Linux, etcetera -# --thread-safe: KAI C++ -# pthread-config: use pthread-config program (for GNU Pth library) +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext -case ${host_os} in - solaris*) + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext - # On Solaris (at least, for some versions), libc contains stubbed - # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (We need to link with -pthreads/-mt/ - # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather - # a function called by this macro, so we could check for that, but - # who knows whether they'll stub that too in a future libc.) So, - # we'll just look for -pthreads and -lpthread first: +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : - ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" - ;; +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi - darwin*) - ax_pthread_flags="-pthread $ax_pthread_flags" - ;; -esac +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu -# Clang doesn't consider unrecognized options an error unless we specify -# -Werror. We throw in some extra Clang-specific options to ensure that -# this doesn't happen for GCC, which also accepts -Werror. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5 -$as_echo_n "checking if compiler needs -Werror to reject unknown flags... " >&6; } -save_CFLAGS="$CFLAGS" -ax_pthread_extra_flags="-Werror" -CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if ${ac_cv_c_const+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -int foo(void); + int main () { -foo() + +#ifndef __cplusplus + /* Ultrix mips cc rejects this sort of thing. */ + typedef int charset[2]; + const charset cs = { 0, 0 }; + /* SunOS 4.1.1 cc rejects this. */ + char const *const *pcpcc; + char **ppc; + /* NEC SVR4.0.2 mips cc rejects this. */ + struct point {int x, y;}; + static struct point const zero = {0,0}; + /* AIX XL C 1.02.0.0 rejects this. + It does not let you subtract one const X* pointer from another in + an arm of an if-expression whose if-part is not a constant + expression */ + const char *g = "string"; + pcpcc = &g + (g ? g-g : 0); + /* HPUX 7.0 cc rejects these. */ + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; + { /* SCO 3.2v4 cc rejects this sort of thing. */ + char tx; + char *t = &tx; + char const *s = 0 ? (char *) 0 : (char const *) 0; + + *t++ = 0; + if (s) return 0; + } + { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ + int x[] = {25, 17}; + const int *foo = &x[0]; + ++foo; + } + { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ + typedef const int *iptr; + iptr p = 0; + ++p; + } + { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying + "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ + struct s { int j; const int *ap[3]; } bx; + struct s *b = &bx; b->j = 5; + } + { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ + const int foo = 10; + if (!foo) return 0; + } + return !cs[0] && !zero.x; +#endif + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } + ac_cv_c_const=yes else - ax_pthread_extra_flags= - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + ac_cv_c_const=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -CFLAGS="$save_CFLAGS" - -if test x"$ax_pthread_ok" = xno; then -for flag in $ax_pthread_flags; do +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } +if test $ac_cv_c_const = no; then - case $flag in - none) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5 -$as_echo_n "checking whether pthreads work without any flags... " >&6; } - ;; +$as_echo "#define const /**/" >>confdefs.h - -*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5 -$as_echo_n "checking whether pthreads work with $flag... " >&6; } - PTHREAD_CFLAGS="$flag" - ;; +fi - pthread-config) - # Extract the first word of "pthread-config", so it can be a program name with args. -set dummy pthread-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ax_pthread_config+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if ${ac_cv_c_inline+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$ax_pthread_config"; then - ac_cv_prog_ax_pthread_config="$ax_pthread_config" # Let the user override the test. + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_inline=$ac_kw +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + + +ac_bc_result=`echo 6+9 | bc 2>/dev/null` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bc" >&5 +$as_echo_n "checking for bc... " >&6; } + if test "$ac_bc_result" = "15" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + echo '' + as_fn_error $? "Your system doesn't have \"bc\", which has been a standard + part of Unix since the 1970s. Come back when your vendor + has grown a clue." "$LINENO" 5 + fi + + +# stuff for Makefiles +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ax_pthread_config="yes" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + done IFS=$as_save_IFS - test -z "$ac_cv_prog_ax_pthread_config" && ac_cv_prog_ax_pthread_config="no" -fi +rm -rf conftest.one conftest.two conftest.dir + fi -ax_pthread_config=$ac_cv_prog_ax_pthread_config -if test -n "$ax_pthread_config"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_config" >&5 -$as_echo "$ax_pthread_config" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - if test x"$ax_pthread_config" = xno; then continue; fi - PTHREAD_CFLAGS="`pthread-config --cflags`" - PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" - ;; +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5 -$as_echo_n "checking for the pthreads library -l$flag... " >&6; } - PTHREAD_LIBS="-l$flag" - ;; - esac +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \"\${INSTALL} -d\" creates intermediate directories" >&5 +$as_echo_n "checking whether \"\${INSTALL} -d\" creates intermediate directories... " >&6; } +if ${ac_cv_install_d_creates_dirs+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_install_d_creates_dirs=no + rm -rf conftestdir + if mkdir conftestdir; then + cd conftestdir 2>/dev/null + ${INSTALL} -d `pwd`/dir1/dir2 >/dev/null 2>&1 + if test -d dir1/dir2/. ; then + ac_cv_install_d_creates_dirs=yes + fi + cd .. 2>/dev/null + rm -rf conftestdir + fi - # Check for various functions. We must include pthread.h, - # since some functions may be macros. (On the Sequent, we - # need a special flag -Kthread to make this header compile.) - # We check for pthread_join because it is in -lpthread on IRIX - # while pthread_create is in libc. We check for pthread_attr_init - # due to DEC craziness with -lpthreads. We check for - # pthread_cleanup_push because it is one of the few pthread - # functions on Solaris that doesn't have a non-functional libc stub. - # We try pthread_create on general principles. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - static void routine(void *a) { a = 0; } - static void *start_routine(void *a) { return a; } -int -main () -{ -pthread_t th; pthread_attr_t attr; - pthread_create(&th, 0, start_routine, 0); - pthread_join(th, 0); - pthread_attr_init(&attr); - pthread_cleanup_push(routine, 0); - pthread_cleanup_pop(0) /* ; */ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ax_pthread_ok=yes fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_install_d_creates_dirs" >&5 +$as_echo "$ac_cv_install_d_creates_dirs" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 -$as_echo "$ax_pthread_ok" >&6; } - if test "x$ax_pthread_ok" = xyes; then - break; - fi + if test "$ac_cv_install_d_creates_dirs" = no ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \"mkdir -p\" creates intermediate directories" >&5 +$as_echo_n "checking whether \"mkdir -p\" creates intermediate directories... " >&6; } +if ${ac_cv_mkdir_p_creates_dirs+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_mkdir_p_creates_dirs=no + rm -rf conftestdir + if mkdir conftestdir; then + cd conftestdir 2>/dev/null + mkdir -p dir1/dir2 >/dev/null 2>&1 + if test -d dir1/dir2/. ; then + ac_cv_mkdir_p_creates_dirs=yes + fi + cd .. 2>/dev/null + rm -rf conftestdir + fi - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" -done fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_mkdir_p_creates_dirs" >&5 +$as_echo "$ac_cv_mkdir_p_creates_dirs" >&6; } + fi -# Various other checks: -if test "x$ax_pthread_ok" = xyes; then - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - - # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5 -$as_echo_n "checking for joinable pthread attribute... " >&6; } - attr_name=unknown - for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -int attr = $attr; return attr /* ; */ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - attr_name=$attr; break -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5 -$as_echo "$attr_name" >&6; } - if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then - -cat >>confdefs.h <<_ACEOF -#define PTHREAD_CREATE_JOINABLE $attr_name -_ACEOF - - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5 -$as_echo_n "checking if more special flags are required for pthreads... " >&6; } - flag=no - case ${host_os} in - aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";; - osf* | hpux*) flag="-D_REENTRANT";; - solaris*) - if test "$GCC" = "yes"; then - flag="-D_REENTRANT" - else - # TODO: What about Clang on Solaris? - flag="-mt -D_REENTRANT" - fi - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5 -$as_echo "$flag" >&6; } - if test "x$flag" != xno; then - PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" - fi + if test "$ac_cv_install_d_creates_dirs" = yes ; then + INSTALL_DIRS='${INSTALL} -d' + elif test "$ac_cv_mkdir_p_creates_dirs" = yes ; then + INSTALL_DIRS='mkdir -p' + else + # any other ideas? + INSTALL_DIRS='${INSTALL} -d' + fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5 -$as_echo_n "checking for PTHREAD_PRIO_INHERIT... " >&6; } -if ${ax_cv_PTHREAD_PRIO_INHERIT+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -int i = PTHREAD_PRIO_INHERIT; - ; - return 0; -} + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ax_cv_PTHREAD_PRIO_INHERIT=yes -else - ax_cv_PTHREAD_PRIO_INHERIT=no +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5 -$as_echo "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; } - if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"; then : -$as_echo "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h -fi +# By default, autoconf sets INSTALL_SCRIPT to '${INSTALL_PROGRAM}'. +# That's wrong: it should be set to '${INSTALL}', so that one can +# implement the "install-strip" target properly (strip executables, +# but do not try to strip scripts.) +# +INSTALL_SCRIPT='${INSTALL}' - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" +# random libc stuff - # More AIX lossage: compile with *_r variant - if test "x$GCC" != xyes; then - case $host_os in - aix*) - case "x/$CC" in #( - x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) : - #handle absolute path differently from PATH based program lookup - case "x$CC" in #( - x/*) : - if as_fn_executable_p ${CC}_r; then : - PTHREAD_CC="${CC}_r" -fi ;; #( - *) : - for ac_prog in ${CC}_r -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_PTHREAD_CC+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$PTHREAD_CC"; then - ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_PTHREAD_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break done -IFS=$as_save_IFS + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac -fi -fi -PTHREAD_CC=$ac_cv_prog_PTHREAD_CC -if test -n "$PTHREAD_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5 -$as_echo "$PTHREAD_CC" >&6; } + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + ac_cv_path_GREP=$GREP fi - - test -n "$PTHREAD_CC" && break -done -test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" - ;; -esac ;; #( - *) : - ;; -esac - ;; - esac - fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" -test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" - - - - - -# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test x"$ax_pthread_ok" = xyes; then - if test "$CC" = "$PTHREAD_CC" -o -z "$ac_original_cc"; then - have_pthread=yes - else - ac_prog_cc_no_pthread=yes - fi - : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 else - ax_pthread_ok=no - -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - if test "$have_pthread" = yes; then - $as_echo "#define HAVE_PTHREAD 1" >>confdefs.h - - CC=$PTHREAD_CC - fi - fi - # Needs ac_original_cc. - - + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac - if test -z "$GCC"; then - # not using GCC - { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to request ANSI compilation" >&5 -$as_echo_n "checking how to request ANSI compilation... " >&6; } - case "$host" in - *-hpux* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: HPUX: adding -Ae" >&5 -$as_echo "HPUX: adding -Ae" >&6; } - CC="$CC -Ae" - ;; - *-aix* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: AIX: adding -qlanglvl=ansi -qhalt=e" >&5 -$as_echo "AIX: adding -qlanglvl=ansi -qhalt=e" >&6; } - CC="$CC -qlanglvl=ansi -qhalt=e" - ;; - *-dec-* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: DEC: adding -std1 -ieee" >&5 -$as_echo "DEC: adding -std1 -ieee" >&6; } - CC="$CC -std1" - ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no idea" >&5 -$as_echo "no idea" >&6; } - ;; - esac - else - # using GCC - case "$host" in - *-solaris*) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: Solaris: adding -D__EXTENSIONS__" >&5 -$as_echo "Solaris: adding -D__EXTENSIONS__" >&6; } - CC="$CC -D__EXTENSIONS__" - ;; - esac + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi +else + ac_cv_path_EGREP=$EGREP +fi - OBJCC="$CC" - - # This test makes cross-compiling fail, so let's just assume that nobody - # is using a K&R compiler any more... - # -# AC_MSG_CHECKING([whether the compiler works on ANSI C]) -# AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], -# AC_MSG_RESULT(yes), -# AC_MSG_RESULT(no) -# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.), -# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.)) + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" - if test -n "$GCC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on gcc compiler warnings." >&5 -$as_echo "Turning on gcc compiler warnings." >&6; } - CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" - OBJCC="$OBJCC -Wall" - # As of gcc 3.4, we have "-Wdeclaration-after-statement" - # and so perhaps now we can do without -pedantic? - else - case "$host" in - *-irix5* |*-irix6.0-3* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: Turning on SGI compiler warnings." >&5 -$as_echo "Turning on SGI compiler warnings." >&6; } - CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" - ;; -# *-dec-osf* ) -# if test -z "$GCC"; then -# AC_MSG_RESULT(Turning on DEC C compiler warnings.) -# CC="$CC -migrate -w0 -verbose -warnprotos" -# fi -# ;; - esac - fi -if test -n "$GCC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wno-overlength-strings" >&5 -$as_echo_n "checking whether gcc accepts -Wno-overlength-strings... " >&6; } -if ${ac_cv_gcc_accepts_no_overlength+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else - rm -rf conftest.$ac_ext - touch conftest.$ac_ext - if ( ( gcc -c -Wno-overlength-strings conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_no_overlength=no - else - ac_cv_gcc_accepts_no_overlength=yes - CC="$CC -Wno-overlength-strings" - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_overlength" >&5 -$as_echo "$ac_cv_gcc_accepts_no_overlength" >&6; } - ac_gcc_accepts_no_overlength="$ac_cv_gcc_accepts_no_overlength" - fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include -if test -n "$GCC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -Wdeclaration-after-statement" >&5 -$as_echo_n "checking whether gcc accepts -Wdeclaration-after-statement... " >&6; } -if ${ac_cv_gcc_accepts_no_decl_after+:} false; then : - $as_echo_n "(cached) " >&6 +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes else - rm -rf conftest.$ac_ext - touch conftest.$ac_ext - if ( ( gcc -c -Wdeclaration-after-statement conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_no_decl_after=no - else - ac_cv_gcc_accepts_no_decl_after=yes - CC="$CC -Wdeclaration-after-statement" - fi + ac_cv_header_stdc=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_decl_after" >&5 -$as_echo "$ac_cv_gcc_accepts_no_decl_after" >&6; } - ac_gcc_accepts_no_decl_after="$ac_cv_gcc_accepts_no_decl_after" - fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : -if test -n "$GCC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -no-cpp-precomp" >&5 -$as_echo_n "checking whether gcc accepts -no-cpp-precomp... " >&6; } -if ${ac_cv_gcc_accepts_no_cpp_precomp+:} false; then : - $as_echo_n "(cached) " >&6 else - rm -rf conftest.$ac_ext - touch conftest.$ac_ext - if ( ( gcc -c -no-cpp-precomp conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_no_cpp_precomp=no - else - ac_cv_gcc_accepts_no_cpp_precomp=yes - CC="$CC -no-cpp-precomp" - fi + ac_cv_header_stdc=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_no_cpp_precomp" >&5 -$as_echo "$ac_cv_gcc_accepts_no_cpp_precomp" >&6; } - ac_gcc_accepts_no_cpp_precomp="$ac_cv_gcc_accepts_no_cpp_precomp" - fi +rm -f conftest* -if test -n "$GCC"; then +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : - case "$host" in - *-darwin* ) - # Fucking Apple let // comments sneak into OpenGL headers, so - # we *must* allow // comments when compiling on Mac OS 10.6! FUCK! - ;; - *) - if test -n "$GCC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc accepts -std=c89" >&5 -$as_echo_n "checking whether gcc accepts -std=c89... " >&6; } -if ${ac_cv_gcc_accepts_std+:} false; then : - $as_echo_n "(cached) " >&6 else - rm -rf conftest.$ac_ext - touch conftest.$ac_ext - if ( ( gcc -c -std=c89 conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_std=no - else - ac_cv_gcc_accepts_std=yes - CC="$CC -std=c89" - fi + ac_cv_header_stdc=no fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gcc_accepts_std" >&5 -$as_echo "$ac_cv_gcc_accepts_std" >&6; } - ac_gcc_accepts_std="$ac_cv_gcc_accepts_std" - fi +rm -f conftest* - ;; - esac +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: Disabling C++ comments in ANSI C code." >&5 -$as_echo "Disabling C++ comments in ANSI C code." >&6; } - # - # The reason that // comments are banned from xscreensaver is that gcc is - # basically the only compiler in the world that supports them in C code. - # All other vendors support them only in their C++ compilers, not in their - # ANSI C compilers. This means that it's a portability problem: every time - # these comments have snuck into the xscreensaver source code, I've gotten - # complaints about it the next day. So we turn off support for them in gcc - # as well to prevent them from accidentially slipping in. - # - if test "$ac_gcc_accepts_std" = yes ; then - # - # -std=c89 defines __STRICT_ANSI__, which we don't want. - # (That appears to be the only additional preprocessor symbol - # it defines, in addition to the syntax changes it makes.) - # - # -std=gnu89 is no good, because // comments were a GNU extension - # before they were in the ANSI C 99 spec... (gcc 2.96 permits // - # with -std=gnu89 but not with -std=c89.) - # - # $CC already contains "-std=c89" via AC_GCC_ACCEPTS_STD - CC="$CC -U__STRICT_ANSI__" -# else -# # The old way: -# CC="$CC -Wp,-lang-c89" - fi - fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -$as_echo_n "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if ${ac_cv_prog_CPP+:} false; then : - $as_echo_n "(cached) " >&6 +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef __STDC__ -# include +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else -# include +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif - Syntax error + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} _ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : +if ac_fn_c_try_run "$LINENO"; then : else - # Broken: fails on valid input. -continue + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break + fi -rm -f conftest.err conftest.i conftest.$ac_ext done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - break -fi - done - ac_cv_prog_CPP=$CPP + +for ac_header in unistd.h inttypes.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF fi - CPP=$ac_cv_prog_CPP + +done + +ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default" +if test "x$ac_cv_type_mode_t" = xyes; then : + else - ac_cv_prog_CPP=$CPP + +cat >>confdefs.h <<_ACEOF +#define mode_t int +_ACEOF + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -$as_echo "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error + +ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" +if test "x$ac_cv_type_pid_t" = xyes; then : + +else + +cat >>confdefs.h <<_ACEOF +#define pid_t int _ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : + +fi + +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = xyes; then : else - # Broken: fails on valid input. -continue + +cat >>confdefs.h <<_ACEOF +#define size_t unsigned int +_ACEOF + fi -rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5 +$as_echo_n "checking return type of signal handlers... " >&6; } +if ${ac_cv_type_signal+:} false; then : + $as_echo_n "(cached) " >&6 +else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include +#include + +int +main () +{ +return *(signal (0, 0)) (0) == 1; + ; + return 0; +} _ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_type_signal=int else - # Passes both tests. -ac_preproc_ok=: -break + ac_cv_type_signal=void fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5 +$as_echo "$ac_cv_type_signal" >&6; } -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu +cat >>confdefs.h <<_ACEOF +#define RETSIGTYPE $ac_cv_type_signal +_ACEOF -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 -$as_echo_n "checking for an ANSI C-conforming const... " >&6; } -if ${ac_cv_c_const+:} false; then : + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5 +$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } +if ${ac_cv_header_time+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include +#include +#include int main () { +if ((struct tm *) 0) +return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_time=yes +else + ac_cv_header_time=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5 +$as_echo "$ac_cv_header_time" >&6; } +if test $ac_cv_header_time = yes; then -#ifndef __cplusplus - /* Ultrix mips cc rejects this sort of thing. */ - typedef int charset[2]; - const charset cs = { 0, 0 }; - /* SunOS 4.1.1 cc rejects this. */ - char const *const *pcpcc; - char **ppc; - /* NEC SVR4.0.2 mips cc rejects this. */ - struct point {int x, y;}; - static struct point const zero = {0,0}; - /* AIX XL C 1.02.0.0 rejects this. - It does not let you subtract one const X* pointer from another in - an arm of an if-expression whose if-part is not a constant - expression */ - const char *g = "string"; - pcpcc = &g + (g ? g-g : 0); - /* HPUX 7.0 cc rejects these. */ - ++pcpcc; - ppc = (char**) pcpcc; - pcpcc = (char const *const *) ppc; - { /* SCO 3.2v4 cc rejects this sort of thing. */ - char tx; - char *t = &tx; - char const *s = 0 ? (char *) 0 : (char const *) 0; - - *t++ = 0; - if (s) return 0; - } - { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ - int x[] = {25, 17}; - const int *foo = &x[0]; - ++foo; - } - { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ - typedef const int *iptr; - iptr p = 0; - ++p; - } - { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying - "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ - struct s { int j; const int *ap[3]; } bx; - struct s *b = &bx; b->j = 5; - } - { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ - const int foo = 10; - if (!foo) return 0; - } - return !cs[0] && !zero.x; +$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5 +$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; } +if ${ac_cv_header_sys_wait_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#ifndef WEXITSTATUS +# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8) +#endif +#ifndef WIFEXITED +# define WIFEXITED(stat_val) (((stat_val) & 255) == 0) #endif +int +main () +{ + int s; + wait (&s); + s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_const=yes + ac_cv_header_sys_wait_h=yes else - ac_cv_c_const=no + ac_cv_header_sys_wait_h=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 -$as_echo "$ac_cv_c_const" >&6; } -if test $ac_cv_c_const = no; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5 +$as_echo "$ac_cv_header_sys_wait_h" >&6; } +if test $ac_cv_header_sys_wait_h = yes; then -$as_echo "#define const /**/" >>confdefs.h +$as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 -$as_echo_n "checking for inline... " >&6; } -if ${ac_cv_c_inline+:} false; then : +ac_header_dirent=no +for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do + as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5 +$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; } +if eval \${$as_ac_Header+:} false; then : $as_echo_n "(cached) " >&6 else - ac_cv_c_inline=no -for ac_kw in inline __inline__ __inline; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifndef __cplusplus -typedef int foo_t; -static $ac_kw foo_t static_foo () {return 0; } -$ac_kw foo_t foo () {return 0; } -#endif +#include +#include <$ac_hdr> +int +main () +{ +if ((DIR *) 0) +return 0; + ; + return 0; +} _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_c_inline=$ac_kw + eval "$as_ac_Header=yes" +else + eval "$as_ac_Header=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test "$ac_cv_c_inline" != no && break -done +fi +eval ac_res=\$$as_ac_Header + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 +_ACEOF +ac_header_dirent=$ac_hdr; break fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 -$as_echo "$ac_cv_c_inline" >&6; } -case $ac_cv_c_inline in - inline | yes) ;; - *) - case $ac_cv_c_inline in - no) ac_val=;; - *) ac_val=$ac_cv_c_inline;; - esac - cat >>confdefs.h <<_ACEOF -#ifndef __cplusplus -#define inline $ac_val +done +# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. +if test $ac_header_dirent = dirent.h; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5 +$as_echo_n "checking for library containing opendir... " >&6; } +if ${ac_cv_search_opendir+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" #endif +char opendir (); +int +main () +{ +return opendir (); + ; + return 0; +} _ACEOF - ;; -esac - - -ac_bc_result=`echo 6+9 | bc 2>/dev/null` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bc" >&5 -$as_echo_n "checking for bc... " >&6; } - if test "$ac_bc_result" = "15" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } +for ac_lib in '' dir; do + if test -z "$ac_lib"; then + ac_res="none required" else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - echo '' - as_fn_error $? "Your system doesn't have \"bc\", which has been a standard - part of Unix since the 1970s. Come back when your vendor - has grown a clue." "$LINENO" 5 + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_opendir=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_opendir+:} false; then : + break +fi +done +if ${ac_cv_search_opendir+:} false; then : +else + ac_cv_search_opendir=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 +$as_echo "$ac_cv_search_opendir" >&6; } +ac_res=$ac_cv_search_opendir +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" -# stuff for Makefiles -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : +fi + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5 +$as_echo_n "checking for library containing opendir... " >&6; } +if ${ac_cv_search_opendir+:} false; then : $as_echo_n "(cached) " >&6 else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char opendir (); +int +main () +{ +return opendir (); + ; + return 0; +} +_ACEOF +for ac_lib in '' x; do + if test -z "$ac_lib"; then + ac_res="none required" else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_opendir=$ac_res fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \"\${INSTALL} -d\" creates intermediate directories" >&5 -$as_echo_n "checking whether \"\${INSTALL} -d\" creates intermediate directories... " >&6; } -if ${ac_cv_install_d_creates_dirs+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_install_d_creates_dirs=no - rm -rf conftestdir - if mkdir conftestdir; then - cd conftestdir 2>/dev/null - ${INSTALL} -d `pwd`/dir1/dir2 >/dev/null 2>&1 - if test -d dir1/dir2/. ; then - ac_cv_install_d_creates_dirs=yes - fi - cd .. 2>/dev/null - rm -rf conftestdir - fi - +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_opendir+:} false; then : + break fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_install_d_creates_dirs" >&5 -$as_echo "$ac_cv_install_d_creates_dirs" >&6; } +done +if ${ac_cv_search_opendir+:} false; then : - if test "$ac_cv_install_d_creates_dirs" = no ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \"mkdir -p\" creates intermediate directories" >&5 -$as_echo_n "checking whether \"mkdir -p\" creates intermediate directories... " >&6; } -if ${ac_cv_mkdir_p_creates_dirs+:} false; then : - $as_echo_n "(cached) " >&6 else - ac_cv_mkdir_p_creates_dirs=no - rm -rf conftestdir - if mkdir conftestdir; then - cd conftestdir 2>/dev/null - mkdir -p dir1/dir2 >/dev/null 2>&1 - if test -d dir1/dir2/. ; then - ac_cv_mkdir_p_creates_dirs=yes - fi - cd .. 2>/dev/null - rm -rf conftestdir - fi + ac_cv_search_opendir=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 +$as_echo "$ac_cv_search_opendir" >&6; } +ac_res=$ac_cv_search_opendir +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_mkdir_p_creates_dirs" >&5 -$as_echo "$ac_cv_mkdir_p_creates_dirs" >&6; } - fi - if test "$ac_cv_install_d_creates_dirs" = yes ; then - INSTALL_DIRS='${INSTALL} -d' - elif test "$ac_cv_mkdir_p_creates_dirs" = yes ; then - INSTALL_DIRS='mkdir -p' - else - # any other ideas? - INSTALL_DIRS='${INSTALL} -d' - fi +fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } -set x ${MAKE-make} -ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to call gettimeofday" >&5 +$as_echo_n "checking how to call gettimeofday... " >&6; } + if ${ac_cv_gettimeofday_args+:} false; then : $as_echo_n "(cached) " >&6 else - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main () +{ +struct timeval tv; struct timezone tzp; + gettimeofday(&tv, &tzp); + ; + return 0; +} _ACEOF -# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - SET_MAKE= +if ac_fn_c_try_compile "$LINENO"; then : + ac_gettimeofday_args=2 else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main () +{ +struct timeval tv; gettimeofday(&tv); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_gettimeofday_args=1 +else + ac_gettimeofday_args=0 +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_gettimeofday_args=$ac_gettimeofday_args fi + ac_gettimeofday_args=$ac_cv_gettimeofday_args + if test "$ac_gettimeofday_args" = 1 ; then + $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h -# By default, autoconf sets INSTALL_SCRIPT to '${INSTALL_PROGRAM}'. -# That's wrong: it should be set to '${INSTALL}', so that one can -# implement the "install-strip" target properly (strip executables, -# but do not try to strip scripts.) -# -INSTALL_SCRIPT='${INSTALL}' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: one argument" >&5 +$as_echo "one argument" >&6; } + elif test "$ac_gettimeofday_args" = 2 ; then + $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h -# random libc stuff + $as_echo "#define GETTIMEOFDAY_TWO_ARGS 1" >>confdefs.h -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: two arguments" >&5 +$as_echo "two arguments" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5 +$as_echo "unknown" >&6; } + fi + +# Check whether --enable-largefile was given. +if test "${enable_largefile+set}" = set; then : + enableval=$enable_largefile; +fi + +if test "$enable_largefile" != no; then + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 +$as_echo_n "checking for special C compiler options needed for large files... " >&6; } +if ${ac_cv_sys_largefile_CC+:} false; then : $as_echo_n "(cached) " >&6 else - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac + ac_cv_sys_largefile_CC=no + if test "$GCC" != yes; then + ac_save_CC=$CC + while :; do + # IRIX 6.2 and later do not support large files by default, + # so use the C compiler's -n32 option if that helps. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP + ; + return 0; +} +_ACEOF + if ac_fn_c_try_compile "$LINENO"; then : + break fi - +rm -f core conftest.err conftest.$ac_objext + CC="$CC -n32" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_largefile_CC=' -n32'; break fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count +rm -f core conftest.err conftest.$ac_objext + break + done + CC=$ac_save_CC + rm -f conftest.$ac_ext fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 +$as_echo "$ac_cv_sys_largefile_CC" >&6; } + if test "$ac_cv_sys_largefile_CC" != no; then + CC=$CC$ac_cv_sys_largefile_CC + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 +$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } +if ${ac_cv_sys_file_offset_bits+:} false; then : $as_echo_n "(cached) " >&6 else + while :; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -#include - +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; int main () { @@ -5178,518 +5122,681 @@ main () } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no + ac_cv_sys_file_offset_bits=no; break fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#define _FILE_OFFSET_BITS 64 +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_file_offset_bits=64; break fi -rm -f conftest* - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_file_offset_bits=unknown + break +done fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 +$as_echo "$ac_cv_sys_file_offset_bits" >&6; } +case $ac_cv_sys_file_offset_bits in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits +_ACEOF +;; +esac +rm -rf conftest* + if test $ac_cv_sys_file_offset_bits = unknown; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 +$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } +if ${ac_cv_sys_large_files+:} false; then : + $as_echo_n "(cached) " >&6 +else + while :; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_large_files=no; break fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +#define _LARGE_FILES 1 +#include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; int main () { - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; + + ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_sys_large_files=1; break fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_large_files=unknown + break +done fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 +$as_echo "$ac_cv_sys_large_files" >&6; } +case $ac_cv_sys_large_files in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +#define _LARGE_FILES $ac_cv_sys_large_files +_ACEOF +;; +esac +rm -rf conftest* + fi -$as_echo "#define STDC_HEADERS 1" >>confdefs.h fi -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h +for ac_func in select fcntl uname nice setpriority getcwd getwd putenv sbrk do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi - done - -for ac_header in unistd.h inttypes.h +for ac_func in sigaction syslog realpath setrlimit do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi - done -ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default" -if test "x$ac_cv_type_mode_t" = xyes; then : - -else - -cat >>confdefs.h <<_ACEOF -#define mode_t int +for ac_func in setlocale sqrtf +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi +done -ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" -if test "x$ac_cv_type_pid_t" = xyes; then : - -else - -cat >>confdefs.h <<_ACEOF -#define pid_t int +for ac_func in getaddrinfo +do : + ac_fn_c_check_func "$LINENO" "getaddrinfo" "ac_cv_func_getaddrinfo" +if test "x$ac_cv_func_getaddrinfo" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_GETADDRINFO 1 _ACEOF fi +done -ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" -if test "x$ac_cv_type_size_t" = xyes; then : - -else +ac_fn_c_check_member "$LINENO" "struct sockaddr" "sa_len" "ac_cv_member_struct_sockaddr_sa_len" "#include +" +if test "x$ac_cv_member_struct_sockaddr_sa_len" = xyes; then : cat >>confdefs.h <<_ACEOF -#define size_t unsigned int +#define HAVE_STRUCT_SOCKADDR_SA_LEN 1 _ACEOF + fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5 -$as_echo_n "checking return type of signal handlers... " >&6; } -if ${ac_cv_type_signal+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct icmp" >&5 +$as_echo_n "checking for struct icmp... " >&6; } +if ${ac_cv_have_icmp+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include - +#include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include int main () { -return *(signal (0, 0)) (0) == 1; +struct icmp i; + struct sockaddr s; + struct sockaddr_in si; + struct ip ip; + i.icmp_type = ICMP_ECHO; + i.icmp_code = 0; + i.icmp_cksum = 0; + i.icmp_id = 0; + i.icmp_seq = 0; + si.sin_family = AF_INET; + #if defined(__DECC) || defined(_IP_VHL) + ip.ip_vhl = 0; + #else + ip.ip_hl = 0; + #endif + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_signal=int + ac_cv_have_icmp=yes else - ac_cv_type_signal=void + ac_cv_have_icmp=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5 -$as_echo "$ac_cv_type_signal" >&6; } - -cat >>confdefs.h <<_ACEOF -#define RETSIGTYPE $ac_cv_type_signal -_ACEOF - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_icmp" >&5 +$as_echo "$ac_cv_have_icmp" >&6; } + if test "$ac_cv_have_icmp" = yes ; then + $as_echo "#define HAVE_ICMP 1" >>confdefs.h -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5 -$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } -if ${ac_cv_header_time+:} false; then : + fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct icmphdr" >&5 +$as_echo_n "checking for struct icmphdr... " >&6; } +if ${ac_cv_have_icmphdr+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include - +#include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include int main () { -if ((struct tm *) 0) -return 0; +struct icmphdr i; + struct sockaddr s; + struct sockaddr_in si; + struct ip ip; + i.type = ICMP_ECHO; + i.code = 0; + i.checksum = 0; + i.un.echo.id = 0; + i.un.echo.sequence = 0; + si.sin_family = AF_INET; + ip.ip_hl = 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_time=yes + ac_cv_have_icmphdr=yes else - ac_cv_header_time=no + ac_cv_have_icmphdr=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5 -$as_echo "$ac_cv_header_time" >&6; } -if test $ac_cv_header_time = yes; then - -$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h - -fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_icmphdr" >&5 +$as_echo "$ac_cv_have_icmphdr" >&6; } + if test "$ac_cv_have_icmphdr" = yes ; then + $as_echo "#define HAVE_ICMPHDR 1" >>confdefs.h -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5 -$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; } -if ${ac_cv_header_sys_wait_h+:} false; then : + fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for getifaddrs" >&5 +$as_echo_n "checking for getifaddrs... " >&6; } +if ${ac_cv_have_getifaddrs+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#ifndef WEXITSTATUS -# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8) -#endif -#ifndef WIFEXITED -# define WIFEXITED(stat_val) (((stat_val) & 255) == 0) -#endif - +#include + #include + #include + #include int main () { - int s; - wait (&s); - s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; +struct ifaddrs *ifa; + getifaddrs (&ifa); + ifa->ifa_next = 0; + ifa->ifa_addr->sa_family = 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_sys_wait_h=yes + ac_cv_have_getifaddrs=yes else - ac_cv_header_sys_wait_h=no + ac_cv_have_getifaddrs=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5 -$as_echo "$ac_cv_header_sys_wait_h" >&6; } -if test $ac_cv_header_sys_wait_h = yes; then - -$as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h - -fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getifaddrs" >&5 +$as_echo "$ac_cv_have_getifaddrs" >&6; } + if test "$ac_cv_have_getifaddrs" = yes ; then + $as_echo "#define HAVE_GETIFADDRS 1" >>confdefs.h -ac_header_dirent=no -for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do - as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5 -$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; } -if eval \${$as_ac_Header+:} false; then : + fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t" >&5 +$as_echo_n "checking for socklen_t... " >&6; } +if ${ac_cv_type_socklen_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include <$ac_hdr> + #include + #include int main () { -if ((DIR *) 0) -return 0; + + socklen_t socklen; + ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : - eval "$as_ac_Header=yes" + ac_cv_type_socklen_t=yes else - eval "$as_ac_Header=no" + ac_cv_type_socklen_t=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -eval ac_res=\$$as_ac_Header - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_socklen_t" >&5 +$as_echo "$ac_cv_type_socklen_t" >&6; } + if test "$ac_cv_type_socklen_t" != yes; then + +$as_echo "#define socklen_t int" >>confdefs.h + + fi +for ac_header in crypt.h sys/select.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF -ac_header_dirent=$ac_hdr; break fi done -# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. -if test $ac_header_dirent = dirent.h; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5 -$as_echo_n "checking for library containing opendir... " >&6; } -if ${ac_cv_search_opendir+:} false; then : + +for ac_prog in perl5 perl +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PERL+:} false; then : $as_echo_n "(cached) " >&6 else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char opendir (); -int -main () -{ -return opendir (); - ; - return 0; -} -_ACEOF -for ac_lib in '' dir; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" + case $PERL in + [\\/]* | ?:[\\/]*) + ac_cv_path_PERL="$PERL" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_opendir=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_opendir+:} false; then : - break -fi done -if ${ac_cv_search_opendir+:} false; then : + done +IFS=$as_save_IFS -else - ac_cv_search_opendir=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS + ;; +esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 -$as_echo "$ac_cv_search_opendir" >&6; } -ac_res=$ac_cv_search_opendir -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - +PERL=$ac_cv_path_PERL +if test -n "$PERL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5 +$as_echo "$PERL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5 -$as_echo_n "checking for library containing opendir... " >&6; } -if ${ac_cv_search_opendir+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char opendir (); -int -main () -{ -return opendir (); - ; - return 0; -} -_ACEOF -for ac_lib in '' x; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO"; then : - ac_cv_search_opendir=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext - if ${ac_cv_search_opendir+:} false; then : - break -fi + test -n "$PERL" && break done -if ${ac_cv_search_opendir+:} false; then : + if test -z "$PERL" ; then + PERL_VERSION=0 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking perl version" >&5 +$as_echo_n "checking perl version... " >&6; } +if ${ac_cv_perl_version+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_search_opendir=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS + ac_cv_perl_version=`$PERL -e "$perl_version_cmd"` fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 -$as_echo "$ac_cv_search_opendir" >&6; } -ac_res=$ac_cv_search_opendir -if test "$ac_res" != no; then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_perl_version" >&5 +$as_echo "$ac_cv_perl_version" >&6; } + PERL_VERSION=$ac_cv_perl_version + fi + +if test -z "$PERL" ; then + # don't let it be blank... + PERL=/usr/bin/perl fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5 +$as_echo_n "checking for X... " >&6; } + + +# Check whether --with-x was given. +if test "${with_x+set}" = set; then : + withval=$with_x; fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to call gettimeofday" >&5 -$as_echo_n "checking how to call gettimeofday... " >&6; } - if ${ac_cv_gettimeofday_args+:} false; then : +# $have_x is `yes', `no', `disabled', or empty when we do not yet know. +if test "x$with_x" = xno; then + # The user explicitly disabled X. + have_x=disabled +else + case $x_includes,$x_libraries in #( + *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5;; #( + *,NONE | NONE,*) if ${ac_cv_have_x+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include -int -main () -{ -struct timeval tv; struct timezone tzp; - gettimeofday(&tv, &tzp); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_gettimeofday_args=2 + # One or both of the vars are not set, and there is no cached value. +ac_x_includes=no ac_x_libraries=no +rm -f -r conftest.dir +if mkdir conftest.dir; then + cd conftest.dir + cat >Imakefile <<'_ACEOF' +incroot: + @echo incroot='${INCROOT}' +usrlibdir: + @echo usrlibdir='${USRLIBDIR}' +libdir: + @echo libdir='${LIBDIR}' +_ACEOF + if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then + # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. + for ac_var in incroot usrlibdir libdir; do + eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" + done + # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. + for ac_extension in a so sl dylib la dll; do + if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" && + test -f "$ac_im_libdir/libX11.$ac_extension"; then + ac_im_usrlibdir=$ac_im_libdir; break + fi + done + # Screen out bogus values from the imake configuration. They are + # bogus both because they are the default anyway, and because + # using them would break gcc on systems where it needs fixed includes. + case $ac_im_incroot in + /usr/include) ac_x_includes= ;; + *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; + esac + case $ac_im_usrlibdir in + /usr/lib | /usr/lib64 | /lib | /lib64) ;; + *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; + esac + fi + cd .. + rm -f -r conftest.dir +fi + +# Standard set of common directories for X headers. +# Check X11 before X11Rn because it is often a symlink to the current release. +ac_x_header_dirs=' +/usr/X11/include +/usr/X11R7/include +/usr/X11R6/include +/usr/X11R5/include +/usr/X11R4/include + +/usr/include/X11 +/usr/include/X11R7 +/usr/include/X11R6 +/usr/include/X11R5 +/usr/include/X11R4 + +/usr/local/X11/include +/usr/local/X11R7/include +/usr/local/X11R6/include +/usr/local/X11R5/include +/usr/local/X11R4/include + +/usr/local/include/X11 +/usr/local/include/X11R7 +/usr/local/include/X11R6 +/usr/local/include/X11R5 +/usr/local/include/X11R4 + +/usr/X386/include +/usr/x386/include +/usr/XFree86/include/X11 + +/usr/include +/usr/local/include +/usr/unsupported/include +/usr/athena/include +/usr/local/x11r5/include +/usr/lpp/Xamples/include + +/usr/openwin/include +/usr/openwin/share/include' + +if test "$ac_x_includes" = no; then + # Guess where to find include files, by looking for Xlib.h. + # First, try using that file with no special directory specified. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # We can compile using X headers with no special include directory. +ac_x_includes= else + for ac_dir in $ac_x_header_dirs; do + if test -r "$ac_dir/X11/Xlib.h"; then + ac_x_includes=$ac_dir + break + fi +done +fi +rm -f conftest.err conftest.i conftest.$ac_ext +fi # $ac_x_includes = no + +if test "$ac_x_libraries" = no; then + # Check for the libraries. + # See if we find them without any special options. + # Don't add to $LIBS permanently. + ac_save_LIBS=$LIBS + LIBS="-lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include +#include int main () { -struct timeval tv; gettimeofday(&tv); +XrmInitialize () ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_gettimeofday_args=1 +if ac_fn_c_try_link "$LINENO"; then : + LIBS=$ac_save_LIBS +# We can link X programs with no special library path. +ac_x_libraries= else - ac_gettimeofday_args=0 -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + LIBS=$ac_save_LIBS +for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` +do + # Don't even attempt the hair of trying to link an X program! + for ac_extension in a so sl dylib la dll; do + if test -r "$ac_dir/libX11.$ac_extension"; then + ac_x_libraries=$ac_dir + break 2 + fi + done +done fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_gettimeofday_args=$ac_gettimeofday_args +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi # $ac_x_libraries = no + +case $ac_x_includes,$ac_x_libraries in #( + no,* | *,no | *\'*) + # Didn't find X, or a directory has "'" in its name. + ac_cv_have_x="have_x=no";; #( + *) + # Record where we found X for the cache. + ac_cv_have_x="have_x=yes\ + ac_x_includes='$ac_x_includes'\ + ac_x_libraries='$ac_x_libraries'" +esac fi +;; #( + *) have_x=yes;; + esac + eval "$ac_cv_have_x" +fi # $with_x != no - ac_gettimeofday_args=$ac_cv_gettimeofday_args - if test "$ac_gettimeofday_args" = 1 ; then - $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h +if test "$have_x" != yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5 +$as_echo "$have_x" >&6; } + no_x=yes +else + # If each of the values was on the command line, it overrides each guess. + test "x$x_includes" = xNONE && x_includes=$ac_x_includes + test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries + # Update the cache value to reflect the command line values. + ac_cv_have_x="have_x=yes\ + ac_x_includes='$x_includes'\ + ac_x_libraries='$x_libraries'" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5 +$as_echo "libraries $x_libraries, headers $x_includes" >&6; } +fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: one argument" >&5 -$as_echo "one argument" >&6; } - elif test "$ac_gettimeofday_args" = 2 ; then - $as_echo "#define HAVE_GETTIMEOFDAY 1" >>confdefs.h +if test "$no_x" = yes; then + # Not all programs may use this symbol, but it does not hurt to define it. - $as_echo "#define GETTIMEOFDAY_TWO_ARGS 1" >>confdefs.h +$as_echo "#define X_DISPLAY_MISSING 1" >>confdefs.h - { $as_echo "$as_me:${as_lineno-$LINENO}: result: two arguments" >&5 -$as_echo "two arguments" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unknown" >&5 -$as_echo "unknown" >&6; } + X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= +else + if test -n "$x_includes"; then + X_CFLAGS="$X_CFLAGS -I$x_includes" fi -# Check whether --enable-largefile was given. -if test "${enable_largefile+set}" = set; then : - enableval=$enable_largefile; -fi + # It would also be nice to do this for all -L options, not just this one. + if test -n "$x_libraries"; then + X_LIBS="$X_LIBS -L$x_libraries" + # For Solaris; some versions of Sun CC require a space after -R and + # others require no space. Words are not sufficient . . . . + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5 +$as_echo_n "checking whether -R must be followed by a space... " >&6; } + ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" + ac_xsave_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -if test "$enable_largefile" != no; then +int +main () +{ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -$as_echo_n "checking for special C compiler options needed for large files... " >&6; } -if ${ac_cv_sys_largefile_CC+:} false; then : - $as_echo_n "(cached) " >&6 + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + X_LIBS="$X_LIBS -R$x_libraries" else - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + LIBS="$ac_xsave_LIBS -R $x_libraries" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; + int main () { @@ -5698,440 +5805,1130 @@ main () return 0; } _ACEOF - if ac_fn_c_try_compile "$LINENO"; then : - break +if ac_fn_c_try_link "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + X_LIBS="$X_LIBS -R $x_libraries" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: neither works" >&5 +$as_echo "neither works" >&6; } fi -rm -f core conftest.err conftest.$ac_objext - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_largefile_CC=' -n32'; break +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -$as_echo "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_c_werror_flag=$ac_xsave_c_werror_flag + LIBS=$ac_xsave_LIBS fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if ${ac_cv_sys_file_offset_bits+:} false; then : + # Check for system-dependent libraries X programs must link with. + # Do this before checking for the system-independent R6 libraries + # (-lICE), since we may need -lsocket or whatever for X linking. + + if test "$ISC" = yes; then + X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" + else + # Martyn Johnson says this is needed for Ultrix, if the X + # libraries were built with DECnet support. And Karl Berry says + # the Alpha needs dnet_stub (dnet does not exist). + ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XOpenDisplay (); +int +main () +{ +return XOpenDisplay (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5 +$as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; } +if ${ac_cv_lib_dnet_dnet_ntoa+:} false; then : $as_echo_n "(cached) " >&6 else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldnet $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dnet_ntoa (); int main () { - +return dnet_ntoa (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=no; break +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dnet_dnet_ntoa=yes +else + ac_cv_lib_dnet_dnet_ntoa=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 +$as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; } +if test "x$ac_cv_lib_dnet_dnet_ntoa" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" +fi + + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5 +$as_echo_n "checking for dnet_ntoa in -ldnet_stub... " >&6; } +if ${ac_cv_lib_dnet_stub_dnet_ntoa+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldnet_stub $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#define _FILE_OFFSET_BITS 64 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dnet_ntoa (); int main () { - +return dnet_ntoa (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_file_offset_bits=64; break +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dnet_stub_dnet_ntoa=yes +else + ac_cv_lib_dnet_stub_dnet_ntoa=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -$as_echo "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits -_ACEOF -;; -esac -rm -rf conftest* - if test $ac_cv_sys_file_offset_bits = unknown; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } -if ${ac_cv_sys_large_files+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 +$as_echo "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; } +if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" +fi + + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$ac_xsave_LIBS" + + # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, + # to get the SysV transport functions. + # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) + # needs -lnsl. + # The nsl library prevents programs from opening the X display + # on Irix 5.2, according to T.E. Dickey. + # The functions gethostbyname, getservbyname, and inet_addr are + # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. + ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" +if test "x$ac_cv_func_gethostbyname" = xyes; then : + +fi + + if test $ac_cv_func_gethostbyname = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 +$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } +if ${ac_cv_lib_nsl_gethostbyname+:} false; then : $as_echo_n "(cached) " >&6 else - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lnsl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char gethostbyname (); int main () { - +return gethostbyname (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=no; break +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_nsl_gethostbyname=yes +else + ac_cv_lib_nsl_gethostbyname=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 +$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } +if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" +fi + + if test $ac_cv_lib_nsl_gethostbyname = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5 +$as_echo_n "checking for gethostbyname in -lbsd... " >&6; } +if ${ac_cv_lib_bsd_gethostbyname+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lbsd $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#define _LARGE_FILES 1 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char gethostbyname (); int main () { +return gethostbyname (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_bsd_gethostbyname=yes +else + ac_cv_lib_bsd_gethostbyname=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5 +$as_echo "$ac_cv_lib_bsd_gethostbyname" >&6; } +if test "x$ac_cv_lib_bsd_gethostbyname" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" +fi + + fi + fi + + # lieder@skyler.mavd.honeywell.com says without -lsocket, + # socket/setsockopt and other routines are undefined under SCO ODT + # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary + # on later versions), says Simon Leinen: it contains gethostby* + # variants that don't use the name server (or something). -lsocket + # must be given before -lnsl if both are needed. We assume that + # if connect needs -lnsl, so does gethostbyname. + ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" +if test "x$ac_cv_func_connect" = xyes; then : + +fi + + if test $ac_cv_func_connect = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5 +$as_echo_n "checking for connect in -lsocket... " >&6; } +if ${ac_cv_lib_socket_connect+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsocket $X_EXTRA_LIBS $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char connect (); +int +main () +{ +return connect (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_socket_connect=yes +else + ac_cv_lib_socket_connect=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5 +$as_echo "$ac_cv_lib_socket_connect" >&6; } +if test "x$ac_cv_lib_socket_connect" = xyes; then : + X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" +fi + + fi + + # Guillermo Gomez says -lposix is necessary on A/UX. + ac_fn_c_check_func "$LINENO" "remove" "ac_cv_func_remove" +if test "x$ac_cv_func_remove" = xyes; then : + +fi + + if test $ac_cv_func_remove = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5 +$as_echo_n "checking for remove in -lposix... " >&6; } +if ${ac_cv_lib_posix_remove+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lposix $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char remove (); +int +main () +{ +return remove (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_posix_remove=yes +else + ac_cv_lib_posix_remove=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5 +$as_echo "$ac_cv_lib_posix_remove" >&6; } +if test "x$ac_cv_lib_posix_remove" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" +fi + + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + ac_fn_c_check_func "$LINENO" "shmat" "ac_cv_func_shmat" +if test "x$ac_cv_func_shmat" = xyes; then : + +fi + + if test $ac_cv_func_shmat = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5 +$as_echo_n "checking for shmat in -lipc... " >&6; } +if ${ac_cv_lib_ipc_shmat+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lipc $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shmat (); +int +main () +{ +return shmat (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_ipc_shmat=yes +else + ac_cv_lib_ipc_shmat=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5 +$as_echo "$ac_cv_lib_ipc_shmat" >&6; } +if test "x$ac_cv_lib_ipc_shmat" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" +fi + + fi + fi + + # Check for libraries that X11R6 Xt/Xaw programs need. + ac_save_LDFLAGS=$LDFLAGS + test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" + # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to + # check for ICE first), but we must link in the order -lSM -lICE or + # we get undefined symbols. So assume we have SM if we have ICE. + # These have to be linked with before -lX11, unlike the other + # libraries we check for below, so use a different variable. + # John Interrante, Karl Berry + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5 +$as_echo_n "checking for IceConnectionNumber in -lICE... " >&6; } +if ${ac_cv_lib_ICE_IceConnectionNumber+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lICE $X_EXTRA_LIBS $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char IceConnectionNumber (); +int +main () +{ +return IceConnectionNumber (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_ICE_IceConnectionNumber=yes +else + ac_cv_lib_ICE_IceConnectionNumber=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 +$as_echo "$ac_cv_lib_ICE_IceConnectionNumber" >&6; } +if test "x$ac_cv_lib_ICE_IceConnectionNumber" = xyes; then : + X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" +fi + + LDFLAGS=$ac_save_LDFLAGS + +fi + + +if test "$have_x" != yes; then + as_fn_error $? "Couldn't find X11 headers/libs. Try \`$0 --help'." "$LINENO" 5 +fi + +case "$host" in + *-hpux*) + + # The following arcana was gleaned from conversations with + # Eric Schwartz : + # + # On HPUX 10.x, the parts of X that HP considers "standard" live in + # /usr/{include,lib}/X11R6/. The parts that HP doesn't consider + # "standard", notably, Xaw and Xmu, live in /usr/contrib/X11R6/. + # Yet /usr/contrib/X11R6/ comes preinstalled on all HPUX systems. + # Also, there are symlinks from /usr/include/ and /usr/lib/ into + # /usr/{include,lib}/X11R6/, so that (if you don't use Xmu at all) + # you don't need any -I or -L arguments. + # + # On HPUX 9.x, /usr/{include,lib}/X11R5/ and /usr/contrib/X11R5/ + # are the same division as 10.x. However, there are no symlinks to + # the X stuff from /usr/include/ and /usr/lib/, so -I and -L + # arguments are always necessary. + # + # However, X11R6 was available on HPUX 9.x as a patch: if that + # patch was installed, then all of X11R6 went in to + # /usr/contrib/X11R6/ (there was no /usr/{include,lib}/X11R6/.) + # + # HPUX 8.x was the same as 9.x, but was X11R4 instead (I don't know + # whether R5 was available as a patch; R6 undoubtedly was not.) + # + # So. We try and use the highest numbered pair of + # /usr/{include,lib}/X11R?/ and /usr/contrib/X11R?/{include,lib}/ + # that are available. We do not mix and match different versions + # of X. + # + # Question I still don't know the answer to: (do you?) + # + # * On HPUX 9.x, where /usr/include/X11R5/ was standard, and + # /usr/contrib/X11R6/ could be installed as a patch, what was in + # that contrib directory? Did it contain so-called "standard" + # X11R6, or did it include Xaw and Xmu as well? If the former, + # where did one find Xaw and Xmu on 9.x R6 systems? Would this + # be a situation where one had to reach into the R5 headers and + # libs to find Xmu? That is, must both R6 and R5 directories + # be on the -I and -L lists in that case? + # + for version in X11R6 X11R5 X11R4 ; do + # if either pair of directories exists... + if test -d /usr/include/$version || test -d /usr/contrib/$version/include + then + # if contrib exists, use it... + if test -d /usr/contrib/$version/include ; then + X_CFLAGS="$X_CFLAGS -I/usr/contrib/$version/include" + X_LIBS="$X_LIBS -L/usr/contrib/$version/lib" + fi + # if the "standard" one exists, use it. + if test -d /usr/include/$version ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/$version" + X_LIBS="$X_LIBS -L/usr/lib/$version" + fi + # since at least one of the pair exists, go no farther. + break + fi + done + + # Now find Motif. Thanks for not making xmkmf find this by + # default, you losers. + # + if test -d /usr/include/Motif2.1 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif2.1" + X_LIBS="$X_LIBS -L/usr/lib/Motif2.1" + elif test -d /usr/include/Motif1.2 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.2" + X_LIBS="$X_LIBS -L/usr/lib/Motif1.2" + elif test -d /usr/include/Motif1.1 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.1" + X_LIBS="$X_LIBS -L/usr/lib/Motif1.1" + fi + + # Now let's check for the pseudo-standard locations for OpenGL. + # + if test -d /opt/graphics/OpenGL/include ; then + # HP-UX 10.20 puts it here + X_CFLAGS="-I/opt/graphics/OpenGL/include $X_CFLAGS" + X_LIBS="-L/opt/graphics/OpenGL/lib $X_LIBS" + elif test -d /opt/Mesa/lib ; then + X_CFLAGS="-I/opt/Mesa/include $X_CFLAGS" + X_LIBS="-L/opt/Mesa/lib $X_LIBS" + fi + + + # On HPUX, default to installing in /opt/xscreensaver/ instead of + # in /usr/local/, unless there is already an xscreensaver in + # /usr/local/bin/. This can be overridden with the --prefix arg + # to configure. I'm not sure this is the right thing to do, but + # Richard Lloyd says so... + # + if test \! -x /usr/local/bin/xscreensaver ; then + ac_default_prefix=/opt/xscreensaver + fi + + ;; + *-solaris*) + + # Thanks for not making xmkmf find this by default, pinheads. + # And thanks for moving things around again, too. Is this + # really the standard location now? What happened to the + # joke that this kind of thing went in /opt? + # cthomp says "answer: CDE (Common Disorganized Environment)" + # + if test -f /usr/dt/include/Xm/Xm.h ; then + X_CFLAGS="$X_CFLAGS -I/usr/dt/include" + MOTIF_LIBS="$MOTIF_LIBS -L/usr/dt/lib -R/usr/dt/lib" + + # Some versions of Slowlaris Motif require -lgen. But not all. Why? + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for regcmp in -lgen" >&5 +$as_echo_n "checking for regcmp in -lgen... " >&6; } +if ${ac_cv_lib_gen_regcmp+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lgen $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char regcmp (); +int +main () +{ +return regcmp (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_gen_regcmp=yes +else + ac_cv_lib_gen_regcmp=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_regcmp" >&5 +$as_echo "$ac_cv_lib_gen_regcmp" >&6; } +if test "x$ac_cv_lib_gen_regcmp" = xyes; then : + MOTIF_LIBS="$MOTIF_LIBS -lgen" +fi + + fi + + ;; + *-darwin*) + + # On MacOS X (10.x with "fink"), many things are under /sw/. + # + if test -d /sw/include ; then + X_CFLAGS="-I/sw/include $X_CFLAGS" + X_LIBS="-L/sw/lib $X_LIBS" + fi + ;; + esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XPointer" >&5 +$as_echo_n "checking for XPointer... " >&6; } +if ${ac_cv_xpointer+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +XPointer foo = (XPointer) 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_xpointer=yes +else + ac_cv_xpointer=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CPPFLAGS="$ac_save_CPPFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_xpointer" >&5 +$as_echo "$ac_cv_xpointer" >&6; } + if test "$ac_cv_xpointer" != yes; then + $as_echo "#define XPointer char*" >>confdefs.h + + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether this is MacOS X" >&5 +$as_echo_n "checking whether this is MacOS X... " >&6; } + ac_macosx=no + ac_irix=no + case "$host" in + *-apple-darwin* ) + ac_macosx=yes + ;; + *-irix* ) + ac_irix=yes + ;; + esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_macosx" >&5 +$as_echo "$ac_macosx" >&6; } + + +############################################################################### +# +# pkg-config +# +############################################################################### + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pkg_config+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $pkg_config in + [\\/]* | ?:[\\/]*) + ac_cv_path_pkg_config="$pkg_config" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pkg_config="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +pkg_config=$ac_cv_path_pkg_config +if test -n "$pkg_config"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pkg_config" >&5 +$as_echo "$pkg_config" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_pkg_config"; then + ac_pt_pkg_config=$pkg_config + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ac_pt_pkg_config+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ac_pt_pkg_config in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_pkg_config="$ac_pt_pkg_config" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_pkg_config="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +ac_pt_pkg_config=$ac_cv_path_ac_pt_pkg_config +if test -n "$ac_pt_pkg_config"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_pkg_config" >&5 +$as_echo "$ac_pt_pkg_config" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_pt_pkg_config" = x; then + pkg_config="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + pkg_config=$ac_pt_pkg_config + fi +else + pkg_config="$ac_cv_path_pkg_config" +fi + + +if test -z "$pkg_config" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pkg-config not found!" >&5 +$as_echo "$as_me: WARNING: pkg-config not found!" >&2;} + pkg_config="false" +fi + + +# Utility function for running pkg-config-based tests... +# +pkgs='' +pkg_check_version() { + if test "$ok" = yes ; then + req="$1" + min="$2" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $req" >&5 +$as_echo_n "checking for $req... " >&6; } + if $pkg_config --exists "$req" ; then + vers=`$pkg_config --modversion "$req"` + if $pkg_config --exists "$req >= $min" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $vers" >&5 +$as_echo "$vers" >&6; } + pkgs="$pkgs $req" + return 1 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $vers (wanted >= $min)" >&5 +$as_echo "$vers (wanted >= $min)" >&6; } + ok=no + return 0 + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ok=no + return 0 + fi + fi +} + + +############################################################################### +# +# Gettext support +# +############################################################################### + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 +$as_echo_n "checking whether NLS is requested... " >&6; } + # Check whether --enable-nls was given. +if test "${enable_nls+set}" = set; then : + enableval=$enable_nls; USE_NLS=$enableval +else + USE_NLS=yes +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + + + + +case "$am__api_version" in + 1.01234) + as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 + ;; + *) + ;; +esac + +INTLTOOL_REQUIRED_VERSION_AS_INT=`echo | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` +INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` +INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` +if test -n ""; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= " >&5 +$as_echo_n "checking for intltool >= ... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 +$as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } + test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || + as_fn_error $? "Your intltool is too old. You need intltool or later." "$LINENO" 5 +fi + +# Extract the first word of "intltool-update", so it can be a program name with args. +set dummy intltool-update; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_INTLTOOL_UPDATE+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $INTLTOOL_UPDATE in + [\\/]* | ?:[\\/]*) + ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE +if test -n "$INTLTOOL_UPDATE"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 +$as_echo "$INTLTOOL_UPDATE" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +# Extract the first word of "intltool-merge", so it can be a program name with args. +set dummy intltool-merge; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_INTLTOOL_MERGE+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $INTLTOOL_MERGE in + [\\/]* | ?:[\\/]*) + ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE +if test -n "$INTLTOOL_MERGE"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 +$as_echo "$INTLTOOL_MERGE" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +# Extract the first word of "intltool-extract", so it can be a program name with args. +set dummy intltool-extract; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_INTLTOOL_EXTRACT+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $INTLTOOL_EXTRACT in + [\\/]* | ?:[\\/]*) + ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT +if test -n "$INTLTOOL_EXTRACT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 +$as_echo "$INTLTOOL_EXTRACT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then + as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5 +fi + +if test -z "$AM_DEFAULT_VERBOSITY"; then + AM_DEFAULT_VERBOSITY=1 +fi + + +INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' +INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' +INTLTOOL__v_MERGE_0='@echo " ITMRG " $@;' + + + + +INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' +intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' +intltool__v_merge_options_0='-q' + + + + + INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' +INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< $@' + INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' +INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' +if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< $@' +else + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.$$RANDOM && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir' +fi + INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -$as_echo "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -cat >>confdefs.h <<_ACEOF -#define _LARGE_FILES $ac_cv_sys_large_files -_ACEOF -;; -esac -rm -rf conftest* - fi -fi -for ac_func in select fcntl uname nice setpriority getcwd getwd putenv sbrk -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -fi -done -for ac_func in sigaction syslog realpath setrlimit -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -fi -done -for ac_func in setlocale sqrtf -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -fi -done -for ac_func in getaddrinfo -do : - ac_fn_c_check_func "$LINENO" "getaddrinfo" "ac_cv_func_getaddrinfo" -if test "x$ac_cv_func_getaddrinfo" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_GETADDRINFO 1 -_ACEOF -fi -done -ac_fn_c_check_member "$LINENO" "struct sockaddr" "sa_len" "ac_cv_member_struct_sockaddr_sa_len" "#include -" -if test "x$ac_cv_member_struct_sockaddr_sa_len" = xyes; then : -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_SOCKADDR_SA_LEN 1 -_ACEOF -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct icmp" >&5 -$as_echo_n "checking for struct icmp... " >&6; } -if ${ac_cv_have_icmp+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include -int -main () -{ -struct icmp i; - struct sockaddr s; - struct sockaddr_in si; - struct ip ip; - i.icmp_type = ICMP_ECHO; - i.icmp_code = 0; - i.icmp_cksum = 0; - i.icmp_id = 0; - i.icmp_seq = 0; - si.sin_family = AF_INET; - #if defined(__DECC) || defined(_IP_VHL) - ip.ip_vhl = 0; - #else - ip.ip_hl = 0; - #endif - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_icmp=yes -else - ac_cv_have_icmp=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_icmp" >&5 -$as_echo "$ac_cv_have_icmp" >&6; } - if test "$ac_cv_have_icmp" = yes ; then - $as_echo "#define HAVE_ICMP 1" >>confdefs.h - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct icmphdr" >&5 -$as_echo_n "checking for struct icmphdr... " >&6; } -if ${ac_cv_have_icmphdr+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include -int -main () -{ -struct icmphdr i; - struct sockaddr s; - struct sockaddr_in si; - struct ip ip; - i.type = ICMP_ECHO; - i.code = 0; - i.checksum = 0; - i.un.echo.id = 0; - i.un.echo.sequence = 0; - si.sin_family = AF_INET; - ip.ip_hl = 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_icmphdr=yes -else - ac_cv_have_icmphdr=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_icmphdr" >&5 -$as_echo "$ac_cv_have_icmphdr" >&6; } - if test "$ac_cv_have_icmphdr" = yes ; then - $as_echo "#define HAVE_ICMPHDR 1" >>confdefs.h - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for getifaddrs" >&5 -$as_echo_n "checking for getifaddrs... " >&6; } -if ${ac_cv_have_getifaddrs+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include -int -main () -{ -struct ifaddrs *ifa; - getifaddrs (&ifa); - ifa->ifa_next = 0; - ifa->ifa_addr->sa_family = 0; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_getifaddrs=yes -else - ac_cv_have_getifaddrs=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_getifaddrs" >&5 -$as_echo "$ac_cv_have_getifaddrs" >&6; } - if test "$ac_cv_have_getifaddrs" = yes ; then - $as_echo "#define HAVE_GETIFADDRS 1" >>confdefs.h - fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socklen_t" >&5 -$as_echo_n "checking for socklen_t... " >&6; } -if ${ac_cv_type_socklen_t+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include - #include -int -main () -{ - socklen_t socklen; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_type_socklen_t=yes -else - ac_cv_type_socklen_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_socklen_t" >&5 -$as_echo "$ac_cv_type_socklen_t" >&6; } - if test "$ac_cv_type_socklen_t" != yes; then -$as_echo "#define socklen_t int" >>confdefs.h - fi -for ac_header in crypt.h sys/select.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF -fi -done -for ac_prog in perl5 perl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 + + + + + + + + +# Check the gettext tools to make sure they are GNU +# Extract the first word of "xgettext", so it can be a program name with args. +set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PERL+:} false; then : +if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else - case $PERL in + case $XGETTEXT in [\\/]* | ?:[\\/]*) - ac_cv_path_PERL="$PERL" # Let the user override the test with a path. + ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6141,7 +6938,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext" + ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -6152,585 +6949,391 @@ IFS=$as_save_IFS ;; esac fi -PERL=$ac_cv_path_PERL -if test -n "$PERL"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5 -$as_echo "$PERL" >&6; } +XGETTEXT=$ac_cv_path_XGETTEXT +if test -n "$XGETTEXT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 +$as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi - test -n "$PERL" && break -done - - if test -z "$PERL" ; then - PERL_VERSION=0 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking perl version" >&5 -$as_echo_n "checking perl version... " >&6; } -if ${ac_cv_perl_version+:} false; then : +# Extract the first word of "msgmerge", so it can be a program name with args. +set dummy msgmerge; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_MSGMERGE+:} false; then : $as_echo_n "(cached) " >&6 else - ac_cv_perl_version=`$PERL -e "$perl_version_cmd"` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_perl_version" >&5 -$as_echo "$ac_cv_perl_version" >&6; } - PERL_VERSION=$ac_cv_perl_version + case $MSGMERGE in + [\\/]* | ?:[\\/]*) + ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi +done + done +IFS=$as_save_IFS - -if test -z "$PERL" ; then - # don't let it be blank... - PERL=/usr/bin/perl -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5 -$as_echo_n "checking for X... " >&6; } - - -# Check whether --with-x was given. -if test "${with_x+set}" = set; then : - withval=$with_x; + ;; +esac fi - -# $have_x is `yes', `no', `disabled', or empty when we do not yet know. -if test "x$with_x" = xno; then - # The user explicitly disabled X. - have_x=disabled -else - case $x_includes,$x_libraries in #( - *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5;; #( - *,NONE | NONE,*) if ${ac_cv_have_x+:} false; then : - $as_echo_n "(cached) " >&6 +MSGMERGE=$ac_cv_path_MSGMERGE +if test -n "$MSGMERGE"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 +$as_echo "$MSGMERGE" >&6; } else - # One or both of the vars are not set, and there is no cached value. -ac_x_includes=no ac_x_libraries=no -rm -f -r conftest.dir -if mkdir conftest.dir; then - cd conftest.dir - cat >Imakefile <<'_ACEOF' -incroot: - @echo incroot='${INCROOT}' -usrlibdir: - @echo usrlibdir='${USRLIBDIR}' -libdir: - @echo libdir='${LIBDIR}' -_ACEOF - if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then - # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. - for ac_var in incroot usrlibdir libdir; do - eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" - done - # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. - for ac_extension in a so sl dylib la dll; do - if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" && - test -f "$ac_im_libdir/libX11.$ac_extension"; then - ac_im_usrlibdir=$ac_im_libdir; break - fi - done - # Screen out bogus values from the imake configuration. They are - # bogus both because they are the default anyway, and because - # using them would break gcc on systems where it needs fixed includes. - case $ac_im_incroot in - /usr/include) ac_x_includes= ;; - *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; - esac - case $ac_im_usrlibdir in - /usr/lib | /usr/lib64 | /lib | /lib64) ;; - *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; - esac - fi - cd .. - rm -f -r conftest.dir + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -# Standard set of common directories for X headers. -# Check X11 before X11Rn because it is often a symlink to the current release. -ac_x_header_dirs=' -/usr/X11/include -/usr/X11R7/include -/usr/X11R6/include -/usr/X11R5/include -/usr/X11R4/include - -/usr/include/X11 -/usr/include/X11R7 -/usr/include/X11R6 -/usr/include/X11R5 -/usr/include/X11R4 - -/usr/local/X11/include -/usr/local/X11R7/include -/usr/local/X11R6/include -/usr/local/X11R5/include -/usr/local/X11R4/include - -/usr/local/include/X11 -/usr/local/include/X11R7 -/usr/local/include/X11R6 -/usr/local/include/X11R5 -/usr/local/include/X11R4 - -/usr/X386/include -/usr/x386/include -/usr/XFree86/include/X11 - -/usr/include -/usr/local/include -/usr/unsupported/include -/usr/athena/include -/usr/local/x11r5/include -/usr/lpp/Xamples/include - -/usr/openwin/include -/usr/openwin/share/include' - -if test "$ac_x_includes" = no; then - # Guess where to find include files, by looking for Xlib.h. - # First, try using that file with no special directory specified. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # We can compile using X headers with no special include directory. -ac_x_includes= -else - for ac_dir in $ac_x_header_dirs; do - if test -r "$ac_dir/X11/Xlib.h"; then - ac_x_includes=$ac_dir - break - fi -done -fi -rm -f conftest.err conftest.i conftest.$ac_ext -fi # $ac_x_includes = no -if test "$ac_x_libraries" = no; then - # Check for the libraries. - # See if we find them without any special options. - # Don't add to $LIBS permanently. - ac_save_LIBS=$LIBS - LIBS="-lX11 $LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -XrmInitialize () - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - LIBS=$ac_save_LIBS -# We can link X programs with no special library path. -ac_x_libraries= +# Extract the first word of "msgfmt", so it can be a program name with args. +set dummy msgfmt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_MSGFMT+:} false; then : + $as_echo_n "(cached) " >&6 else - LIBS=$ac_save_LIBS -for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` + case $MSGFMT in + [\\/]* | ?:[\\/]*) + ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH do - # Don't even attempt the hair of trying to link an X program! - for ac_extension in a so sl dylib la dll; do - if test -r "$ac_dir/libX11.$ac_extension"; then - ac_x_libraries=$ac_dir - break 2 - fi - done + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi done -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi # $ac_x_libraries = no + done +IFS=$as_save_IFS -case $ac_x_includes,$ac_x_libraries in #( - no,* | *,no | *\'*) - # Didn't find X, or a directory has "'" in its name. - ac_cv_have_x="have_x=no";; #( - *) - # Record where we found X for the cache. - ac_cv_have_x="have_x=yes\ - ac_x_includes='$ac_x_includes'\ - ac_x_libraries='$ac_x_libraries'" + ;; esac fi -;; #( - *) have_x=yes;; - esac - eval "$ac_cv_have_x" -fi # $with_x != no - -if test "$have_x" != yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5 -$as_echo "$have_x" >&6; } - no_x=yes +MSGFMT=$ac_cv_path_MSGFMT +if test -n "$MSGFMT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 +$as_echo "$MSGFMT" >&6; } else - # If each of the values was on the command line, it overrides each guess. - test "x$x_includes" = xNONE && x_includes=$ac_x_includes - test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries - # Update the cache value to reflect the command line values. - ac_cv_have_x="have_x=yes\ - ac_x_includes='$x_includes'\ - ac_x_libraries='$x_libraries'" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5 -$as_echo "libraries $x_libraries, headers $x_includes" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -if test "$no_x" = yes; then - # Not all programs may use this symbol, but it does not hurt to define it. - -$as_echo "#define X_DISPLAY_MISSING 1" >>confdefs.h - X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= +# Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GMSGFMT+:} false; then : + $as_echo_n "(cached) " >&6 else - if test -n "$x_includes"; then - X_CFLAGS="$X_CFLAGS -I$x_includes" + case $GMSGFMT in + [\\/]* | ?:[\\/]*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi +done + done +IFS=$as_save_IFS - # It would also be nice to do this for all -L options, not just this one. - if test -n "$x_libraries"; then - X_LIBS="$X_LIBS -L$x_libraries" - # For Solaris; some versions of Sun CC require a space after -R and - # others require no space. Words are not sufficient . . . . - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5 -$as_echo_n "checking whether -R must be followed by a space... " >&6; } - ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" - ac_xsave_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" + ;; +esac +fi +GMSGFMT=$ac_cv_path_GMSGFMT +if test -n "$GMSGFMT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 +$as_echo "$GMSGFMT" >&6; } +else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } - X_LIBS="$X_LIBS -R$x_libraries" -else - LIBS="$ac_xsave_LIBS -R $x_libraries" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +fi -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - X_LIBS="$X_LIBS -R $x_libraries" -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: neither works" >&5 -$as_echo "neither works" >&6; } +if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then + as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" +mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" +mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" +if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then + as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_c_werror_flag=$ac_xsave_c_werror_flag - LIBS=$ac_xsave_LIBS - fi - # Check for system-dependent libraries X programs must link with. - # Do this before checking for the system-independent R6 libraries - # (-lICE), since we may need -lsocket or whatever for X linking. +# Substitute ALL_LINGUAS so we can use it in po/Makefile - if test "$ISC" = yes; then - X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" - else - # Martyn Johnson says this is needed for Ultrix, if the X - # libraries were built with DECnet support. And Karl Berry says - # the Alpha needs dnet_stub (dnet does not exist). - ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XOpenDisplay (); -int -main () -{ -return XOpenDisplay (); - ; - return 0; -} + + + +GETTEXT_PACKAGE=xscreensaver + +cat >>confdefs.h <<_ACEOF +#define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF -if ac_fn_c_try_link "$LINENO"; then : -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5 -$as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; } -if ${ac_cv_lib_dnet_dnet_ntoa+:} false; then : + + +ALL_LINGUAS="da de es et fi fr hu it ja ko nb nl pl pt pt_BR ru sk sv vi wa zh_CN zh_TW" + + for ac_header in locale.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" +if test "x$ac_cv_header_locale_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LOCALE_H 1 +_ACEOF + +fi + +done + + if test $ac_cv_header_locale_h = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 +$as_echo_n "checking for LC_MESSAGES... " >&6; } +if ${am_cv_val_LC_MESSAGES+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldnet $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dnet_ntoa (); +#include int main () { -return dnet_ntoa (); +return LC_MESSAGES ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dnet_dnet_ntoa=yes + am_cv_val_LC_MESSAGES=yes else - ac_cv_lib_dnet_dnet_ntoa=no + am_cv_val_LC_MESSAGES=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 -$as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; } -if test "x$ac_cv_lib_dnet_dnet_ntoa" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 +$as_echo "$am_cv_val_LC_MESSAGES" >&6; } + if test $am_cv_val_LC_MESSAGES = yes; then - if test $ac_cv_lib_dnet_dnet_ntoa = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5 -$as_echo_n "checking for dnet_ntoa in -ldnet_stub... " >&6; } -if ${ac_cv_lib_dnet_stub_dnet_ntoa+:} false; then : +$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h + + fi + fi + USE_NLS=yes + + + gt_cv_have_gettext=no + + CATOBJEXT=NONE + XGETTEXT=: + INTLLIBS= + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 +$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; } +if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldnet_stub $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dnet_ntoa (); +#include int main () { -return dnet_ntoa (); +CFPreferencesCopyAppValue(NULL, NULL) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dnet_stub_dnet_ntoa=yes + gt_cv_func_CFPreferencesCopyAppValue=yes else - ac_cv_lib_dnet_stub_dnet_ntoa=no + gt_cv_func_CFPreferencesCopyAppValue=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 -$as_echo "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; } -if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" -fi - - fi + LIBS="$gt_save_LIBS" fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$ac_xsave_LIBS" - - # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, - # to get the SysV transport functions. - # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) - # needs -lnsl. - # The nsl library prevents programs from opening the X display - # on Irix 5.2, according to T.E. Dickey. - # The functions gethostbyname, getservbyname, and inet_addr are - # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. - ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" -if test "x$ac_cv_func_gethostbyname" = xyes; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 +$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then -fi +$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h - if test $ac_cv_func_gethostbyname = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 -$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } -if ${ac_cv_lib_nsl_gethostbyname+:} false; then : + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 +$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; } +if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); +#include int main () { -return gethostbyname (); +CFLocaleCopyCurrent(); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_gethostbyname=yes + gt_cv_func_CFLocaleCopyCurrent=yes else - ac_cv_lib_nsl_gethostbyname=no + gt_cv_func_CFLocaleCopyCurrent=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 -$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } -if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" + LIBS="$gt_save_LIBS" fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 +$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; } + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then - if test $ac_cv_lib_nsl_gethostbyname = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5 -$as_echo_n "checking for gethostbyname in -lbsd... " >&6; } -if ${ac_cv_lib_bsd_gethostbyname+:} false; then : +$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h + + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi + + + + ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" +if test "x$ac_cv_header_libintl_h" = xyes; then : + gt_cv_func_dgettext_libintl="no" + libintl_extra_libs="" + + # + # First check in libc + # + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 +$as_echo_n "checking for ngettext in libc... " >&6; } +if ${gt_cv_func_ngettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lbsd $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); +#include + int main () { -return gethostbyname (); +return !ngettext ("","", 1) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_bsd_gethostbyname=yes + gt_cv_func_ngettext_libc=yes else - ac_cv_lib_bsd_gethostbyname=no + gt_cv_func_ngettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5 -$as_echo "$ac_cv_lib_bsd_gethostbyname" >&6; } -if test "x$ac_cv_lib_bsd_gethostbyname" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" -fi - - fi - fi - - # lieder@skyler.mavd.honeywell.com says without -lsocket, - # socket/setsockopt and other routines are undefined under SCO ODT - # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary - # on later versions), says Simon Leinen: it contains gethostby* - # variants that don't use the name server (or something). -lsocket - # must be given before -lnsl if both are needed. We assume that - # if connect needs -lnsl, so does gethostbyname. - ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" -if test "x$ac_cv_func_connect" = xyes; then : fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 +$as_echo "$gt_cv_func_ngettext_libc" >&6; } - if test $ac_cv_func_connect = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5 -$as_echo_n "checking for connect in -lsocket... " >&6; } -if ${ac_cv_lib_socket_connect+:} false; then : + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 +$as_echo_n "checking for dgettext in libc... " >&6; } +if ${gt_cv_func_dgettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $X_EXTRA_LIBS $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char connect (); +#include + int main () { -return connect (); +return !dgettext ("","") ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_connect=yes + gt_cv_func_dgettext_libc=yes else - ac_cv_lib_socket_connect=no + gt_cv_func_dgettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5 -$as_echo "$ac_cv_lib_socket_connect" >&6; } -if test "x$ac_cv_lib_socket_connect" = xyes; then : - X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" -fi - fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 +$as_echo "$gt_cv_func_dgettext_libc" >&6; } + fi - # Guillermo Gomez says -lposix is necessary on A/UX. - ac_fn_c_check_func "$LINENO" "remove" "ac_cv_func_remove" -if test "x$ac_cv_func_remove" = xyes; then : + if test "$gt_cv_func_ngettext_libc" = "yes" ; then + for ac_func in bind_textdomain_codeset +do : + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_BIND_TEXTDOMAIN_CODESET 1 +_ACEOF fi +done - if test $ac_cv_func_remove = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5 -$as_echo_n "checking for remove in -lposix... " >&6; } -if ${ac_cv_lib_posix_remove+:} false; then : + fi + + # + # If we don't have everything we want, check in libintl + # + if test "$gt_cv_func_dgettext_libc" != "yes" \ + || test "$gt_cv_func_ngettext_libc" != "yes" \ + || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 +$as_echo_n "checking for bindtextdomain in -lintl... " >&6; } +if ${ac_cv_lib_intl_bindtextdomain+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lposix $LIBS" +LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -6740,46 +7343,34 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char remove (); +char bindtextdomain (); int main () { -return remove (); +return bindtextdomain (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_posix_remove=yes + ac_cv_lib_intl_bindtextdomain=yes else - ac_cv_lib_posix_remove=no + ac_cv_lib_intl_bindtextdomain=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5 -$as_echo "$ac_cv_lib_posix_remove" >&6; } -if test "x$ac_cv_lib_posix_remove" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" -fi - - fi - - # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. - ac_fn_c_check_func "$LINENO" "shmat" "ac_cv_func_shmat" -if test "x$ac_cv_func_shmat" = xyes; then : - -fi - - if test $ac_cv_func_shmat = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5 -$as_echo_n "checking for shmat in -lipc... " >&6; } -if ${ac_cv_lib_ipc_shmat+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 +$as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } +if test "x$ac_cv_lib_intl_bindtextdomain" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 +$as_echo_n "checking for ngettext in -lintl... " >&6; } +if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lipc $LIBS" +LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -6789,49 +7380,34 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char shmat (); +char ngettext (); int main () { -return shmat (); +return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ipc_shmat=yes + ac_cv_lib_intl_ngettext=yes else - ac_cv_lib_ipc_shmat=no + ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5 -$as_echo "$ac_cv_lib_ipc_shmat" >&6; } -if test "x$ac_cv_lib_ipc_shmat" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" -fi - - fi - fi - - # Check for libraries that X11R6 Xt/Xaw programs need. - ac_save_LDFLAGS=$LDFLAGS - test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" - # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to - # check for ICE first), but we must link in the order -lSM -lICE or - # we get undefined symbols. So assume we have SM if we have ICE. - # These have to be linked with before -lX11, unlike the other - # libraries we check for below, so use a different variable. - # John Interrante, Karl Berry - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5 -$as_echo_n "checking for IceConnectionNumber in -lICE... " >&6; } -if ${ac_cv_lib_ICE_IceConnectionNumber+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 +$as_echo "$ac_cv_lib_intl_ngettext" >&6; } +if test "x$ac_cv_lib_intl_ngettext" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 +$as_echo_n "checking for dgettext in -lintl... " >&6; } +if ${ac_cv_lib_intl_dgettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lICE $X_EXTRA_LIBS $LIBS" +LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -6841,241 +7417,47 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char IceConnectionNumber (); +char dgettext (); int main () { -return IceConnectionNumber (); +return dgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ICE_IceConnectionNumber=yes + ac_cv_lib_intl_dgettext=yes else - ac_cv_lib_ICE_IceConnectionNumber=no + ac_cv_lib_intl_dgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 -$as_echo "$ac_cv_lib_ICE_IceConnectionNumber" >&6; } -if test "x$ac_cv_lib_ICE_IceConnectionNumber" = xyes; then : - X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" -fi - - LDFLAGS=$ac_save_LDFLAGS - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 +$as_echo "$ac_cv_lib_intl_dgettext" >&6; } +if test "x$ac_cv_lib_intl_dgettext" = xyes; then : + gt_cv_func_dgettext_libintl=yes fi - -if test "$have_x" != yes; then - as_fn_error $? "Couldn't find X11 headers/libs. Try \`$0 --help'." "$LINENO" 5 fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X app-defaults directory" >&5 -$as_echo_n "checking for X app-defaults directory... " >&6; } -if ${ac_cv_x_app_defaults+:} false; then : - $as_echo_n "(cached) " >&6 -else - # skip this, it's always wrong these days. - # AC_PATH_X_APP_DEFAULTS_XMKMF - if test x"$ac_x_app_defaults" = x; then - true - # Look for the directory under a standard set of common directories. - # Check X11 before X11Rn because it's often a symlink to the current release. - for ac_dir in \ - \ - /usr/share/X11/app-defaults \ - \ - /usr/X11/lib/app-defaults \ - /usr/X11R6/lib/app-defaults \ - /usr/X11R6/lib/X11/app-defaults \ - /usr/X11R5/lib/app-defaults \ - /usr/X11R5/lib/X11/app-defaults \ - /usr/X11R4/lib/app-defaults \ - /usr/X11R4/lib/X11/app-defaults \ - \ - /usr/lib/X11/app-defaults \ - /usr/lib/X11R6/app-defaults \ - /usr/lib/X11R5/app-defaults \ - /usr/lib/X11R4/app-defaults \ - \ - /etc/X11/app-defaults \ - \ - /usr/local/X11/lib/app-defaults \ - /usr/local/X11R6/lib/app-defaults \ - /usr/local/X11R5/lib/app-defaults \ - /usr/local/X11R4/lib/app-defaults \ - \ - /usr/local/lib/X11/app-defaults \ - /usr/local/lib/X11R6/app-defaults \ - /usr/local/lib/X11R6/X11/app-defaults \ - /usr/local/lib/X11R5/app-defaults \ - /usr/local/lib/X11R5/X11/app-defaults \ - /usr/local/lib/X11R4/app-defaults \ - /usr/local/lib/X11R4/X11/app-defaults \ - \ - /usr/X386/lib/X11/app-defaults \ - /usr/x386/lib/X11/app-defaults \ - /usr/XFree86/lib/X11/app-defaults \ - \ - /usr/lib/X11/app-defaults \ - /usr/local/lib/X11/app-defaults \ - /usr/unsupported/lib/X11/app-defaults \ - /usr/athena/lib/X11/app-defaults \ - /usr/local/x11r5/lib/X11/app-defaults \ - /usr/lpp/Xamples/lib/X11/app-defaults \ - /lib/usr/lib/X11/app-defaults \ - \ - /usr/openwin/lib/app-defaults \ - /usr/openwin/lib/X11/app-defaults \ - /usr/openwin/share/lib/app-defaults \ - /usr/openwin/share/lib/X11/app-defaults \ - \ - /X11R6/lib/app-defaults \ - /X11R5/lib/app-defaults \ - /X11R4/lib/app-defaults \ - ; \ - do - if test -d "$ac_dir"; then - ac_x_app_defaults=$ac_dir - break - fi - done - - fi - if test x"$ac_x_app_defaults" = x; then - /bin/echo -n 'fallback: ' - ac_cv_x_app_defaults="/usr/lib/X11/app-defaults" - else - # Record where we found app-defaults for the cache. - ac_cv_x_app_defaults="$ac_x_app_defaults" - fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_x_app_defaults" >&5 -$as_echo "$ac_cv_x_app_defaults" >&6; } - eval ac_x_app_defaults="$ac_cv_x_app_defaults" -case "$host" in - *-hpux*) - - # The following arcana was gleaned from conversations with - # Eric Schwartz : - # - # On HPUX 10.x, the parts of X that HP considers "standard" live in - # /usr/{include,lib}/X11R6/. The parts that HP doesn't consider - # "standard", notably, Xaw and Xmu, live in /usr/contrib/X11R6/. - # Yet /usr/contrib/X11R6/ comes preinstalled on all HPUX systems. - # Also, there are symlinks from /usr/include/ and /usr/lib/ into - # /usr/{include,lib}/X11R6/, so that (if you don't use Xmu at all) - # you don't need any -I or -L arguments. - # - # On HPUX 9.x, /usr/{include,lib}/X11R5/ and /usr/contrib/X11R5/ - # are the same division as 10.x. However, there are no symlinks to - # the X stuff from /usr/include/ and /usr/lib/, so -I and -L - # arguments are always necessary. - # - # However, X11R6 was available on HPUX 9.x as a patch: if that - # patch was installed, then all of X11R6 went in to - # /usr/contrib/X11R6/ (there was no /usr/{include,lib}/X11R6/.) - # - # HPUX 8.x was the same as 9.x, but was X11R4 instead (I don't know - # whether R5 was available as a patch; R6 undoubtedly was not.) - # - # So. We try and use the highest numbered pair of - # /usr/{include,lib}/X11R?/ and /usr/contrib/X11R?/{include,lib}/ - # that are available. We do not mix and match different versions - # of X. - # - # Question I still don't know the answer to: (do you?) - # - # * On HPUX 9.x, where /usr/include/X11R5/ was standard, and - # /usr/contrib/X11R6/ could be installed as a patch, what was in - # that contrib directory? Did it contain so-called "standard" - # X11R6, or did it include Xaw and Xmu as well? If the former, - # where did one find Xaw and Xmu on 9.x R6 systems? Would this - # be a situation where one had to reach into the R5 headers and - # libs to find Xmu? That is, must both R6 and R5 directories - # be on the -I and -L lists in that case? - # - for version in X11R6 X11R5 X11R4 ; do - # if either pair of directories exists... - if test -d /usr/include/$version || test -d /usr/contrib/$version/include - then - # if contrib exists, use it... - if test -d /usr/contrib/$version/include ; then - X_CFLAGS="$X_CFLAGS -I/usr/contrib/$version/include" - X_LIBS="$X_LIBS -L/usr/contrib/$version/lib" - fi - # if the "standard" one exists, use it. - if test -d /usr/include/$version ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/$version" - X_LIBS="$X_LIBS -L/usr/lib/$version" - fi - # since at least one of the pair exists, go no farther. - break - fi - done - - # Now find Motif. Thanks for not making xmkmf find this by - # default, you losers. - # - if test -d /usr/include/Motif2.1 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif2.1" - X_LIBS="$X_LIBS -L/usr/lib/Motif2.1" - elif test -d /usr/include/Motif1.2 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.2" - X_LIBS="$X_LIBS -L/usr/lib/Motif1.2" - elif test -d /usr/include/Motif1.1 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.1" - X_LIBS="$X_LIBS -L/usr/lib/Motif1.1" - fi - - # Now let's check for the pseudo-standard locations for OpenGL. - # - if test -d /opt/graphics/OpenGL/include ; then - # HP-UX 10.20 puts it here - X_CFLAGS="-I/opt/graphics/OpenGL/include $X_CFLAGS" - X_LIBS="-L/opt/graphics/OpenGL/lib $X_LIBS" - elif test -d /opt/Mesa/lib ; then - X_CFLAGS="-I/opt/Mesa/include $X_CFLAGS" - X_LIBS="-L/opt/Mesa/lib $X_LIBS" - fi - - - # On HPUX, default to installing in /opt/xscreensaver/ instead of - # in /usr/local/, unless there is already an xscreensaver in - # /usr/local/bin/. This can be overridden with the --prefix arg - # to configure. I'm not sure this is the right thing to do, but - # Richard Lloyd says so... - # - if test \! -x /usr/local/bin/xscreensaver ; then - ac_default_prefix=/opt/xscreensaver - fi - ;; - *-solaris*) - - # Thanks for not making xmkmf find this by default, pinheads. - # And thanks for moving things around again, too. Is this - # really the standard location now? What happened to the - # joke that this kind of thing went in /opt? - # cthomp says "answer: CDE (Common Disorganized Environment)" - # - if test -f /usr/dt/include/Xm/Xm.h ; then - X_CFLAGS="$X_CFLAGS -I/usr/dt/include" - MOTIF_LIBS="$MOTIF_LIBS -L/usr/dt/lib -R/usr/dt/lib" - # Some versions of Slowlaris Motif require -lgen. But not all. Why? - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for regcmp in -lgen" >&5 -$as_echo_n "checking for regcmp in -lgen... " >&6; } -if ${ac_cv_lib_gen_regcmp+:} false; then : + if test "$gt_cv_func_dgettext_libintl" != "yes" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 +$as_echo_n "checking if -liconv is needed to use gettext... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 +$as_echo "" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 +$as_echo_n "checking for ngettext in -lintl... " >&6; } +if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lgen $LIBS" +LIBS="-lintl -liconv $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7085,185 +7467,210 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char regcmp (); +char ngettext (); int main () { -return regcmp (); +return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_gen_regcmp=yes + ac_cv_lib_intl_ngettext=yes else - ac_cv_lib_gen_regcmp=no + ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gen_regcmp" >&5 -$as_echo "$ac_cv_lib_gen_regcmp" >&6; } -if test "x$ac_cv_lib_gen_regcmp" = xyes; then : - MOTIF_LIBS="$MOTIF_LIBS -lgen" -fi - - fi - - ;; - *-darwin*) - - # On MacOS X (10.x with "fink"), many things are under /sw/. - # - if test -d /sw/include ; then - X_CFLAGS="-I/sw/include $X_CFLAGS" - X_LIBS="-L/sw/lib $X_LIBS" - fi - ;; - esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XPointer" >&5 -$as_echo_n "checking for XPointer... " >&6; } -if ${ac_cv_xpointer+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 +$as_echo "$ac_cv_lib_intl_ngettext" >&6; } +if test "x$ac_cv_lib_intl_ngettext" = xyes; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 +$as_echo_n "checking for dcgettext in -lintl... " >&6; } +if ${ac_cv_lib_intl_dcgettext+:} false; then : $as_echo_n "(cached) " >&6 else - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lintl -liconv $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dcgettext (); int main () { -XPointer foo = (XPointer) 0; +return dcgettext (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_xpointer=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_intl_dcgettext=yes else - ac_cv_xpointer=no + ac_cv_lib_intl_dcgettext=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="$ac_save_CPPFLAGS" +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 +$as_echo "$ac_cv_lib_intl_dcgettext" >&6; } +if test "x$ac_cv_lib_intl_dcgettext" = xyes; then : + gt_cv_func_dgettext_libintl=yes + libintl_extra_libs=-liconv +else + : fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_xpointer" >&5 -$as_echo "$ac_cv_xpointer" >&6; } - if test "$ac_cv_xpointer" != yes; then - $as_echo "#define XPointer char*" >>confdefs.h - - fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether this is MacOS X" >&5 -$as_echo_n "checking whether this is MacOS X... " >&6; } - ac_macosx=no - case "$host" in - *-apple-darwin* ) - ac_macosx=yes - ;; - esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_macosx" >&5 -$as_echo "$ac_macosx" >&6; } +else + : +fi -############################################################################### -# -# Gettext support -# -############################################################################### + fi + # + # If we found libintl, then check in it for bind_textdomain_codeset(); + # we'll prefer libc if neither have bind_textdomain_codeset(), + # and both have dgettext and ngettext + # + if test "$gt_cv_func_dgettext_libintl" = "yes" ; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS -lintl $libintl_extra_libs" + unset ac_cv_func_bind_textdomain_codeset + for ac_func in bind_textdomain_codeset +do : + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_BIND_TEXTDOMAIN_CODESET 1 +_ACEOF - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 -$as_echo_n "checking whether NLS is requested... " >&6; } - # Check whether --enable-nls was given. -if test "${enable_nls+set}" = set; then : - enableval=$enable_nls; USE_NLS=$enableval -else - USE_NLS=yes fi +done - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 -$as_echo "$USE_NLS" >&6; } + LIBS="$glib_save_LIBS" + if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then + gt_cv_func_dgettext_libc=no + else + if test "$gt_cv_func_dgettext_libc" = "yes" \ + && test "$gt_cv_func_ngettext_libc" = "yes"; then + gt_cv_func_dgettext_libintl=no + fi + fi + fi + fi + if test "$gt_cv_func_dgettext_libc" = "yes" \ + || test "$gt_cv_func_dgettext_libintl" = "yes"; then + gt_cv_have_gettext=yes + fi + if test "$gt_cv_func_dgettext_libintl" = "yes"; then + INTLLIBS="-lintl $libintl_extra_libs $INTL_MACOSX_LIBS" + fi -case "$am__api_version" in - 1.01234) - as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 - ;; - *) - ;; -esac + if test "$gt_cv_have_gettext" = "yes"; then -INTLTOOL_REQUIRED_VERSION_AS_INT=`echo | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` -INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` -INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` -if test -n ""; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= " >&5 -$as_echo_n "checking for intltool >= ... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 -$as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } - test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || - as_fn_error $? "Your intltool is too old. You need intltool or later." "$LINENO" 5 -fi +$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h -# Extract the first word of "intltool-update", so it can be a program name with args. -set dummy intltool-update; ac_word=$2 + # Extract the first word of "msgfmt", so it can be a program name with args. +set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_INTLTOOL_UPDATE+:} false; then : +if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else - case $INTLTOOL_UPDATE in - [\\/]* | ?:[\\/]*) - ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path. + case "$MSGFMT" in + /*) + ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then + ac_cv_path_MSGFMT="$ac_dir/$ac_word" + break + fi + fi done -IFS=$as_save_IFS - + IFS="$ac_save_ifs" + test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi -INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE -if test -n "$INTLTOOL_UPDATE"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 -$as_echo "$INTLTOOL_UPDATE" >&6; } +MSGFMT="$ac_cv_path_MSGFMT" +if test "$MSGFMT" != "no"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 +$as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } +fi + if test "$MSGFMT" != "no"; then + glib_save_LIBS="$LIBS" + LIBS="$LIBS $INTLLIBS" + for ac_func in dcgettext +do : + ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" +if test "x$ac_cv_func_dcgettext" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_DCGETTEXT 1 +_ACEOF + +fi +done + + MSGFMT_OPTS= + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 +$as_echo_n "checking if msgfmt accepts -c... " >&6; } + cat >conftest.foo <<_ACEOF + +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: test 1.0\n" +"PO-Revision-Date: 2007-02-15 12:01+0100\n" +"Last-Translator: test \n" +"Language-Team: C \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" + +_ACEOF +if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 + ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +echo "$as_me: failed input was:" >&5 +sed 's/^/| /' conftest.foo >&5 fi - -# Extract the first word of "intltool-merge", so it can be a program name with args. -set dummy intltool-merge; ac_word=$2 + # Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_INTLTOOL_MERGE+:} false; then : +if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else - case $INTLTOOL_MERGE in + case $GMSGFMT in [\\/]* | ?:[\\/]*) - ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path. + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -7273,7 +7680,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" + ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -7281,164 +7688,133 @@ done done IFS=$as_save_IFS + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi -INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE -if test -n "$INTLTOOL_MERGE"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 -$as_echo "$INTLTOOL_MERGE" >&6; } +GMSGFMT=$ac_cv_path_GMSGFMT +if test -n "$GMSGFMT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 +$as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi -# Extract the first word of "intltool-extract", so it can be a program name with args. -set dummy intltool-extract; ac_word=$2 + # Extract the first word of "xgettext", so it can be a program name with args. +set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_INTLTOOL_EXTRACT+:} false; then : +if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else - case $INTLTOOL_EXTRACT in - [\\/]* | ?:[\\/]*) - ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path. + case "$XGETTEXT" in + /*) + ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then + ac_cv_path_XGETTEXT="$ac_dir/$ac_word" + break + fi + fi done -IFS=$as_save_IFS - + IFS="$ac_save_ifs" + test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi -INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT -if test -n "$INTLTOOL_EXTRACT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 -$as_echo "$INTLTOOL_EXTRACT" >&6; } +XGETTEXT="$ac_cv_path_XGETTEXT" +if test "$XGETTEXT" != ":"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 +$as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then - as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5 +int +main () +{ +extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + CATOBJEXT=.gmo + DATADIRNAME=share +else + case $host in + *-*-solaris*) + ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" +if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : + CATOBJEXT=.gmo + DATADIRNAME=share +else + CATOBJEXT=.mo + DATADIRNAME=lib fi -if test -z "$AM_DEFAULT_VERBOSITY"; then - AM_DEFAULT_VERBOSITY=1 + ;; + *-*-openbsd*) + CATOBJEXT=.mo + DATADIRNAME=share + ;; + *) + CATOBJEXT=.mo + DATADIRNAME=lib + ;; + esac fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$glib_save_LIBS" + INSTOBJEXT=.mo + else + gt_cv_have_gettext=no + fi + fi - -INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' -INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' -INTLTOOL__v_MERGE_0='@echo " ITMRG " $@;' - - - - -INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' -intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' -intltool__v_merge_options_0='-q' - - - - - INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' -INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< $@' - INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' -INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' -if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then - INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< $@' -else - INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.$$RANDOM && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir' fi - INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + if test "$gt_cv_have_gettext" = "yes" ; then +$as_echo "#define ENABLE_NLS 1" >>confdefs.h + fi + if test "$XGETTEXT" != ":"; then + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 +$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } + XGETTEXT=":" + fi + fi + # We need to process the po/ directory. + POSUB=po + ac_config_commands="$ac_config_commands default-1" + for lang in $ALL_LINGUAS; do + GMOFILES="$GMOFILES $lang.gmo" + POFILES="$POFILES $lang.po" + done @@ -7452,452 +7828,871 @@ fi + if test "$gt_cv_have_gettext" = "yes"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 +$as_echo_n "checking for catalogs to be installed... " >&6; } + NEW_LINGUAS= + for presentlang in $ALL_LINGUAS; do + useit=no + if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then + desiredlanguages="$LINGUAS" + else + desiredlanguages="$ALL_LINGUAS" + fi + for desiredlang in $desiredlanguages; do + # Use the presentlang catalog if desiredlang is + # a. equal to presentlang, or + # b. a variant of presentlang (because in this case, + # presentlang can be used as a fallback for messages + # which are not translated in the desiredlang catalog). + case "$desiredlang" in + "$presentlang"*) useit=yes;; + esac + done + if test $useit = yes; then + NEW_LINGUAS="$NEW_LINGUAS $presentlang" + fi + done + LINGUAS=$NEW_LINGUAS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 +$as_echo "$LINGUAS" >&6; } + fi + if test -n "$LINGUAS"; then + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done + fi + fi + MKINSTALLDIRS= + if test -n "$ac_aux_dir"; then + MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" + fi + if test -z "$MKINSTALLDIRS"; then + MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" + fi + test -d po || mkdir po + if test "x$srcdir" != "x."; then + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then + posrcprefix="$srcdir/" + else + posrcprefix="../$srcdir/" + fi + else + posrcprefix="../" + fi + rm -f po/POTFILES + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ + < $srcdir/po/POTFILES.in > po/POTFILES +MKINSTALLDIRS="$INSTALL_DIRS" +############################################################################### +# +# Check for -lXmu (some fucked up vendors don't ship it...) +# +############################################################################### +have_xmu=no + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/Xmu/Error.h" "ac_cv_header_X11_Xmu_Error_h" "#include + #include + #include +" +if test "x$ac_cv_header_X11_Xmu_Error_h" = xyes; then : + have_xmu=yes +fi + CPPFLAGS="$ac_save_CPPFLAGS" +if test "$have_xmu" = no ; then + XMU_SRCS='$(UTILS_SRC)/xmu.c' + XMU_OBJS='$(UTILS_BIN)/xmu.o' + XMU_LIBS='' +else + XMU_SRCS='' + XMU_OBJS='' + XMU_LIBS='-lXmu' + $as_echo "#define HAVE_XMU 1" >>confdefs.h +fi +############################################################################### +# +# Check for the SunOS 4.1.x _get_wmShellWidgetClass bug. +# See comp.windows.x FAQ question 124. The right fix is to +# get OpenWindows 3.0 patches 100512-02 and 100573-03. +# +############################################################################### +if test "$have_xmu" = yes ; then + case "$host" in + *-sunos4*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the SunOS 4.1.x _get_wmShellWidgetClass bug" >&5 +$as_echo_n "checking for the SunOS 4.1.x _get_wmShellWidgetClass bug... " >&6; } +if ${ac_cv_sunos_xmu_bug+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_LDFLAGS="$LDFLAGS" + if test \! -z "$x_libraries" ; then + LDFLAGS="$LDFLAGS -L$x_libraries" + fi + # Note: this trick never works! (Generally.) + # We're only getting away with using AC_TRY_LINK + # with X libraries because we know it's SunOS. + LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_sunos_xmu_bug=no +else + ac_cv_sunos_xmu_bug=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS="$ac_save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sunos_xmu_bug" >&5 +$as_echo "$ac_cv_sunos_xmu_bug" >&6; } + if test "$ac_cv_sunos_xmu_bug" = yes ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler understands -static" >&5 +$as_echo_n "checking whether the compiler understands -static... " >&6; } +if ${ac_cv_ld_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -static" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int +main () +{ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_ld_static=yes +else + ac_cv_ld_static=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS="$ac_save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_ld_static" >&5 +$as_echo "$ac_cv_ld_static" >&6; } + if test "$ac_cv_ld_static" = yes ; then + LDFLAGS="$LDFLAGS -static" + else + LDFLAGS="$LDFLAGS -Bstatic" + fi + fi + ;; + esac +fi +############################################################################### +# +# The --with-x-app-defaults option +# +############################################################################### +#### H1 +# Check whether --with-app-defaults was given. +if test "${with_app_defaults+set}" = set; then : + withval=$with_app_defaults; ac_cv_x_app_defaults="$withval" +else + eval ac_x_app_defaults="$withval" +fi -# Check the gettext tools to make sure they are GNU -# Extract the first word of "xgettext", so it can be a program name with args. -set dummy xgettext; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_XGETTEXT+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X app-defaults directory" >&5 +$as_echo_n "checking for X app-defaults directory... " >&6; } +if ${ac_cv_x_app_defaults+:} false; then : $as_echo_n "(cached) " >&6 else - case $XGETTEXT in - [\\/]* | ?:[\\/]*) - ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done + # skip this, it's always wrong these days. + # AC_PATH_X_APP_DEFAULTS_XMKMF + if test x"$ac_x_app_defaults" = x; then + true + # Look for the directory under a standard set of common directories. + # Check X11 before X11Rn because it's often a symlink to the current release. + for ac_dir in \ + \ + /usr/share/X11/app-defaults \ + \ + /usr/X11/lib/app-defaults \ + /usr/X11R6/lib/app-defaults \ + /usr/X11R6/lib/X11/app-defaults \ + /usr/X11R5/lib/app-defaults \ + /usr/X11R5/lib/X11/app-defaults \ + /usr/X11R4/lib/app-defaults \ + /usr/X11R4/lib/X11/app-defaults \ + \ + /usr/lib/X11/app-defaults \ + /usr/lib/X11R6/app-defaults \ + /usr/lib/X11R5/app-defaults \ + /usr/lib/X11R4/app-defaults \ + \ + /etc/X11/app-defaults \ + \ + /usr/local/X11/lib/app-defaults \ + /usr/local/X11R6/lib/app-defaults \ + /usr/local/X11R5/lib/app-defaults \ + /usr/local/X11R4/lib/app-defaults \ + \ + /usr/local/lib/X11/app-defaults \ + /usr/local/lib/X11R6/app-defaults \ + /usr/local/lib/X11R6/X11/app-defaults \ + /usr/local/lib/X11R5/app-defaults \ + /usr/local/lib/X11R5/X11/app-defaults \ + /usr/local/lib/X11R4/app-defaults \ + /usr/local/lib/X11R4/X11/app-defaults \ + \ + /usr/X386/lib/X11/app-defaults \ + /usr/x386/lib/X11/app-defaults \ + /usr/XFree86/lib/X11/app-defaults \ + \ + /usr/lib/X11/app-defaults \ + /usr/local/lib/X11/app-defaults \ + /usr/unsupported/lib/X11/app-defaults \ + /usr/athena/lib/X11/app-defaults \ + /usr/local/x11r5/lib/X11/app-defaults \ + /usr/lpp/Xamples/lib/X11/app-defaults \ + /lib/usr/lib/X11/app-defaults \ + \ + /usr/openwin/lib/app-defaults \ + /usr/openwin/lib/X11/app-defaults \ + /usr/openwin/share/lib/app-defaults \ + /usr/openwin/share/lib/X11/app-defaults \ + \ + /X11R6/lib/app-defaults \ + /X11R5/lib/app-defaults \ + /X11R4/lib/app-defaults \ + ; \ + do + if test -d "$ac_dir"; then + ac_x_app_defaults=$ac_dir + break + fi done -IFS=$as_save_IFS - ;; -esac + fi + if test x"$ac_x_app_defaults" = x; then + /bin/echo -n 'fallback: ' + ac_cv_x_app_defaults="/usr/lib/X11/app-defaults" + else + # Record where we found app-defaults for the cache. + ac_cv_x_app_defaults="$ac_x_app_defaults" + fi fi -XGETTEXT=$ac_cv_path_XGETTEXT -if test -n "$XGETTEXT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 -$as_echo "$XGETTEXT" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_x_app_defaults" >&5 +$as_echo "$ac_cv_x_app_defaults" >&6; } + eval ac_x_app_defaults="$ac_cv_x_app_defaults" + + +############################################################################### +# +# Handle the --with-hackdir option +# +############################################################################### + +have_hackdir=yes +with_hackdir_req=unspecified + +# Check whether --with-hackdir was given. +if test "${with_hackdir+set}" = set; then : + withval=$with_hackdir; with_hackdir="$withval"; with_hackdir_req="$withval" else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + with_hackdir=yes fi -# Extract the first word of "msgmerge", so it can be a program name with args. -set dummy msgmerge; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MSGMERGE+:} false; then : - $as_echo_n "(cached) " >&6 +if test x"$with_hackdir" = xyes; then + HACKDIR='${libexecdir}/xscreensaver' +elif test x"$with_hackdir" = xno; then + HACKDIR='${bindir}' else - case $MSGMERGE in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS + HACKDIR=$with_hackdir +fi - ;; -esac +# canonicalize slashes. +HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` + +# Expand HACKDIR as HACKDIR_FULL +HACKDIR_FULL=`eval eval eval eval eval eval eval eval eval echo $HACKDIR` + +# This option used to be called --enable-subdir; make sure that is no longer +# used, since configure brain-damagedly ignores unknown --enable options. + +obsolete_enable= +# Check whether --enable-subdir was given. +if test "${enable_subdir+set}" = set; then : + enableval=$enable_subdir; obsolete_enable=yes fi -MSGMERGE=$ac_cv_path_MSGMERGE -if test -n "$MSGMERGE"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 -$as_echo "$MSGMERGE" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + +if test -n "$obsolete_enable"; then + echo "error: the --enable-subdir option has been replaced with" + echo " the new --with-hackdir option; see \`configure --help'" + echo " for more information." + exit 1 fi -# Extract the first word of "msgfmt", so it can be a program name with args. -set dummy msgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $MSGFMT in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS +############################################################################### +# +# Handle the --with-configdir option +# +############################################################################### - ;; -esac -fi -MSGFMT=$ac_cv_path_MSGFMT -if test -n "$MSGFMT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 -$as_echo "$MSGFMT" >&6; } +have_configdir=yes +with_configdir_req=unspecified + +# Check whether --with-configdir was given. +if test "${with_configdir+set}" = set; then : + withval=$with_configdir; with_configdir="$withval"; with_configdir_req="$withval" else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + with_configdir=yes fi -# Extract the first word of "gmsgfmt", so it can be a program name with args. -set dummy gmsgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GMSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 +if test x"$with_configdir" = xyes; then + HACK_CONF_DIR='${datadir}/xscreensaver/config' +elif test x"$with_configdir" = xno; then + echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" + exit 1 else - case $GMSGFMT in - [\\/]* | ?:[\\/]*) - ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 + # there must be a better way than this... + if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then + # absolute path + HACK_CONF_DIR=$with_configdir + else + # relative path + HACK_CONF_DIR="\${exec_prefix}$with_configdir" fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" - ;; -esac -fi -GMSGFMT=$ac_cv_path_GMSGFMT -if test -n "$GMSGFMT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 -$as_echo "$GMSGFMT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } fi -if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then - as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 -fi -xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" -mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" -mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" -if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then - as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 + +############################################################################### +# +# Check for the DPMS server extension. +# +############################################################################### + +#### H1 + +have_dpms=no +with_dpms_req=unspecified + +# Check whether --with-dpms-ext was given. +if test "${with_dpms_ext+set}" = set; then : + withval=$with_dpms_ext; with_dpms="$withval"; with_dpms_req="$withval" +else + with_dpms=yes fi -# Substitute ALL_LINGUAS so we can use it in po/Makefile + case "$with_dpms" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMS headers" >&5 +$as_echo_n "checking for DPMS headers... " >&6; } + d=$with_dpms/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMS libs" >&5 +$as_echo_n "checking for DPMS libs... " >&6; } + d=$with_dpms/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + # replace the directory string with "yes". + with_dpms_req="yes" + with_dpms=$with_dpms_req + ;; -GETTEXT_PACKAGE=xscreensaver + *) + echo "" + echo "error: argument to --with-dpms-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac -cat >>confdefs.h <<_ACEOF -#define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" -_ACEOF +if test "$with_dpms" = yes; then -cat >>confdefs.h <<_ACEOF -#define PACKAGE "$GETTEXT_PACKAGE" -_ACEOF + # first check for dpms.h + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/dpms.h" "ac_cv_header_X11_extensions_dpms_h" "#include + #include +" +if test "x$ac_cv_header_X11_extensions_dpms_h" = xyes; then : + have_dpms=yes +fi -ALL_LINGUAS="da de es et fi fr hu it ja ko nb nl pl pt pt_BR ru sk sv vi wa zh_CN zh_TW" + CPPFLAGS="$ac_save_CPPFLAGS" - for ac_header in locale.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" -if test "x$ac_cv_header_locale_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LOCALE_H 1 -_ACEOF + # if that succeeded, then check for the DPMS code in the libraries + if test "$have_dpms" = yes; then -fi + # first look in -lXext (this is where it is with XFree86 4.0) + have_dpms=no -done + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" - if test $ac_cv_header_locale_h = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 -$as_echo_n "checking for LC_MESSAGES... " >&6; } -if ${am_cv_val_LC_MESSAGES+:} false; then : + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMSInfo in -lXext" >&5 +$as_echo_n "checking for DPMSInfo in -lXext... " >&6; } +if ${ac_cv_lib_Xext_DPMSInfo+:} false; then : $as_echo_n "(cached) " >&6 else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXext -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char DPMSInfo (); int main () { -return LC_MESSAGES +return DPMSInfo (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - am_cv_val_LC_MESSAGES=yes + ac_cv_lib_Xext_DPMSInfo=yes else - am_cv_val_LC_MESSAGES=no + ac_cv_lib_Xext_DPMSInfo=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_DPMSInfo" >&5 +$as_echo "$ac_cv_lib_Xext_DPMSInfo" >&6; } +if test "x$ac_cv_lib_Xext_DPMSInfo" = xyes; then : + have_dpms=yes +else + true fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 -$as_echo "$am_cv_val_LC_MESSAGES" >&6; } - if test $am_cv_val_LC_MESSAGES = yes; then -$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - fi - fi - USE_NLS=yes + # if that failed, look in -lXdpms (this is where it was in XFree86 3.x) + if test "$have_dpms" = no; then - gt_cv_have_gettext=no + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" - CATOBJEXT=NONE - XGETTEXT=: - INTLLIBS= + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 -$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; } -if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then : + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMSInfo in -lXdpms" >&5 +$as_echo_n "checking for DPMSInfo in -lXdpms... " >&6; } +if ${ac_cv_lib_Xdpms_DPMSInfo+:} false; then : $as_echo_n "(cached) " >&6 else - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXdpms -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char DPMSInfo (); int main () { -CFPreferencesCopyAppValue(NULL, NULL) +return DPMSInfo (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_CFPreferencesCopyAppValue=yes + ac_cv_lib_Xdpms_DPMSInfo=yes else - gt_cv_func_CFPreferencesCopyAppValue=no + ac_cv_lib_Xdpms_DPMSInfo=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xdpms_DPMSInfo" >&5 +$as_echo "$ac_cv_lib_Xdpms_DPMSInfo" >&6; } +if test "x$ac_cv_lib_Xdpms_DPMSInfo" = xyes; then : + have_dpms=yes; XDPMS_LIBS="-lXdpms" +else + true fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 -$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } - if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then -$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + fi fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 -$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; } -if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then : + + + # if that succeeded, then we've really got it. + if test "$have_dpms" = yes; then + $as_echo "#define HAVE_DPMS_EXTENSION 1" >>confdefs.h + + fi + +elif test "$with_dpms" != no; then + echo "error: must be yes or no: --with-dpms-ext=$with_dpms" + exit 1 +fi + + +############################################################################### +# +# Check for the XF86VMODE server extension (for virtual screens.) +# +############################################################################### + +have_xf86vmode=no +with_xf86vmode_req=unspecified + +# Check whether --with-xf86vmode-ext was given. +if test "${with_xf86vmode_ext+set}" = set; then : + withval=$with_xf86vmode_ext; with_xf86vmode="$withval"; with_xf86vmode_req="$withval" +else + with_xf86vmode=yes +fi + + + + case "$with_xf86vmode" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86vmode headers" >&5 +$as_echo_n "checking for xf86vmode headers... " >&6; } + d=$with_xf86vmode/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86vmode libs" >&5 +$as_echo_n "checking for xf86vmode libs... " >&6; } + d=$with_xf86vmode/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + with_xf86vmode_req="yes" + with_xf86vmode=$with_xf86vmode_req + ;; + + *) + echo "" + echo "error: argument to --with-xf86vmode-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +VIDMODE_LIBS="" + +if test "$with_xf86vmode" = yes; then + + # first check for xf86vmode.h + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/xf86vmode.h" "ac_cv_header_X11_extensions_xf86vmode_h" "#include +" +if test "x$ac_cv_header_X11_extensions_xf86vmode_h" = xyes; then : + have_xf86vmode=yes +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" + + # if that succeeded, then check for the -lXxf86vm + if test "$have_xf86vmode" = yes; then + have_xf86vmode=no + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeGetViewPort in -lXxf86vm" >&5 +$as_echo_n "checking for XF86VidModeGetViewPort in -lXxf86vm... " >&6; } +if ${ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort+:} false; then : $as_echo_n "(cached) " >&6 else - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXxf86vm -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XF86VidModeGetViewPort (); int main () { -CFLocaleCopyCurrent(); +return XF86VidModeGetViewPort (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_CFLocaleCopyCurrent=yes + ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort=yes else - gt_cv_func_CFLocaleCopyCurrent=no + ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" >&5 +$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" >&6; } +if test "x$ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" = xyes; then : + have_xf86vmode=yes; + VIDMODE_LIBS="-lXxf86vm"; + SAVER_LIBS="$SAVER_LIBS $VIDMODE_LIBS" +else + true fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 -$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; } - if test $gt_cv_func_CFLocaleCopyCurrent = yes; then -$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" fi - INTL_MACOSX_LIBS= - if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then - INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" - fi + # if that succeeded, then we've really got it. + if test "$have_xf86vmode" = yes; then + $as_echo "#define HAVE_XF86VMODE 1" >>confdefs.h + fi - ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" -if test "x$ac_cv_header_libintl_h" = xyes; then : - gt_cv_func_dgettext_libintl="no" - libintl_extra_libs="" +elif test "$with_xf86vmode" != no; then + echo "error: must be yes or no: --with-xf86vmode-ext=$with_xf86vmode" + exit 1 +fi - # - # First check in libc - # - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 -$as_echo_n "checking for ngettext in libc... " >&6; } -if ${gt_cv_func_ngettext_libc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include +############################################################################### +# +# Check for the XINERAMA server extension. +# +############################################################################### -int -main () -{ -return !ngettext ("","", 1) - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_ngettext_libc=yes +have_xinerama=no +with_xinerama_req=unspecified + +# Check whether --with-xinerama-ext was given. +if test "${with_xinerama_ext+set}" = set; then : + withval=$with_xinerama_ext; with_xinerama="$withval"; with_xinerama_req="$withval" else - gt_cv_func_ngettext_libc=no + with_xinerama=yes fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 -$as_echo "$gt_cv_func_ngettext_libc" >&6; } - if test "$gt_cv_func_ngettext_libc" = "yes" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 -$as_echo_n "checking for dgettext in libc... " >&6; } -if ${gt_cv_func_dgettext_libc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include + case "$with_xinerama" in + yes) ;; + no) ;; -int -main () -{ -return !dgettext ("","") - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - gt_cv_func_dgettext_libc=yes -else - gt_cv_func_dgettext_libc=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINERAMA headers" >&5 +$as_echo_n "checking for XINERAMA headers... " >&6; } + d=$with_xinerama/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 -$as_echo "$gt_cv_func_dgettext_libc" >&6; } - fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINERAMA libs" >&5 +$as_echo_n "checking for XINERAMA libs... " >&6; } + d=$with_xinerama/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi - if test "$gt_cv_func_ngettext_libc" = "yes" ; then - for ac_func in bind_textdomain_codeset -do : - ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" -if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_BIND_TEXTDOMAIN_CODESET 1 -_ACEOF + # replace the directory string with "yes". + with_xinerama_req="yes" + with_xinerama=$with_xinerama_req + ;; -fi -done + *) + echo "" + echo "error: argument to --with-xinerama-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac - fi - # - # If we don't have everything we want, check in libintl - # - if test "$gt_cv_func_dgettext_libc" != "yes" \ - || test "$gt_cv_func_ngettext_libc" != "yes" \ - || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 -$as_echo_n "checking for bindtextdomain in -lintl... " >&6; } -if ${ac_cv_lib_intl_bindtextdomain+:} false; then : + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XScreenSaverQueryInfo in -lXss" >&5 +$as_echo_n "checking for XScreenSaverQueryInfo in -lXss... " >&6; } +if ${ac_cv_lib_Xss_XScreenSaverQueryInfo+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lintl $LIBS" +LIBS="-lXss -lXss -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7907,34 +8702,88 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char bindtextdomain (); +char XScreenSaverQueryInfo (); int main () { -return bindtextdomain (); +return XScreenSaverQueryInfo (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_intl_bindtextdomain=yes + ac_cv_lib_Xss_XScreenSaverQueryInfo=yes else - ac_cv_lib_intl_bindtextdomain=no + ac_cv_lib_Xss_XScreenSaverQueryInfo=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 -$as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } -if test "x$ac_cv_lib_intl_bindtextdomain" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 -$as_echo_n "checking for ngettext in -lintl... " >&6; } -if ${ac_cv_lib_intl_ngettext+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xss_XScreenSaverQueryInfo" >&5 +$as_echo "$ac_cv_lib_Xss_XScreenSaverQueryInfo" >&6; } +if test "x$ac_cv_lib_Xss_XScreenSaverQueryInfo" = xyes; then : + X_EXTRA_LIBS="$X_EXTRA_LIBS -lXss" +else + true +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + + + +if test "$with_xinerama" = yes; then + + # first check for Xinerama.h + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xinerama.h" "ac_cv_header_X11_extensions_Xinerama_h" "#include +" +if test "x$ac_cv_header_X11_extensions_Xinerama_h" = xyes; then : + have_xinerama=yes +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" + + # if that succeeded, then check for the XINERAMA code in the libraries + if test "$have_xinerama" = yes; then + + # first look in -lXext + have_xinerama=no + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XineramaQueryScreens in -lXext" >&5 +$as_echo_n "checking for XineramaQueryScreens in -lXext... " >&6; } +if ${ac_cv_lib_Xext_XineramaQueryScreens+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lintl $LIBS" +LIBS="-lXext -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7944,34 +8793,65 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char ngettext (); +char XineramaQueryScreens (); int main () { -return ngettext (); +return XineramaQueryScreens (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_intl_ngettext=yes + ac_cv_lib_Xext_XineramaQueryScreens=yes else - ac_cv_lib_intl_ngettext=no + ac_cv_lib_Xext_XineramaQueryScreens=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 -$as_echo "$ac_cv_lib_intl_ngettext" >&6; } -if test "x$ac_cv_lib_intl_ngettext" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 -$as_echo_n "checking for dgettext in -lintl... " >&6; } -if ${ac_cv_lib_intl_dgettext+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_XineramaQueryScreens" >&5 +$as_echo "$ac_cv_lib_Xext_XineramaQueryScreens" >&6; } +if test "x$ac_cv_lib_Xext_XineramaQueryScreens" = xyes; then : + have_xinerama=yes +else + true +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + + + # if that failed, look in -lXinerama (this is where it is in XFree86 4.1.) + if test "$have_xinerama" = no; then + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XineramaQueryScreens in -lXinerama" >&5 +$as_echo_n "checking for XineramaQueryScreens in -lXinerama... " >&6; } +if ${ac_cv_lib_Xinerama_XineramaQueryScreens+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lintl $LIBS" +LIBS="-lXinerama -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -7981,47 +8861,167 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char dgettext (); +char XineramaQueryScreens (); int main () { -return dgettext (); +return XineramaQueryScreens (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_intl_dgettext=yes + ac_cv_lib_Xinerama_XineramaQueryScreens=yes else - ac_cv_lib_intl_dgettext=no + ac_cv_lib_Xinerama_XineramaQueryScreens=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 -$as_echo "$ac_cv_lib_intl_dgettext" >&6; } -if test "x$ac_cv_lib_intl_dgettext" = xyes; then : - gt_cv_func_dgettext_libintl=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xinerama_XineramaQueryScreens" >&5 +$as_echo "$ac_cv_lib_Xinerama_XineramaQueryScreens" >&6; } +if test "x$ac_cv_lib_Xinerama_XineramaQueryScreens" = xyes; then : + have_xinerama=yes; XINERAMA_LIBS="-lXinerama" +else + true +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + + fi + fi + + # if that succeeded, then we've really got it. + if test "$have_xinerama" = yes; then + $as_echo "#define HAVE_XINERAMA 1" >>confdefs.h + + fi + +elif test "$with_xinerama" != no; then + echo "error: must be yes or no: --with-xinerama-ext=$with_xinerama" + exit 1 fi + +############################################################################### +# +# Check for the RANDR (Resize and Rotate) server extension. +# +# We need this to detect when the resolution of the desktop +# has changed out from under us (this is a newer, different +# mechanism than the XF86VMODE virtual viewports.) +# +############################################################################### + +have_randr=no +with_randr_req=unspecified + +# Check whether --with-randr-ext was given. +if test "${with_randr_ext+set}" = set; then : + withval=$with_randr_ext; with_randr="$withval"; with_randr_req="$withval" +else + with_randr=yes fi + + + case "$with_randr" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RANDR headers" >&5 +$as_echo_n "checking for RANDR headers... " >&6; } + d=$with_randr/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RANDR libs" >&5 +$as_echo_n "checking for RANDR libs... " >&6; } + d=$with_randr/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + with_randr_req="yes" + with_randr=$with_randr_req + ;; + + *) + echo "" + echo "error: argument to --with-randr-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_randr" = yes; then + + # first check for Xrandr.h + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xrandr.h" "ac_cv_header_X11_extensions_Xrandr_h" "#include +" +if test "x$ac_cv_header_X11_extensions_Xrandr_h" = xyes; then : + have_randr=yes fi - if test "$gt_cv_func_dgettext_libintl" != "yes" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 -$as_echo_n "checking if -liconv is needed to use gettext... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 -$as_echo "" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 -$as_echo_n "checking for ngettext in -lintl... " >&6; } -if ${ac_cv_lib_intl_ngettext+:} false; then : + CPPFLAGS="$ac_save_CPPFLAGS" + + # if that succeeded, then check for the XRR code in the libraries + if test "$have_randr" = yes; then + + # RANDR probably needs -lXrender + xrender_libs= + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRenderSetSubpixelOrder in -lXrender" >&5 +$as_echo_n "checking for XRenderSetSubpixelOrder in -lXrender... " >&6; } +if ${ac_cv_lib_Xrender_XRenderSetSubpixelOrder+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lintl -liconv $LIBS" +LIBS="-lXrender -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8031,34 +9031,65 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char ngettext (); +char XRenderSetSubpixelOrder (); int main () { -return ngettext (); +return XRenderSetSubpixelOrder (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_intl_ngettext=yes + ac_cv_lib_Xrender_XRenderSetSubpixelOrder=yes else - ac_cv_lib_intl_ngettext=no + ac_cv_lib_Xrender_XRenderSetSubpixelOrder=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 -$as_echo "$ac_cv_lib_intl_ngettext" >&6; } -if test "x$ac_cv_lib_intl_ngettext" = xyes; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 -$as_echo_n "checking for dcgettext in -lintl... " >&6; } -if ${ac_cv_lib_intl_dcgettext+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xrender_XRenderSetSubpixelOrder" >&5 +$as_echo "$ac_cv_lib_Xrender_XRenderSetSubpixelOrder" >&6; } +if test "x$ac_cv_lib_Xrender_XRenderSetSubpixelOrder" = xyes; then : + xrender_libs="-lXrender" +else + true +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + + + # first look for RANDR in -lXext + have_randr=no + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenInfo in -lXext" >&5 +$as_echo_n "checking for XRRGetScreenInfo in -lXext... " >&6; } +if ${ac_cv_lib_Xext_XRRGetScreenInfo+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lintl -liconv $LIBS" +LIBS="-lXext $xrender_libs -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8068,732 +9099,438 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char dcgettext (); +char XRRGetScreenInfo (); int main () { -return dcgettext (); +return XRRGetScreenInfo (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_intl_dcgettext=yes + ac_cv_lib_Xext_XRRGetScreenInfo=yes else - ac_cv_lib_intl_dcgettext=no + ac_cv_lib_Xext_XRRGetScreenInfo=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 -$as_echo "$ac_cv_lib_intl_dcgettext" >&6; } -if test "x$ac_cv_lib_intl_dcgettext" = xyes; then : - gt_cv_func_dgettext_libintl=yes - libintl_extra_libs=-liconv -else - : -fi - -else - : -fi - - fi - - # - # If we found libintl, then check in it for bind_textdomain_codeset(); - # we'll prefer libc if neither have bind_textdomain_codeset(), - # and both have dgettext and ngettext - # - if test "$gt_cv_func_dgettext_libintl" = "yes" ; then - glib_save_LIBS="$LIBS" - LIBS="$LIBS -lintl $libintl_extra_libs" - unset ac_cv_func_bind_textdomain_codeset - for ac_func in bind_textdomain_codeset -do : - ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" -if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_BIND_TEXTDOMAIN_CODESET 1 -_ACEOF - -fi -done - - LIBS="$glib_save_LIBS" - - if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then - gt_cv_func_dgettext_libc=no - else - if test "$gt_cv_func_dgettext_libc" = "yes" \ - && test "$gt_cv_func_ngettext_libc" = "yes"; then - gt_cv_func_dgettext_libintl=no - fi - fi - fi - fi - - if test "$gt_cv_func_dgettext_libc" = "yes" \ - || test "$gt_cv_func_dgettext_libintl" = "yes"; then - gt_cv_have_gettext=yes - fi - - if test "$gt_cv_func_dgettext_libintl" = "yes"; then - INTLLIBS="-lintl $libintl_extra_libs $INTL_MACOSX_LIBS" - fi - - if test "$gt_cv_have_gettext" = "yes"; then - -$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h - - # Extract the first word of "msgfmt", so it can be a program name with args. -set dummy msgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_MSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$MSGFMT" in - /*) - ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then - ac_cv_path_MSGFMT="$ac_dir/$ac_word" - break - fi - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" - ;; -esac -fi -MSGFMT="$ac_cv_path_MSGFMT" -if test "$MSGFMT" != "no"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 -$as_echo "$MSGFMT" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_XRRGetScreenInfo" >&5 +$as_echo "$ac_cv_lib_Xext_XRRGetScreenInfo" >&6; } +if test "x$ac_cv_lib_Xext_XRRGetScreenInfo" = xyes; then : + have_randr=yes; SAVER_LIBS="$SAVER_LIBS $xrender_libs" else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - if test "$MSGFMT" != "no"; then - glib_save_LIBS="$LIBS" - LIBS="$LIBS $INTLLIBS" - for ac_func in dcgettext -do : - ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" -if test "x$ac_cv_func_dcgettext" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_DCGETTEXT 1 -_ACEOF - -fi -done - - MSGFMT_OPTS= - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 -$as_echo_n "checking if msgfmt accepts -c... " >&6; } - cat >conftest.foo <<_ACEOF - -msgid "" -msgstr "" -"Content-Type: text/plain; charset=UTF-8\n" -"Project-Id-Version: test 1.0\n" -"PO-Revision-Date: 2007-02-15 12:01+0100\n" -"Last-Translator: test \n" -"Language-Team: C \n" -"MIME-Version: 1.0\n" -"Content-Transfer-Encoding: 8bit\n" - -_ACEOF -if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 - ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -echo "$as_me: failed input was:" >&5 -sed 's/^/| /' conftest.foo >&5 + true fi - # Extract the first word of "gmsgfmt", so it can be a program name with args. -set dummy gmsgfmt; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_GMSGFMT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $GMSGFMT in - [\\/]* | ?:[\\/]*) - ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" - ;; -esac -fi -GMSGFMT=$ac_cv_path_GMSGFMT -if test -n "$GMSGFMT"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 -$as_echo "$GMSGFMT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi + # if that failed, look in -lXrandr + if test "$have_randr" = no; then - # Extract the first word of "xgettext", so it can be a program name with args. -set dummy xgettext; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_XGETTEXT+:} false; then : - $as_echo_n "(cached) " >&6 -else - case "$XGETTEXT" in - /*) - ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then - ac_cv_path_XGETTEXT="$ac_dir/$ac_word" - break - fi - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" - ;; -esac -fi -XGETTEXT="$ac_cv_path_XGETTEXT" -if test "$XGETTEXT" != ":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 -$as_echo "$XGETTEXT" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenInfo in -lXrandr" >&5 +$as_echo_n "checking for XRRGetScreenInfo in -lXrandr... " >&6; } +if ${ac_cv_lib_Xrandr_XRRGetScreenInfo+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXrandr $xrender_libs -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XRRGetScreenInfo (); int main () { -extern int _nl_msg_cat_cntr; - return _nl_msg_cat_cntr +return XRRGetScreenInfo (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - CATOBJEXT=.gmo - DATADIRNAME=share -else - case $host in - *-*-solaris*) - ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" -if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : - CATOBJEXT=.gmo - DATADIRNAME=share + ac_cv_lib_Xrandr_XRRGetScreenInfo=yes else - CATOBJEXT=.mo - DATADIRNAME=lib -fi - - ;; - *-*-openbsd*) - CATOBJEXT=.mo - DATADIRNAME=share - ;; - *) - CATOBJEXT=.mo - DATADIRNAME=lib - ;; - esac + ac_cv_lib_Xrandr_XRRGetScreenInfo=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LIBS="$glib_save_LIBS" - INSTOBJEXT=.mo - else - gt_cv_have_gettext=no - fi - fi - +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xrandr_XRRGetScreenInfo" >&5 +$as_echo "$ac_cv_lib_Xrandr_XRRGetScreenInfo" >&6; } +if test "x$ac_cv_lib_Xrandr_XRRGetScreenInfo" = xyes; then : + have_randr=yes; SAVER_LIBS="$SAVER_LIBS -lXrandr $xrender_libs" +else + true fi + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - - if test "$gt_cv_have_gettext" = "yes" ; then - -$as_echo "#define ENABLE_NLS 1" >>confdefs.h - - fi - - if test "$XGETTEXT" != ":"; then - if $XGETTEXT --omit-header /dev/null 2> /dev/null; then - : ; - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 -$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } - XGETTEXT=":" - fi fi + fi - # We need to process the po/ directory. - POSUB=po - - ac_config_commands="$ac_config_commands default-1" - - - for lang in $ALL_LINGUAS; do - GMOFILES="$GMOFILES $lang.gmo" - POFILES="$POFILES $lang.po" - done - - - - - - - - - - - - + # if that succeeded, then we've really got it. + if test "$have_randr" = yes; then + $as_echo "#define HAVE_RANDR 1" >>confdefs.h - if test "$gt_cv_have_gettext" = "yes"; then - if test "x$ALL_LINGUAS" = "x"; then - LINGUAS= - else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 -$as_echo_n "checking for catalogs to be installed... " >&6; } - NEW_LINGUAS= - for presentlang in $ALL_LINGUAS; do - useit=no - if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then - desiredlanguages="$LINGUAS" - else - desiredlanguages="$ALL_LINGUAS" - fi - for desiredlang in $desiredlanguages; do - # Use the presentlang catalog if desiredlang is - # a. equal to presentlang, or - # b. a variant of presentlang (because in this case, - # presentlang can be used as a fallback for messages - # which are not translated in the desiredlang catalog). - case "$desiredlang" in - "$presentlang"*) useit=yes;; - esac - done - if test $useit = yes; then - NEW_LINGUAS="$NEW_LINGUAS $presentlang" - fi - done - LINGUAS=$NEW_LINGUAS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 -$as_echo "$LINGUAS" >&6; } - fi - if test -n "$LINGUAS"; then - for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done - fi - fi + # Now check for version 1.2 in the same libs. + # Try to compile, since on MacOS 10.5.7, headers are older than libs! + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenResources" >&5 +$as_echo_n "checking for XRRGetScreenResources... " >&6; } +if ${ac_cv_randr_12+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_randr_12=no - MKINSTALLDIRS= - if test -n "$ac_aux_dir"; then - MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" - fi - if test -z "$MKINSTALLDIRS"; then - MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" - fi + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include +int +main () +{ +XRRScreenResources *res = + XRRGetScreenResources (0, 0); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_randr_12=yes +else + ac_cv_randr_12=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CPPFLAGS="$ac_save_CPPFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_randr_12" >&5 +$as_echo "$ac_cv_randr_12" >&6; } + if test "$ac_cv_randr_12" = yes ; then + $as_echo "#define HAVE_RANDR_12 1" >>confdefs.h + fi +# AC_CHECK_X_LIB(c, XRRGetOutputInfo, [AC_DEFINE(HAVE_RANDR_12)], +# [true], $SAVER_LIBS) + fi - test -d po || mkdir po - if test "x$srcdir" != "x."; then - if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then - posrcprefix="$srcdir/" - else - posrcprefix="../$srcdir/" - fi - else - posrcprefix="../" - fi - rm -f po/POTFILES - sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ - < $srcdir/po/POTFILES.in > po/POTFILES -MKINSTALLDIRS="$INSTALL_DIRS" +elif test "$with_randr" != no; then + echo "error: must be yes or no: --with-randr-ext=$with_randr" + exit 1 +fi ############################################################################### # -# Check for -lXmu (some fucked up vendors don't ship it...) +# Check for XF86MiscSetGrabKeysState (but only bother if we are already +# using other XF86 stuff.) # ############################################################################### -have_xmu=no +have_xf86miscsetgrabkeysstate=no +if test "$have_xf86gamma" = yes -o "$have_xf86vmode" = yes; then ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/Xmu/Error.h" "ac_cv_header_X11_Xmu_Error_h" "#include - #include - #include -" -if test "x$ac_cv_header_X11_Xmu_Error_h" = xyes; then : - have_xmu=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" -if test "$have_xmu" = no ; then - XMU_SRCS='$(UTILS_SRC)/xmu.c' - XMU_OBJS='$(UTILS_BIN)/xmu.o' - XMU_LIBS='' -else - XMU_SRCS='' - XMU_OBJS='' - XMU_LIBS='-lXmu' - $as_echo "#define HAVE_XMU 1" >>confdefs.h - -fi + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" -############################################################################### -# -# Check for the SunOS 4.1.x _get_wmShellWidgetClass bug. -# See comp.windows.x FAQ question 124. The right fix is to -# get OpenWindows 3.0 patches 100512-02 and 100573-03. -# -############################################################################### + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" -if test "$have_xmu" = yes ; then - case "$host" in - *-sunos4*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the SunOS 4.1.x _get_wmShellWidgetClass bug" >&5 -$as_echo_n "checking for the SunOS 4.1.x _get_wmShellWidgetClass bug... " >&6; } -if ${ac_cv_sunos_xmu_bug+:} false; then : + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86MiscSetGrabKeysState in -lXxf86misc" >&5 +$as_echo_n "checking for XF86MiscSetGrabKeysState in -lXxf86misc... " >&6; } +if ${ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState+:} false; then : $as_echo_n "(cached) " >&6 else - ac_save_LDFLAGS="$LDFLAGS" - if test \! -z "$x_libraries" ; then - LDFLAGS="$LDFLAGS -L$x_libraries" - fi - # Note: this trick never works! (Generally.) - # We're only getting away with using AC_TRY_LINK - # with X libraries because we know it's SunOS. - LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXxf86misc -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XF86MiscSetGrabKeysState (); int main () { - +return XF86MiscSetGrabKeysState (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_sunos_xmu_bug=no + ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState=yes else - ac_cv_sunos_xmu_bug=yes + ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$ac_save_LDFLAGS" +LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sunos_xmu_bug" >&5 -$as_echo "$ac_cv_sunos_xmu_bug" >&6; } - if test "$ac_cv_sunos_xmu_bug" = yes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler understands -static" >&5 -$as_echo_n "checking whether the compiler understands -static... " >&6; } -if ${ac_cv_ld_static+:} false; then : - $as_echo_n "(cached) " >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" >&5 +$as_echo "$ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" >&6; } +if test "x$ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" = xyes; then : + have_xf86miscsetgrabkeysstate=yes else - ac_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -static" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + true +fi -int -main () -{ + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_ld_static=yes -else - ac_cv_ld_static=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$ac_save_LDFLAGS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_ld_static" >&5 -$as_echo "$ac_cv_ld_static" >&6; } - if test "$ac_cv_ld_static" = yes ; then - LDFLAGS="$LDFLAGS -static" - else - LDFLAGS="$LDFLAGS -Bstatic" - fi - fi - ;; - esac + if test "$have_xf86miscsetgrabkeysstate" = yes ; then + SAVER_LIBS="$SAVER_LIBS -lXxf86misc" + $as_echo "#define HAVE_XF86MISCSETGRABKEYSSTATE 1" >>confdefs.h + + fi fi ############################################################################### # -# Handle the --with-hackdir option +# Check for the XINPUT server extension. # ############################################################################### -have_hackdir=yes -with_hackdir_req=unspecified +have_xinput=no +with_xinput_req=unspecified -# Check whether --with-hackdir was given. -if test "${with_hackdir+set}" = set; then : - withval=$with_hackdir; with_hackdir="$withval"; with_hackdir_req="$withval" +# Check whether --with-xinput-ext was given. +if test "${with_xinput_ext+set}" = set; then : + withval=$with_xinput_ext; with_xinput="$withval"; with_xinput_req="$withval" else - with_hackdir=yes + with_xinput=yes fi -if test x"$with_hackdir" = xyes; then - HACKDIR='${libexecdir}/xscreensaver' -elif test x"$with_hackdir" = xno; then - HACKDIR='${bindir}' -else - HACKDIR=$with_hackdir -fi -# canonicalize slashes. -HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` + case "$with_xinput" in + yes) ;; + no) ;; -# Expand HACKDIR as HACKDIR_FULL -HACKDIR_FULL=`eval eval eval eval eval eval eval eval eval echo $HACKDIR` + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINPUT headers" >&5 +$as_echo_n "checking for XINPUT headers... " >&6; } + d=$with_xinput/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi -# This option used to be called --enable-subdir; make sure that is no longer -# used, since configure brain-damagedly ignores unknown --enable options. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINPUT libs" >&5 +$as_echo_n "checking for XINPUT libs... " >&6; } + d=$with_xinput/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi -obsolete_enable= -# Check whether --enable-subdir was given. -if test "${enable_subdir+set}" = set; then : - enableval=$enable_subdir; obsolete_enable=yes -fi + # replace the directory string with "yes". + with_xinput_req="yes" + with_xinput=$with_xinput_req + ;; -if test -n "$obsolete_enable"; then - echo "error: the --enable-subdir option has been replaced with" - echo " the new --with-hackdir option; see \`configure --help'" - echo " for more information." - exit 1 + *) + echo "" + echo "error: argument to --with-xinput-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_xinput" = yes; then + + # first check for Xinput.h + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XInput.h" "ac_cv_header_X11_extensions_XInput_h" "#include +" +if test "x$ac_cv_header_X11_extensions_XInput_h" = xyes; then : + have_xinput=yes fi -############################################################################### -# -# Handle the --with-configdir option -# Help for --with-x-app-defaults option added. -# -############################################################################### + CPPFLAGS="$ac_save_CPPFLAGS" -have_configdir=yes -with_configdir_req=unspecified + # if that succeeded, then check for libXi + if test "$have_xinput" = yes; then + have_xinput=no -# Check whether --with-configdir was given. -if test "${with_configdir+set}" = set; then : - withval=$with_configdir; with_configdir="$withval"; with_configdir_req="$withval" + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XListInputDevices in -lXi" >&5 +$as_echo_n "checking for XListInputDevices in -lXi... " >&6; } +if ${ac_cv_lib_Xi_XListInputDevices+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXi -lXext -lX11 $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XListInputDevices (); +int +main () +{ +return XListInputDevices (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_Xi_XListInputDevices=yes else - with_configdir=yes + ac_cv_lib_Xi_XListInputDevices=no fi - - -if test x"$with_configdir" = xyes; then - HACK_CONF_DIR='${datadir}/xscreensaver/config' -elif test x"$with_configdir" = xno; then - echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" - exit 1 +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xi_XListInputDevices" >&5 +$as_echo "$ac_cv_lib_Xi_XListInputDevices" >&6; } +if test "x$ac_cv_lib_Xi_XListInputDevices" = xyes; then : + have_xinput=yes; SAVER_LIBS="$SAVER_LIBS -lXi" else - # there must be a better way than this... - if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then - # absolute path - HACK_CONF_DIR=$with_configdir - else - # relative path - HACK_CONF_DIR="\${exec_prefix}$with_configdir" - fi + true fi + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + fi + # if that succeeded, then we've really got it. + if test "$have_xinput" = yes; then + $as_echo "#define HAVE_XINPUT 1" >>confdefs.h -############################################################################### -# -# Check for the SGI SCREEN_SAVER server extension. -# -############################################################################### - -#have_sgi=no -#with_sgi_req=unspecified -#AC_ARG_WITH(sgi-ext, -#[Except where noted, all of the --with options below can also take a -#directory argument: for example, `--with-motif=/opt/Motif'. That would -#cause /opt/Motif/include/ to be added to the -I list, and /opt/Motif/lib/ -#to be added to the -L list, assuming those directories exist. -# -#By default, support for each of these options will be built in, if the -#relevant library routines exist. At run time, they will then be used -#only if the X server being used supports them. Each --with option has -#a corresponding --without option, to override building support for them -#at all. -# -#Screen blanking and idle-detection options: -# -# --with-sgi-ext Include support for the SGI SCREEN_SAVER extension.], -# [with_sgi="$withval"; with_sgi_req="$withval"],[with_sgi=yes]) -# -#HANDLE_X_PATH_ARG(with_sgi, --with-sgi-ext, SGI SCREEN_SAVER) -# -#if test "$with_sgi" = yes; then -# AC_CHECK_X_HEADER(X11/extensions/XScreenSaver.h, -# [have_sgi=yes -# AC_DEFINE(HAVE_SGI_SAVER_EXTENSION)],, -# [#include ]) -# -#elif test "$with_sgi" != no; then -# echo "error: must be yes or no: --with-sgi-ext=$with_sgi" -# exit 1 -#fi - - -############################################################################### -# -# Check for the XIDLE server extension. -# -############################################################################### - -#have_xidle=no -#with_xidle_req=unspecified -#AC_ARG_WITH(xidle-ext, -#[ --with-xidle-ext Include support for the XIDLE extension.], -# [with_xidle="$withval"; with_xidle_req="$withval"],[with_xidle=yes]) -# -#HANDLE_X_PATH_ARG(with_xidle, --with-xidle-ext, XIDLE) -# -#if test "$with_xidle" = yes; then -# AC_CHECK_X_HEADER(X11/extensions/xidle.h, -# [have_xidle=yes -# AC_DEFINE(HAVE_XIDLE_EXTENSION)],, -# [#include ]) -#elif test "$with_xidle" != no; then -# echo "error: must be yes or no: --with-xidle-ext=$with_xidle" -# exit 1 -#fi - - -############################################################################### -# -# Check for the SGI-VIDEO-CONTROL server extension. -# -############################################################################### + fi -#have_sgivc=no -#with_sgivc_req=unspecified -#AC_ARG_WITH(sgivc-ext, -#[ --with-sgivc-ext Include support for the SGI-VIDEO-CONTROL extension.], -# [with_sgivc="$withval"; with_sgivc_req="$withval"],[with_sgivc=yes]) -# -#HANDLE_X_PATH_ARG(with_sgivc, --with-sgivc-ext, SGI-VIDEO-CONTROL) -# -#if test "$with_sgivc" = yes; then -# -# # first check for XSGIvc.h -# AC_CHECK_X_HEADER(X11/extensions/XSGIvc.h, [have_sgivc=yes],, -# [#include ]) -# -# # if that succeeded, then check for the -lXsgivc -# if test "$have_sgivc" = yes; then -# have_sgivc=no -# AC_CHECK_X_LIB(Xsgivc, XSGIvcQueryGammaMap, -# [have_sgivc=yes; SAVER_LIBS="$SAVER_LIBS -lXsgivc"], [true], -# -lXext -lX11) -# fi -# -# # if that succeeded, then we've really got it. -# if test "$have_sgivc" = yes; then -# AC_DEFINE(HAVE_SGI_VC_EXTENSION) -# fi -# -#elif test "$with_sgivc" != no; then -# echo "error: must be yes or no: --with-sgivc-ext=$with_sgivc" -# exit 1 -#fi +elif test "$with_xinput" != no; then + echo "error: must be yes or no: --with-xinput-ext=$with_xinput" + exit 1 +fi ############################################################################### # -# Check for the DPMS server extension. +# Check for the XF86VMODE server extension (for gamma fading.) # ############################################################################### -have_dpms=no -with_dpms_req=unspecified +have_xf86gamma=no +have_xf86gamma_ramp=no +with_xf86gamma_req=unspecified -# Check whether --with-dpms-ext was given. -if test "${with_dpms_ext+set}" = set; then : - withval=$with_dpms_ext; with_dpms="$withval"; with_dpms_req="$withval" +# Check whether --with-xf86gamma-ext was given. +if test "${with_xf86gamma_ext+set}" = set; then : + withval=$with_xf86gamma_ext; with_xf86gamma="$withval"; with_xf86gamma_req="$withval" else - with_dpms=yes + with_xf86gamma=yes fi - case "$with_dpms" in + case "$with_xf86gamma" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMS headers" >&5 -$as_echo_n "checking for DPMS headers... " >&6; } - d=$with_dpms/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86gamma headers" >&5 +$as_echo_n "checking for xf86gamma headers... " >&6; } + d=$with_xf86gamma/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -8803,9 +9540,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMS libs" >&5 -$as_echo_n "checking for DPMS libs... " >&6; } - d=$with_dpms/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86gamma libs" >&5 +$as_echo_n "checking for xf86gamma libs... " >&6; } + d=$with_xf86gamma/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -8816,13 +9553,13 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_dpms_req="yes" - with_dpms=$with_dpms_req + with_xf86gamma_req="yes" + with_xf86gamma=$with_xf86gamma_req ;; *) echo "" - echo "error: argument to --with-dpms-ext must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-xf86gamma-ext must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" echo " the -I list, and \`DIR/lib' will be added to the -L list." exit 1 @@ -8830,9 +9567,12 @@ $as_echo "not found ($d: no such directory)" >&6; } esac -if test "$with_dpms" = yes; then +if test "$with_xf86gamma" = yes; then - # first check for dpms.h + # first check for xf86vmode.h, if we haven't already + if test "$have_xf86vmode" = yes; then + have_xf86gamma=yes + else ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then @@ -8840,21 +9580,19 @@ if test "$with_dpms" = yes; then fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/dpms.h" "ac_cv_header_X11_extensions_dpms_h" "#include - #include + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/xf86vmode.h" "ac_cv_header_X11_extensions_xf86vmode_h" "#include " -if test "x$ac_cv_header_X11_extensions_dpms_h" = xyes; then : - have_dpms=yes +if test "x$ac_cv_header_X11_extensions_xf86vmode_h" = xyes; then : + have_xf86gamma=yes fi CPPFLAGS="$ac_save_CPPFLAGS" + fi - # if that succeeded, then check for the DPMS code in the libraries - if test "$have_dpms" = yes; then - - # first look in -lXext (this is where it is with XFree86 4.0) - have_dpms=no + # if that succeeded, then check for the -lXxf86vm + if test "$have_xf86gamma" = yes; then + have_xf86gamma=no ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -8874,13 +9612,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMSInfo in -lXext" >&5 -$as_echo_n "checking for DPMSInfo in -lXext... " >&6; } -if ${ac_cv_lib_Xext_DPMSInfo+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeSetGamma in -lXxf86vm" >&5 +$as_echo_n "checking for XF86VidModeSetGamma in -lXxf86vm... " >&6; } +if ${ac_cv_lib_Xxf86vm_XF86VidModeSetGamma+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXext -lXext -lX11 $LIBS" +LIBS="-lXxf86vm -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8890,28 +9628,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char DPMSInfo (); +char XF86VidModeSetGamma (); int main () { -return DPMSInfo (); +return XF86VidModeSetGamma (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xext_DPMSInfo=yes + ac_cv_lib_Xxf86vm_XF86VidModeSetGamma=yes else - ac_cv_lib_Xext_DPMSInfo=no + ac_cv_lib_Xxf86vm_XF86VidModeSetGamma=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_DPMSInfo" >&5 -$as_echo "$ac_cv_lib_Xext_DPMSInfo" >&6; } -if test "x$ac_cv_lib_Xext_DPMSInfo" = xyes; then : - have_dpms=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" >&5 +$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" >&6; } +if test "x$ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" = xyes; then : + have_xf86gamma=yes else true fi @@ -8920,9 +9658,11 @@ fi LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" + fi - # if that failed, look in -lXdpms (this is where it was in XFree86 3.x) - if test "$have_dpms" = no; then + # check for the Ramp versions of the functions too. + if test "$have_xf86gamma" = yes; then + have_xf86gamma_ramp=no ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -8942,13 +9682,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DPMSInfo in -lXdpms" >&5 -$as_echo_n "checking for DPMSInfo in -lXdpms... " >&6; } -if ${ac_cv_lib_Xdpms_DPMSInfo+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeSetGammaRamp in -lXxf86vm" >&5 +$as_echo_n "checking for XF86VidModeSetGammaRamp in -lXxf86vm... " >&6; } +if ${ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXdpms -lXext -lX11 $LIBS" +LIBS="-lXxf86vm -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8958,28 +9698,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char DPMSInfo (); +char XF86VidModeSetGammaRamp (); int main () { -return DPMSInfo (); +return XF86VidModeSetGammaRamp (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xdpms_DPMSInfo=yes + ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp=yes else - ac_cv_lib_Xdpms_DPMSInfo=no + ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xdpms_DPMSInfo" >&5 -$as_echo "$ac_cv_lib_Xdpms_DPMSInfo" >&6; } -if test "x$ac_cv_lib_Xdpms_DPMSInfo" = xyes; then : - have_dpms=yes; XDPMS_LIBS="-lXdpms" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" >&5 +$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" >&6; } +if test "x$ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" = xyes; then : + have_xf86gamma_ramp=yes else true fi @@ -8988,48 +9728,56 @@ fi LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" - fi fi + # if those tests succeeded, then we've really got the functions. + if test "$have_xf86gamma" = yes; then + $as_echo "#define HAVE_XF86VMODE_GAMMA 1" >>confdefs.h - # if that succeeded, then we've really got it. - if test "$have_dpms" = yes; then - $as_echo "#define HAVE_DPMS_EXTENSION 1" >>confdefs.h + fi + + if test "$have_xf86gamma_ramp" = yes; then + $as_echo "#define HAVE_XF86VMODE_GAMMA_RAMP 1" >>confdefs.h fi -elif test "$with_dpms" != no; then - echo "error: must be yes or no: --with-dpms-ext=$with_dpms" + # pull in the lib, if we haven't already + if test "$have_xf86gamma" = yes -a "$have_xf86vmode" = no; then + SAVER_LIBS="$SAVER_LIBS -lXxf86vm" + fi + +elif test "$with_xf86gamma" != no; then + echo "error: must be yes or no: --with-xf86gamma-ext=$with_xf86vmode" exit 1 fi ############################################################################### # -# Check for the XINERAMA server extension. +# Check for the XIDLE server extension. # ############################################################################### -have_xinerama=no -with_xinerama_req=unspecified +have_xidle=no +with_xidle_req=unspecified -# Check whether --with-xinerama-ext was given. -if test "${with_xinerama_ext+set}" = set; then : - withval=$with_xinerama_ext; with_xinerama="$withval"; with_xinerama_req="$withval" +# Check whether --with-xidle-ext was given. +if test "${with_xidle_ext+set}" = set; then : + withval=$with_xidle_ext; with_xidle="$withval"; with_xidle_req="$withval" else - with_xinerama=yes + with_xidle=yes fi - case "$with_xinerama" in + case "$with_xidle" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINERAMA headers" >&5 -$as_echo_n "checking for XINERAMA headers... " >&6; } - d=$with_xinerama/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XIDLE headers" >&5 +$as_echo_n "checking for XIDLE headers... " >&6; } + d=$with_xidle/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9039,9 +9787,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINERAMA libs" >&5 -$as_echo_n "checking for XINERAMA libs... " >&6; } - d=$with_xinerama/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XIDLE libs" >&5 +$as_echo_n "checking for XIDLE libs... " >&6; } + d=$with_xidle/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9051,21 +9799,80 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - # replace the directory string with "yes". - with_xinerama_req="yes" - with_xinerama=$with_xinerama_req - ;; + # replace the directory string with "yes". + with_xidle_req="yes" + with_xidle=$with_xidle_req + ;; + + *) + echo "" + echo "error: argument to --with-xidle-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_xidle" = yes; then + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/xidle.h" "ac_cv_header_X11_extensions_xidle_h" "#include +" +if test "x$ac_cv_header_X11_extensions_xidle_h" = xyes; then : + have_xidle=yes + $as_echo "#define HAVE_XIDLE_EXTENSION 1" >>confdefs.h + +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" +elif test "$with_xidle" != no; then + echo "error: must be yes or no: --with-xidle-ext=$with_xidle" + exit 1 +fi + + +############################################################################### +# +# Check for the MIT-SCREEN-SAVER server extension. +# +############################################################################### + +have_mit=no +with_mit=no +with_mit_req=unspecified +#AC_ARG_WITH(mit-ext, +#[ --with-mit-ext Include support for the MIT-SCREEN-SAVER extension.], +# [with_mit="$withval"; with_mit_req="$withval"],[with_mit=no]) +#HANDLE_X_PATH_ARG(with_mit, --with-mit-ext, MIT-SCREEN-SAVER) + +if test "$with_mit" = yes; then - *) - echo "" - echo "error: argument to --with-xinerama-ext must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/scrnsaver.h" "ac_cv_header_X11_extensions_scrnsaver_h" "#include +" +if test "x$ac_cv_header_X11_extensions_scrnsaver_h" = xyes; then : + have_mit=yes +fi + CPPFLAGS="$ac_save_CPPFLAGS" + + # Now check to see if it's really in the library; XF86Free-3.3 ships + # scrnsaver.h, but doesn't include the code in libXext.a, the idiots! + # + if test "$have_mit" = yes; then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -9085,13 +9892,13 @@ $as_echo "not found ($d: no such directory)" >&6; } CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XScreenSaverQueryInfo in -lXss" >&5 -$as_echo_n "checking for XScreenSaverQueryInfo in -lXss... " >&6; } -if ${ac_cv_lib_Xss_XScreenSaverQueryInfo+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XScreenSaverRegister in -lXext" >&5 +$as_echo_n "checking for XScreenSaverRegister in -lXext... " >&6; } +if ${ac_cv_lib_Xext_XScreenSaverRegister+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXss -lXss -lX11 $LIBS" +LIBS="-lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9101,30 +9908,30 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XScreenSaverQueryInfo (); +char XScreenSaverRegister (); int main () { -return XScreenSaverQueryInfo (); +return XScreenSaverRegister (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xss_XScreenSaverQueryInfo=yes + ac_cv_lib_Xext_XScreenSaverRegister=yes else - ac_cv_lib_Xss_XScreenSaverQueryInfo=no + ac_cv_lib_Xext_XScreenSaverRegister=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xss_XScreenSaverQueryInfo" >&5 -$as_echo "$ac_cv_lib_Xss_XScreenSaverQueryInfo" >&6; } -if test "x$ac_cv_lib_Xss_XScreenSaverQueryInfo" = xyes; then : - X_EXTRA_LIBS="$X_EXTRA_LIBS -lXss" -else +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_XScreenSaverRegister" >&5 +$as_echo "$ac_cv_lib_Xext_XScreenSaverRegister" >&6; } +if test "x$ac_cv_lib_Xext_XScreenSaverRegister" = xyes; then : true +else + have_mit=no fi CPPFLAGS="$ac_save_CPPFLAGS" @@ -9132,31 +9939,9 @@ fi # LIBS="$ac_save_LIBS" - -if test "$with_xinerama" = yes; then - - # first check for Xinerama.h - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xinerama.h" "ac_cv_header_X11_extensions_Xinerama_h" "#include -" -if test "x$ac_cv_header_X11_extensions_Xinerama_h" = xyes; then : - have_xinerama=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" - - # if that succeeded, then check for the XINERAMA code in the libraries - if test "$have_xinerama" = yes; then - - # first look in -lXext - have_xinerama=no + if test "$have_mit" = no; then + # Fuck! Looks like XF86Free-3.3 actually puts it in XExExt instead + # of in Xext. Thank you master, may I have another. ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -9176,13 +9961,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XineramaQueryScreens in -lXext" >&5 -$as_echo_n "checking for XineramaQueryScreens in -lXext... " >&6; } -if ${ac_cv_lib_Xext_XineramaQueryScreens+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XScreenSaverRegister in -lXExExt" >&5 +$as_echo_n "checking for XScreenSaverRegister in -lXExExt... " >&6; } +if ${ac_cv_lib_XExExt_XScreenSaverRegister+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXext -lXext -lX11 $LIBS" +LIBS="-lXExExt -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9192,28 +9977,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XineramaQueryScreens (); +char XScreenSaverRegister (); int main () { -return XineramaQueryScreens (); +return XScreenSaverRegister (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xext_XineramaQueryScreens=yes + ac_cv_lib_XExExt_XScreenSaverRegister=yes else - ac_cv_lib_Xext_XineramaQueryScreens=no + ac_cv_lib_XExExt_XScreenSaverRegister=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_XineramaQueryScreens" >&5 -$as_echo "$ac_cv_lib_Xext_XineramaQueryScreens" >&6; } -if test "x$ac_cv_lib_Xext_XineramaQueryScreens" = xyes; then : - have_xinerama=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_XExExt_XScreenSaverRegister" >&5 +$as_echo "$ac_cv_lib_XExExt_XScreenSaverRegister" >&6; } +if test "x$ac_cv_lib_XExExt_XScreenSaverRegister" = xyes; then : + have_mit=yes; SAVER_LIBS="$SAVER_LIBS -lXExExt" else true fi @@ -9222,9 +10007,13 @@ fi LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" + fi - # if that failed, look in -lXinerama (this is where it is in XFree86 4.1.) - if test "$have_xinerama" = no; then + if test "$have_mit" = no; then + # Double fuck! Looks like some versions of XFree86 (whichever version + # it is that comes with RedHat Linux 2.0 -- I can't find a version + # number) put this garbage in Xss instead of Xext. Thank you master, + # may I have another. ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -9244,13 +10033,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XineramaQueryScreens in -lXinerama" >&5 -$as_echo_n "checking for XineramaQueryScreens in -lXinerama... " >&6; } -if ${ac_cv_lib_Xinerama_XineramaQueryScreens+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XScreenSaverRegister in -lXss" >&5 +$as_echo_n "checking for XScreenSaverRegister in -lXss... " >&6; } +if ${ac_cv_lib_Xss_XScreenSaverRegister+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXinerama -lXext -lX11 $LIBS" +LIBS="-lXss -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9260,28 +10049,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XineramaQueryScreens (); +char XScreenSaverRegister (); int main () { -return XineramaQueryScreens (); +return XScreenSaverRegister (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xinerama_XineramaQueryScreens=yes + ac_cv_lib_Xss_XScreenSaverRegister=yes else - ac_cv_lib_Xinerama_XineramaQueryScreens=no + ac_cv_lib_Xss_XScreenSaverRegister=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xinerama_XineramaQueryScreens" >&5 -$as_echo "$ac_cv_lib_Xinerama_XineramaQueryScreens" >&6; } -if test "x$ac_cv_lib_Xinerama_XineramaQueryScreens" = xyes; then : - have_xinerama=yes; XINERAMA_LIBS="-lXinerama" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xss_XScreenSaverRegister" >&5 +$as_echo "$ac_cv_lib_Xss_XScreenSaverRegister" >&6; } +if test "x$ac_cv_lib_Xss_XScreenSaverRegister" = xyes; then : + have_mit=yes; SAVER_LIBS="$SAVER_LIBS -lXss" else true fi @@ -9291,46 +10080,134 @@ fi # LIBS="$ac_save_LIBS" fi + + if test "$have_mit" = yes; then +# AC_DEFINE(HAVE_MIT_SAVER_EXTENSION) + echo "Using the MIT-SCREEN-SAVER extension will crash your server. Don't." + exit 1 + fi + fi - # if that succeeded, then we've really got it. - if test "$have_xinerama" = yes; then - $as_echo "#define HAVE_XINERAMA 1" >>confdefs.h +elif test "$with_mit" != no; then + echo "error: must be yes or no: --with-mit-ext=$with_mit" + exit 1 +fi + + +############################################################################### +# +# Check for the SGI SCREEN_SAVER server extension. +# +############################################################################### + +have_sgi=no +with_sgi_req=unspecified + +# Check whether --with-sgi-ext was given. +if test "${with_sgi_ext+set}" = set; then : + withval=$with_sgi_ext; with_sgi="$withval"; with_sgi_req="$withval" +else + with_sgi=$ac_irix +fi + + + + case "$with_sgi" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SGI SCREEN_SAVER headers" >&5 +$as_echo_n "checking for SGI SCREEN_SAVER headers... " >&6; } + d=$with_sgi/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SGI SCREEN_SAVER libs" >&5 +$as_echo_n "checking for SGI SCREEN_SAVER libs... " >&6; } + d=$with_sgi/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + with_sgi_req="yes" + with_sgi=$with_sgi_req + ;; + + *) + echo "" + echo "error: argument to --with-sgi-ext must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_sgi" = yes; then + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XScreenSaver.h" "ac_cv_header_X11_extensions_XScreenSaver_h" "#include +" +if test "x$ac_cv_header_X11_extensions_XScreenSaver_h" = xyes; then : + have_sgi=yes + $as_echo "#define HAVE_SGI_SAVER_EXTENSION 1" >>confdefs.h -elif test "$with_xinerama" != no; then - echo "error: must be yes or no: --with-xinerama-ext=$with_xinerama" +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" + +elif test "$with_sgi" != no; then + echo "error: must be yes or no: --with-sgi-ext=$with_sgi" exit 1 fi ############################################################################### # -# Check for the XINPUT server extension. +# Check for the SGI-VIDEO-CONTROL server extension. # ############################################################################### -have_xinput=no -with_xinput_req=unspecified +have_sgivc=no +with_sgivc_req=unspecified -# Check whether --with-xinput-ext was given. -if test "${with_xinput_ext+set}" = set; then : - withval=$with_xinput_ext; with_xinput="$withval"; with_xinput_req="$withval" +# Check whether --with-sgivc-ext was given. +if test "${with_sgivc_ext+set}" = set; then : + withval=$with_sgivc_ext; with_sgivc="$withval"; with_sgivc_req="$withval" else - with_xinput=yes + with_sgivc=$ac_irix fi - case "$with_xinput" in + case "$with_sgivc" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINPUT headers" >&5 -$as_echo_n "checking for XINPUT headers... " >&6; } - d=$with_xinput/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SGI-VIDEO-CONTROL headers" >&5 +$as_echo_n "checking for SGI-VIDEO-CONTROL headers... " >&6; } + d=$with_sgivc/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9340,9 +10217,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XINPUT libs" >&5 -$as_echo_n "checking for XINPUT libs... " >&6; } - d=$with_xinput/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SGI-VIDEO-CONTROL libs" >&5 +$as_echo_n "checking for SGI-VIDEO-CONTROL libs... " >&6; } + d=$with_sgivc/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9353,13 +10230,13 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_xinput_req="yes" - with_xinput=$with_xinput_req + with_sgivc_req="yes" + with_sgivc=$with_sgivc_req ;; *) echo "" - echo "error: argument to --with-xinput-ext must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-sgivc-ext must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" echo " the -I list, and \`DIR/lib' will be added to the -L list." exit 1 @@ -9367,9 +10244,9 @@ $as_echo "not found ($d: no such directory)" >&6; } esac -if test "$with_xinput" = yes; then +if test "$with_sgivc" = yes; then - # first check for Xinput.h + # first check for XSGIvc.h ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then @@ -9377,18 +10254,18 @@ if test "$with_xinput" = yes; then fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XInput.h" "ac_cv_header_X11_extensions_XInput_h" "#include + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XSGIvc.h" "ac_cv_header_X11_extensions_XSGIvc_h" "#include " -if test "x$ac_cv_header_X11_extensions_XInput_h" = xyes; then : - have_xinput=yes +if test "x$ac_cv_header_X11_extensions_XSGIvc_h" = xyes; then : + have_sgivc=yes fi CPPFLAGS="$ac_save_CPPFLAGS" - # if that succeeded, then check for libXi - if test "$have_xinput" = yes; then - have_xinput=no + # if that succeeded, then check for the -lXsgivc + if test "$have_sgivc" = yes; then + have_sgivc=no ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -9408,13 +10285,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XListInputDevices in -lXi" >&5 -$as_echo_n "checking for XListInputDevices in -lXi... " >&6; } -if ${ac_cv_lib_Xi_XListInputDevices+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSGIvcQueryGammaMap in -lXsgivc" >&5 +$as_echo_n "checking for XSGIvcQueryGammaMap in -lXsgivc... " >&6; } +if ${ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXi -lXext -lX11 $LIBS" +LIBS="-lXsgivc -lXext -lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9424,28 +10301,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XListInputDevices (); +char XSGIvcQueryGammaMap (); int main () { -return XListInputDevices (); +return XSGIvcQueryGammaMap (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xi_XListInputDevices=yes + ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap=yes else - ac_cv_lib_Xi_XListInputDevices=no + ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xi_XListInputDevices" >&5 -$as_echo "$ac_cv_lib_Xi_XListInputDevices" >&6; } -if test "x$ac_cv_lib_Xi_XListInputDevices" = xyes; then : - have_xinput=yes; SAVER_LIBS="$SAVER_LIBS -lXi" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap" >&5 +$as_echo "$ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap" >&6; } +if test "x$ac_cv_lib_Xsgivc_XSGIvcQueryGammaMap" = xyes; then : + have_sgivc=yes; SAVER_LIBS="$SAVER_LIBS -lXsgivc" else true fi @@ -9457,43 +10334,43 @@ fi fi # if that succeeded, then we've really got it. - if test "$have_xinput" = yes; then - $as_echo "#define HAVE_XINPUT 1" >>confdefs.h + if test "$have_sgivc" = yes; then + $as_echo "#define HAVE_SGI_VC_EXTENSION 1" >>confdefs.h fi -elif test "$with_xinput" != no; then - echo "error: must be yes or no: --with-xinput-ext=$with_xinput" +elif test "$with_sgivc" != no; then + echo "error: must be yes or no: --with-sgivc-ext=$with_sgivc" exit 1 fi ############################################################################### # -# Check for the XF86VMODE server extension (for virtual screens.) +# Check for the SGI XReadDisplay server extension. # ############################################################################### -have_xf86vmode=no -with_xf86vmode_req=unspecified +have_readdisplay=no +with_readdisplay_req=unspecified -# Check whether --with-xf86vmode-ext was given. -if test "${with_xf86vmode_ext+set}" = set; then : - withval=$with_xf86vmode_ext; with_xf86vmode="$withval"; with_xf86vmode_req="$withval" +# Check whether --with-readdisplay was given. +if test "${with_readdisplay+set}" = set; then : + withval=$with_readdisplay; with_readdisplay="$withval"; with_readdisplay_req="$withval" else - with_xf86vmode=yes + with_readdisplay=$ac_irix fi - case "$with_xf86vmode" in + case "$with_readdisplay" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86vmode headers" >&5 -$as_echo_n "checking for xf86vmode headers... " >&6; } - d=$with_xf86vmode/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XReadDisplay headers" >&5 +$as_echo_n "checking for XReadDisplay headers... " >&6; } + d=$with_readdisplay/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9503,9 +10380,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86vmode libs" >&5 -$as_echo_n "checking for xf86vmode libs... " >&6; } - d=$with_xf86vmode/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XReadDisplay libs" >&5 +$as_echo_n "checking for XReadDisplay libs... " >&6; } + d=$with_readdisplay/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9516,152 +10393,69 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_xf86vmode_req="yes" - with_xf86vmode=$with_xf86vmode_req + with_readdisplay_req="yes" + with_readdisplay=$with_readdisplay_req ;; *) echo "" - echo "error: argument to --with-xf86vmode-ext must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-readdisplay must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - - -VIDMODE_LIBS="" - -if test "$with_xf86vmode" = yes; then - - # first check for xf86vmode.h - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/xf86vmode.h" "ac_cv_header_X11_extensions_xf86vmode_h" "#include -" -if test "x$ac_cv_header_X11_extensions_xf86vmode_h" = xyes; then : - have_xf86vmode=yes -fi - + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac - CPPFLAGS="$ac_save_CPPFLAGS" - # if that succeeded, then check for the -lXxf86vm - if test "$have_xf86vmode" = yes; then - have_xf86vmode=no +if test "$with_readdisplay" = yes; then ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - if test \! -z "$includedir" ; then CPPFLAGS="$CPPFLAGS -I$includedir" fi - # note: $X_CFLAGS includes $x_includes CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeGetViewPort in -lXxf86vm" >&5 -$as_echo_n "checking for XF86VidModeGetViewPort in -lXxf86vm... " >&6; } -if ${ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXxf86vm -lXext -lX11 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/readdisplay.h" "ac_cv_header_X11_extensions_readdisplay_h" "#include +" +if test "x$ac_cv_header_X11_extensions_readdisplay_h" = xyes; then : + $as_echo "#define HAVE_READ_DISPLAY_EXTENSION 1" >>confdefs.h -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XF86VidModeGetViewPort (); -int -main () -{ -return XF86VidModeGetViewPort (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort=yes -else - ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" >&5 -$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" >&6; } -if test "x$ac_cv_lib_Xxf86vm_XF86VidModeGetViewPort" = xyes; then : - have_xf86vmode=yes; - VIDMODE_LIBS="-lXxf86vm"; - SAVER_LIBS="$SAVER_LIBS $VIDMODE_LIBS" -else - true fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - - fi - - # if that succeeded, then we've really got it. - if test "$have_xf86vmode" = yes; then - $as_echo "#define HAVE_XF86VMODE 1" >>confdefs.h - - fi -elif test "$with_xf86vmode" != no; then - echo "error: must be yes or no: --with-xf86vmode-ext=$with_xf86vmode" + CPPFLAGS="$ac_save_CPPFLAGS" +elif test "$with_readdisplay" != no; then + echo "error: must be yes or no: --with-readdisplay=$with_readdisplay" exit 1 fi ############################################################################### # -# Check for the XF86VMODE server extension (for gamma fading.) +# Check for the XSHM server extension. # ############################################################################### -have_xf86gamma=no -have_xf86gamma_ramp=no -with_xf86gamma_req=unspecified +have_xshm=no +with_xshm_req=unspecified -# Check whether --with-xf86gamma-ext was given. -if test "${with_xf86gamma_ext+set}" = set; then : - withval=$with_xf86gamma_ext; with_xf86gamma="$withval"; with_xf86gamma_req="$withval" +# Check whether --with-xshm-ext was given. +if test "${with_xshm_ext+set}" = set; then : + withval=$with_xshm_ext; with_xshm="$withval"; with_xshm_req="$withval" else - with_xf86gamma=yes + with_xshm=yes fi - case "$with_xf86gamma" in + case "$with_xshm" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86gamma headers" >&5 -$as_echo_n "checking for xf86gamma headers... " >&6; } - d=$with_xf86gamma/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSHM headers" >&5 +$as_echo_n "checking for XSHM headers... " >&6; } + d=$with_xshm/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9671,9 +10465,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xf86gamma libs" >&5 -$as_echo_n "checking for xf86gamma libs... " >&6; } - d=$with_xf86gamma/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSHM libs" >&5 +$as_echo_n "checking for XSHM libs... " >&6; } + d=$with_xshm/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9684,13 +10478,13 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_xf86gamma_req="yes" - with_xf86gamma=$with_xf86gamma_req + with_xshm_req="yes" + with_xshm=$with_xshm_req ;; *) echo "" - echo "error: argument to --with-xf86gamma-ext must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-xshm-ext must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" echo " the -I list, and \`DIR/lib' will be added to the -L list." exit 1 @@ -9698,12 +10492,9 @@ $as_echo "not found ($d: no such directory)" >&6; } esac -if test "$with_xf86gamma" = yes; then +if test "$with_xshm" = yes; then - # first check for xf86vmode.h, if we haven't already - if test "$have_xf86vmode" = yes; then - have_xf86gamma=yes - else + # first check for Xshm.h. ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then @@ -9711,89 +10502,63 @@ if test "$with_xf86gamma" = yes; then fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/xf86vmode.h" "ac_cv_header_X11_extensions_xf86vmode_h" "#include + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XShm.h" "ac_cv_header_X11_extensions_XShm_h" "#include " -if test "x$ac_cv_header_X11_extensions_xf86vmode_h" = xyes; then : - have_xf86gamma=yes +if test "x$ac_cv_header_X11_extensions_XShm_h" = xyes; then : + have_xshm=yes fi CPPFLAGS="$ac_save_CPPFLAGS" - fi - # if that succeeded, then check for the -lXxf86vm - if test "$have_xf86gamma" = yes; then - have_xf86gamma=no + # if that succeeded, then check for sys/ipc.h. + if test "$have_xshm" = yes; then + have_xshm=no ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - if test \! -z "$includedir" ; then CPPFLAGS="$CPPFLAGS -I$includedir" fi - # note: $X_CFLAGS includes $x_includes CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_mongrel "$LINENO" "sys/ipc.h" "ac_cv_header_sys_ipc_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_ipc_h" = xyes; then : + have_xshm=yes +fi - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" + + CPPFLAGS="$ac_save_CPPFLAGS" fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeSetGamma in -lXxf86vm" >&5 -$as_echo_n "checking for XF86VidModeSetGamma in -lXxf86vm... " >&6; } -if ${ac_cv_lib_Xxf86vm_XF86VidModeSetGamma+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXxf86vm -lXext -lX11 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + # if that succeeded, then check for sys/shm.h. + if test "$have_xshm" = yes; then + have_xshm=no -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XF86VidModeSetGamma (); -int -main () -{ -return XF86VidModeSetGamma (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xxf86vm_XF86VidModeSetGamma=yes -else - ac_cv_lib_Xxf86vm_XF86VidModeSetGamma=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" >&5 -$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" >&6; } -if test "x$ac_cv_lib_Xxf86vm_XF86VidModeSetGamma" = xyes; then : - have_xf86gamma=yes -else - true + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_mongrel "$LINENO" "sys/shm.h" "ac_cv_header_sys_shm_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_shm_h" = xyes; then : + have_xshm=yes fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" + CPPFLAGS="$ac_save_CPPFLAGS" fi - # check for the Ramp versions of the functions too. - if test "$have_xf86gamma" = yes; then - have_xf86gamma_ramp=no + # AIX is pathological, as usual: apparently it's normal for the Xshm headers + # to exist, but the library code to not exist. And even better, the library + # code is in its own library: libXextSam.a. So, if we're on AIX, and that + # lib doesn't exist, give up. (This lib gets added to X_EXTRA_LIBS, and + # that's not quite right, but close enough.) + # + case "$host" in + *-aix*) + if `uname -v` -eq 3 ; then + have_xshm=no ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -9813,13 +10578,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86VidModeSetGammaRamp in -lXxf86vm" >&5 -$as_echo_n "checking for XF86VidModeSetGammaRamp in -lXxf86vm... " >&6; } -if ${ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XShmQueryExtension in -lXextSam" >&5 +$as_echo_n "checking for XShmQueryExtension in -lXextSam... " >&6; } +if ${ac_cv_lib_XextSam_XShmQueryExtension+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXxf86vm -lXext -lX11 $LIBS" +LIBS="-lXextSam -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -9829,90 +10594,78 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XF86VidModeSetGammaRamp (); +char XShmQueryExtension (); int main () { -return XF86VidModeSetGammaRamp (); +return XShmQueryExtension (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp=yes + ac_cv_lib_XextSam_XShmQueryExtension=yes else - ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp=no + ac_cv_lib_XextSam_XShmQueryExtension=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" >&5 -$as_echo "$ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" >&6; } -if test "x$ac_cv_lib_Xxf86vm_XF86VidModeSetGammaRamp" = xyes; then : - have_xf86gamma_ramp=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_XextSam_XShmQueryExtension" >&5 +$as_echo "$ac_cv_lib_XextSam_XShmQueryExtension" >&6; } +if test "x$ac_cv_lib_XextSam_XShmQueryExtension" = xyes; then : + have_xshm=yes; X_EXTRA_LIBS="$X_EXTRA_LIBS -lXextSam" else true fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - - fi - - # if those tests succeeded, then we've really got the functions. - if test "$have_xf86gamma" = yes; then - $as_echo "#define HAVE_XF86VMODE_GAMMA 1" >>confdefs.h - - fi + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - if test "$have_xf86gamma_ramp" = yes; then - $as_echo "#define HAVE_XF86VMODE_GAMMA_RAMP 1" >>confdefs.h + fi + ;; + esac - fi + # if that succeeded, then we've really got it. + if test "$have_xshm" = yes; then + $as_echo "#define HAVE_XSHM_EXTENSION 1" >>confdefs.h - # pull in the lib, if we haven't already - if test "$have_xf86gamma" = yes -a "$have_xf86vmode" = no; then - SAVER_LIBS="$SAVER_LIBS -lXxf86vm" fi -elif test "$with_xf86gamma" != no; then - echo "error: must be yes or no: --with-xf86gamma-ext=$with_xf86vmode" +elif test "$with_xshm" != no; then + echo "error: must be yes or no: --with-xshm-ext=$with_xshm" exit 1 fi ############################################################################### # -# Check for the RANDR (Resize and Rotate) server extension. -# -# We need this to detect when the resolution of the desktop -# has changed out from under us (this is a newer, different -# mechanism than the XF86VMODE virtual viewports.) +# Check for the DOUBLE-BUFFER server extension. # ############################################################################### -have_randr=no -with_randr_req=unspecified +have_xdbe=no +with_xdbe_req=unspecified -# Check whether --with-randr-ext was given. -if test "${with_randr_ext+set}" = set; then : - withval=$with_randr_ext; with_randr="$withval"; with_randr_req="$withval" +# Check whether --with-xdbe-ext was given. +if test "${with_xdbe_ext+set}" = set; then : + withval=$with_xdbe_ext; with_xdbe="$withval"; with_xdbe_req="$withval" else - with_randr=yes + with_xdbe=yes fi - case "$with_randr" in + case "$with_xdbe" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RANDR headers" >&5 -$as_echo_n "checking for RANDR headers... " >&6; } - d=$with_randr/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DOUBLE-BUFFER headers" >&5 +$as_echo_n "checking for DOUBLE-BUFFER headers... " >&6; } + d=$with_xdbe/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9922,9 +10675,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RANDR libs" >&5 -$as_echo_n "checking for RANDR libs... " >&6; } - d=$with_randr/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DOUBLE-BUFFER libs" >&5 +$as_echo_n "checking for DOUBLE-BUFFER libs... " >&6; } + d=$with_xdbe/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -9935,13 +10688,13 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_randr_req="yes" - with_randr=$with_randr_req + with_xdbe_req="yes" + with_xdbe=$with_xdbe_req ;; *) echo "" - echo "error: argument to --with-randr-ext must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-xdbe-ext must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" echo " the -I list, and \`DIR/lib' will be added to the -L list." exit 1 @@ -9949,9 +10702,8 @@ $as_echo "not found ($d: no such directory)" >&6; } esac -if test "$with_randr" = yes; then +if test "$with_xdbe" = yes; then - # first check for Xrandr.h ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then @@ -9959,237 +10711,283 @@ if test "$with_randr" = yes; then fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xrandr.h" "ac_cv_header_X11_extensions_Xrandr_h" "#include + ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xdbe.h" "ac_cv_header_X11_extensions_Xdbe_h" "#include " -if test "x$ac_cv_header_X11_extensions_Xrandr_h" = xyes; then : - have_randr=yes +if test "x$ac_cv_header_X11_extensions_Xdbe_h" = xyes; then : + have_xdbe=yes fi CPPFLAGS="$ac_save_CPPFLAGS" + if test "$have_xdbe" = yes; then + $as_echo "#define HAVE_DOUBLE_BUFFER_EXTENSION 1" >>confdefs.h - # if that succeeded, then check for the XRR code in the libraries - if test "$have_randr" = yes; then + fi - # RANDR probably needs -lXrender - xrender_libs= +elif test "$with_xdbe" != no; then + echo "error: must be yes or no: --with-xdbe-ext=$with_xshm" + exit 1 +fi - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" +############################################################################### +# +# Check for HP XHPDisableReset and XHPEnableReset. +# +############################################################################### + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XHPDisableReset in X11/XHPlib.h" >&5 +$as_echo_n "checking for XHPDisableReset in X11/XHPlib.h... " >&6; } + + ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then CPPFLAGS="$CPPFLAGS -I$includedir" fi - # note: $X_CFLAGS includes $x_includes CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRenderSetSubpixelOrder in -lXrender" >&5 -$as_echo_n "checking for XRenderSetSubpixelOrder in -lXrender... " >&6; } -if ${ac_cv_lib_Xrender_XRenderSetSubpixelOrder+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXrender -lXext -lX11 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XRenderSetSubpixelOrder (); -int -main () -{ -return XRenderSetSubpixelOrder (); - ; - return 0; -} _ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xrender_XRenderSetSubpixelOrder=yes +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "XHPDisableReset" >/dev/null 2>&1; then : + $as_echo "#define HAVE_XHPDISABLERESET 1" >>confdefs.h + + SAVER_LIBS="-lXhp11 $SAVER_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - ac_cv_lib_Xrender_XRenderSetSubpixelOrder=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +rm -f conftest* + + CPPFLAGS="$ac_save_CPPFLAGS" + + +############################################################################### +# +# Check for /proc/interrupts. +# +############################################################################### + +have_proc_interrupts=no +with_proc_interrupts_req=unspecified + +# Check whether --with-proc-interrupts was given. +if test "${with_proc_interrupts+set}" = set; then : + withval=$with_proc_interrupts; with_proc_interrupts="$withval"; with_proc_interrupts_req="$withval" +else + with_proc_interrupts=yes fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xrender_XRenderSetSubpixelOrder" >&5 -$as_echo "$ac_cv_lib_Xrender_XRenderSetSubpixelOrder" >&6; } -if test "x$ac_cv_lib_Xrender_XRenderSetSubpixelOrder" = xyes; then : - xrender_libs="-lXrender" + + +if test "$with_proc_interrupts" = yes; then + + # Note that we may be building in an environment (e.g. Debian buildd chroot) + # without a proper /proc filesystem. If /proc/interrupts exists, then we'll + # check that it has the bits we need, but otherwise we'll just go on faith. + # + have_proc_interrupts=yes + + if test -f /proc/interrupts; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /proc/interrupts contains keyboard data" >&5 +$as_echo_n "checking whether /proc/interrupts contains keyboard data... " >&6; } +if ${ac_cv_have_proc_interrupts+:} false; then : + $as_echo_n "(cached) " >&6 else - true + ac_cv_have_proc_interrupts=no + if grep 'keyboard\|i8042' /proc/interrupts >/dev/null 2>&1 ; then + ac_cv_have_proc_interrupts=yes + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_proc_interrupts" >&5 +$as_echo "$ac_cv_have_proc_interrupts" >&6; } + have_proc_interrupts=$ac_cv_have_proc_interrupts + fi + + if test "$have_proc_interrupts" = yes; then + $as_echo "#define HAVE_PROC_INTERRUPTS 1" >>confdefs.h + + fi + +elif test "$with_proc_interrupts" != no; then + echo "error: must be yes or no: --with-proc-interrupts=$with_proc_interrupts" + exit 1 +fi + + +############################################################################### +# +# Check for /proc/*/oom_score_adj. +# +############################################################################### + +have_proc_oom=no +with_proc_oom_req=unspecified + +# Check whether --with-proc-oom was given. +if test "${with_proc_oom+set}" = set; then : + withval=$with_proc_oom; with_proc_oom="$withval"; with_proc_oom_req="$withval" +else + with_proc_oom=yes +fi + + +if test "$with_proc_oom_req" = yes; then + + # Note that we may be building in an environment (e.g. Debian buildd chroot) + # without a proper /proc filesystem. + # + have_proc_oom=yes + $as_echo "#define HAVE_PROC_OOM 1" >>confdefs.h + + +elif test "$with_proc_oom_req" = unspecified; then + + have_proc_oom=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /proc/$$/oom_score_adj exists" >&5 +$as_echo_n "checking whether /proc/$$/oom_score_adj exists... " >&6; } +if ${ac_cv_have_proc_oom+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_have_proc_oom=no + if test -f /proc/$$/oom_score_adj; then + ac_cv_have_proc_oom=yes + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_proc_oom" >&5 +$as_echo "$ac_cv_have_proc_oom" >&6; } + have_proc_oom=$ac_cv_have_proc_oom + + if test "$have_proc_oom" = yes; then + $as_echo "#define HAVE_PROC_OOM 1" >>confdefs.h + + fi + +elif test "$with_proc_oom" != no; then + echo "error: must be yes or no: --with-proc-oom=$with_proc_oom" + exit 1 fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" +############################################################################### +# +# Check for -lsystemd +# +############################################################################### + +have_systemd=no +with_systemd_req=unspecified +systemd_halfassed=no +systemd_too_old=no + +# Check whether --with-systemd was given. +if test "${with_systemd+set}" = set; then : + withval=$with_systemd; with_systemd="$withval"; with_systemd_req="$withval" +else + with_systemd=yes +fi - # first look for RANDR in -lXext - have_randr=no - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" + case "$with_systemd" in + yes) ;; + no) ;; - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemd headers" >&5 +$as_echo_n "checking for systemd headers... " >&6; } + d=$with_systemd/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenInfo in -lXext" >&5 -$as_echo_n "checking for XRRGetScreenInfo in -lXext... " >&6; } -if ${ac_cv_lib_Xext_XRRGetScreenInfo+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXext $xrender_libs -lXext -lX11 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemd libs" >&5 +$as_echo_n "checking for systemd libs... " >&6; } + d=$with_systemd/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XRRGetScreenInfo (); -int -main () -{ -return XRRGetScreenInfo (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xext_XRRGetScreenInfo=yes -else - ac_cv_lib_Xext_XRRGetScreenInfo=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xext_XRRGetScreenInfo" >&5 -$as_echo "$ac_cv_lib_Xext_XRRGetScreenInfo" >&6; } -if test "x$ac_cv_lib_Xext_XRRGetScreenInfo" = xyes; then : - have_randr=yes; SAVER_LIBS="$SAVER_LIBS $xrender_libs" -else - true -fi + # replace the directory string with "yes". + with_systemd_req="yes" + with_systemd=$with_systemd_req + ;; - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" + *) + echo "" + echo "error: argument to --with-systemd must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac - # if that failed, look in -lXrandr - if test "$have_randr" = no; then +if test "$with_systemd" != yes -a "$with_systemd" != no ; then + echo "error: must be yes or no: --with-systemd=$with_systemd" + exit 1 +fi - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" +if test "$with_systemd" = yes; then - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" + pkgs='' + ok="yes" + pkg_check_version libsystemd 221 + have_systemd="$ok" - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" + if test "$have_systemd" = no; then + if $pkg_config --exists libsystemd ; then + systemd_too_old=yes + fi fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenInfo in -lXrandr" >&5 -$as_echo_n "checking for XRRGetScreenInfo in -lXrandr... " >&6; } -if ${ac_cv_lib_Xrandr_XRRGetScreenInfo+:} false; then : + if test "$have_systemd" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsystemd includes" >&5 +$as_echo_n "checking for libsystemd includes... " >&6; } +if ${ac_cv_systemd_config_cflags+:} false; then : $as_echo_n "(cached) " >&6 else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXrandr $xrender_libs -lXext -lX11 $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XRRGetScreenInfo (); -int -main () -{ -return XRRGetScreenInfo (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xrandr_XRRGetScreenInfo=yes -else - ac_cv_lib_Xrandr_XRRGetScreenInfo=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS + ac_cv_systemd_config_cflags=`$pkg_config --cflags $pkgs` fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xrandr_XRRGetScreenInfo" >&5 -$as_echo "$ac_cv_lib_Xrandr_XRRGetScreenInfo" >&6; } -if test "x$ac_cv_lib_Xrandr_XRRGetScreenInfo" = xyes; then : - have_randr=yes; SAVER_LIBS="$SAVER_LIBS -lXrandr $xrender_libs" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_systemd_config_cflags" >&5 +$as_echo "$ac_cv_systemd_config_cflags" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsystemd libs" >&5 +$as_echo_n "checking for libsystemd libs... " >&6; } +if ${ac_cv_systemd_config_libs+:} false; then : + $as_echo_n "(cached) " >&6 else - true + ac_cv_systemd_config_libs=`$pkg_config --libs $pkgs` fi - - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - - fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_systemd_config_libs" >&5 +$as_echo "$ac_cv_systemd_config_libs" >&6; } fi - # if that succeeded, then we've really got it. - if test "$have_randr" = yes; then - $as_echo "#define HAVE_RANDR 1" >>confdefs.h + ac_systemd_config_cflags=$ac_cv_systemd_config_cflags + ac_systemd_config_libs=$ac_cv_systemd_config_libs + if test "$have_systemd" = yes; then + # + # we appear to have libsystemd; check for headers/libs to be sure. + # + ac_save_systemd_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_systemd_config_cflags" - # Now check for version 1.2 in the same libs. - # Try to compile, since on MacOS 10.5.7, headers are older than libs! - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRRGetScreenResources" >&5 -$as_echo_n "checking for XRRGetScreenResources... " >&6; } -if ${ac_cv_randr_12+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_randr_12=no + have_systemd=no ac_save_CPPFLAGS="$CPPFLAGS" if test \! -z "$includedir" ; then @@ -10197,54 +10995,24 @@ else fi CPPFLAGS="$CPPFLAGS $X_CFLAGS" CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include -int -main () -{ -XRRScreenResources *res = - XRRGetScreenResources (0, 0); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_randr_12=yes -else - ac_cv_randr_12=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="$ac_save_CPPFLAGS" + ac_fn_c_check_header_mongrel "$LINENO" "systemd/sd-bus.h" "ac_cv_header_systemd_sd_bus_h" "$ac_includes_default" +if test "x$ac_cv_header_systemd_sd_bus_h" = xyes; then : + have_systemd=yes fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_randr_12" >&5 -$as_echo "$ac_cv_randr_12" >&6; } - if test "$ac_cv_randr_12" = yes ; then - $as_echo "#define HAVE_RANDR_12 1" >>confdefs.h - - fi -# AC_CHECK_X_LIB(c, XRRGetOutputInfo, [AC_DEFINE(HAVE_RANDR_12)], -# [true], $SAVER_LIBS) - fi -elif test "$with_randr" != no; then - echo "error: must be yes or no: --with-randr-ext=$with_randr" - exit 1 -fi + CPPFLAGS="$ac_save_CPPFLAGS" + CPPFLAGS="$ac_save_systemd_CPPFLAGS" + fi -############################################################################### -# -# Check for XF86MiscSetGrabKeysState (but only bother if we are already -# using other XF86 stuff.) -# -############################################################################### + if test "$have_systemd" = yes; then + # we have the headers, now check for the libraries + have_systemd=no + systemd_halfassed=yes -have_xf86miscsetgrabkeysstate=no -if test "$have_xf86gamma" = yes -o "$have_xf86vmode" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for libsystemd usability..." >&5 +$as_echo "checking for libsystemd usability..." >&6; } ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -10264,13 +11032,13 @@ if test "$have_xf86gamma" = yes -o "$have_xf86vmode" = yes; then CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XF86MiscSetGrabKeysState in -lXxf86misc" >&5 -$as_echo_n "checking for XF86MiscSetGrabKeysState in -lXxf86misc... " >&6; } -if ${ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sd_bus_open_system in -lc" >&5 +$as_echo_n "checking for sd_bus_open_system in -lc... " >&6; } +if ${ac_cv_lib_c_sd_bus_open_system+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXxf86misc -lXext -lX11 $LIBS" +LIBS="-lc $ac_systemd_config_libs -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -10280,185 +11048,49 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XF86MiscSetGrabKeysState (); +char sd_bus_open_system (); int main () { -return XF86MiscSetGrabKeysState (); +return sd_bus_open_system (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState=yes + ac_cv_lib_c_sd_bus_open_system=yes else - ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState=no + ac_cv_lib_c_sd_bus_open_system=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" >&5 -$as_echo "$ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" >&6; } -if test "x$ac_cv_lib_Xxf86misc_XF86MiscSetGrabKeysState" = xyes; then : - have_xf86miscsetgrabkeysstate=yes -else - true +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_sd_bus_open_system" >&5 +$as_echo "$ac_cv_lib_c_sd_bus_open_system" >&6; } +if test "x$ac_cv_lib_c_sd_bus_open_system" = xyes; then : + have_systemd=yes fi CPPFLAGS="$ac_save_CPPFLAGS" LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" - if test "$have_xf86miscsetgrabkeysstate" = yes ; then - SAVER_LIBS="$SAVER_LIBS -lXxf86misc" - $as_echo "#define HAVE_XF86MISCSETGRABKEYSSTATE 1" >>confdefs.h - - fi -fi - - -############################################################################### -# -# Check for HP XHPDisableReset and XHPEnableReset. -# -############################################################################### - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XHPDisableReset in X11/XHPlib.h" >&5 -$as_echo_n "checking for XHPDisableReset in X11/XHPlib.h... " >&6; } - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "XHPDisableReset" >/dev/null 2>&1; then : - $as_echo "#define HAVE_XHPDISABLERESET 1" >>confdefs.h - - SAVER_LIBS="-lXhp11 $SAVER_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -rm -f conftest* - - CPPFLAGS="$ac_save_CPPFLAGS" - - -############################################################################### -# -# Check for /proc/interrupts. -# -############################################################################### - -have_proc_interrupts=no -with_proc_interrupts_req=unspecified - -# Check whether --with-proc-interrupts was given. -if test "${with_proc_interrupts+set}" = set; then : - withval=$with_proc_interrupts; with_proc_interrupts="$withval"; with_proc_interrupts_req="$withval" -else - with_proc_interrupts=yes -fi - - -if test "$with_proc_interrupts" = yes; then - - # Note that we may be building in an environment (e.g. Debian buildd chroot) - # without a proper /proc filesystem. If /proc/interrupts exists, then we'll - # check that it has the bits we need, but otherwise we'll just go on faith. - # - have_proc_interrupts=yes - - if test -f /proc/interrupts; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /proc/interrupts contains keyboard data" >&5 -$as_echo_n "checking whether /proc/interrupts contains keyboard data... " >&6; } -if ${ac_cv_have_proc_interrupts+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_have_proc_interrupts=no - if grep 'keyboard\|i8042' /proc/interrupts >/dev/null 2>&1 ; then - ac_cv_have_proc_interrupts=yes - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_proc_interrupts" >&5 -$as_echo "$ac_cv_have_proc_interrupts" >&6; } - have_proc_interrupts=$ac_cv_have_proc_interrupts fi - if test "$have_proc_interrupts" = yes; then - $as_echo "#define HAVE_PROC_INTERRUPTS 1" >>confdefs.h - + if test "$have_systemd" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for libsystemd usability... no" >&5 +$as_echo "checking for libsystemd usability... no" >&6; } fi - -elif test "$with_proc_interrupts" != no; then - echo "error: must be yes or no: --with-proc-interrupts=$with_proc_interrupts" - exit 1 -fi - - -############################################################################### -# -# Check for /proc/*/oom_score_adj. -# -############################################################################### - -have_proc_oom=no -with_proc_oom_req=unspecified - -# Check whether --with-proc-oom was given. -if test "${with_proc_oom+set}" = set; then : - withval=$with_proc_oom; with_proc_oom="$withval"; with_proc_oom_req="$withval" -else - with_proc_oom=yes fi +if test "$have_systemd" = yes; then + INCLUDES="$INCLUDES $ac_systemd_config_cflags" + EXES_SYSTEMD='$(EXES_SYSTEMD)' + $as_echo "#define HAVE_LIBSYSTEMD 1" >>confdefs.h -if test "$with_proc_oom_req" = yes; then - - # Note that we may be building in an environment (e.g. Debian buildd chroot) - # without a proper /proc filesystem. - # - have_proc_oom=yes - $as_echo "#define HAVE_PROC_OOM 1" >>confdefs.h - - -elif test "$with_proc_oom_req" = unspecified; then - - have_proc_oom=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether /proc/$$/oom_score_adj exists" >&5 -$as_echo_n "checking whether /proc/$$/oom_score_adj exists... " >&6; } -if ${ac_cv_have_proc_oom+:} false; then : - $as_echo_n "(cached) " >&6 else - ac_cv_have_proc_oom=no - if test -f /proc/$$/oom_score_adj; then - ac_cv_have_proc_oom=yes - fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_proc_oom" >&5 -$as_echo "$ac_cv_have_proc_oom" >&6; } - have_proc_oom=$ac_cv_have_proc_oom - - if test "$have_proc_oom" = yes; then - $as_echo "#define HAVE_PROC_OOM 1" >>confdefs.h - - fi - -elif test "$with_proc_oom" != no; then - echo "error: must be yes or no: --with-proc-oom=$with_proc_oom" - exit 1 + EXES_SYSTEMD='' fi @@ -10466,11 +11098,17 @@ fi # # The --enable-locking option # +# Note: "configure --help" list all "--enable" options before any +# "--with" options, so we document the --enable options inline with +# the --with options where it looks better, instead of in AC_ARG_ENABLE +# where it would make sense, sigh... +# ############################################################################### # Check whether --enable-locking was given. if test "${enable_locking+set}" = set; then : - enableval=$enable_locking; enable_locking="$enableval" + enableval=$enable_locking; # This is documented elsewhere because of --enable/--with option sorting. + enable_locking="$enableval" else if test "$ac_macosx" = yes; then # We can't lock on MacOS X, so default to not compiling in support for it. @@ -10493,14 +11131,16 @@ else fi -############################################################################### +############################################################################## # # Whether to allow root password to unblank. # ############################################################################### + # Check whether --enable-root-passwd was given. if test "${enable_root_passwd+set}" = set; then : - enableval=$enable_root_passwd; enable_root_passwd="$enableval" + enableval=$enable_root_passwd; # This is documented elsewhere because of --enable/--with option sorting. + enable_root_passwd="$enableval" else enable_root_passwd=yes fi @@ -10514,6 +11154,7 @@ elif test "$enable_root_passwd" != no; then exit 1 fi + ############################################################################### # # Check for PAM. @@ -10532,6 +11173,8 @@ case "$host" in ;; esac +#### H1 + have_pam=no with_pam_req=unspecified @@ -10555,7 +11198,8 @@ fi # Check whether --enable-pam-check-account-type was given. if test "${enable_pam_check_account_type+set}" = set; then : - enableval=$enable_pam_check_account_type; enable_pam_check_account_type="$enableval" + enableval=$enable_pam_check_account_type; # This is documented elsewhere because of --enable/--with option sorting. + enable_pam_check_account_type="$enableval" else enable_pam_check_account_type=no fi @@ -11977,211 +12621,195 @@ _ACEOF esac + ############################################################################### # -# Check for a login manager for a "New Login" button on the lock dialog. -# Usually this will be "/usr/bin/gdmflexiserver". +# Check for -lgtk (and Gnome stuff) # ############################################################################### -with_login_manager_req=unspecified -default_login_manager_1='gdmflexiserver -ls' -default_login_manager_2='kdmctl reserve' -default_login_manager_3='lxdm -c USER_SWITCH' -default_login_manager_4='dm-tool switch-to-greeter' +#### H1 + +have_gtk=no +with_gtk_req=unspecified + +# Check whether --with-gtk was given. +if test "${with_gtk+set}" = set; then : + withval=$with_gtk; with_gtk="$withval"; with_gtk_req="$withval" +else + with_gtk=yes +fi + + +# if --with-gtk=/directory/ was specified, remember that directory so that +# we can also look for the `gtk-config' program in that directory. +case "$with_gtk" in + /*) + gtk_dir="$with_gtk" + ;; + *) + gtk_dir="" + ;; +esac + + + case "$with_gtk" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk headers" >&5 +$as_echo_n "checking for Gtk headers... " >&6; } + d=$with_gtk/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk libs" >&5 +$as_echo_n "checking for Gtk libs... " >&6; } + d=$with_gtk/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + # replace the directory string with "yes". + with_gtk_req="yes" + with_gtk=$with_gtk_req + ;; -# Check whether --with-login-manager was given. -if test "${with_login_manager+set}" = set; then : - withval=$with_login_manager; with_login_manager="$withval"; with_login_manager_req="$withval" -else - with_login_manager=yes -fi + *) + echo "" + echo "error: argument to --with-gtk must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac -# no HANDLE_X_PATH_ARG for this one -if test "$enable_locking" = no ; then - with_login_manager_req=no - with_login_manager=no +if test "$with_gtk" != yes -a "$with_gtk" != no ; then + echo "error: must be yes or no: --with-gtk=$with_gtk" + exit 1 fi -case "$with_login_manager_req" in - no) - with_login_manager="" - ;; - yes|unspecified) - # Try various defaults, use the first one that exists. +parse_gtk_version_string() { + # M4 sucks!! - with_login_manager="" + maj=`echo $ac_gtk_version_string | sed -n 's/\..*//p'` + min=`echo $ac_gtk_version_string | sed -n 's/[^.]*\.\([^.]*\).*/\1/p'` - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_1 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - # Extract the first word of "$login_manager_tmp", so it can be a program name with args. -set dummy $login_manager_tmp; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_login_manager_tmp+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $login_manager_tmp in - [\\/]* | ?:[\\/]*) - ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 + ac_gtk_version=`echo "$maj * 1000 + $min" | bc` + if test -z "$ac_gtk_version"; then + ac_gtk_version=unknown + ac_gtk_version_string=unknown fi -done - done -IFS=$as_save_IFS +} - ;; -esac -fi -login_manager_tmp=$ac_cv_path_login_manager_tmp -if test -n "$login_manager_tmp"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 -$as_echo "$login_manager_tmp" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi +jurassic_gtk=no +gtk_halfassed=no +if test "$with_gtk" = yes; then + have_gtk=no - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_1" - fi + ok="yes" + pkg_check_version gtk+-2.0 2.22.0 ; ac_gtk_version_string="$vers" + pkg_check_version gmodule-2.0 2.0.0 + pkg_check_version libxml-2.0 2.4.6 + pkg_check_version gdk-pixbuf-2.0 2.0.0 + pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 + have_gtk="$ok" + + if test "$have_gtk" = no; then + if test -n "$ac_gtk_version_string" ; then + gtk_halfassed="$ac_gtk_version_string" + gtk_halfassed_lib="$req" fi + fi - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_2 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - # Extract the first word of "$login_manager_tmp", so it can be a program name with args. -set dummy $login_manager_tmp; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_login_manager_tmp+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $login_manager_tmp in - [\\/]* | ?:[\\/]*) - ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 + if test "$have_gtk" = yes; then + parse_gtk_version_string + jurassic_gtk=no fi -done - done -IFS=$as_save_IFS - ;; -esac + if test "$have_gtk" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk includes" >&5 +$as_echo_n "checking for Gtk includes... " >&6; } +if ${ac_cv_gtk_config_cflags+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_gtk_config_cflags=`$pkg_config --cflags $pkgs` fi -login_manager_tmp=$ac_cv_path_login_manager_tmp -if test -n "$login_manager_tmp"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 -$as_echo "$login_manager_tmp" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gtk_config_cflags" >&5 +$as_echo "$ac_cv_gtk_config_cflags" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk libs" >&5 +$as_echo_n "checking for Gtk libs... " >&6; } +if ${ac_cv_gtk_config_libs+:} false; then : + $as_echo_n "(cached) " >&6 else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + ac_cv_gtk_config_libs=`$pkg_config --libs $pkgs` fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gtk_config_libs" >&5 +$as_echo "$ac_cv_gtk_config_libs" >&6; } + fi + ac_gtk_config_cflags=$ac_cv_gtk_config_cflags + ac_gtk_config_libs=$ac_cv_gtk_config_libs - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_2" - fi - fi - - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_3 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - # Extract the first word of "$login_manager_tmp", so it can be a program name with args. -set dummy $login_manager_tmp; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_login_manager_tmp+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $login_manager_tmp in - [\\/]* | ?:[\\/]*) - ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 + GTK_EXTRA_OBJS="" + GTK_DATADIR="" + if test "$have_gtk" = yes; then + GTK_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` + GTK_DATADIR="$GTK_DATADIR/share" fi -done - done -IFS=$as_save_IFS - ;; -esac -fi -login_manager_tmp=$ac_cv_path_login_manager_tmp -if test -n "$login_manager_tmp"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 -$as_echo "$login_manager_tmp" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi + if test "$have_gtk" = yes; then + INCLUDES="$INCLUDES $ac_gtk_config_cflags" + GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs" + $as_echo "#define HAVE_GTK 1" >>confdefs.h + $as_echo "#define HAVE_GTK2 1" >>confdefs.h - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_3" - fi - fi + $as_echo "#define HAVE_XML 1" >>confdefs.h - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_4 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - # Extract the first word of "$login_manager_tmp", so it can be a program name with args. -set dummy $login_manager_tmp; ac_word=$2 + fi +fi + + +# Check for the various Gnome help and URL loading programs. +# +WITH_BROWSER=gnome-open +if test "$have_gtk" = yes; then + for ac_prog in gnome-open +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_login_manager_tmp+:} false; then : +if ${ac_cv_prog_gnome_open_program+:} false; then : $as_echo_n "(cached) " >&6 else - case $login_manager_tmp in - [\\/]* | ?:[\\/]*) - ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + if test -n "$gnome_open_program"; then + ac_cv_prog_gnome_open_program="$gnome_open_program" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + ac_cv_prog_gnome_open_program="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -12189,65 +12817,41 @@ done done IFS=$as_save_IFS - ;; -esac fi -login_manager_tmp=$ac_cv_path_login_manager_tmp -if test -n "$login_manager_tmp"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 -$as_echo "$login_manager_tmp" >&6; } +fi +gnome_open_program=$ac_cv_prog_gnome_open_program +if test -n "$gnome_open_program"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gnome_open_program" >&5 +$as_echo "$gnome_open_program" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_4" - fi - fi - - ;; - - /*) - # absolute path specified on cmd line - set dummy $with_login_manager_req ; login_manager_tmp=$2 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $login_manager_tmp" >&5 -$as_echo_n "checking for $login_manager_tmp... " >&6; } - if test -x "$login_manager_tmp" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - with_login_manager="" - fi - ;; + test -n "$gnome_open_program" && break +done - *) - # relative path specified on cmd line - set dummy $with_login_manager_req ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - # Extract the first word of "$login_manager_tmp", so it can be a program name with args. -set dummy $login_manager_tmp; ac_word=$2 + for ac_prog in gnome-url-show +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_login_manager_tmp+:} false; then : +if ${ac_cv_prog_gnome_url_show_program+:} false; then : $as_echo_n "(cached) " >&6 else - case $login_manager_tmp in - [\\/]* | ?:[\\/]*) - ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + if test -n "$gnome_url_show_program"; then + ac_cv_prog_gnome_url_show_program="$gnome_url_show_program" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + ac_cv_prog_gnome_url_show_program="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -12255,81 +12859,50 @@ done done IFS=$as_save_IFS - ;; -esac fi -login_manager_tmp=$ac_cv_path_login_manager_tmp -if test -n "$login_manager_tmp"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 -$as_echo "$login_manager_tmp" >&6; } +fi +gnome_url_show_program=$ac_cv_prog_gnome_url_show_program +if test -n "$gnome_url_show_program"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gnome_url_show_program" >&5 +$as_echo "$gnome_url_show_program" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi - if test -z "$login_manager_tmp" ; then - with_login_manager="" - else - with_login_manager="$login_manager_tmp" - fi - ;; -esac -ac_cv_login_manager_program="$with_login_manager" - -NEW_LOGIN_COMMAND_P='' -NEW_LOGIN_COMMAND="$ac_cv_login_manager_program" + test -n "$gnome_url_show_program" && break +done -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for login manager" >&5 -$as_echo_n "checking for login manager... " >&6; } -if test -z "$NEW_LOGIN_COMMAND" ; then - NEW_LOGIN_COMMAND="$default_login_manager_1" - NEW_LOGIN_COMMAND_P='! ' - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NEW_LOGIN_COMMAND (disabled)" >&5 -$as_echo "$NEW_LOGIN_COMMAND (disabled)" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NEW_LOGIN_COMMAND" >&5 -$as_echo "$NEW_LOGIN_COMMAND" >&6; } fi ############################################################################### # -# Check for -lgtk (and Gnome stuff) +# Check for -lXm. # ############################################################################### -have_gtk=no -with_gtk_req=unspecified +have_motif=no +with_motif_req=unspecified -# Check whether --with-gtk was given. -if test "${with_gtk+set}" = set; then : - withval=$with_gtk; with_gtk="$withval"; with_gtk_req="$withval" +# Check whether --with-motif was given. +if test "${with_motif+set}" = set; then : + withval=$with_motif; with_motif="$withval"; with_motif_req="$withval" else - with_gtk=yes + with_motif=no fi -# if --with-gtk=/directory/ was specified, remember that directory so that -# we can also look for the `gtk-config' program in that directory. -case "$with_gtk" in - /*) - gtk_dir="$with_gtk" - ;; - *) - gtk_dir="" - ;; -esac - - case "$with_gtk" in + case "$with_motif" in yes) ;; no) ;; /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk headers" >&5 -$as_echo_n "checking for Gtk headers... " >&6; } - d=$with_gtk/include + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Motif headers" >&5 +$as_echo_n "checking for Motif headers... " >&6; } + d=$with_motif/include if test -d $d; then X_CFLAGS="-I$d $X_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -12339,9 +12912,9 @@ $as_echo "$d" >&6; } $as_echo "not found ($d: no such directory)" >&6; } fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk libs" >&5 -$as_echo_n "checking for Gtk libs... " >&6; } - d=$with_gtk/lib + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Motif libs" >&5 +$as_echo_n "checking for Motif libs... " >&6; } + d=$with_motif/lib if test -d $d; then X_LIBS="-L$d $X_LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 @@ -12352,13 +12925,13 @@ $as_echo "not found ($d: no such directory)" >&6; } fi # replace the directory string with "yes". - with_gtk_req="yes" - with_gtk=$with_gtk_req + with_motif_req="yes" + with_motif=$with_motif_req ;; *) echo "" - echo "error: argument to --with-gtk must be \"yes\", \"no\", or a directory." + echo "error: argument to --with-motif must be \"yes\", \"no\", or a directory." echo " If it is a directory, then \`DIR/include' will be added to" echo " the -I list, and \`DIR/lib' will be added to the -L list." exit 1 @@ -12366,725 +12939,894 @@ $as_echo "not found ($d: no such directory)" >&6; } esac -if test "$with_gtk" != yes -a "$with_gtk" != no ; then - echo "error: must be yes or no: --with-gtk=$with_gtk" +if test "$with_motif" != yes -a "$with_motif" != no ; then + echo "error: must be yes or no: --with-motif=$with_motif" exit 1 fi +if test "$with_motif" = yes; then + have_motif=no + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "Xm/Xm.h" "ac_cv_header_Xm_Xm_h" "#include + #include + #include +" +if test "x$ac_cv_header_Xm_Xm_h" = xyes; then : + have_motif=yes + $as_echo "#define HAVE_MOTIF 1" >>confdefs.h + + MOTIF_LIBS="$MOTIF_LIBS -lXm" +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" +fi + + +if test "$have_motif" = yes; then + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "Xm/ComboBox.h" "ac_cv_header_Xm_ComboBox_h" "#include + #include + #include +" +if test "x$ac_cv_header_Xm_ComboBox_h" = xyes; then : + $as_echo "#define HAVE_XMCOMBOBOX 1" >>confdefs.h + +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" +fi + + +############################################################################### +# +# Checking whether Motif is really Lesstif. +# +############################################################################### + +have_lesstif=no +if test "$have_motif" = yes ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Motif is really LessTif" >&5 +$as_echo_n "checking whether Motif is really LessTif... " >&6; } +if ${ac_cv_have_lesstif+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +long vers = LesstifVersion; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_have_lesstif=yes +else + ac_cv_have_lesstif=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CPPFLAGS="$ac_save_CPPFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_lesstif" >&5 +$as_echo "$ac_cv_have_lesstif" >&6; } + have_lesstif=$ac_cv_have_lesstif +fi + + +lesstif_version=unknown +lesstif_version_string=unknown + +if test "$have_lesstif" = yes ; then + ltv=unknown + echo unknown > conftest-lt + { $as_echo "$as_me:${as_lineno-$LINENO}: checking LessTif version number" >&5 +$as_echo_n "checking LessTif version number... " >&6; } +if ${ac_cv_lesstif_version_string+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + if test "$cross_compiling" = yes; then : + ac_cv_lesstif_version=unknown + ac_cv_lesstif_version_string=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + int main() { + FILE *f = fopen("conftest-lt", "w"); + if (!f) exit(1); + fprintf(f, "%d %d.%d\n", LesstifVersion, + LESSTIF_VERSION, LESSTIF_REVISION); + fclose(f); + exit(0); + } +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ltv=`cat conftest-lt` + ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'` + ac_cv_lesstif_version_string=`echo $ltv | sed 's/.* //'` +else + ac_cv_lesstif_version=unknown + ac_cv_lesstif_version_string=unknown +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + CPPFLAGS="$ac_save_CPPFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lesstif_version_string" >&5 +$as_echo "$ac_cv_lesstif_version_string" >&6; } + rm -f conftest-lt + lesstif_version=$ac_cv_lesstif_version + lesstif_version_string=$ac_cv_lesstif_version_string -parse_gtk_version_string() { - # M4 sucks!! - - maj=`echo $ac_gtk_version_string | sed -n 's/\..*//p'` - min=`echo $ac_gtk_version_string | sed -n 's/[^.]*\.\([^.]*\).*/\1/p'` - - ac_gtk_version=`echo "$maj * 1000 + $min" | bc` - if test -z "$ac_gtk_version"; then - ac_gtk_version=unknown - ac_gtk_version_string=unknown - fi -} - -# Find pkg-config... (need this for both gtk and gdk_pixbuf.) -# if the user specified --with-gtk=/foo/ then look there. -# -gtk_path="$PATH" -if test ! -z "$gtk_dir"; then - # canonicalize slashes. - foo=`echo "${gtk_dir}/bin" | sed 's@//*@/@g'` - gtk_path="$foo:$gtk_path" fi -for ac_prog in pkg-config -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_pkg_config+:} false; then : + +if test "$have_motif" = yes ; then + mtv=unknown + echo unknown > conftest-mt + { $as_echo "$as_me:${as_lineno-$LINENO}: checking Motif version number" >&5 +$as_echo_n "checking Motif version number... " >&6; } +if ${ac_cv_motif_version_string+:} false; then : $as_echo_n "(cached) " >&6 else - case $pkg_config in - [\\/]* | ?:[\\/]*) - ac_cv_path_pkg_config="$pkg_config" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $gtk_path -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_pkg_config="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - ;; -esac -fi -pkg_config=$ac_cv_path_pkg_config -if test -n "$pkg_config"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pkg_config" >&5 -$as_echo "$pkg_config" >&6; } + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + if test "$cross_compiling" = yes; then : + ac_cv_motif_version=unknown + ac_cv_motif_version_string=unknown else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + int main() { + FILE *f = fopen("conftest-mt", "w"); + if (!f) exit(1); + fprintf(f, "%d %d.%d\n", XmVersion, + XmVERSION, XmREVISION); + fclose(f); + exit(0); + } +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + mtv=`cat conftest-mt` + ac_cv_motif_version=`echo $mtv | sed 's/ .*//'` + ac_cv_motif_version_string=`echo $mtv | sed 's/.* //'` +else + ac_cv_motif_version=unknown + ac_cv_motif_version_string=unknown +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi + CPPFLAGS="$ac_save_CPPFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_motif_version_string" >&5 +$as_echo "$ac_cv_motif_version_string" >&6; } + rm -f conftest-mt + motif_version=$ac_cv_motif_version + motif_version_string=$ac_cv_motif_version_string - test -n "$pkg_config" && break -done - - -if test -z "$pkg_config" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: pkg-config not found!" >&5 -$as_echo "$as_me: WARNING: pkg-config not found!" >&2;} - pkg_config="false" fi -# Utility function for running pkg-config-based tests... +############################################################################### # -pkgs='' -pkg_check_version() { - if test "$ok" = yes ; then - req="$1" - min="$2" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $req" >&5 -$as_echo_n "checking for $req... " >&6; } - if $pkg_config --exists "$req" ; then - vers=`$pkg_config --modversion "$req"` - if $pkg_config --exists "$req >= $min" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $vers" >&5 -$as_echo "$vers" >&6; } - pkgs="$pkgs $req" - return 1 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $vers (wanted >= $min)" >&5 -$as_echo "$vers (wanted >= $min)" >&6; } - ok=no - return 0 - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - ok=no - return 0 - fi - fi -} - - -jurassic_gtk=no -gtk_halfassed=no -have_gtk_2_22_or_higher=no -COMMENT_DEMO_GLADE2_GTK_2_22_HEAD="" -COMMENT_DEMO_GLADE2_GTK_2_22_TAIL="" +# Checking whether Motif requires -lXp. +# +# Some versions of Motif (2.1.0, at least) require -lXp, the "X Printing +# Extension". Why this extension isn't in -lXext with all the others, +# I have no idea. +# +############################################################################### -if test "$with_gtk" = yes; then - have_gtk=no +have_xp_ext=no +if test "$have_motif" = yes ; then + have_xp_ext=no - ok="yes" - pkg_check_version gtk+-2.0 2.0.1 ; ac_gtk_version_string="$vers" - pkg_check_version gmodule-2.0 2.0.0 - pkg_check_version libxml-2.0 2.4.6 - pkg_check_version libglade-2.0 1.99.0 - pkg_check_version gdk-pixbuf-2.0 2.0.0 - pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 - have_gtk="$ok" + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" - if test "$have_gtk" = no; then - if test -n "$ac_gtk_version_string" ; then - gtk_halfassed="$ac_gtk_version_string" - gtk_halfassed_lib="$req" - fi + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" - if test "$have_gtk" = yes; then - parse_gtk_version_string - jurassic_gtk=no + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - if test "$have_gtk" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk includes" >&5 -$as_echo_n "checking for Gtk includes... " >&6; } -if ${ac_cv_gtk_config_cflags+:} false; then : + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XpQueryExtension in -lXp" >&5 +$as_echo_n "checking for XpQueryExtension in -lXp... " >&6; } +if ${ac_cv_lib_Xp_XpQueryExtension+:} false; then : $as_echo_n "(cached) " >&6 else - ac_cv_gtk_config_cflags=`$pkg_config --cflags $pkgs` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gtk_config_cflags" >&5 -$as_echo "$ac_cv_gtk_config_cflags" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Gtk libs" >&5 -$as_echo_n "checking for Gtk libs... " >&6; } -if ${ac_cv_gtk_config_libs+:} false; then : - $as_echo_n "(cached) " >&6 + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXp -lX11 -lXext -lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XpQueryExtension (); +int +main () +{ +return XpQueryExtension (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_Xp_XpQueryExtension=yes else - ac_cv_gtk_config_libs=`$pkg_config --libs $pkgs` + ac_cv_lib_Xp_XpQueryExtension=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xp_XpQueryExtension" >&5 +$as_echo "$ac_cv_lib_Xp_XpQueryExtension" >&6; } +if test "x$ac_cv_lib_Xp_XpQueryExtension" = xyes; then : + have_xp_ext=yes; MOTIF_LIBS="$MOTIF_LIBS -lXp" +else + true fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gtk_config_libs" >&5 -$as_echo "$ac_cv_gtk_config_libs" >&6; } - fi - - ac_gtk_config_cflags=$ac_cv_gtk_config_cflags - ac_gtk_config_libs=$ac_cv_gtk_config_libs - - GTK_EXTRA_OBJS="" - GTK_DATADIR="" - if test "$have_gtk" = yes; then - GTK_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` - GTK_DATADIR="$GTK_DATADIR/share" - fi - - if test "$have_gtk" = yes; then - INCLUDES="$INCLUDES $ac_gtk_config_cflags" - GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs" - $as_echo "#define HAVE_GTK 1" >>confdefs.h - - $as_echo "#define HAVE_GTK2 1" >>confdefs.h - - $as_echo "#define HAVE_XML 1" >>confdefs.h - fi + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - if test "$have_gtk" = yes; then - ok="yes" - pkg_check_version gtk+-2.0 2.22 - have_gtk_2_22_or_higher="$ok" - if test "$have_gtk_2_22_or_higher" = yes; then - COMMENT_DEMO_GLADE2_GTK_2_22_HEAD="" - fi - fi fi -# Check for the various Gnome help and URL loading programs. +############################################################################### # -WITH_BROWSER=gnome-open -if test "$have_gtk" = yes; then - for ac_prog in gnome-open -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_gnome_open_program+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$gnome_open_program"; then - ac_cv_prog_gnome_open_program="$gnome_open_program" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_gnome_open_program="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS +# Checking whether Motif requires -lXintl (for _Xsetlocale.) +# +############################################################################### -fi -fi -gnome_open_program=$ac_cv_prog_gnome_open_program -if test -n "$gnome_open_program"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gnome_open_program" >&5 -$as_echo "$gnome_open_program" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi +have_xintl=no +if test "$have_motif" = yes ; then + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" - test -n "$gnome_open_program" && break -done + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - for ac_prog in gnome-url-show -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_gnome_url_show_program+:} false; then : + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _Xsetlocale in -lXintl" >&5 +$as_echo_n "checking for _Xsetlocale in -lXintl... " >&6; } +if ${ac_cv_lib_Xintl__Xsetlocale+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$gnome_url_show_program"; then - ac_cv_prog_gnome_url_show_program="$gnome_url_show_program" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_gnome_url_show_program="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXintl -lX11 -lXext -lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char _Xsetlocale (); +int +main () +{ +return _Xsetlocale (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_Xintl__Xsetlocale=yes +else + ac_cv_lib_Xintl__Xsetlocale=no fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -gnome_url_show_program=$ac_cv_prog_gnome_url_show_program -if test -n "$gnome_url_show_program"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gnome_url_show_program" >&5 -$as_echo "$gnome_url_show_program" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xintl__Xsetlocale" >&5 +$as_echo "$ac_cv_lib_Xintl__Xsetlocale" >&6; } +if test "x$ac_cv_lib_Xintl__Xsetlocale" = xyes; then : + have_xintl=yes else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + have_xintl=no fi + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" - test -n "$gnome_url_show_program" && break -done - + if test "$have_xintl" = yes; then + MOTIF_LIBS="$MOTIF_LIBS -lXintl" + fi fi ############################################################################### # -# Check for -lXm. +# Check for a login manager for a "New Login" button on the lock dialog. +# Usually this will be "/usr/bin/gdmflexiserver". # ############################################################################### -have_motif=no -with_motif_req=unspecified +with_login_manager_req=unspecified +default_login_manager_1='gdmflexiserver -ls' +default_login_manager_2='kdmctl reserve' +default_login_manager_3='lxdm -c USER_SWITCH' +default_login_manager_4='dm-tool switch-to-greeter' -# Check whether --with-motif was given. -if test "${with_motif+set}" = set; then : - withval=$with_motif; with_motif="$withval"; with_motif_req="$withval" + +# Check whether --with-login-manager was given. +if test "${with_login_manager+set}" = set; then : + withval=$with_login_manager; with_login_manager="$withval"; with_login_manager_req="$withval" else - with_motif=no + with_login_manager=yes fi +# no HANDLE_X_PATH_ARG for this one +if test "$enable_locking" = no ; then + with_login_manager_req=no + with_login_manager=no +fi - case "$with_motif" in - yes) ;; - no) ;; - - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Motif headers" >&5 -$as_echo_n "checking for Motif headers... " >&6; } - d=$with_motif/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Motif libs" >&5 -$as_echo_n "checking for Motif libs... " >&6; } - d=$with_motif/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - # replace the directory string with "yes". - with_motif_req="yes" - with_motif=$with_motif_req - ;; - - *) - echo "" - echo "error: argument to --with-motif must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - +case "$with_login_manager_req" in + no) + with_login_manager="" + ;; -if test "$with_motif" != yes -a "$with_motif" != no ; then - echo "error: must be yes or no: --with-motif=$with_motif" - exit 1 -fi + yes|unspecified) + # Try various defaults, use the first one that exists. -if test "$with_motif" = yes; then - have_motif=no + with_login_manager="" - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_1 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + # Extract the first word of "$login_manager_tmp", so it can be a program name with args. +set dummy $login_manager_tmp; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_login_manager_tmp+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $login_manager_tmp in + [\\/]* | ?:[\\/]*) + ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "Xm/Xm.h" "ac_cv_header_Xm_Xm_h" "#include - #include - #include -" -if test "x$ac_cv_header_Xm_Xm_h" = xyes; then : - have_motif=yes - $as_echo "#define HAVE_MOTIF 1" >>confdefs.h +done + done +IFS=$as_save_IFS - MOTIF_LIBS="$MOTIF_LIBS -lXm" + ;; +esac fi - - - CPPFLAGS="$ac_save_CPPFLAGS" +login_manager_tmp=$ac_cv_path_login_manager_tmp +if test -n "$login_manager_tmp"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 +$as_echo "$login_manager_tmp" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -if test "$have_motif" = yes; then + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_1" + fi + fi - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_2 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + # Extract the first word of "$login_manager_tmp", so it can be a program name with args. +set dummy $login_manager_tmp; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_login_manager_tmp+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $login_manager_tmp in + [\\/]* | ?:[\\/]*) + ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "Xm/ComboBox.h" "ac_cv_header_Xm_ComboBox_h" "#include - #include - #include -" -if test "x$ac_cv_header_Xm_ComboBox_h" = xyes; then : - $as_echo "#define HAVE_XMCOMBOBOX 1" >>confdefs.h +done + done +IFS=$as_save_IFS + ;; +esac fi - - - CPPFLAGS="$ac_save_CPPFLAGS" +login_manager_tmp=$ac_cv_path_login_manager_tmp +if test -n "$login_manager_tmp"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 +$as_echo "$login_manager_tmp" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -############################################################################### -# -# Checking whether Motif is really Lesstif. -# -############################################################################### + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_2" + fi + fi -have_lesstif=no -if test "$have_motif" = yes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Motif is really LessTif" >&5 -$as_echo_n "checking whether Motif is really LessTif... " >&6; } -if ${ac_cv_have_lesstif+:} false; then : + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_3 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + # Extract the first word of "$login_manager_tmp", so it can be a program name with args. +set dummy $login_manager_tmp; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_login_manager_tmp+:} false; then : $as_echo_n "(cached) " >&6 else - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + case $login_manager_tmp in + [\\/]* | ?:[\\/]*) + ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -long vers = LesstifVersion; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_have_lesstif=yes -else - ac_cv_have_lesstif=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="$ac_save_CPPFLAGS" +done + done +IFS=$as_save_IFS + + ;; +esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_lesstif" >&5 -$as_echo "$ac_cv_have_lesstif" >&6; } - have_lesstif=$ac_cv_have_lesstif +login_manager_tmp=$ac_cv_path_login_manager_tmp +if test -n "$login_manager_tmp"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 +$as_echo "$login_manager_tmp" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -lesstif_version=unknown -lesstif_version_string=unknown + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_3" + fi + fi -if test "$have_lesstif" = yes ; then - ltv=unknown - echo unknown > conftest-lt - { $as_echo "$as_me:${as_lineno-$LINENO}: checking LessTif version number" >&5 -$as_echo_n "checking LessTif version number... " >&6; } -if ${ac_cv_lesstif_version_string+:} false; then : + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_4 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + # Extract the first word of "$login_manager_tmp", so it can be a program name with args. +set dummy $login_manager_tmp; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_login_manager_tmp+:} false; then : $as_echo_n "(cached) " >&6 else - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + case $login_manager_tmp in + [\\/]* | ?:[\\/]*) + ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - if test "$cross_compiling" = yes; then : - ac_cv_lesstif_version=unknown - ac_cv_lesstif_version_string=unknown -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - int main() { - FILE *f = fopen("conftest-lt", "w"); - if (!f) exit(1); - fprintf(f, "%d %d.%d\n", LesstifVersion, - LESSTIF_VERSION, LESSTIF_REVISION); - fclose(f); - exit(0); - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ltv=`cat conftest-lt` - ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'` - ac_cv_lesstif_version_string=`echo $ltv | sed 's/.* //'` -else - ac_cv_lesstif_version=unknown - ac_cv_lesstif_version_string=unknown +done + done +IFS=$as_save_IFS + + ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +login_manager_tmp=$ac_cv_path_login_manager_tmp +if test -n "$login_manager_tmp"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 +$as_echo "$login_manager_tmp" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - CPPFLAGS="$ac_save_CPPFLAGS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lesstif_version_string" >&5 -$as_echo "$ac_cv_lesstif_version_string" >&6; } - rm -f conftest-lt - lesstif_version=$ac_cv_lesstif_version - lesstif_version_string=$ac_cv_lesstif_version_string -fi + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_4" + fi + fi + + ;; + /*) + # absolute path specified on cmd line + set dummy $with_login_manager_req ; login_manager_tmp=$2 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $login_manager_tmp" >&5 +$as_echo_n "checking for $login_manager_tmp... " >&6; } + if test -x "$login_manager_tmp" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + with_login_manager="" + fi + ;; -if test "$have_motif" = yes ; then - mtv=unknown - echo unknown > conftest-mt - { $as_echo "$as_me:${as_lineno-$LINENO}: checking Motif version number" >&5 -$as_echo_n "checking Motif version number... " >&6; } -if ${ac_cv_motif_version_string+:} false; then : + *) + # relative path specified on cmd line + set dummy $with_login_manager_req ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + # Extract the first word of "$login_manager_tmp", so it can be a program name with args. +set dummy $login_manager_tmp; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_login_manager_tmp+:} false; then : $as_echo_n "(cached) " >&6 else - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + case $login_manager_tmp in + [\\/]* | ?:[\\/]*) + ac_cv_path_login_manager_tmp="$login_manager_tmp" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_login_manager_tmp="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - if test "$cross_compiling" = yes; then : - ac_cv_motif_version=unknown - ac_cv_motif_version_string=unknown -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - int main() { - FILE *f = fopen("conftest-mt", "w"); - if (!f) exit(1); - fprintf(f, "%d %d.%d\n", XmVersion, - XmVERSION, XmREVISION); - fclose(f); - exit(0); - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - mtv=`cat conftest-mt` - ac_cv_motif_version=`echo $mtv | sed 's/ .*//'` - ac_cv_motif_version_string=`echo $mtv | sed 's/.* //'` -else - ac_cv_motif_version=unknown - ac_cv_motif_version_string=unknown +done + done +IFS=$as_save_IFS + + ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +login_manager_tmp=$ac_cv_path_login_manager_tmp +if test -n "$login_manager_tmp"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $login_manager_tmp" >&5 +$as_echo "$login_manager_tmp" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - CPPFLAGS="$ac_save_CPPFLAGS" -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_motif_version_string" >&5 -$as_echo "$ac_cv_motif_version_string" >&6; } - rm -f conftest-mt - motif_version=$ac_cv_motif_version - motif_version_string=$ac_cv_motif_version_string + if test -z "$login_manager_tmp" ; then + with_login_manager="" + else + with_login_manager="$login_manager_tmp" + fi + ;; +esac +ac_cv_login_manager_program="$with_login_manager" + +NEW_LOGIN_COMMAND_P='' +NEW_LOGIN_COMMAND="$ac_cv_login_manager_program" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for login manager" >&5 +$as_echo_n "checking for login manager... " >&6; } +if test -z "$NEW_LOGIN_COMMAND" ; then + NEW_LOGIN_COMMAND="$default_login_manager_1" + NEW_LOGIN_COMMAND_P='! ' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NEW_LOGIN_COMMAND (disabled)" >&5 +$as_echo "$NEW_LOGIN_COMMAND (disabled)" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NEW_LOGIN_COMMAND" >&5 +$as_echo "$NEW_LOGIN_COMMAND" >&6; } fi + ############################################################################### # -# Checking whether Motif requires -lXp. -# -# Some versions of Motif (2.1.0, at least) require -lXp, the "X Printing -# Extension". Why this extension isn't in -lXext with all the others, -# I have no idea. +# Check for a directory full of images to use as the default value +# of the "imageDirectory" preference. # ############################################################################### -have_xp_ext=no -if test "$have_motif" = yes ; then - have_xp_ext=no +have_imagedir=no +with_imagedir_req=unspecified - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" +# Check whether --with-image-directory was given. +if test "${with_image_directory+set}" = set; then : + withval=$with_image_directory; with_imagedir="$withval"; with_imagedir_req="$withval" +else + with_imagedir=yes +fi - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" +# no HANDLE_X_PATH_ARG for this one - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XpQueryExtension in -lXp" >&5 -$as_echo_n "checking for XpQueryExtension in -lXp... " >&6; } -if ${ac_cv_lib_Xp_XpQueryExtension+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXp -lX11 -lXext -lm $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +case "$with_imagedir" in + /*) + # absolute path + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for image directory $with_imagedir" >&5 +$as_echo_n "checking for image directory $with_imagedir... " >&6; } + if test -d "$with_imagedir" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + with_imagedir="" + fi + ;; + yes) + with_imagedir="" -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XpQueryExtension (); -int -main () -{ -return XpQueryExtension (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xp_XpQueryExtension=yes -else - ac_cv_lib_Xp_XpQueryExtension=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS + #### Could use some more defaults here... + for dd in \ + "/usr/share/rpd-wallpaper" \ + "/usr/share/backgrounds/images/" \ + "/usr/share/wallpapers/" \ + "/Library/Desktop Pictures/" \ + ; do + if test -z "$with_imagedir"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for image directory $dd" >&5 +$as_echo_n "checking for image directory $dd... " >&6; } + if test -d "$dd" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + with_imagedir="$dd" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + fi + done + + ;; + no) + with_imagedir="" + ;; + + *) + echo "error: must be an absolute path: --with-image-directory=$with_imagedir_req" + exit 1 + ;; +esac +ac_cv_imagedir="$with_imagedir" + +DEFAULT_IMAGES_P='True' +DEFAULT_IMAGE_DIRECTORY="$ac_cv_imagedir" + +if test -z "$DEFAULT_IMAGE_DIRECTORY" ; then + DEFAULT_IMAGES_P='False' fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xp_XpQueryExtension" >&5 -$as_echo "$ac_cv_lib_Xp_XpQueryExtension" >&6; } -if test "x$ac_cv_lib_Xp_XpQueryExtension" = xyes; then : - have_xp_ext=yes; MOTIF_LIBS="$MOTIF_LIBS -lXp" + + +############################################################################### +# +# Pick a text file to use as the default of the "textFile" preference. +# Any old file will do, but preferably one that will make interesting +# shapes when displayed by "starwars" and "fontglide". +# +############################################################################### + +have_textfile=no +with_textfile_req=unspecified + + +# Check whether --with-text-file was given. +if test "${with_text_file+set}" = set; then : + withval=$with_text_file; with_textfile="$withval"; with_textfile_req="$withval" else - true + with_textfile=yes fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" +# no HANDLE_X_PATH_ARG for this one -fi +case "$with_textfile" in + /*) + # absolute path + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for text file $with_textfile" >&5 +$as_echo_n "checking for text file $with_textfile... " >&6; } + if test -f "$with_textfile" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + with_textfile="" + fi + ;; + yes) + with_textfile="" + + #### Could use some more defaults here... + for f in \ + "/usr/X11R6/lib/X11/doc/README" \ + "/usr/share/doc/xserver-common/copyright" \ + "/usr/share/doc/xserver-xorg-core/copyright" \ + "/usr/X11R6/README" \ + "/usr/share/doc/libX11*/COPYING" \ + "/usr/X11/share/X11/doc/README*" \ + "/usr/share/doc/debian/debian-manifesto" \ + ; do + if test -z "$with_textfile"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for text file $f" >&5 +$as_echo_n "checking for text file $f... " >&6; } + f=`/bin/ls $f 2>&- | head -1` + if test -f "$f" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + with_textfile="$f" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + fi + done + + ;; + no) + with_textfile="" + ;; + + *) + echo "error: must be an absolute path: --with-text-file=$with_textfile_req" + exit 1 + ;; +esac +ac_cv_textfile="$with_textfile" + +DEFAULT_TEXT_FILE="$ac_cv_textfile" ############################################################################### # -# Checking whether Motif requires -lXintl (for _Xsetlocale.) +# Check the browser to see help URL # ############################################################################### -have_xintl=no -if test "$have_motif" = yes ; then - - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" +have_browser=no +with_browser_req=unspecified - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _Xsetlocale in -lXintl" >&5 -$as_echo_n "checking for _Xsetlocale in -lXintl... " >&6; } -if ${ac_cv_lib_Xintl__Xsetlocale+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lXintl -lX11 -lXext -lm $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char _Xsetlocale (); -int -main () -{ -return _Xsetlocale (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_Xintl__Xsetlocale=yes -else - ac_cv_lib_Xintl__Xsetlocale=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xintl__Xsetlocale" >&5 -$as_echo "$ac_cv_lib_Xintl__Xsetlocale" >&6; } -if test "x$ac_cv_lib_Xintl__Xsetlocale" = xyes; then : - have_xintl=yes +# Check whether --with-browser was given. +if test "${with_browser+set}" = set; then : + withval=$with_browser; with_browser="$withval"; with_browser_req="$withval" else - have_xintl=no + with_browser=no fi - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" +# no HANDLE_X_PATH_ARG for this one - if test "$have_xintl" = yes; then - MOTIF_LIBS="$MOTIF_LIBS -lXintl" - fi -fi +case "$with_browser" in + no ) + ;; + * ) + WITH_BROWSER=$with_browser + gnome_open_program=$with_browser + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for browser $with_browser" >&5 +$as_echo_n "checking for browser $with_browser... " >&6; } + with_browser_fullpath=`which $with_browser 2>/dev/null` + case $with_browser_fullpath in + /* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + have_browser=yes + ;; + * ) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +# Only warning: we don't want to install all packages for the +# dependency of the browser in building stage... + echo "WARNING: browser not found: --with-browser=$with_browser" + ;; + esac + ;; +esac +ac_cv_browser="$with_browser" ############################################################################### @@ -13093,10 +13835,13 @@ fi # ############################################################################### +#### H1 + have_gl=no ac_have_mesa_gl=no with_gl_req=unspecified gl_halfassed=no +have_glext=no # Check whether --with-gl was given. if test "${with_gl+set}" = set; then : @@ -13494,7 +14239,7 @@ if ${ac_cv_mesagl_version_string+:} false; then : $as_echo_n "(cached) " >&6 else cat > conftest.$ac_ext < #ifndef MESA_MAJOR_VERSION @@ -13564,15 +14309,104 @@ EOF ac_cv_mesagl_version_string=$ac_mesagl_version_string fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_mesagl_version_string" >&5 -$as_echo "$ac_cv_mesagl_version_string" >&6; } - ac_mesagl_version=$ac_cv_mesagl_version - ac_mesagl_version_string=$ac_cv_mesagl_version_string - fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_mesagl_version_string" >&5 +$as_echo "$ac_cv_mesagl_version_string" >&6; } + ac_mesagl_version=$ac_cv_mesagl_version + ac_mesagl_version_string=$ac_cv_mesagl_version_string + fi + + + # Check for OpenGL 1.1 features. + # + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + as_ac_Lib=`$as_echo "ac_cv_lib_$gl_lib_1''_glBindTexture" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for glBindTexture in -l$gl_lib_1" >&5 +$as_echo_n "checking for glBindTexture in -l$gl_lib_1... " >&6; } +if eval \${$as_ac_Lib+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-l$gl_lib_1 $GL_LIBS -lX11 -lXext -lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char glBindTexture (); +int +main () +{ +return glBindTexture (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_ac_Lib=yes" +else + eval "$as_ac_Lib=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +eval ac_res=\$$as_ac_Lib + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then : + $as_echo "#define HAVE_GLBINDTEXTURE 1" >>confdefs.h + +else + true +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + + + # Check for OpenGL GLSL features. + # + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_compile "$LINENO" "GL/glext.h" "ac_cv_header_GL_glext_h" "#include +" +if test "x$ac_cv_header_GL_glext_h" = xyes; then : + have_glext=yes +else + have_glext=no +fi - # Check for OpenGL 1.1 features. - # + CPPFLAGS="$ac_save_CPPFLAGS" + if test "$have_glext" = yes ; then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -13592,9 +14426,9 @@ $as_echo "$ac_cv_mesagl_version_string" >&6; } CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - as_ac_Lib=`$as_echo "ac_cv_lib_$gl_lib_1''_glBindTexture" | $as_tr_sh` -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for glBindTexture in -l$gl_lib_1" >&5 -$as_echo_n "checking for glBindTexture in -l$gl_lib_1... " >&6; } + as_ac_Lib=`$as_echo "ac_cv_lib_$gl_lib_1''_glUseProgram" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for glUseProgram in -l$gl_lib_1" >&5 +$as_echo_n "checking for glUseProgram in -l$gl_lib_1... " >&6; } if eval \${$as_ac_Lib+:} false; then : $as_echo_n "(cached) " >&6 else @@ -13609,11 +14443,11 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char glBindTexture (); +char glUseProgram (); int main () { -return glBindTexture (); +return glUseProgram (); ; return 0; } @@ -13631,7 +14465,7 @@ eval ac_res=\$$as_ac_Lib { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then : - $as_echo "#define HAVE_GLBINDTEXTURE 1" >>confdefs.h + $as_echo "#define HAVE_GLSL 1" >>confdefs.h else true @@ -13641,6 +14475,7 @@ fi LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" + fi fi elif test "$with_gl" != no; then @@ -13990,98 +14825,259 @@ fi LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" - fi - fi - - if test "$have_gle" = yes ; then - $as_echo "#define HAVE_GLE 1" >>confdefs.h - - if test "$have_gle3" = yes ; then - $as_echo "#define HAVE_GLE3 1" >>confdefs.h - - fi + fi + fi + + if test "$have_gle" = yes ; then + $as_echo "#define HAVE_GLE 1" >>confdefs.h + + if test "$have_gle3" = yes ; then + $as_echo "#define HAVE_GLE3 1" >>confdefs.h + + fi + fi + +elif test "$with_gle" != no; then + echo "error: must be yes or no: --with-gle=$with_gle" + exit 1 + +fi + + +############################################################################### +# +# Handle --with-gles +# +############################################################################### + +with_gles_req=unspecified + +# Check whether --with-gles was given. +if test "${with_gles+set}" = set; then : + withval=$with_gles; with_gles="$withval"; with_gles_req="$withval" +else + with_gles=no +fi + + + + case "$with_gles" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JWZGLES headers" >&5 +$as_echo_n "checking for JWZGLES headers... " >&6; } + d=$with_gles/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JWZGLES libs" >&5 +$as_echo_n "checking for JWZGLES libs... " >&6; } + d=$with_gles/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + with_gles_req="yes" + with_gles=$with_gles_req + ;; + + *) + echo "" + echo "error: argument to --with-gles must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_gles" = yes; then + have_gles=yes + $as_echo "#define HAVE_JWZGLES 1" >>confdefs.h + + JWZGLES_OBJS='$(JWXYZ_BIN)/jwzgles.o' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: using OpenGL ES compatiblity shim" >&5 +$as_echo "using OpenGL ES compatiblity shim" >&6; } +elif test "$with_gles" != no; then + echo "error: must be yes or no: --with-gles=$with_gles" + exit 1 +fi + +############################################################################### +# +# Check for -ljpeg +# +############################################################################### + +have_jpeg=no +with_jpeg_req=unspecified +jpeg_halfassed=no + +# Check whether --with-jpeg was given. +if test "${with_jpeg+set}" = set; then : + withval=$with_jpeg; with_jpeg="$withval"; with_jpeg_req="$withval" +else + with_jpeg=yes +fi + + + + case "$with_jpeg" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JPEG headers" >&5 +$as_echo_n "checking for JPEG headers... " >&6; } + d=$with_jpeg/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JPEG libs" >&5 +$as_echo_n "checking for JPEG libs... " >&6; } + d=$with_jpeg/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + with_jpeg_req="yes" + with_jpeg=$with_jpeg_req + ;; + + *) + echo "" + echo "error: argument to --with-jpeg must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$with_jpeg" != yes -a "$with_jpeg" != no ; then + echo "error: must be yes or no: --with-jpeg=$with_jpeg" + exit 1 +fi + +if test "$with_jpeg" = yes; then + + have_jpeg=no + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + ac_fn_c_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default" +if test "x$ac_cv_header_jpeglib_h" = xyes; then : + have_jpeg=yes +fi + + + CPPFLAGS="$ac_save_CPPFLAGS" + + if test "$have_jpeg" = yes; then + # we have the header, now check for the library + have_jpeg=no + jpeg_halfassed=yes + + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_start_compress in -ljpeg" >&5 +$as_echo_n "checking for jpeg_start_compress in -ljpeg... " >&6; } +if ${ac_cv_lib_jpeg_jpeg_start_compress+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ljpeg $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char jpeg_start_compress (); +int +main () +{ +return jpeg_start_compress (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_jpeg_jpeg_start_compress=yes +else + ac_cv_lib_jpeg_jpeg_start_compress=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_start_compress" >&5 +$as_echo "$ac_cv_lib_jpeg_jpeg_start_compress" >&6; } +if test "x$ac_cv_lib_jpeg_jpeg_start_compress" = xyes; then : + have_jpeg=yes + jpeg_halfassed=no + JPEG_LIBS="-ljpeg" + $as_echo "#define HAVE_JPEGLIB 1" >>confdefs.h + +fi + + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + fi - -elif test "$with_gle" != no; then - echo "error: must be yes or no: --with-gle=$with_gle" - exit 1 - -fi - - -############################################################################### -# -# Handle --with-gles -# -############################################################################### - -with_gles_req=unspecified - -# Check whether --with-gles was given. -if test "${with_gles+set}" = set; then : - withval=$with_gles; with_gles="$withval"; with_gles_req="$withval" -else - with_gles=no fi - - case "$with_gles" in - yes) ;; - no) ;; - - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JWZGLES headers" >&5 -$as_echo_n "checking for JWZGLES headers... " >&6; } - d=$with_gles/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JWZGLES libs" >&5 -$as_echo_n "checking for JWZGLES libs... " >&6; } - d=$with_gles/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - # replace the directory string with "yes". - with_gles_req="yes" - with_gles=$with_gles_req - ;; - - *) - echo "" - echo "error: argument to --with-gles must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - - -if test "$with_gles" = yes; then - have_gles=yes - $as_echo "#define HAVE_JWZGLES 1" >>confdefs.h - - JWZGLES_OBJS='$(JWXYZ_BIN)/jwzgles.o' - { $as_echo "$as_me:${as_lineno-$LINENO}: result: using OpenGL ES compatiblity shim" >&5 -$as_echo "using OpenGL ES compatiblity shim" >&6; } -elif test "$with_gles" != no; then - echo "error: must be yes or no: --with-gles=$with_gles" - exit 1 -fi - ############################################################################### # # Check for -lpng @@ -14575,172 +15571,14 @@ fi if test "$have_gdk_pixbuf" = yes; then INCLUDES="$INCLUDES $ac_gdk_pixbuf_config_cflags" PNG_LIBS="$ac_gdk_pixbuf_config_libs" - $as_echo "#define HAVE_GDK_PIXBUF 1" >>confdefs.h - - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for gdk_pixbuf usability... no" >&5 -$as_echo "checking for gdk_pixbuf usability... no" >&6; } - fi - - if test "$have_gdk_pixbuf" = yes; then - - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gdk_pixbuf_apply_embedded_orientation in -lc" >&5 -$as_echo_n "checking for gdk_pixbuf_apply_embedded_orientation in -lc... " >&6; } -if ${ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lc $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gdk_pixbuf_apply_embedded_orientation (); -int -main () -{ -return gdk_pixbuf_apply_embedded_orientation (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation=yes -else - ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" >&5 -$as_echo "$ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" >&6; } -if test "x$ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" = xyes; then : - $as_echo "#define HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION 1" >>confdefs.h - -fi - - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - - fi -fi - - -############################################################################### -# -# Check for -ljpeg -# -############################################################################### - -have_jpeg=no -with_jpeg_req=unspecified -jpeg_halfassed=no - -# Check whether --with-jpeg was given. -if test "${with_jpeg+set}" = set; then : - withval=$with_jpeg; with_jpeg="$withval"; with_jpeg_req="$withval" -else - with_jpeg=yes -fi - - - - case "$with_jpeg" in - yes) ;; - no) ;; - - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JPEG headers" >&5 -$as_echo_n "checking for JPEG headers... " >&6; } - d=$with_jpeg/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JPEG libs" >&5 -$as_echo_n "checking for JPEG libs... " >&6; } - d=$with_jpeg/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - # replace the directory string with "yes". - with_jpeg_req="yes" - with_jpeg=$with_jpeg_req - ;; - - *) - echo "" - echo "error: argument to --with-jpeg must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - - -if test "$with_jpeg" != yes -a "$with_jpeg" != no ; then - echo "error: must be yes or no: --with-jpeg=$with_jpeg" - exit 1 -fi - -if test "$with_jpeg" = yes; then - - have_jpeg=no - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default" -if test "x$ac_cv_header_jpeglib_h" = xyes; then : - have_jpeg=yes -fi - + $as_echo "#define HAVE_GDK_PIXBUF 1" >>confdefs.h - CPPFLAGS="$ac_save_CPPFLAGS" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for gdk_pixbuf usability... no" >&5 +$as_echo "checking for gdk_pixbuf usability... no" >&6; } + fi - if test "$have_jpeg" = yes; then - # we have the header, now check for the library - have_jpeg=no - jpeg_halfassed=yes + if test "$have_gdk_pixbuf" = yes; then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -14760,13 +15598,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_start_compress in -ljpeg" >&5 -$as_echo_n "checking for jpeg_start_compress in -ljpeg... " >&6; } -if ${ac_cv_lib_jpeg_jpeg_start_compress+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gdk_pixbuf_apply_embedded_orientation in -lc" >&5 +$as_echo_n "checking for gdk_pixbuf_apply_embedded_orientation in -lc... " >&6; } +if ${ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-ljpeg $LIBS" +LIBS="-lc $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -14776,31 +15614,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char jpeg_start_compress (); +char gdk_pixbuf_apply_embedded_orientation (); int main () { -return jpeg_start_compress (); +return gdk_pixbuf_apply_embedded_orientation (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_jpeg_jpeg_start_compress=yes + ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation=yes else - ac_cv_lib_jpeg_jpeg_start_compress=no + ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_start_compress" >&5 -$as_echo "$ac_cv_lib_jpeg_jpeg_start_compress" >&6; } -if test "x$ac_cv_lib_jpeg_jpeg_start_compress" = xyes; then : - have_jpeg=yes - jpeg_halfassed=no - JPEG_LIBS="-ljpeg" - $as_echo "#define HAVE_JPEGLIB 1" >>confdefs.h +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" >&5 +$as_echo "$ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" >&6; } +if test "x$ac_cv_lib_c_gdk_pixbuf_apply_embedded_orientation" = xyes; then : + $as_echo "#define HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION 1" >>confdefs.h fi @@ -15015,224 +15850,7 @@ fi xft_halfassed=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for Xft usability..." >&5 -$as_echo "checking for Xft usability..." >&6; } - - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XftDrawStringUtf8 in -lc" >&5 -$as_echo_n "checking for XftDrawStringUtf8 in -lc... " >&6; } -if ${ac_cv_lib_c_XftDrawStringUtf8+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lc $ac_xft_config_libs -lX11 -lXext -lm $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char XftDrawStringUtf8 (); -int -main () -{ -return XftDrawStringUtf8 (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_XftDrawStringUtf8=yes -else - ac_cv_lib_c_XftDrawStringUtf8=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_XftDrawStringUtf8" >&5 -$as_echo "$ac_cv_lib_c_XftDrawStringUtf8" >&6; } -if test "x$ac_cv_lib_c_XftDrawStringUtf8" = xyes; then : - have_xft=yes -fi - - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - - fi - - if test "$have_xft" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for Xft usability... no" >&5 -$as_echo "checking for Xft usability... no" >&6; } - fi -fi - -if test "$have_xft" = yes; then - INCLUDES="$INCLUDES $ac_xft_config_cflags" - XFT_LIBS="$ac_xft_config_libs" - XFT_SRCS='' - XFT_OBJS='' - $as_echo "#define HAVE_XFT 1" >>confdefs.h - -else - XFT_LIBS='' - XFT_SRCS='$(UTILS_SRC)/xft.c' - XFT_OBJS='$(UTILS_BIN)/xft.o' -fi - - -############################################################################### -# -# Check for -lsystemd -# -############################################################################### - -have_systemd=no -with_systemd_req=unspecified -systemd_halfassed=no - -# Check whether --with-systemd was given. -if test "${with_systemd+set}" = set; then : - withval=$with_systemd; with_systemd="$withval"; with_systemd_req="$withval" -else - with_systemd=yes -fi - - - - case "$with_systemd" in - yes) ;; - no) ;; - - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemd headers" >&5 -$as_echo_n "checking for systemd headers... " >&6; } - d=$with_systemd/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemd libs" >&5 -$as_echo_n "checking for systemd libs... " >&6; } - d=$with_systemd/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - # replace the directory string with "yes". - with_systemd_req="yes" - with_systemd=$with_systemd_req - ;; - - *) - echo "" - echo "error: argument to --with-systemd must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - - -if test "$with_systemd" != yes -a "$with_systemd" != no ; then - echo "error: must be yes or no: --with-systemd=$with_systemd" - exit 1 -fi - -if test "$with_systemd" = yes; then - - pkgs='' - ok="yes" - pkg_check_version libsystemd 221 - have_systemd="$ok" - - if test "$have_systemd" = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsystemd includes" >&5 -$as_echo_n "checking for libsystemd includes... " >&6; } -if ${ac_cv_systemd_config_cflags+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_systemd_config_cflags=`$pkg_config --cflags $pkgs` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_systemd_config_cflags" >&5 -$as_echo "$ac_cv_systemd_config_cflags" >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsystemd libs" >&5 -$as_echo_n "checking for libsystemd libs... " >&6; } -if ${ac_cv_systemd_config_libs+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_systemd_config_libs=`$pkg_config --libs $pkgs` -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_systemd_config_libs" >&5 -$as_echo "$ac_cv_systemd_config_libs" >&6; } - fi - - ac_systemd_config_cflags=$ac_cv_systemd_config_cflags - ac_systemd_config_libs=$ac_cv_systemd_config_libs - - if test "$have_systemd" = yes; then - # - # we appear to have libsystemd; check for headers/libs to be sure. - # - ac_save_systemd_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $ac_systemd_config_cflags" - - have_systemd=no - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_mongrel "$LINENO" "systemd/sd-bus.h" "ac_cv_header_systemd_sd_bus_h" "$ac_includes_default" -if test "x$ac_cv_header_systemd_sd_bus_h" = xyes; then : - have_systemd=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" - - CPPFLAGS="$ac_save_systemd_CPPFLAGS" - fi - - if test "$have_systemd" = yes; then - # we have the headers, now check for the libraries - have_systemd=no - systemd_halfassed=yes - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for libsystemd usability..." >&5 -$as_echo "checking for libsystemd usability..." >&6; } +$as_echo "checking for Xft usability..." >&6; } ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" @@ -15252,13 +15870,13 @@ $as_echo "checking for libsystemd usability..." >&6; } CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sd_bus_open_system in -lc" >&5 -$as_echo_n "checking for sd_bus_open_system in -lc... " >&6; } -if ${ac_cv_lib_c_sd_bus_open_system+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XftDrawStringUtf8 in -lc" >&5 +$as_echo_n "checking for XftDrawStringUtf8 in -lc... " >&6; } +if ${ac_cv_lib_c_XftDrawStringUtf8+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lc $ac_systemd_config_libs -lX11 -lXext -lm $LIBS" +LIBS="-lc $ac_xft_config_libs -lX11 -lXext -lm $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15268,28 +15886,28 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char sd_bus_open_system (); +char XftDrawStringUtf8 (); int main () { -return sd_bus_open_system (); +return XftDrawStringUtf8 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_sd_bus_open_system=yes + ac_cv_lib_c_XftDrawStringUtf8=yes else - ac_cv_lib_c_sd_bus_open_system=no + ac_cv_lib_c_XftDrawStringUtf8=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_sd_bus_open_system" >&5 -$as_echo "$ac_cv_lib_c_sd_bus_open_system" >&6; } -if test "x$ac_cv_lib_c_sd_bus_open_system" = xyes; then : - have_systemd=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_XftDrawStringUtf8" >&5 +$as_echo "$ac_cv_lib_c_XftDrawStringUtf8" >&6; } +if test "x$ac_cv_lib_c_XftDrawStringUtf8" = xyes; then : + have_xft=yes fi CPPFLAGS="$ac_save_CPPFLAGS" @@ -15298,19 +15916,67 @@ fi fi - if test "$have_systemd" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for libsystemd usability... no" >&5 -$as_echo "checking for libsystemd usability... no" >&6; } + if test "$have_xft" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for Xft usability... no" >&5 +$as_echo "checking for Xft usability... no" >&6; } fi fi -if test "$have_systemd" = yes; then - INCLUDES="$INCLUDES $ac_systemd_config_cflags" - EXES_SYSTEMD='$(EXES_SYSTEMD)' - $as_echo "#define HAVE_LIBSYSTEMD 1" >>confdefs.h +if test "$have_xft" = yes; then + INCLUDES="$INCLUDES $ac_xft_config_cflags" + XFT_LIBS="$ac_xft_config_libs" + XFT_SRCS='' + XFT_OBJS='' + $as_echo "#define HAVE_XFT 1" >>confdefs.h else - EXES_SYSTEMD='' + XFT_LIBS='' + XFT_SRCS='$(UTILS_SRC)/xft.c' + XFT_OBJS='$(UTILS_BIN)/xft.o' +fi + + +# Also check for the standard X11 bitmap fonts, since Debian likes to not +# install any of those by default. The unlock dialog requires them. +# +have_bitmap_fonts=no +ff='helvB14.pcf.gz helvB14-ISO8859-1.pcf.gz' +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for bitmap font files" >&5 +$as_echo_n "checking for bitmap font files... " >&6; } +for d in /usr/share/fonts/X11 \ + /usr/share/X11/fonts \ + /opt/X11/share/fonts \ +; do + for r in 100dpi 75dpi ; do + for f in $ff ; do + if test -f "$d/$r/$f" ; then + have_bitmap_fonts=yes + fi + done + done +done +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_bitmap_fonts" >&5 +$as_echo "$have_bitmap_fonts" >&6; } + +# In case we didn't guess the font directory properly, check RPMs and DEBs too. +if test $have_bitmap_fonts != yes ; then + for r in 100dpi 75dpi ; do + for f in xfonts-$r \ + xorg-x11-fonts-$r \ + xorg-x11-fonts-ISO8859-1-$r \ + ; do + if test $have_bitmap_fonts != yes ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $f" >&5 +$as_echo_n "checking for $f... " >&6; } + if ( rpm -q "$f" 2>&- >&- ) || + ( dpkg -s "$f" 2>&- | grep -q '^Status:.*installed' ) ; then + have_bitmap_fonts=yes + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_bitmap_fonts" >&5 +$as_echo "$have_bitmap_fonts" >&6; } + fi + done + done fi @@ -15402,205 +16068,9 @@ fi # LIBS="$ac_save_LIBS" -if test "$ac_have_forkpty" != yes ; then - # we don't need (or have) -lutil on MacOS 10.4.2... - - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for forkpty in -lc" >&5 -$as_echo_n "checking for forkpty in -lc... " >&6; } -if ${ac_cv_lib_c_forkpty+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lc $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char forkpty (); -int -main () -{ -return forkpty (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_c_forkpty=yes -else - ac_cv_lib_c_forkpty=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_forkpty" >&5 -$as_echo "$ac_cv_lib_c_forkpty" >&6; } -if test "x$ac_cv_lib_c_forkpty" = xyes; then : - PTY_LIBS="" - $as_echo "#define HAVE_FORKPTY 1" >>confdefs.h - -fi - - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - -fi - -############################################################################### -# -# Check for the XSHM server extension. -# -############################################################################### - -have_xshm=no -with_xshm_req=unspecified - -# Check whether --with-xshm-ext was given. -if test "${with_xshm_ext+set}" = set; then : - withval=$with_xshm_ext; with_xshm="$withval"; with_xshm_req="$withval" -else - with_xshm=yes -fi - - - - case "$with_xshm" in - yes) ;; - no) ;; - - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSHM headers" >&5 -$as_echo_n "checking for XSHM headers... " >&6; } - d=$with_xshm/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XSHM libs" >&5 -$as_echo_n "checking for XSHM libs... " >&6; } - d=$with_xshm/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - - # replace the directory string with "yes". - with_xshm_req="yes" - with_xshm=$with_xshm_req - ;; - - *) - echo "" - echo "error: argument to --with-xshm-ext must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - - -if test "$with_xshm" = yes; then - - # first check for Xshm.h. - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/XShm.h" "ac_cv_header_X11_extensions_XShm_h" "#include -" -if test "x$ac_cv_header_X11_extensions_XShm_h" = xyes; then : - have_xshm=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" - - # if that succeeded, then check for sys/ipc.h. - if test "$have_xshm" = yes; then - have_xshm=no - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_mongrel "$LINENO" "sys/ipc.h" "ac_cv_header_sys_ipc_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_ipc_h" = xyes; then : - have_xshm=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" - fi - - # if that succeeded, then check for sys/shm.h. - if test "$have_xshm" = yes; then - have_xshm=no - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_mongrel "$LINENO" "sys/shm.h" "ac_cv_header_sys_shm_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_shm_h" = xyes; then : - have_xshm=yes -fi - - - CPPFLAGS="$ac_save_CPPFLAGS" - fi - - # AIX is pathological, as usual: apparently it's normal for the Xshm headers - # to exist, but the library code to not exist. And even better, the library - # code is in its own library: libXextSam.a. So, if we're on AIX, and that - # lib doesn't exist, give up. (This lib gets added to X_EXTRA_LIBS, and - # that's not quite right, but close enough.) - # - case "$host" in - *-aix*) - if `uname -v` -eq 3 ; then - have_xshm=no - +if test "$ac_have_forkpty" != yes ; then + # we don't need (or have) -lutil on MacOS 10.4.2... + ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LDFLAGS="$LDFLAGS" # ac_save_LIBS="$LIBS" @@ -15619,13 +16089,13 @@ fi CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XShmQueryExtension in -lXextSam" >&5 -$as_echo_n "checking for XShmQueryExtension in -lXextSam... " >&6; } -if ${ac_cv_lib_XextSam_XShmQueryExtension+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for forkpty in -lc" >&5 +$as_echo_n "checking for forkpty in -lc... " >&6; } +if ${ac_cv_lib_c_forkpty+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lXextSam -lX11 -lXext -lm $LIBS" +LIBS="-lc $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15635,506 +16105,627 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char XShmQueryExtension (); +char forkpty (); int main () { -return XShmQueryExtension (); +return forkpty (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_XextSam_XShmQueryExtension=yes + ac_cv_lib_c_forkpty=yes else - ac_cv_lib_XextSam_XShmQueryExtension=no + ac_cv_lib_c_forkpty=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_XextSam_XShmQueryExtension" >&5 -$as_echo "$ac_cv_lib_XextSam_XShmQueryExtension" >&6; } -if test "x$ac_cv_lib_XextSam_XShmQueryExtension" = xyes; then : - have_xshm=yes; X_EXTRA_LIBS="$X_EXTRA_LIBS -lXextSam" -else - true +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_forkpty" >&5 +$as_echo "$ac_cv_lib_c_forkpty" >&6; } +if test "x$ac_cv_lib_c_forkpty" = xyes; then : + PTY_LIBS="" + $as_echo "#define HAVE_FORKPTY 1" >>confdefs.h + fi CPPFLAGS="$ac_save_CPPFLAGS" LDFLAGS="$ac_save_LDFLAGS" # LIBS="$ac_save_LIBS" - fi - ;; - esac - - # if that succeeded, then we've really got it. - if test "$have_xshm" = yes; then - $as_echo "#define HAVE_XSHM_EXTENSION 1" >>confdefs.h - - fi - -elif test "$with_xshm" != no; then - echo "error: must be yes or no: --with-xshm-ext=$with_xshm" - exit 1 fi ############################################################################### # -# Check for the DOUBLE-BUFFER server extension. +# Query AX_PTHREAD, and figure out which compiler gets used. # ############################################################################### -have_xdbe=no -with_xdbe_req=unspecified +have_pthread=no +with_pthread_req=unspecified -# Check whether --with-xdbe-ext was given. -if test "${with_xdbe_ext+set}" = set; then : - withval=$with_xdbe_ext; with_xdbe="$withval"; with_xdbe_req="$withval" -else - with_xdbe=yes -fi +# AX_PTHREAD is from the GNU Autoconf Archive. +# https://savannah.gnu.org/projects/autoconf-archive/ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_pthread.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) +# +# DESCRIPTION +# +# This macro figures out how to build C programs using POSIX threads. It +# sets the PTHREAD_LIBS output variable to the threads library and linker +# flags, and the PTHREAD_CFLAGS output variable to any special C compiler +# flags that are needed. (The user can also force certain compiler +# flags/libs to be tested by setting these environment variables.) +# +# Also sets PTHREAD_CC to any special C compiler that is needed for +# multi-threaded programs (defaults to the value of CC otherwise). (This +# is necessary on AIX to use the special cc_r compiler alias.) +# +# NOTE: You are assumed to not only compile your program with these flags, +# but also link it with them as well. e.g. you should link with +# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS +# +# If you are only building threads programs, you may wish to use these +# variables in your default LIBS, CFLAGS, and CC: +# +# LIBS="$PTHREAD_LIBS $LIBS" +# CFLAGS="$CFLAGS $PTHREAD_CFLAGS" +# CC="$PTHREAD_CC" +# +# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant +# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name +# (e.g. PTHREAD_CREATE_UNDETACHED on AIX). +# +# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the +# PTHREAD_PRIO_INHERIT symbol is defined when compiling with +# PTHREAD_CFLAGS. +# +# ACTION-IF-FOUND is a list of shell commands to run if a threads library +# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it +# is not found. If ACTION-IF-FOUND is not specified, the default action +# will define HAVE_PTHREAD. +# +# Please let the authors know if this macro fails on any platform, or if +# you have any other suggestions or comments. This macro was based on work +# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help +# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by +# Alejandro Forero Cuervo to the autoconf macro repository. We are also +# grateful for the helpful feedback of numerous users. +# +# Updated for Autoconf 2.68 by Daniel Richard G. +# +# LICENSE +# +# Copyright (c) 2008 Steven G. Johnson +# Copyright (c) 2011 Daniel Richard G. +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. +#serial 21 +# This is what autoupdate's m4 run will expand. It fires +# the warning (with _au_warn_XXX), outputs it into the +# updated configure.ac (with AC_DIAGNOSE), and then outputs +# the replacement expansion. - case "$with_xdbe" in - yes) ;; - no) ;; - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DOUBLE-BUFFER headers" >&5 -$as_echo_n "checking for DOUBLE-BUFFER headers... " >&6; } - d=$with_xdbe/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi +# This is an auxiliary macro that is also run when +# autoupdate runs m4. It simply calls m4_warning, but +# we need a wrapper so that each warning is emitted only +# once. We break the quoting in m4_warning's argument in +# order to expand this macro's arguments, not AU_DEFUN's. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DOUBLE-BUFFER libs" >&5 -$as_echo_n "checking for DOUBLE-BUFFER libs... " >&6; } - d=$with_xdbe/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi - # replace the directory string with "yes". - with_xdbe_req="yes" - with_xdbe=$with_xdbe_req - ;; +# Finally, this is the expansion that is picked up by +# autoconf. It tells the user to run autoupdate, and +# then outputs the replacement expansion. We do not care +# about autoupdate's warning because that contains +# information on what to do *after* running autoupdate. - *) - echo "" - echo "error: argument to --with-xdbe-ext must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac -if test "$with_xdbe" = yes; then +# This affects CC, LIBS, and CFLAGS, instead of defining new variables. - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/Xdbe.h" "ac_cv_header_X11_extensions_Xdbe_h" "#include -" -if test "x$ac_cv_header_X11_extensions_Xdbe_h" = xyes; then : - have_xdbe=yes +# Check whether --with-pthread was given. +if test "${with_pthread+set}" = set; then : + withval=$with_pthread; with_pthread="$withval"; with_pthread_req="$withval" +else + with_pthread=yes +fi + + +if test "$with_pthread" = yes; then + # AX_PTHREAD might want a different compiler. + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ax_pthread_ok=no + +# We used to check for pthread.h first, but this fails if pthread.h +# requires special compiler flags (e.g. on True64 or Sequent). +# It gets checked for in the link test anyway. + +# First of all, check if the user has set any of the PTHREAD_LIBS, +# etcetera environment variables, and if threads linking works using +# them: +if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5 +$as_echo_n "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_join (); +int +main () +{ +return pthread_join (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_pthread_ok=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 +$as_echo "$ax_pthread_ok" >&6; } + if test x"$ax_pthread_ok" = xno; then + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" + fi + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" fi +# We must check for the threads library under a number of different +# names; the ordering is very important because some systems +# (e.g. DEC) have both -lpthread and -lpthreads, where one of the +# libraries is broken (non-POSIX). - CPPFLAGS="$ac_save_CPPFLAGS" - if test "$have_xdbe" = yes; then - $as_echo "#define HAVE_DOUBLE_BUFFER_EXTENSION 1" >>confdefs.h - - fi - -elif test "$with_xdbe" != no; then - echo "error: must be yes or no: --with-xdbe-ext=$with_xshm" - exit 1 -fi - +# Create a list of thread flags to try. Items starting with a "-" are +# C compiler flags, and other items are library names, except for "none" +# which indicates that we try without any flags at all, and "pthread-config" +# which is a program returning the flags for the Pth emulation library. -############################################################################### -# -# Check for the SGI XReadDisplay server extension. -# -# Note: this has to be down here, rather than up with the other server -# extension tests, so that the output of `configure --help' is in the -# right order. Arrgh! -# -############################################################################### +ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" -have_readdisplay=no -with_readdisplay_req=unspecified +# The ordering *is* (sometimes) important. Some notes on the +# individual items follow: -# Check whether --with-readdisplay was given. -if test "${with_readdisplay+set}" = set; then : - withval=$with_readdisplay; with_readdisplay="$withval"; with_readdisplay_req="$withval" -else - with_readdisplay=yes -fi +# pthreads: AIX (must check this before -lpthread) +# none: in case threads are in libc; should be tried before -Kthread and +# other compiler flags to prevent continual compiler warnings +# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) +# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) +# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) +# -pthreads: Solaris/gcc +# -mthreads: Mingw32/gcc, Lynx/gcc +# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it +# doesn't hurt to check since this sometimes defines pthreads too; +# also defines -D_REENTRANT) +# ... -mt is also the pthreads flag for HP/aCC +# pthread: Linux, etcetera +# --thread-safe: KAI C++ +# pthread-config: use pthread-config program (for GNU Pth library) +case ${host_os} in + solaris*) + # On Solaris (at least, for some versions), libc contains stubbed + # (non-functional) versions of the pthreads routines, so link-based + # tests will erroneously succeed. (We need to link with -pthreads/-mt/ + # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather + # a function called by this macro, so we could check for that, but + # who knows whether they'll stub that too in a future libc.) So, + # we'll just look for -pthreads and -lpthread first: - case "$with_readdisplay" in - yes) ;; - no) ;; + ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" + ;; - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XReadDisplay headers" >&5 -$as_echo_n "checking for XReadDisplay headers... " >&6; } - d=$with_readdisplay/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi + darwin*) + ax_pthread_flags="-pthread $ax_pthread_flags" + ;; +esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XReadDisplay libs" >&5 -$as_echo_n "checking for XReadDisplay libs... " >&6; } - d=$with_readdisplay/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi +# Clang doesn't consider unrecognized options an error unless we specify +# -Werror. We throw in some extra Clang-specific options to ensure that +# this doesn't happen for GCC, which also accepts -Werror. - # replace the directory string with "yes". - with_readdisplay_req="yes" - with_readdisplay=$with_readdisplay_req - ;; +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5 +$as_echo_n "checking if compiler needs -Werror to reject unknown flags... " >&6; } +save_CFLAGS="$CFLAGS" +ax_pthread_extra_flags="-Werror" +CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo(void); +int +main () +{ +foo() + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + ax_pthread_extra_flags= + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +CFLAGS="$save_CFLAGS" - *) - echo "" - echo "error: argument to --with-readdisplay must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac +if test x"$ax_pthread_ok" = xno; then +for flag in $ax_pthread_flags; do + case $flag in + none) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work without any flags" >&5 +$as_echo_n "checking whether pthreads work without any flags... " >&6; } + ;; -if test "$with_readdisplay" = yes; then + -*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether pthreads work with $flag" >&5 +$as_echo_n "checking whether pthreads work with $flag... " >&6; } + PTHREAD_CFLAGS="$flag" + ;; - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" + pthread-config) + # Extract the first word of "pthread-config", so it can be a program name with args. +set dummy pthread-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ax_pthread_config+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ax_pthread_config"; then + ac_cv_prog_ax_pthread_config="$ax_pthread_config" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ax_pthread_config="yes" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - ac_fn_c_check_header_compile "$LINENO" "X11/extensions/readdisplay.h" "ac_cv_header_X11_extensions_readdisplay_h" "#include -" -if test "x$ac_cv_header_X11_extensions_readdisplay_h" = xyes; then : - $as_echo "#define HAVE_READ_DISPLAY_EXTENSION 1" >>confdefs.h +done + done +IFS=$as_save_IFS + test -z "$ac_cv_prog_ax_pthread_config" && ac_cv_prog_ax_pthread_config="no" fi - - - CPPFLAGS="$ac_save_CPPFLAGS" -elif test "$with_readdisplay" != no; then - echo "error: must be yes or no: --with-readdisplay=$with_readdisplay" - exit 1 fi - - -############################################################################### -# -# Check for a directory full of images to use as the default value -# of the "imageDirectory" preference. -# -############################################################################### - -have_imagedir=no -with_imagedir_req=unspecified - - -# Check whether --with-image-directory was given. -if test "${with_image_directory+set}" = set; then : - withval=$with_image_directory; with_imagedir="$withval"; with_imagedir_req="$withval" +ax_pthread_config=$ac_cv_prog_ax_pthread_config +if test -n "$ax_pthread_config"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_config" >&5 +$as_echo "$ax_pthread_config" >&6; } else - with_imagedir=yes -fi - -# no HANDLE_X_PATH_ARG for this one - -case "$with_imagedir" in - /*) - # absolute path - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for image directory $with_imagedir" >&5 -$as_echo_n "checking for image directory $with_imagedir... " >&6; } - if test -d "$with_imagedir" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - with_imagedir="" - fi - ;; - yes) - with_imagedir="" - - #### Could use some more defaults here... - for dd in \ - "/usr/share/backgrounds/images/" \ - "/usr/share/wallpapers/" \ - "/Library/Desktop Pictures/" \ - ; do - if test -z "$with_imagedir"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for image directory $dd" >&5 -$as_echo_n "checking for image directory $dd... " >&6; } - if test -d "$dd" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - with_imagedir="$dd" - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - fi - fi - done + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi - ;; - no) - with_imagedir="" - ;; - *) - echo "error: must be an absolute path: --with-image-directory=$with_imagedir_req" - exit 1 - ;; -esac -ac_cv_imagedir="$with_imagedir" + if test x"$ax_pthread_config" = xno; then continue; fi + PTHREAD_CFLAGS="`pthread-config --cflags`" + PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" + ;; -DEFAULT_IMAGES_P='True' -DEFAULT_IMAGE_DIRECTORY="$ac_cv_imagedir" + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the pthreads library -l$flag" >&5 +$as_echo_n "checking for the pthreads library -l$flag... " >&6; } + PTHREAD_LIBS="-l$flag" + ;; + esac -if test -z "$DEFAULT_IMAGE_DIRECTORY" ; then - DEFAULT_IMAGES_P='False' + save_LIBS="$LIBS" + save_CFLAGS="$CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags" + + # Check for various functions. We must include pthread.h, + # since some functions may be macros. (On the Sequent, we + # need a special flag -Kthread to make this header compile.) + # We check for pthread_join because it is in -lpthread on IRIX + # while pthread_create is in libc. We check for pthread_attr_init + # due to DEC craziness with -lpthreads. We check for + # pthread_cleanup_push because it is one of the few pthread + # functions on Solaris that doesn't have a non-functional libc stub. + # We try pthread_create on general principles. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + static void routine(void *a) { a = 0; } + static void *start_routine(void *a) { return a; } +int +main () +{ +pthread_t th; pthread_attr_t attr; + pthread_create(&th, 0, start_routine, 0); + pthread_join(th, 0); + pthread_attr_init(&attr); + pthread_cleanup_push(routine, 0); + pthread_cleanup_pop(0) /* ; */ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_pthread_ok=yes fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" -############################################################################### -# -# Pick a text file to use as the default of the "textFile" preference. -# Any old file will do, but preferably one that will make interesting -# shapes when displayed by "starwars" and "fontglide". -# -############################################################################### + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_pthread_ok" >&5 +$as_echo "$ax_pthread_ok" >&6; } + if test "x$ax_pthread_ok" = xyes; then + break; + fi -have_textfile=no -with_textfile_req=unspecified + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" +done +fi +# Various other checks: +if test "x$ax_pthread_ok" = xyes; then + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" -# Check whether --with-text-file was given. -if test "${with_text_file+set}" = set; then : - withval=$with_text_file; with_textfile="$withval"; with_textfile_req="$withval" -else - with_textfile=yes + # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5 +$as_echo_n "checking for joinable pthread attribute... " >&6; } + attr_name=unknown + for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +int attr = $attr; return attr /* ; */ + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + attr_name=$attr; break fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + done + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5 +$as_echo "$attr_name" >&6; } + if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then -# no HANDLE_X_PATH_ARG for this one +cat >>confdefs.h <<_ACEOF +#define PTHREAD_CREATE_JOINABLE $attr_name +_ACEOF -case "$with_textfile" in - /*) - # absolute path - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for text file $with_textfile" >&5 -$as_echo_n "checking for text file $with_textfile... " >&6; } - if test -f "$with_textfile" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - with_textfile="" - fi - ;; - yes) - with_textfile="" + fi - #### Could use some more defaults here... - for f in \ - "/usr/X11R6/lib/X11/doc/README" \ - "/usr/share/doc/xserver-common/copyright" \ - "/usr/share/doc/xserver-xorg-core/copyright" \ - "/usr/X11R6/README" \ - "/usr/share/doc/libX11*/COPYING" \ - "/usr/X11/share/X11/doc/README*" \ - "/usr/share/doc/debian/debian-manifesto" \ - ; do - if test -z "$with_textfile"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for text file $f" >&5 -$as_echo_n "checking for text file $f... " >&6; } - f=`/bin/ls $f 2>&- | head -1` - if test -f "$f" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - with_textfile="$f" - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5 +$as_echo_n "checking if more special flags are required for pthreads... " >&6; } + flag=no + case ${host_os} in + aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";; + osf* | hpux*) flag="-D_REENTRANT";; + solaris*) + if test "$GCC" = "yes"; then + flag="-D_REENTRANT" + else + # TODO: What about Clang on Solaris? + flag="-mt -D_REENTRANT" + fi + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5 +$as_echo "$flag" >&6; } + if test "x$flag" != xno; then + PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" fi - fi - done - ;; - no) - with_textfile="" - ;; + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PRIO_INHERIT" >&5 +$as_echo_n "checking for PTHREAD_PRIO_INHERIT... " >&6; } +if ${ax_cv_PTHREAD_PRIO_INHERIT+:} false; then : + $as_echo_n "(cached) " >&6 +else - *) - echo "error: must be an absolute path: --with-text-file=$with_textfile_req" - exit 1 - ;; -esac -ac_cv_textfile="$with_textfile" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +int i = PTHREAD_PRIO_INHERIT; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_PTHREAD_PRIO_INHERIT=yes +else + ax_cv_PTHREAD_PRIO_INHERIT=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext -DEFAULT_TEXT_FILE="$ac_cv_textfile" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_PTHREAD_PRIO_INHERIT" >&5 +$as_echo "$ax_cv_PTHREAD_PRIO_INHERIT" >&6; } + if test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"; then : +$as_echo "#define HAVE_PTHREAD_PRIO_INHERIT 1" >>confdefs.h -############################################################################### -# -# Check the browser to see help URL -# -############################################################################### +fi -have_browser=no -with_browser_req=unspecified + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" + # More AIX lossage: compile with *_r variant + if test "x$GCC" != xyes; then + case $host_os in + aix*) + case "x/$CC" in #( + x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) : + #handle absolute path differently from PATH based program lookup + case "x$CC" in #( + x/*) : + if as_fn_executable_p ${CC}_r; then : + PTHREAD_CC="${CC}_r" +fi ;; #( + *) : + for ac_prog in ${CC}_r +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_PTHREAD_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$PTHREAD_CC"; then + ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_PTHREAD_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS -# Check whether --with-browser was given. -if test "${with_browser+set}" = set; then : - withval=$with_browser; with_browser="$withval"; with_browser_req="$withval" +fi +fi +PTHREAD_CC=$ac_cv_prog_PTHREAD_CC +if test -n "$PTHREAD_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5 +$as_echo "$PTHREAD_CC" >&6; } else - with_browser=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -# no HANDLE_X_PATH_ARG for this one -case "$with_browser" in - no ) - ;; - * ) - WITH_BROWSER=$with_browser - gnome_open_program=$with_browser - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for browser $with_browser" >&5 -$as_echo_n "checking for browser $with_browser... " >&6; } - with_browser_fullpath=`which $with_browser 2>/dev/null` - case $with_browser_fullpath in - /* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - have_browser=yes - ;; - * ) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -# Only warning: we don't want to install all packages for the -# dependency of the browser in building stage... - echo "WARNING: browser not found: --with-browser=$with_browser" - ;; - esac - ;; + test -n "$PTHREAD_CC" && break +done +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" + ;; +esac ;; #( + *) : + ;; esac -ac_cv_browser="$with_browser" + ;; + esac + fi +fi -############################################################################### -# -# Check whether it's ok to install some hacks as setuid (e.g., "sonar") -# This should be safe, but let's give people the option. -# -############################################################################### +test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" -setuid_hacks_default=no -setuid_hacks="$setuid_hacks_default" -# Check whether --with-setuid-hacks was given. -if test "${with_setuid_hacks+set}" = set; then : - withval=$with_setuid_hacks; setuid_hacks="$withval" -else - setuid_hacks="$setuid_hacks_default" -fi - case "$setuid_hacks" in - yes) ;; - no) ;; +# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: +if test x"$ax_pthread_ok" = xyes; then + if test "$CC" = "$PTHREAD_CC" -o -z "$ac_original_cc"; then + have_pthread=yes + else + ac_prog_cc_no_pthread=yes + fi - /*) - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setuid hacks headers" >&5 -$as_echo_n "checking for setuid hacks headers... " >&6; } - d=$setuid_hacks/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi + : +else + ax_pthread_ok=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setuid hacks libs" >&5 -$as_echo_n "checking for setuid hacks libs... " >&6; } - d=$setuid_hacks/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 -$as_echo "$d" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 -$as_echo "not found ($d: no such directory)" >&6; } - fi +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu - # replace the directory string with "yes". - setuid_hacks_req="yes" - setuid_hacks=$setuid_hacks_req - ;; - *) - echo "" - echo "error: argument to --with-setuid-hacks must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac + if test "$have_pthread" = yes; then + $as_echo "#define HAVE_PTHREAD 1" >>confdefs.h -if test "$setuid_hacks" = yes; then - true -elif test "$setuid_hacks" != no; then - echo "error: must be yes or no: --with-setuid-hacks=$setuid_hacks" - exit 1 + CC=$PTHREAD_CC + fi fi ############################################################################### # -# Check for setcap, which is less worrying than setuid. +# Check for libcap, which allows "sonar" to work without setuid. # ############################################################################### @@ -16333,6 +16924,82 @@ fi fi +############################################################################### +# +# Option to prevent "sonar" from working properly. +# It must be setuid on systems without libcap. +# +############################################################################### + +if test "$have_libcap" = yes; then + setuid_hacks_default=no +else + setuid_hacks_default=yes +fi + +setuid_hacks="$setuid_hacks_default" + +# Check whether --with-setuid-hacks was given. +if test "${with_setuid_hacks+set}" = set; then : + withval=$with_setuid_hacks; setuid_hacks="$withval" +else + setuid_hacks="$setuid_hacks_default" +fi + + + + case "$setuid_hacks" in + yes) ;; + no) ;; + + /*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setuid hacks headers" >&5 +$as_echo_n "checking for setuid hacks headers... " >&6; } + d=$setuid_hacks/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setuid hacks libs" >&5 +$as_echo_n "checking for setuid hacks libs... " >&6; } + d=$setuid_hacks/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $d" >&5 +$as_echo "$d" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found ($d: no such directory)" >&5 +$as_echo "not found ($d: no such directory)" >&6; } + fi + + # replace the directory string with "yes". + setuid_hacks_req="yes" + setuid_hacks=$setuid_hacks_req + ;; + + *) + echo "" + echo "error: argument to --with-setuid-hacks must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + + +if test "$setuid_hacks" = yes; then + true +elif test "$setuid_hacks" != no; then + echo "error: must be yes or no: --with-setuid-hacks=$setuid_hacks" + exit 1 +fi + + ############################################################################### # # Check for --with-record-animation @@ -16415,6 +17082,7 @@ $as_echo "enabling --with-record-animation" >&6; } fi fi + ############################################################################### # # Done testing. Now, set up the various -I and -L variables, @@ -16667,9 +17335,6 @@ INCLUDES=`echo "$INCLUDES" | sed 's@ -I${prefix}/include@@g;'` - - - @@ -16682,7 +17347,7 @@ APPDEFAULTS=$ac_x_app_defaults -ac_config_files="$ac_config_files Makefile utils/Makefile jwxyz/Makefile hacks/Makefile hacks/images/Makefile hacks/glx/Makefile po/Makefile.in driver/Makefile driver/xscreensaver.pam driver/xscreensaver-demo.glade2 driver/XScreenSaver.ad" +ac_config_files="$ac_config_files Makefile utils/Makefile jwxyz/Makefile hacks/Makefile hacks/images/Makefile hacks/glx/Makefile po/Makefile.in driver/Makefile driver/xscreensaver.pam driver/XScreenSaver.ad" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -17398,7 +18063,6 @@ do "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "driver/Makefile") CONFIG_FILES="$CONFIG_FILES driver/Makefile" ;; "driver/xscreensaver.pam") CONFIG_FILES="$CONFIG_FILES driver/xscreensaver.pam" ;; - "driver/xscreensaver-demo.glade2") CONFIG_FILES="$CONFIG_FILES driver/xscreensaver-demo.glade2" ;; "driver/XScreenSaver.ad") CONFIG_FILES="$CONFIG_FILES driver/XScreenSaver.ad" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; @@ -18094,6 +18758,10 @@ if test "$with_xidle_req" = yes -a "$have_xidle" = no ; then warn 'The XIdle extension was requested, but was not found.' fi +if test "$with_mit_req" = yes -a "$have_mit" = no ; then + warn 'The MIT-SCREEN-SAVER extension was requested, but was not found.' +fi + if test "$with_xshm_req" = yes -a "$have_xshm" = no ; then warn 'The XSHM extension was requested, but was not found.' fi @@ -18340,19 +19008,29 @@ if test "$have_xft" = no ; then fi +if test "$have_bitmap_fonts" = no ; then + warnL 'The standard bitmap fonts do not seem to be installed.' + warn2 'That is not going to work out well for you.' + warn2 'Install "xfonts-100dpi" or "xorg-x11-fonts-100dpi".' +fi + + if test "$have_systemd" = no ; then systemd_warned=no - if test "$with_systemd_req" = yes ; then + if test "$systemd_too_old" = yes ; then + warnL "The systemd library is too old." + systemd_warned=yes + elif test "$with_systemd_req" = yes ; then warnL "Use of systemd was requested, but it was not found." systemd_warned=yes - elif test "$with_systemd_req" = no ; then + elif test "$ac_macosx" = yes; then true - # noteL 'The systemd library is not being used.' - # systemd_warned=yes + elif test "$with_systemd_req" = no ; then + noteL 'The systemd library is not being used.' + systemd_warned=yes else - true - # noteL "The systemd library was not found." - # systemd_warned=yes + warnL "The systemd library was not found." + systemd_warned=yes fi if test "$systemd_halfassed" = yes ; then @@ -18366,7 +19044,11 @@ if test "$have_systemd" = no ; then fi if test "$systemd_warned" = yes; then + echo '' warn2 "This means that xscreensaver-systemd won't be built." + warn2 "Without that, xscreensaver will not be able to auto-lock" + warn2 "before the system is suspended (e.g., closing laptop lid)" + warn2 "and might activate while video playback is in progress." fi fi @@ -18507,8 +19189,6 @@ for bad_choice in xscreensaver xscreensaver-demo xscreensaver-command ; do done -do_dir_warning=no - # Now let's warn if there's a previous RPM version already installed. # But don't bother with this test if we are currently *building* an RPM. @@ -18524,27 +19204,38 @@ if test -z "$RPM_PACKAGE_VERSION" ; then if test \! -z "$rpmv" ; then - rpmbdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/xscreensaver-demo$@\1@p'` - rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/popsquares$@\1@p'` + + # M4 sucks!! + + rpmbdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)xscreensaver-demo$@\1@p'` + rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares$@\1@p'` + rpmcdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` + rpmadir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)XScreenSaver$@\1@p'` + + + err=" (DIFFERS)" + if test -z "$rpmbdir" ; then rpmbdir='???' + elif test "$rpmbdir" != "${bindir}/" ; then rpmbdir="$rpmbdir$err";fi + + if test -z "$rpmhdir" ; then rpmhdir='???' + elif test "$rpmhdir" != "${HACKDIR}/" ; then rpmhdir="$rpmhdir$err";fi + + if test -z "$rpmcdir" ; then rpmcdir='???' + elif test "$rpmcdir" != "${HACK_CONF_DIR}/"; then rpmcdir="$rpmcdir$err";fi + + if test -z "$rpmadir" ; then rpmadir='???' + elif test "$rpmadir" != "${APPDEFAULTS}/" ; then rpmadir="$rpmadir$err";fi warning=no - warnL "There is already an installed RPM of xscreensaver $rpmv" - warn2 'on this system. You might want to remove it ("rpm -ve")' - warn2 'before running "make install" in this directory.' + warnL "There is already an installed RPM of xscreensaver" + warn2 "version \"$rpmv\" on this system." echo "" - warn2 "Alternately, you could build this version of xscreensaver" - warn2 'as an RPM, and then install that. An "xscreensaver.spec"' - warn2 'file is included. Try "rpmbuild -v -ba xscreensaver.spec".' - warn2 "See the RPM documentation for more info." + warn2 "It is currently installed in these directories:" echo "" - - if test "$rpmbdir" = "$rpmhdir" ; then - warn2 "The RPM version was installed in $rpmbdir/." - do_dir_warning=yes - else - warn2 "The RPM version was installed in $rpmbdir/," - warn2 "with demos in $rpmhdir/." - fi + warn2 "User programs: $rpmbdir$berr" + warn2 "Screen savers: $rpmhdir$herr" + warn2 "Configuration: $rpmcdir$cerr" + warn2 "App Defaults: $rpmadir$aerr" fi fi @@ -18559,54 +19250,47 @@ for dpkg in $debnames ; do done if test \! -z "$debv" ; then - debbdir=`dpkg -L $debnames 2>/dev/null | \ - sed -n 's@^\(.*/bin/\)xscreensaver$@\1@p'` - debhdir=`dpkg -L $debnames 2>/dev/null | \ - sed -n 's@^\(.*/\)popsquares$@\1@p'` - if test -z "$debbdir" ; then debbdir='???'; fi - if test -z "$debhdir" ; then debhdir='???'; fi - warning=no - warnL "There is already an installed dpkg of xscreensaver" - warn2 "version \"$debv\" on this system." - echo "" - warn2 "The dpkg was installed in $debbdir," - warn2 "with demos in $debhdir." -fi + # M4 sucks!! + debbdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/bin/\)xscreensaver$@\1@p'` + debhdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares$@\1@p'` + debcdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` + debadir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)XScreenSaver[^/]*$@\1@p'` -if test "${bindir}" = "${HACKDIR}" ; then - do_dir_warning=yes -fi -if test "$do_dir_warning" = yes; then - echo "" - echo "$warnsep" - echo "" - echo ' When you run "make install", the "xscreensaver",' - echo ' "xscreensaver-demo", and "xscreensaver-command" executables' - echo " will be installed in ${bindir}/." - echo "" - echo " The various graphics demos (200+ different executables) will" - echo " be installed in ${HACKDIR}/." - echo "" - echo " If you would prefer the demos to be installed elsewhere," - echo " you should re-run configure with the --with-hackdir=DIR" - echo " option. For more information, run \`./configure --help'." - warning=yes -fi + err=" (DIFFERS)" + if test -z "$debbdir" ; then debbdir='???' + elif test "$debbdir" != "${bindir}/" ; then debbdir="$debbdir$err"; fi -if test "$warning" != no; then - echo '' ; echo "$warnsep" ; echo '' -fi + if test -z "$debhdir" ; then debhdir='???' + elif test "$debhdir" != "${HACKDIR}/" ; then debhdir="$debhdir$err"; fi -if test "$do_dir_warning" = no; then - if test "$warning" = no; then - echo '' - fi - echo "User programs will be installed in ${bindir}/" - echo "Screen savers will be installed in ${HACKDIR}/" - echo "Configuration dialogs will be installed in ${HACK_CONF_DIR}/" - echo "System-wide default settings will be installed in ${APPDEFAULTS}/" - echo '' -fi + if test -z "$debcdir" ; then debcdir='???' + elif test "$debcdir" != "${HACK_CONF_DIR}/" ; then debcdir="$debcdir$err"; fi + + if test -z "$debadir" ; then debadir='???' + elif test "$debadir" != "${APPDEFAULTS}/" ; then debadir="$debadir$err"; fi + + warning=no + warnL "There is already an installed dpkg of xscreensaver" + warn2 "version \"$debv\" on this system." + echo "" + warn2 "It is currently installed in these directories:" + echo "" + warn2 "User programs: $debbdir$berr" + warn2 "Screen savers: $debhdir$herr" + warn2 "Configuration: $debcdir$cerr" + warn2 "App Defaults: $debadir$aerr" +fi + +echo "" +echo "$warnsep" +echo "" +echo " XScreenSaver will be installed in these directories:" +echo "" +echo " User programs: ${bindir}/" +echo " Screen savers: ${HACKDIR}/" +echo " Configuration: ${HACK_CONF_DIR}/" +echo " App Defaults: ${APPDEFAULTS}/" +echo "" diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..f827da9 --- /dev/null +++ b/configure.ac @@ -0,0 +1,5014 @@ +# configure.in --- xscreensaver, Copyright (c) 1997-2020 Jamie Zawinski. +# + +AC_PREREQ(2.52) +AC_INIT(driver/subprocs.c) +AC_CONFIG_HEADERS([config.h]) + +echo "current directory: `pwd`" +echo "command line was: $0 $@" + +############################################################################### +# +# Autoheader stuff +# +############################################################################### + +AH_TOP([ +/* config.h.in --- xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski. + * + * The best way to set these parameters is by running the included `configure' + * script. That examines your system, and generates `config.h' from + * `config.h.in'. + * + * If something goes very wrong, you can edit `config.h' directly, but beware + * that your changes will be lost if you ever run `configure' again. + */ +]) + +AH_TEMPLATE([HAVE_READ_DISPLAY_EXTENSION], + [Define this if you have the SGI XReadDisplay extension.]) + +AH_TEMPLATE([HAVE_XHPDISABLERESET], + [Define this if you have the XHPDisableReset function (an HP only + thing which allows the Ctrl-Sh-Reset key sequence to be + temporarily disabled.)]) + +# This only ever existed in X11R4 and X11R5. +AH_TEMPLATE([HAVE_XIDLE_EXTENSION], + [Define this if you have the X11R5 XIDLE extension.]) + +AH_TEMPLATE([HAVE_MIT_SAVER_EXTENSION], + [Using the MIT-SCREEN-SAVER extension means that the X server + will crash at random times, and fading and hysteresis won't work. + Don't use this. You'll be sorry. See comment in xscreensaver.c.]) + +# This only ever existed on SGI hardware. +AH_TEMPLATE([HAVE_SGI_SAVER_EXTENSION], + [Define this if you have the SGI SCREEN_SAVER extension.]) + +# This only ever existed on SGI hardware. +AH_TEMPLATE([HAVE_SGI_VC_EXTENSION], + [Define this if you have the SGI-VIDEO-CONTROL extension.]) + +AH_TEMPLATE([HAVE_DPMS_EXTENSION], + [Define this if you have the XDPMS extension.]) + +AH_TEMPLATE([HAVE_XF86VMODE], + [Define this if you have the functions XF86VidModeGetModeLine() + and XF86VidModeGetViewPort(), in support of virtual desktops + where the X server's root window is bigger than the actual + screen.]) + +AH_TEMPLATE([HAVE_XF86VMODE_GAMMA], + [Define this if you have the functions XF86VidModeGetGamma() and + XF86VidModeSetGamma(), which allow clients to change the gamma + response of the monitor.]) + +AH_TEMPLATE([HAVE_XF86VMODE_GAMMA_RAMP], + [Define this if you have the functions XF86VidModeGetGammaRamp() + and XF86VidModeSetGammaRamp(), which provide finer-grained + control than XF86VidMode[GS]etGamma().]) + +AH_TEMPLATE([HAVE_XINERAMA], + [Define this if you have the Xinerama extension.]) + +AH_TEMPLATE([HAVE_XINPUT], + [Define this if you have the Xinput extension.]) + +AH_TEMPLATE([HAVE_XF86MISCSETGRABKEYSSTATE], + [Define this if you have the XF86MiscSetGrabKeysState function + (which allows the Ctrl-Alt-KP_star and Ctrl-Alt-KP_slash key + sequences to be temporarily disabled. Sadly, it doesn't affect + Ctrl-Alt-BS or Ctrl-Alt-F1.)]) + +AH_TEMPLATE([HAVE_RANDR], + [Define this if you have the Resize and Rotate extension.]) + +AH_TEMPLATE([HAVE_RANDR_12], + [Define this if the RANDR library is version 1.2 or newer.]) + +AH_TEMPLATE([HAVE_PROC_INTERRUPTS], + [Define this if you have a Linux-like /proc/interrupts file which + can be examined to determine when keyboard activity has + occurred.]) + +AH_TEMPLATE([HAVE_PROC_OOM], + [Define this if you have a Linux-like /proc/.../oom_score_adj file + which can be adjusted by root to exempt us from the out-of-memory + .]) + +AH_TEMPLATE([HAVE_MOTIF],[Define this if you have Motif.]) + +AH_TEMPLATE([HAVE_XMCOMBOBOX], + [Define this if you have the XmComboBox Motif widget (Motif 2.0.)]) + +AH_TEMPLATE([HAVE_GTK],[Define this if you have Gtk (any version.)]) +AH_TEMPLATE([HAVE_GTK2],[Define this if you have Gtk 2.x.]) + +AH_TEMPLATE([HAVE_CRAPPLET], + [Define this if you have Gnome and want to build support for the + xscreensaver control panel in the Gnome Control Center + (gnomecc). (This is needed only with Gtk 1.x.)]) + +AH_TEMPLATE([HAVE_CRAPPLET_IMMEDIATE], + [Define this if HAVE_CRAPPLET is defined, and the function + capplet_widget_changes_are_immediate() is available.]) + +AH_TEMPLATE([HAVE_XML],[Define this if you have the XML library.]) + +AH_TEMPLATE([HAVE_OLD_XML_HEADERS], + [Define this if you have the XML library headers in their old, + non-namespaced location (you lack the gnome-xml/libxml symlink)]) + +AH_TEMPLATE([HAVE_GDK_PIXBUF], + [Define this if you have the GDK_Pixbuf library installed. Some + of the demos can make use of this if it is available.]) + +AH_TEMPLATE([HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION], + [Define this if you have the gdk_pixbuf_apply_embedded_orientation + function (gdk-pixbuf 2.12).]) + +AH_TEMPLATE([HAVE_JPEGLIB], + [Define this if you have the Independent JPEG Group's JPEG + library installed. Some of the demos can make use of this if it + is available.]) + +AH_TEMPLATE([HAVE_LIBPNG], + [Define this if the Portable Network Graphics library is installed. + It is basically required, but many things will more-or-less limp + along without it.]) + +AH_TEMPLATE([HAVE_XMU], + [Define this if you have the Xmu library. This is standard part + of X, and if your vendor doesn't ship it, you should report that + as a bug.]) + +AH_TEMPLATE([HAVE_XUTF8DRAWSTRING], + [Define this if you have the function Xutf8DrawString().]) + +AH_TEMPLATE([HAVE_XFT], + [Define this if you have libXft2.]) + +AH_TEMPLATE([HAVE_LIBSYSTEMD], + [Define this if you have libsystemd.]) + +AH_TEMPLATE([HAVE_GL], + [Define this if you have OpenGL. Some of the demos require it, + so if you don't have it, then those particular demos won't be + built. (This won't affect the screen saver as a whole.)]) + +AH_TEMPLATE([HAVE_MESA_GL], + [Define this if you have OpenGL, but it's the MesaGL variant. + (The libraries have different names.) (HAVE_GL should be defined + too.)]) + +AH_TEMPLATE([HAVE_GLBINDTEXTURE], + [Define this if your version of OpenGL has the glBindTexture() + routine. This is the case for OpenGL 1.1, but not for OpenGL + 1.0.]) + +AH_TEMPLATE([HAVE_GLSL], + [Define this if your OpenGL implementation supports the OpenGL + Shading Language (GLSL). This requires at least OpenGL 2.0. + HAVE_GL should be defined, too.]) + +AH_TEMPLATE([HAVE_GLE], + [Define this if you have the -lgle and -lmatrix libraries (GL + extrusion.)]) + +AH_TEMPLATE([HAVE_GLE3],[Define this if you have the -lgle from GLE version 3]) + +AH_TEMPLATE([HAVE_JWZGLES],[Define this to target the OpenGL ES 1.x API + instead of OpenGL 1.3.]) + +AH_TEMPLATE([HAVE_XSHM_EXTENSION], + [Define this if you have the X Shared Memory Extension.]) + +AH_TEMPLATE([HAVE_DOUBLE_BUFFER_EXTENSION], + [Define this if you have the X Double Buffer Extension.]) + +AH_TEMPLATE([FORTUNE_PROGRAM], + [Some screenhacks like to run an external program to generate + random pieces of text; set this to the one you like. Note that + this is just the default; X resources can be used to override + it.]) + +AH_TEMPLATE([PASSWD_HELPER_PROGRAM], + [Set the name of the password helper program, if any]) + +AH_TEMPLATE([NO_LOCKING], + [Define this to remove the option of locking the screen at all.]) + +AH_TEMPLATE([ALLOW_ROOT_PASSWD], + [Define this to allow the root password to unlock the screen.]) + +AH_TEMPLATE([HAVE_KERBEROS], + [Define this if you want to use Kerberos authentication to + lock/unlock the screen instead of your local password. This + currently uses Kerberos V4, but a V5 server with V4 + compatibility will work. WARNING: DO NOT USE AFS string-to-key + passwords with this option. This option currently *only* works + with standard Kerberos des_string_to_key. If your password is + an AFS password and not a kerberos password, it will not + authenticate properly. See the comments in driver/kpasswd.c for + more information if you need it.]) + +AH_TEMPLATE([HAVE_KERBEROS5], + [Define this if you have Kerberos 5, meaning we need to use the + Kerberos 4 compatibility layer.]) + +AH_TEMPLATE([HAVE_PAM], + [Define this if you want to use PAM (Pluggable Authentication + Modules) to lock/unlock the screen, instead of standard + /etc/passwd authentication.]) + +AH_TEMPLATE([PAM_SERVICE_NAME], + [If PAM is being used, this is the name of the PAM service that + xscreensaver will authenticate as. The default is + "xscreensaver", which means that the PAM library will look for + an "xscreensaver" line in /etc/pam.conf, or (on recent Linux + systems) will look for a file called /etc/pam.d/xscreensaver. + Some systems might already have a PAM installation that is + configured for xlock, so setting this to "xlock" would also work + in that case.]) + +AH_TEMPLATE([HAVE_PAM_FAIL_DELAY], + [Define this if you have pam_fail_delay function. + see driver/passwd-pam.c.]) + +AH_TEMPLATE([PAM_CHECK_ACCOUNT_TYPE], + [Whether PAM should check the result of account modules + when authenticating. Only do this if you have account + configured properly on your system.]) + +AH_TEMPLATE([PAM_STRERROR_TWO_ARGS], + [Define if you have PAM and pam_strerror() requires two + arguments.]) + +AH_TEMPLATE([HAVE_SIGTIMEDWAIT], + [Define to 1 if you have the `sigtimedwait' function.]) + +AH_TEMPLATE([HAVE_SHADOW_PASSWD], + [Define this if your system uses 'shadow' passwords, that is, the + passwords live in /etc/shadow instead of /etc/passwd, and one + reads them with getspnam() instead of getpwnam(). (Note that + SCO systems do some random other thing; others might as well. + See the ifdefs in driver/passwd-pwent.c if you're having trouble + related to reading passwords.)]) + +AH_TEMPLATE([HAVE_ENHANCED_PASSWD], + [Define this if your system is Digital or SCO Unix with so-called + ``Enhanced Security'', that is, the passwords live in + /tcb/files/auth// instead of in /etc/passwd, and one + reads them with getprpwnam() instead of getpwnam().]) + +AH_TEMPLATE([HAVE_ADJUNCT_PASSWD], + [Define this if your system is Solaris with ``adjunct'' passwords + (this is the version where one gets at the passwords with + getpwanam() instead of getpwnam().) I haven't tested this one, + let me know if it works.]) + +AH_TEMPLATE([HAVE_HPUX_PASSWD], + [Define this if you have HPUX with so-called "Secure Passwords".]) + +AH_TEMPLATE([HAVE_SYSLOG], + [Define this if you the openlog(), syslog(), and closelog() + functions. This is used for logging failed login attempts.]) + +AH_TEMPLATE([HAVE_ICMP], + [Define this if you do pings with a `struct icmp' and an + `icmp_id' slot.]) + +AH_TEMPLATE([HAVE_ICMPHDR], + [Define this if you do pings with a `struct icmphdr' and an + `un.echo.id' slot.]) + +AH_TEMPLATE([HAVE_GETIFADDRS], + [Define this if you have the getifaddrs() function.]) + +AH_TEMPLATE([HAVE_FORKPTY], + [Define this if you have the 'forkpty' function: + This allows 'phosphor' and 'apple2' to run curses-based + programs, or be used as terminal windows.]) + +AH_TEMPLATE([HAVE_GETTIMEOFDAY], + [Define this if you have the gettimeofday function.]) + +AH_TEMPLATE([GETTIMEOFDAY_TWO_ARGS], + [Define this if gettimeofday() takes two arguments.]) + +AH_TEMPLATE([XPointer], + [Define this to void* if you're using X11R4 or earlier.]) + +AH_TEMPLATE([HAVE_PTHREAD], + [Define this if your system supports POSIX threads.]) + +AH_TEMPLATE([HAVE_LIBCAP], + [Define this if your system has libcap.]) + +AH_TEMPLATE([HAVE_RECORD_ANIM], + [Define this to enable recording of videos.]) + +# After checking to see that --srcdir is correct (which AC_INIT does) +# check for some random other files that come later in the tar file, +# to make sure everything is here. +# +for d in utils jwxyz hacks hacks/glx driver ; do + f=$srcdir/$d/Makefile.in + if test \! -r $f ; then + echo "" + echo "ERROR: The package is incomplete: $f does not exist." + echo " This probably means that your download was truncated." + echo "" + exit 1 + fi +done + +############################################################################### +# +# Function to figure out how to run the compiler. +# +############################################################################### + +AC_DEFUN([AC_PROG_CC_ANSI], + [AC_REQUIRE([AC_PROG_CC]) + + if test -z "$GCC"; then + # not using GCC + AC_MSG_CHECKING(how to request ANSI compilation) + case "$host" in + *-hpux* ) + AC_MSG_RESULT(HPUX: adding -Ae) + CC="$CC -Ae" + ;; + *-aix* ) + AC_MSG_RESULT(AIX: adding -qlanglvl=ansi -qhalt=e) + CC="$CC -qlanglvl=ansi -qhalt=e" + ;; + *-dec-* ) + AC_MSG_RESULT(DEC: adding -std1 -ieee) + CC="$CC -std1" + ;; + *) + AC_MSG_RESULT(no idea) + ;; + esac + else + # using GCC + case "$host" in + *-solaris*) + AC_MSG_RESULT(Solaris: adding -D__EXTENSIONS__) + CC="$CC -D__EXTENSIONS__" + ;; + esac + fi + + OBJCC="$CC" + + # This test makes cross-compiling fail, so let's just assume that nobody + # is using a K&R compiler any more... + # +# AC_MSG_CHECKING([whether the compiler works on ANSI C]) +# AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], +# AC_MSG_RESULT(yes), +# AC_MSG_RESULT(no) +# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.), +# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.)) + + if test -n "$GCC"; then + AC_MSG_RESULT(Turning on gcc compiler warnings.) + CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" + OBJCC="$OBJCC -Wall" + # As of gcc 3.4, we have "-Wdeclaration-after-statement" + # and so perhaps now we can do without -pedantic? + else + case "$host" in + *-irix5* |*-irix6.[0-3]* ) + AC_MSG_RESULT(Turning on SGI compiler warnings.) + CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" + ;; +# *-dec-osf* ) +# if test -z "$GCC"; then +# AC_MSG_RESULT(Turning on DEC C compiler warnings.) +# CC="$CC -migrate -w0 -verbose -warnprotos" +# fi +# ;; + esac + fi +]) + + +############################################################################### +# +# Check for availability of various gcc command-line options. +# +############################################################################### + +AC_DEFUN([AC_CHECK_GCC_ARG], + [if test -n "$GCC"; then + AC_CACHE_CHECK([whether gcc accepts [$2]], + ac_cv_gcc_accepts_[$1], + [rm -rf conftest.$ac_ext + touch conftest.$ac_ext + if ( ( gcc -c [$2] conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ + grep unrecognized >/dev/null ); then + ac_cv_gcc_accepts_[$1]=no + else + ac_cv_gcc_accepts_[$1]=yes + CC="$CC [$2]" + fi]) + ac_gcc_accepts_[$1]="$ac_cv_gcc_accepts_[$1]" + fi +]) + +AC_DEFUN([AC_NO_LONG_STRING_WARNINGS], + [AC_CHECK_GCC_ARG(no_overlength, -Wno-overlength-strings)]) + +AC_DEFUN([AC_NO_MISPLACED_DECLARATIONS], + [AC_CHECK_GCC_ARG(no_decl_after, -Wdeclaration-after-statement)]) + +# Need to disable Objective C extensions in ANSI C on MacOS X to work +# around an Apple-specific gcc bug. +# +AC_DEFUN([AC_NO_OBJECTIVE_C], + [AC_CHECK_GCC_ARG(no_cpp_precomp, -no-cpp-precomp)]) + +############################################################################### +# +# Function to figure out how to disable // comments in ANSI C code. +# +# (With recent gcc, this is done with "-std=c89". With older gcc, this +# is done by passing "-lang-c89" to cpp, by passing "-Wp,-lang-c89" to +# gcc. Old gcc doesn't support -std, and new gcc doesn't support -lang. +# so much for compatibility!) +# +# UPDATE: apparently there is NO WAY to tell gcc 3.2.2 to require that +# declarations preceed statements, without resorting to "-pedantic". +# This means that there is no way to get gcc3 to issue warnings that +# ensure that your code complies with the ANSI/ISO C89 standard, without +# also drowning in totally useless warnings. Thank you master may I +# have another. +# +# So, I give up, let's just use -pedantic. +# +############################################################################### + +AC_DEFUN([AC_GCC_ACCEPTS_STD], [ + case "$host" in + *-darwin* ) + # Fucking Apple let // comments sneak into OpenGL headers, so + # we *must* allow // comments when compiling on Mac OS 10.6! FUCK! + ;; + *) + AC_CHECK_GCC_ARG(std, -std=c89) + ;; + esac +]) + +AC_DEFUN([AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE], + [if test -n "$GCC"; then + AC_GCC_ACCEPTS_STD + AC_MSG_RESULT(Disabling C++ comments in ANSI C code.) + # + # The reason that // comments are banned from xscreensaver is that gcc is + # basically the only compiler in the world that supports them in C code. + # All other vendors support them only in their C++ compilers, not in their + # ANSI C compilers. This means that it's a portability problem: every time + # these comments have snuck into the xscreensaver source code, I've gotten + # complaints about it the next day. So we turn off support for them in gcc + # as well to prevent them from accidentially slipping in. + # + if test "$ac_gcc_accepts_std" = yes ; then + # + # -std=c89 defines __STRICT_ANSI__, which we don't want. + # (That appears to be the only additional preprocessor symbol + # it defines, in addition to the syntax changes it makes.) + # + # -std=gnu89 is no good, because // comments were a GNU extension + # before they were in the ANSI C 99 spec... (gcc 2.96 permits // + # with -std=gnu89 but not with -std=c89.) + # + # $CC already contains "-std=c89" via AC_GCC_ACCEPTS_STD + CC="$CC -U__STRICT_ANSI__" +# else +# # The old way: +# CC="$CC -Wp,-lang-c89" + fi + fi +]) + + +############################################################################### +# +# Function to figure out how to create directory trees. +# +############################################################################### + +AC_DEFUN([AC_PROG_INSTALL_DIRS], + [AC_CACHE_CHECK([whether "\${INSTALL} -d" creates intermediate directories], + ac_cv_install_d_creates_dirs, + [ac_cv_install_d_creates_dirs=no + rm -rf conftestdir + if mkdir conftestdir; then + cd conftestdir 2>/dev/null + ${INSTALL} -d `pwd`/dir1/dir2 >/dev/null 2>&1 + if test -d dir1/dir2/. ; then + ac_cv_install_d_creates_dirs=yes + fi + cd .. 2>/dev/null + rm -rf conftestdir + fi + ]) + + if test "$ac_cv_install_d_creates_dirs" = no ; then + AC_CACHE_CHECK([whether "mkdir -p" creates intermediate directories], + ac_cv_mkdir_p_creates_dirs, + [ac_cv_mkdir_p_creates_dirs=no + rm -rf conftestdir + if mkdir conftestdir; then + cd conftestdir 2>/dev/null + mkdir -p dir1/dir2 >/dev/null 2>&1 + if test -d dir1/dir2/. ; then + ac_cv_mkdir_p_creates_dirs=yes + fi + cd .. 2>/dev/null + rm -rf conftestdir + fi + ]) + fi + + if test "$ac_cv_install_d_creates_dirs" = yes ; then + INSTALL_DIRS='${INSTALL} -d' + elif test "$ac_cv_mkdir_p_creates_dirs" = yes ; then + INSTALL_DIRS='mkdir -p' + else + # any other ideas? + INSTALL_DIRS='${INSTALL} -d' + fi +]) + + +############################################################################### +# +# Function to check whether gettimeofday() exists, and how to call it. +# This may define HAVE_GETTIMEOFDAY and GETTIMEOFDAY_TWO_ARGS. +# +############################################################################### + +AC_DEFUN([AC_GETTIMEOFDAY_ARGS], + [AC_MSG_CHECKING(how to call gettimeofday) + AC_CACHE_VAL(ac_cv_gettimeofday_args, + [AC_TRY_COMPILE([#include + #include ], + [struct timeval tv; struct timezone tzp; + gettimeofday(&tv, &tzp);], + [ac_gettimeofday_args=2], + [AC_TRY_COMPILE([#include + #include ], + [struct timeval tv; gettimeofday(&tv);], + [ac_gettimeofday_args=1], + [ac_gettimeofday_args=0])]) + ac_cv_gettimeofday_args=$ac_gettimeofday_args]) + ac_gettimeofday_args=$ac_cv_gettimeofday_args + if test "$ac_gettimeofday_args" = 1 ; then + AC_DEFINE(HAVE_GETTIMEOFDAY) + AC_MSG_RESULT(one argument) + elif test "$ac_gettimeofday_args" = 2 ; then + AC_DEFINE(HAVE_GETTIMEOFDAY) + AC_DEFINE(GETTIMEOFDAY_TWO_ARGS) + AC_MSG_RESULT(two arguments) + else + AC_MSG_RESULT(unknown) + fi +]) + + +############################################################################### +# +# Function to find perl5 (defines PERL and PERL_VERSION.) +# +############################################################################### + +# M4 sucks!! perl sucks too!! +changequote(X,Y) +perl_version_cmd='print $]' +changequote([,]) + +AC_DEFUN([AC_PROG_PERL], + [AC_PATH_PROGS(PERL, [perl5 perl],,) + if test -z "$PERL" ; then + PERL_VERSION=0 + else + AC_CACHE_CHECK([perl version], ac_cv_perl_version, + [ac_cv_perl_version=`$PERL -e "$perl_version_cmd"`]) + PERL_VERSION=$ac_cv_perl_version + fi + ]) + + +############################################################################### +# +# Function to demand "bc". Losers. +# +############################################################################### + +AC_DEFUN([AC_DEMAND_BC], + [ac_bc_result=`echo 6+9 | bc 2>/dev/null` + AC_MSG_CHECKING([for bc]) + if test "$ac_bc_result" = "15" ; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + echo '' + AC_MSG_ERROR([Your system doesn't have \"bc\", which has been a standard + part of Unix since the 1970s. Come back when your vendor + has grown a clue.]) + fi + ]) + +############################################################################### +# +# Functions to check how to do ICMP PING requests. +# +############################################################################### + +AC_DEFUN([AC_CHECK_ICMP], + [AC_CACHE_CHECK([for struct icmp], ac_cv_have_icmp, + [AC_TRY_COMPILE([#include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include ], + [struct icmp i; + struct sockaddr s; + struct sockaddr_in si; + struct ip ip; + i.icmp_type = ICMP_ECHO; + i.icmp_code = 0; + i.icmp_cksum = 0; + i.icmp_id = 0; + i.icmp_seq = 0; + si.sin_family = AF_INET; + #if defined(__DECC) || defined(_IP_VHL) + ip.ip_vhl = 0; + #else + ip.ip_hl = 0; + #endif + ], + [ac_cv_have_icmp=yes], + [ac_cv_have_icmp=no])]) + if test "$ac_cv_have_icmp" = yes ; then + AC_DEFINE(HAVE_ICMP) + fi]) + +AC_DEFUN([AC_CHECK_ICMPHDR], + [AC_CACHE_CHECK([for struct icmphdr], ac_cv_have_icmphdr, + [AC_TRY_COMPILE([#include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include ], + [struct icmphdr i; + struct sockaddr s; + struct sockaddr_in si; + struct ip ip; + i.type = ICMP_ECHO; + i.code = 0; + i.checksum = 0; + i.un.echo.id = 0; + i.un.echo.sequence = 0; + si.sin_family = AF_INET; + ip.ip_hl = 0;], + [ac_cv_have_icmphdr=yes], + [ac_cv_have_icmphdr=no])]) + if test "$ac_cv_have_icmphdr" = yes ; then + AC_DEFINE(HAVE_ICMPHDR) + fi]) + + +############################################################################### +# +# Functions to check for various X11 crap. +# +############################################################################### + +# Try and find the app-defaults directory. +# It sucks that autoconf doesn't do this already... +# +AC_DEFUN([AC_PATH_X_APP_DEFAULTS_XMKMF],[ + rm -fr conftestdir + if mkdir conftestdir; then + cd conftestdir 2>/dev/null + # Make sure to not put "make" in the Imakefile rules, since we grep it out. + cat > Imakefile <<'EOF' +acfindx: + @echo 'ac_x_app_defaults="${XAPPLOADDIR}"' +EOF + if (xmkmf) >/dev/null 2>&1 && test -f Makefile; then + # GNU make sometimes prints "make[1]: Entering...", which'd confuse us. + eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` + fi + cd .. 2>/dev/null + rm -fr conftestdir + fi]) + +AC_DEFUN([AC_PATH_X_APP_DEFAULTS_DIRECT],[ + # Look for the directory under a standard set of common directories. + # Check X11 before X11Rn because it's often a symlink to the current release. + for ac_dir in \ + \ + /usr/share/X11/app-defaults \ + \ + /usr/X11/lib/app-defaults \ + /usr/X11R6/lib/app-defaults \ + /usr/X11R6/lib/X11/app-defaults \ + /usr/X11R5/lib/app-defaults \ + /usr/X11R5/lib/X11/app-defaults \ + /usr/X11R4/lib/app-defaults \ + /usr/X11R4/lib/X11/app-defaults \ + \ + /usr/lib/X11/app-defaults \ + /usr/lib/X11R6/app-defaults \ + /usr/lib/X11R5/app-defaults \ + /usr/lib/X11R4/app-defaults \ + \ + /etc/X11/app-defaults \ + \ + /usr/local/X11/lib/app-defaults \ + /usr/local/X11R6/lib/app-defaults \ + /usr/local/X11R5/lib/app-defaults \ + /usr/local/X11R4/lib/app-defaults \ + \ + /usr/local/lib/X11/app-defaults \ + /usr/local/lib/X11R6/app-defaults \ + /usr/local/lib/X11R6/X11/app-defaults \ + /usr/local/lib/X11R5/app-defaults \ + /usr/local/lib/X11R5/X11/app-defaults \ + /usr/local/lib/X11R4/app-defaults \ + /usr/local/lib/X11R4/X11/app-defaults \ + \ + /usr/X386/lib/X11/app-defaults \ + /usr/x386/lib/X11/app-defaults \ + /usr/XFree86/lib/X11/app-defaults \ + \ + /usr/lib/X11/app-defaults \ + /usr/local/lib/X11/app-defaults \ + /usr/unsupported/lib/X11/app-defaults \ + /usr/athena/lib/X11/app-defaults \ + /usr/local/x11r5/lib/X11/app-defaults \ + /usr/lpp/Xamples/lib/X11/app-defaults \ + /lib/usr/lib/X11/app-defaults \ + \ + /usr/openwin/lib/app-defaults \ + /usr/openwin/lib/X11/app-defaults \ + /usr/openwin/share/lib/app-defaults \ + /usr/openwin/share/lib/X11/app-defaults \ + \ + /X11R6/lib/app-defaults \ + /X11R5/lib/app-defaults \ + /X11R4/lib/app-defaults \ + ; \ + do + if test -d "$ac_dir"; then + ac_x_app_defaults=$ac_dir + break + fi + done +]) + +AC_DEFUN([AC_PATH_X_APP_DEFAULTS], + [AC_REQUIRE_CPP() + AC_CACHE_CHECK([for X app-defaults directory], ac_cv_x_app_defaults, + [# skip this, it's always wrong these days. + # AC_PATH_X_APP_DEFAULTS_XMKMF + if test x"$ac_x_app_defaults" = x; then + true AC_PATH_X_APP_DEFAULTS_DIRECT + fi + if test x"$ac_x_app_defaults" = x; then + /bin/echo -n 'fallback: ' + ac_cv_x_app_defaults="/usr/lib/X11/app-defaults" + else + # Record where we found app-defaults for the cache. + ac_cv_x_app_defaults="$ac_x_app_defaults" + fi]) + eval ac_x_app_defaults="$ac_cv_x_app_defaults"]) + + +AC_DEFUN([AC_XPOINTER], + [AC_CACHE_CHECK([for XPointer], ac_cv_xpointer, + [AC_TRY_X_COMPILE([#include ], + [XPointer foo = (XPointer) 0;], + [ac_cv_xpointer=yes], + [ac_cv_xpointer=no])]) + if test "$ac_cv_xpointer" != yes; then + AC_DEFINE(XPointer,[char*]) + fi]) + + +# Random special-cases for X on certain pathological OSes. +# You know who you are. +# +AC_DEFUN([AC_X_RANDOM_PATHS], + [case "$host" in + *-hpux*) + + # The following arcana was gleaned from conversations with + # Eric Schwartz : + # + # On HPUX 10.x, the parts of X that HP considers "standard" live in + # /usr/{include,lib}/X11R6/. The parts that HP doesn't consider + # "standard", notably, Xaw and Xmu, live in /usr/contrib/X11R6/. + # Yet /usr/contrib/X11R6/ comes preinstalled on all HPUX systems. + # Also, there are symlinks from /usr/include/ and /usr/lib/ into + # /usr/{include,lib}/X11R6/, so that (if you don't use Xmu at all) + # you don't need any -I or -L arguments. + # + # On HPUX 9.x, /usr/{include,lib}/X11R5/ and /usr/contrib/X11R5/ + # are the same division as 10.x. However, there are no symlinks to + # the X stuff from /usr/include/ and /usr/lib/, so -I and -L + # arguments are always necessary. + # + # However, X11R6 was available on HPUX 9.x as a patch: if that + # patch was installed, then all of X11R6 went in to + # /usr/contrib/X11R6/ (there was no /usr/{include,lib}/X11R6/.) + # + # HPUX 8.x was the same as 9.x, but was X11R4 instead (I don't know + # whether R5 was available as a patch; R6 undoubtedly was not.) + # + # So. We try and use the highest numbered pair of + # /usr/{include,lib}/X11R?/ and /usr/contrib/X11R?/{include,lib}/ + # that are available. We do not mix and match different versions + # of X. + # + # Question I still don't know the answer to: (do you?) + # + # * On HPUX 9.x, where /usr/include/X11R5/ was standard, and + # /usr/contrib/X11R6/ could be installed as a patch, what was in + # that contrib directory? Did it contain so-called "standard" + # X11R6, or did it include Xaw and Xmu as well? If the former, + # where did one find Xaw and Xmu on 9.x R6 systems? Would this + # be a situation where one had to reach into the R5 headers and + # libs to find Xmu? That is, must both R6 and R5 directories + # be on the -I and -L lists in that case? + # + for version in X11R6 X11R5 X11R4 ; do + # if either pair of directories exists... + if test -d /usr/include/$version || test -d /usr/contrib/$version/include + then + # if contrib exists, use it... + if test -d /usr/contrib/$version/include ; then + X_CFLAGS="$X_CFLAGS -I/usr/contrib/$version/include" + X_LIBS="$X_LIBS -L/usr/contrib/$version/lib" + fi + # if the "standard" one exists, use it. + if test -d /usr/include/$version ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/$version" + X_LIBS="$X_LIBS -L/usr/lib/$version" + fi + # since at least one of the pair exists, go no farther. + break + fi + done + + # Now find Motif. Thanks for not making xmkmf find this by + # default, you losers. + # + if test -d /usr/include/Motif2.1 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif2.1" + X_LIBS="$X_LIBS -L/usr/lib/Motif2.1" + elif test -d /usr/include/Motif1.2 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.2" + X_LIBS="$X_LIBS -L/usr/lib/Motif1.2" + elif test -d /usr/include/Motif1.1 ; then + X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.1" + X_LIBS="$X_LIBS -L/usr/lib/Motif1.1" + fi + + # Now let's check for the pseudo-standard locations for OpenGL. + # + if test -d /opt/graphics/OpenGL/include ; then + # HP-UX 10.20 puts it here + X_CFLAGS="-I/opt/graphics/OpenGL/include $X_CFLAGS" + X_LIBS="-L/opt/graphics/OpenGL/lib $X_LIBS" + elif test -d /opt/Mesa/lib ; then + X_CFLAGS="-I/opt/Mesa/include $X_CFLAGS" + X_LIBS="-L/opt/Mesa/lib $X_LIBS" + fi + + + # On HPUX, default to installing in /opt/xscreensaver/ instead of + # in /usr/local/, unless there is already an xscreensaver in + # /usr/local/bin/. This can be overridden with the --prefix arg + # to configure. I'm not sure this is the right thing to do, but + # Richard Lloyd says so... + # + if test \! -x /usr/local/bin/xscreensaver ; then + ac_default_prefix=/opt/xscreensaver + fi + + ;; + *-solaris*) + + # Thanks for not making xmkmf find this by default, pinheads. + # And thanks for moving things around again, too. Is this + # really the standard location now? What happened to the + # joke that this kind of thing went in /opt? + # cthomp says "answer: CDE (Common Disorganized Environment)" + # + if test -f /usr/dt/include/Xm/Xm.h ; then + X_CFLAGS="$X_CFLAGS -I/usr/dt/include" + MOTIF_LIBS="$MOTIF_LIBS -L/usr/dt/lib -R/usr/dt/lib" + + # Some versions of Slowlaris Motif require -lgen. But not all. Why? + AC_CHECK_LIB(gen, regcmp, [MOTIF_LIBS="$MOTIF_LIBS -lgen"]) + fi + + ;; + *-darwin*) + + # On MacOS X (10.x with "fink"), many things are under /sw/. + # + if test -d /sw/include ; then + X_CFLAGS="-I/sw/include $X_CFLAGS" + X_LIBS="-L/sw/lib $X_LIBS" + fi + ;; + esac]) + +AC_DEFUN([AC_CHECK_GETIFADDRS], + [AC_CACHE_CHECK([for getifaddrs], ac_cv_have_getifaddrs, + [AC_TRY_COMPILE([#include + #include + #include + #include ], + [struct ifaddrs *ifa; + getifaddrs (&ifa); + ifa->ifa_next = 0; + ifa->ifa_addr->sa_family = 0;], + [ac_cv_have_getifaddrs=yes], + [ac_cv_have_getifaddrs=no])]) + if test "$ac_cv_have_getifaddrs" = yes ; then + AC_DEFINE(HAVE_GETIFADDRS) + fi]) + +AC_DEFUN([AC_TYPE_SOCKLEN_T], + [AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t, + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include + #include ]], [[ + socklen_t socklen; + ]])],[ac_cv_type_socklen_t=yes],[ac_cv_type_socklen_t=no])]) + if test "$ac_cv_type_socklen_t" != yes; then + AC_DEFINE(socklen_t, int, + [Define to `int' if or does not define.]) + fi]) + +############################################################################### +# +# Some utility functions to make checking for X things easier. +# +############################################################################### + +# Like AC_CHECK_HEADER, but it uses the already-computed -I directories. +# +AC_DEFUN([AC_CHECK_X_HEADER], [ + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + AC_CHECK_HEADER([$1],[$2],[$3],[$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) + +# Like AC_EGREP_HEADER, but it uses the already-computed -I directories. +# +AC_DEFUN([AC_EGREP_X_HEADER], [ + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + AC_EGREP_HEADER([$1], [$2], [$3], [$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) + +# Like AC_TRY_COMPILE, but it uses the already-computed -I directories. +# +AC_DEFUN([AC_TRY_X_COMPILE], [ + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + AC_TRY_COMPILE([$1], [$2], [$3], [$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) + + +# Like AC_CHECK_LIB, but it uses the already-computed -I and -L directories. +# Use this sparingly; it probably doesn't work very well on X programs. +# +AC_DEFUN([AC_CHECK_X_LIB], [ + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" +# ac_save_LIBS="$LIBS" + + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" + fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" + + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` + AC_CHECK_LIB([$1], [$2], [$3], [$4], [$5]) + CPPFLAGS="$ac_save_CPPFLAGS" + LDFLAGS="$ac_save_LDFLAGS" +# LIBS="$ac_save_LIBS" + ]) + +# Like AC_TRY_RUN, but it uses the already-computed -I directories. +# (But not the -L directories!) +# +AC_DEFUN([AC_TRY_X_RUN], [ + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` + AC_TRY_RUN([$1], [$2], [$3], [$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) + + + +# Usage: HANDLE_X_PATH_ARG([variable_name], +# [--command-line-option], +# [descriptive string]) +# +# All of the --with options take three forms: +# +# --with-foo (or --with-foo=yes) +# --without-foo (or --with-foo=no) +# --with-foo=/DIR +# +# This function, HANDLE_X_PATH_ARG, deals with the /DIR case. When it sees +# a directory (string beginning with a slash) it checks to see whether +# /DIR/include and /DIR/lib exist, and adds them to $X_CFLAGS and $X_LIBS +# as appropriate. +# +AC_DEFUN([HANDLE_X_PATH_ARG], [ + case "$[$1]" in + yes) ;; + no) ;; + + /*) + AC_MSG_CHECKING([for [$3] headers]) + d=$[$1]/include + if test -d $d; then + X_CFLAGS="-I$d $X_CFLAGS" + AC_MSG_RESULT($d) + else + AC_MSG_RESULT(not found ($d: no such directory)) + fi + + AC_MSG_CHECKING([for [$3] libs]) + d=$[$1]/lib + if test -d $d; then + X_LIBS="-L$d $X_LIBS" + AC_MSG_RESULT($d) + else + AC_MSG_RESULT(not found ($d: no such directory)) + fi + + # replace the directory string with "yes". + [$1]_req="yes" + [$1]=$[$1]_req + ;; + + *) + echo "" + echo "error: argument to [$2] must be \"yes\", \"no\", or a directory." + echo " If it is a directory, then \`DIR/include' will be added to" + echo " the -I list, and \`DIR/lib' will be added to the -L list." + exit 1 + ;; + esac + ]) + + +############################################################################### +############################################################################### +# +# End of function definitions. Now start actually executing stuff. +# +############################################################################### +############################################################################### + +# WTF! autoconf emits this *way* too late. Do it earlier. +test "x$prefix" = xNONE && prefix=$ac_default_prefix +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# random compiler setup +AC_CANONICAL_HOST + +ac_original_cc=$CC +AC_PROG_CC +AC_PROG_CC_ANSI +AC_NO_LONG_STRING_WARNINGS +AC_NO_MISPLACED_DECLARATIONS +AC_NO_OBJECTIVE_C +AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE +AC_PROG_CPP +AC_C_CONST +AC_C_INLINE +AC_EXEEXT +AC_DEMAND_BC + +# stuff for Makefiles +AC_PROG_INSTALL +AC_PROG_INSTALL_DIRS +AC_PROG_MAKE_SET + +# By default, autoconf sets INSTALL_SCRIPT to '${INSTALL_PROGRAM}'. +# That's wrong: it should be set to '${INSTALL}', so that one can +# implement the "install-strip" target properly (strip executables, +# but do not try to strip scripts.) +# +INSTALL_SCRIPT='${INSTALL}' + +# random libc stuff +AC_HEADER_STDC +AC_CHECK_HEADERS(unistd.h inttypes.h) +AC_TYPE_MODE_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_TYPE_SIGNAL +AC_HEADER_TIME +AC_HEADER_SYS_WAIT +AC_HEADER_DIRENT +AC_GETTIMEOFDAY_ARGS +AC_SYS_LARGEFILE +AC_CHECK_FUNCS(select fcntl uname nice setpriority getcwd getwd putenv sbrk) +AC_CHECK_FUNCS(sigaction syslog realpath setrlimit) +AC_CHECK_FUNCS(setlocale sqrtf) +AC_CHECK_FUNCS(getaddrinfo) +AC_CHECK_MEMBERS([struct sockaddr.sa_len],,, [[#include ]]) +AC_CHECK_ICMP +AC_CHECK_ICMPHDR +AC_CHECK_GETIFADDRS +AC_TYPE_SOCKLEN_T +AC_CHECK_HEADERS(crypt.h sys/select.h) +AC_PROG_PERL + +if test -z "$PERL" ; then + # don't let it be blank... + PERL=/usr/bin/perl +fi + +AC_PATH_XTRA + +if test "$have_x" != yes; then + AC_MSG_ERROR(Couldn't find X11 headers/libs. Try `$0 --help'.) +fi + +AC_X_RANDOM_PATHS +AC_XPOINTER + +AC_MSG_CHECKING(whether this is MacOS X) + ac_macosx=no + ac_irix=no + case "$host" in + *-apple-darwin* ) + ac_macosx=yes + ;; + *-irix* ) + ac_irix=yes + ;; + esac +AC_MSG_RESULT($ac_macosx) + + +############################################################################### +# +# pkg-config +# +############################################################################### + +AC_PATH_TOOL(pkg_config, pkg-config) + +if test -z "$pkg_config" ; then + AC_MSG_WARN([pkg-config not found!]) + pkg_config="false" +fi + + +# Utility function for running pkg-config-based tests... +# +pkgs='' +pkg_check_version() { + if test "$ok" = yes ; then + req="$1" + min="$2" + AC_MSG_CHECKING(for $req) + if $pkg_config --exists "$req" ; then + vers=`$pkg_config --modversion "$req"` + if $pkg_config --exists "$req >= $min" ; then + AC_MSG_RESULT($vers) + pkgs="$pkgs $req" + return 1 + else + AC_MSG_RESULT($vers (wanted >= $min)) + ok=no + return 0 + fi + else + AC_MSG_RESULT(no) + ok=no + return 0 + fi + fi +} + + +############################################################################### +# +# Gettext support +# +############################################################################### + +IT_PROG_INTLTOOL +GETTEXT_PACKAGE=xscreensaver +AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", + [This is the name of the gettext package to use.]) +AC_SUBST(GETTEXT_PACKAGE) + +ALL_LINGUAS="da de es et fi fr hu it ja ko nb nl pl pt pt_BR ru sk sv vi wa zh_CN zh_TW" +AM_GLIB_GNU_GETTEXT +MKINSTALLDIRS="$INSTALL_DIRS" + + +############################################################################### +# +# Check for -lXmu (some fucked up vendors don't ship it...) +# +############################################################################### + +have_xmu=no +AC_CHECK_X_HEADER(X11/Xmu/Error.h, [have_xmu=yes],, + [#include + #include + #include ]) +if test "$have_xmu" = no ; then + XMU_SRCS='$(UTILS_SRC)/xmu.c' + XMU_OBJS='$(UTILS_BIN)/xmu.o' + XMU_LIBS='' +else + XMU_SRCS='' + XMU_OBJS='' + XMU_LIBS='-lXmu' + AC_DEFINE(HAVE_XMU) +fi + + +############################################################################### +# +# Check for the SunOS 4.1.x _get_wmShellWidgetClass bug. +# See comp.windows.x FAQ question 124. The right fix is to +# get OpenWindows 3.0 patches 100512-02 and 100573-03. +# +############################################################################### + +if test "$have_xmu" = yes ; then + case "$host" in + *-sunos4*) + AC_CACHE_CHECK([for the SunOS 4.1.x _get_wmShellWidgetClass bug], + ac_cv_sunos_xmu_bug, + [ac_save_LDFLAGS="$LDFLAGS" + if test \! -z "$x_libraries" ; then + LDFLAGS="$LDFLAGS -L$x_libraries" + fi + # Note: this trick never works! (Generally.) + # We're only getting away with using AC_TRY_LINK + # with X libraries because we know it's SunOS. + LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm" + AC_TRY_LINK(,, + [ac_cv_sunos_xmu_bug=no], + [ac_cv_sunos_xmu_bug=yes]) + LDFLAGS="$ac_save_LDFLAGS"]) + if test "$ac_cv_sunos_xmu_bug" = yes ; then + AC_CACHE_CHECK([whether the compiler understands -static], + ac_cv_ld_static, + [ac_save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -static" + AC_TRY_LINK(,,[ac_cv_ld_static=yes],[ac_cv_ld_static=no]) + LDFLAGS="$ac_save_LDFLAGS"]) + if test "$ac_cv_ld_static" = yes ; then + LDFLAGS="$LDFLAGS -static" + else + LDFLAGS="$LDFLAGS -Bstatic" + fi + fi + ;; + esac +fi + +############################################################################### +# +# The --with-x-app-defaults option +# +############################################################################### + +#### H1 + +AC_ARG_WITH(app-defaults,[ +Installation Options: + + --prefix=PREFIX Install root of architecture-independent files. + --exec-prefix=EPREFIX Install root of architecture-dependent files. + --with-app-defaults=DIR Where to install the default settings file.], + [ac_cv_x_app_defaults="$withval"], + [eval ac_x_app_defaults="$withval"]) +AC_PATH_X_APP_DEFAULTS + + +############################################################################### +# +# Handle the --with-hackdir option +# +############################################################################### + +have_hackdir=yes +with_hackdir_req=unspecified +AC_ARG_WITH(hackdir, +[ --with-hackdir=DIR Where to install the hundreds of demo executables.], + [with_hackdir="$withval"; with_hackdir_req="$withval"],[with_hackdir=yes]) + +if test x"$with_hackdir" = xyes; then + HACKDIR='${libexecdir}/xscreensaver' +elif test x"$with_hackdir" = xno; then + HACKDIR='${bindir}' +else + HACKDIR=$with_hackdir +fi + +# canonicalize slashes. +HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` + +# Expand HACKDIR as HACKDIR_FULL +HACKDIR_FULL=`eval eval eval eval eval eval eval eval eval echo $HACKDIR` + +# This option used to be called --enable-subdir; make sure that is no longer +# used, since configure brain-damagedly ignores unknown --enable options. + +obsolete_enable= +AC_ARG_ENABLE(subdir,,[obsolete_enable=yes]) +if test -n "$obsolete_enable"; then + echo "error: the --enable-subdir option has been replaced with" + echo " the new --with-hackdir option; see \`configure --help'" + echo " for more information." + exit 1 +fi + + +############################################################################### +# +# Handle the --with-configdir option +# +############################################################################### + +have_configdir=yes +with_configdir_req=unspecified +AC_ARG_WITH(configdir, +[ --with-configdir=DIR Where to install the GUI configuration files.], + [with_configdir="$withval"; with_configdir_req="$withval"], + [with_configdir=yes]) + +if test x"$with_configdir" = xyes; then + HACK_CONF_DIR='${datadir}/xscreensaver/config' +elif test x"$with_configdir" = xno; then + echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" + exit 1 +else + # there must be a better way than this... + if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then + # absolute path + HACK_CONF_DIR=$with_configdir + else + # relative path + HACK_CONF_DIR="\${exec_prefix}$with_configdir" + fi +fi + + + +############################################################################### +# +# Check for the DPMS server extension. +# +############################################################################### + +#### H1 + +have_dpms=no +with_dpms_req=unspecified +AC_ARG_WITH(dpms-ext, +[ +Server Extension Options: + + --with-dpms-ext Include support for power management.], + [with_dpms="$withval"; with_dpms_req="$withval"],[with_dpms=yes]) + +HANDLE_X_PATH_ARG(with_dpms, --with-dpms-ext, DPMS) + +if test "$with_dpms" = yes; then + + # first check for dpms.h + AC_CHECK_X_HEADER(X11/extensions/dpms.h, [have_dpms=yes],, + [#include + #include ]) + + # if that succeeded, then check for the DPMS code in the libraries + if test "$have_dpms" = yes; then + + # first look in -lXext (this is where it is with XFree86 4.0) + have_dpms=no + AC_CHECK_X_LIB(Xext, DPMSInfo, [have_dpms=yes], [true], -lXext -lX11) + + # if that failed, look in -lXdpms (this is where it was in XFree86 3.x) + if test "$have_dpms" = no; then + AC_CHECK_X_LIB(Xdpms, DPMSInfo, + [have_dpms=yes; XDPMS_LIBS="-lXdpms"], [true], + -lXext -lX11) + fi + fi + + + # if that succeeded, then we've really got it. + if test "$have_dpms" = yes; then + AC_DEFINE(HAVE_DPMS_EXTENSION) + fi + +elif test "$with_dpms" != no; then + echo "error: must be yes or no: --with-dpms-ext=$with_dpms" + exit 1 +fi + + +############################################################################### +# +# Check for the XF86VMODE server extension (for virtual screens.) +# +############################################################################### + +have_xf86vmode=no +with_xf86vmode_req=unspecified +AC_ARG_WITH(xf86vmode-ext, +[ --with-xf86vmode-ext Include support for virtual screens.], + [with_xf86vmode="$withval"; with_xf86vmode_req="$withval"], + [with_xf86vmode=yes]) + +HANDLE_X_PATH_ARG(with_xf86vmode, --with-xf86vmode-ext, xf86vmode) + +VIDMODE_LIBS="" + +if test "$with_xf86vmode" = yes; then + + # first check for xf86vmode.h + AC_CHECK_X_HEADER(X11/extensions/xf86vmode.h, [have_xf86vmode=yes],, + [#include ]) + + # if that succeeded, then check for the -lXxf86vm + if test "$have_xf86vmode" = yes; then + have_xf86vmode=no + AC_CHECK_X_LIB(Xxf86vm, XF86VidModeGetViewPort, + [have_xf86vmode=yes; + VIDMODE_LIBS="-lXxf86vm"; + SAVER_LIBS="$SAVER_LIBS $VIDMODE_LIBS"], + [true], -lXext -lX11) + fi + + # if that succeeded, then we've really got it. + if test "$have_xf86vmode" = yes; then + AC_DEFINE(HAVE_XF86VMODE) + fi + +elif test "$with_xf86vmode" != no; then + echo "error: must be yes or no: --with-xf86vmode-ext=$with_xf86vmode" + exit 1 +fi + + +############################################################################### +# +# Check for the XINERAMA server extension. +# +############################################################################### + +have_xinerama=no +with_xinerama_req=unspecified +AC_ARG_WITH(xinerama-ext, +[ --with-xinerama-ext Include support for multiple monitors.], + [with_xinerama="$withval"; with_xinerama_req="$withval"],[with_xinerama=yes]) + +HANDLE_X_PATH_ARG(with_xinerama, --with-xinerama-ext, XINERAMA) + +AC_CHECK_X_LIB(Xss, XScreenSaverQueryInfo, [X_EXTRA_LIBS="$X_EXTRA_LIBS -lXss"], [true], + -lXss -lXext -lX11) + + +if test "$with_xinerama" = yes; then + + # first check for Xinerama.h + AC_CHECK_X_HEADER(X11/extensions/Xinerama.h, [have_xinerama=yes],, + [#include ]) + + # if that succeeded, then check for the XINERAMA code in the libraries + if test "$have_xinerama" = yes; then + + # first look in -lXext + have_xinerama=no + AC_CHECK_X_LIB(Xext, XineramaQueryScreens, [have_xinerama=yes], [true], + -lXext -lX11) + + # if that failed, look in -lXinerama (this is where it is in XFree86 4.1.) + if test "$have_xinerama" = no; then + AC_CHECK_X_LIB(Xinerama, XineramaQueryScreens, + [have_xinerama=yes; XINERAMA_LIBS="-lXinerama"], + [true], -lXext -lX11) + fi + fi + + # if that succeeded, then we've really got it. + if test "$have_xinerama" = yes; then + AC_DEFINE(HAVE_XINERAMA) + fi + +elif test "$with_xinerama" != no; then + echo "error: must be yes or no: --with-xinerama-ext=$with_xinerama" + exit 1 +fi + + +############################################################################### +# +# Check for the RANDR (Resize and Rotate) server extension. +# +# We need this to detect when the resolution of the desktop +# has changed out from under us (this is a newer, different +# mechanism than the XF86VMODE virtual viewports.) +# +############################################################################### + +have_randr=no +with_randr_req=unspecified +AC_ARG_WITH(randr-ext, +[ --with-randr-ext Include different support for multiple monitors.], + [with_randr="$withval"; with_randr_req="$withval"],[with_randr=yes]) + +HANDLE_X_PATH_ARG(with_randr, --with-randr-ext, RANDR) + +if test "$with_randr" = yes; then + + # first check for Xrandr.h + AC_CHECK_X_HEADER(X11/extensions/Xrandr.h, [have_randr=yes],, + [#include ]) + + # if that succeeded, then check for the XRR code in the libraries + if test "$have_randr" = yes; then + + # RANDR probably needs -lXrender + xrender_libs= + AC_CHECK_X_LIB(Xrender, XRenderSetSubpixelOrder, + [xrender_libs="-lXrender"], [true], -lXext -lX11) + + # first look for RANDR in -lXext + have_randr=no + AC_CHECK_X_LIB(Xext, XRRGetScreenInfo, + [have_randr=yes; SAVER_LIBS="$SAVER_LIBS $xrender_libs"], + [true], $xrender_libs -lXext -lX11) + + # if that failed, look in -lXrandr + if test "$have_randr" = no; then + AC_CHECK_X_LIB(Xrandr, XRRGetScreenInfo, + [have_randr=yes; SAVER_LIBS="$SAVER_LIBS -lXrandr $xrender_libs"], + [true], $xrender_libs -lXext -lX11) + fi + fi + + # if that succeeded, then we've really got it. + if test "$have_randr" = yes; then + AC_DEFINE(HAVE_RANDR) + + # Now check for version 1.2 in the same libs. + # Try to compile, since on MacOS 10.5.7, headers are older than libs! + AC_CACHE_CHECK([for XRRGetScreenResources], ac_cv_randr_12, + [ac_cv_randr_12=no + AC_TRY_X_COMPILE([#include + #include + #include ], + [XRRScreenResources *res = + XRRGetScreenResources (0, 0);], + [ac_cv_randr_12=yes], + [ac_cv_randr_12=no])]) + if test "$ac_cv_randr_12" = yes ; then + AC_DEFINE(HAVE_RANDR_12) + fi +# AC_CHECK_X_LIB(c, XRRGetOutputInfo, [AC_DEFINE(HAVE_RANDR_12)], +# [true], $SAVER_LIBS) + fi + + +elif test "$with_randr" != no; then + echo "error: must be yes or no: --with-randr-ext=$with_randr" + exit 1 +fi + + +############################################################################### +# +# Check for XF86MiscSetGrabKeysState (but only bother if we are already +# using other XF86 stuff.) +# +############################################################################### + +have_xf86miscsetgrabkeysstate=no +if test "$have_xf86gamma" = yes -o "$have_xf86vmode" = yes; then + AC_CHECK_X_LIB(Xxf86misc, XF86MiscSetGrabKeysState, + [have_xf86miscsetgrabkeysstate=yes], + [true], -lXext -lX11) + if test "$have_xf86miscsetgrabkeysstate" = yes ; then + SAVER_LIBS="$SAVER_LIBS -lXxf86misc" + AC_DEFINE(HAVE_XF86MISCSETGRABKEYSSTATE) + fi +fi + + +############################################################################### +# +# Check for the XINPUT server extension. +# +############################################################################### + +have_xinput=no +with_xinput_req=unspecified +AC_ARG_WITH(xinput-ext, +[ --with-xinput-ext Include support for the XInput extension.], + [with_xinput="$withval"; with_xinput_req="$withval"], [with_xinput=yes]) + +HANDLE_X_PATH_ARG(with_xinput, --with-xinput-ext, XINPUT) + +if test "$with_xinput" = yes; then + + # first check for Xinput.h + AC_CHECK_X_HEADER(X11/extensions/XInput.h, [have_xinput=yes],, + [#include ]) + + # if that succeeded, then check for libXi + if test "$have_xinput" = yes; then + have_xinput=no + AC_CHECK_X_LIB(Xi, XListInputDevices, + [have_xinput=yes; SAVER_LIBS="$SAVER_LIBS -lXi"], + [true], -lXext -lX11) + fi + + # if that succeeded, then we've really got it. + if test "$have_xinput" = yes; then + AC_DEFINE(HAVE_XINPUT) + fi + +elif test "$with_xinput" != no; then + echo "error: must be yes or no: --with-xinput-ext=$with_xinput" + exit 1 +fi + + +############################################################################### +# +# Check for the XF86VMODE server extension (for gamma fading.) +# +############################################################################### + +have_xf86gamma=no +have_xf86gamma_ramp=no +with_xf86gamma_req=unspecified +AC_ARG_WITH(xf86gamma-ext, +[ --with-xf86gamma-ext Include support for XFree86 gamma fading.], + [with_xf86gamma="$withval"; with_xf86gamma_req="$withval"], + [with_xf86gamma=yes]) + +HANDLE_X_PATH_ARG(with_xf86gamma, --with-xf86gamma-ext, xf86gamma) + +if test "$with_xf86gamma" = yes; then + + # first check for xf86vmode.h, if we haven't already + if test "$have_xf86vmode" = yes; then + have_xf86gamma=yes + else + AC_CHECK_X_HEADER(X11/extensions/xf86vmode.h, [have_xf86gamma=yes],, + [#include ]) + fi + + # if that succeeded, then check for the -lXxf86vm + if test "$have_xf86gamma" = yes; then + have_xf86gamma=no + AC_CHECK_X_LIB(Xxf86vm, XF86VidModeSetGamma, + [have_xf86gamma=yes], + [true], -lXext -lX11) + fi + + # check for the Ramp versions of the functions too. + if test "$have_xf86gamma" = yes; then + have_xf86gamma_ramp=no + AC_CHECK_X_LIB(Xxf86vm, XF86VidModeSetGammaRamp, + [have_xf86gamma_ramp=yes], + [true], -lXext -lX11) + fi + + # if those tests succeeded, then we've really got the functions. + if test "$have_xf86gamma" = yes; then + AC_DEFINE(HAVE_XF86VMODE_GAMMA) + fi + + if test "$have_xf86gamma_ramp" = yes; then + AC_DEFINE(HAVE_XF86VMODE_GAMMA_RAMP) + fi + + # pull in the lib, if we haven't already + if test "$have_xf86gamma" = yes -a "$have_xf86vmode" = no; then + SAVER_LIBS="$SAVER_LIBS -lXxf86vm" + fi + +elif test "$with_xf86gamma" != no; then + echo "error: must be yes or no: --with-xf86gamma-ext=$with_xf86vmode" + exit 1 +fi + + +############################################################################### +# +# Check for the XIDLE server extension. +# +############################################################################### + +have_xidle=no +with_xidle_req=unspecified +AC_ARG_WITH(xidle-ext, +[ --with-xidle-ext Include support for the X11R5 XIDLE extension.], + [with_xidle="$withval"; with_xidle_req="$withval"],[with_xidle=yes]) + +HANDLE_X_PATH_ARG(with_xidle, --with-xidle-ext, XIDLE) + +if test "$with_xidle" = yes; then + AC_CHECK_X_HEADER(X11/extensions/xidle.h, + [have_xidle=yes + AC_DEFINE(HAVE_XIDLE_EXTENSION)],, + [#include ]) +elif test "$with_xidle" != no; then + echo "error: must be yes or no: --with-xidle-ext=$with_xidle" + exit 1 +fi + + +############################################################################### +# +# Check for the MIT-SCREEN-SAVER server extension. +# +############################################################################### + +have_mit=no +with_mit=no +with_mit_req=unspecified +#AC_ARG_WITH(mit-ext, +#[ --with-mit-ext Include support for the MIT-SCREEN-SAVER extension.], +# [with_mit="$withval"; with_mit_req="$withval"],[with_mit=no]) +#HANDLE_X_PATH_ARG(with_mit, --with-mit-ext, MIT-SCREEN-SAVER) + +if test "$with_mit" = yes; then + AC_CHECK_X_HEADER(X11/extensions/scrnsaver.h, [have_mit=yes],, + [#include ]) + + # Now check to see if it's really in the library; XF86Free-3.3 ships + # scrnsaver.h, but doesn't include the code in libXext.a, the idiots! + # + if test "$have_mit" = yes; then + AC_CHECK_X_LIB(Xext, XScreenSaverRegister, [true], [have_mit=no], -lm) + + if test "$have_mit" = no; then + # Fuck! Looks like XF86Free-3.3 actually puts it in XExExt instead + # of in Xext. Thank you master, may I have another. + AC_CHECK_X_LIB(XExExt, XScreenSaverRegister, + [have_mit=yes; SAVER_LIBS="$SAVER_LIBS -lXExExt"], + [true], -lX11 -lXext -lm) + fi + + if test "$have_mit" = no; then + # Double fuck! Looks like some versions of XFree86 (whichever version + # it is that comes with RedHat Linux 2.0 -- I can't find a version + # number) put this garbage in Xss instead of Xext. Thank you master, + # may I have another. + AC_CHECK_X_LIB(Xss, XScreenSaverRegister, + [have_mit=yes; SAVER_LIBS="$SAVER_LIBS -lXss"], + [true], -lX11 -lXext -lm) + fi + + if test "$have_mit" = yes; then +# AC_DEFINE(HAVE_MIT_SAVER_EXTENSION) + echo "Using the MIT-SCREEN-SAVER extension will crash your server. Don't." + exit 1 + fi + + fi + +elif test "$with_mit" != no; then + echo "error: must be yes or no: --with-mit-ext=$with_mit" + exit 1 +fi + + +############################################################################### +# +# Check for the SGI SCREEN_SAVER server extension. +# +############################################################################### + +have_sgi=no +with_sgi_req=unspecified +AC_ARG_WITH(sgi-ext, +[ --with-sgi-ext Include support for the SGI SCREEN_SAVER extension.], + [with_sgi="$withval"; with_sgi_req="$withval"],[with_sgi=$ac_irix]) + +HANDLE_X_PATH_ARG(with_sgi, --with-sgi-ext, SGI SCREEN_SAVER) + +if test "$with_sgi" = yes; then + AC_CHECK_X_HEADER(X11/extensions/XScreenSaver.h, + [have_sgi=yes + AC_DEFINE(HAVE_SGI_SAVER_EXTENSION)],, + [#include ]) + +elif test "$with_sgi" != no; then + echo "error: must be yes or no: --with-sgi-ext=$with_sgi" + exit 1 +fi + + +############################################################################### +# +# Check for the SGI-VIDEO-CONTROL server extension. +# +############################################################################### + +have_sgivc=no +with_sgivc_req=unspecified +AC_ARG_WITH(sgivc-ext, +[ --with-sgivc-ext Include support for the SGI-VIDEO-CONTROL extension.], + [with_sgivc="$withval"; with_sgivc_req="$withval"],[with_sgivc=$ac_irix]) + +HANDLE_X_PATH_ARG(with_sgivc, --with-sgivc-ext, SGI-VIDEO-CONTROL) + +if test "$with_sgivc" = yes; then + + # first check for XSGIvc.h + AC_CHECK_X_HEADER(X11/extensions/XSGIvc.h, [have_sgivc=yes],, + [#include ]) + + # if that succeeded, then check for the -lXsgivc + if test "$have_sgivc" = yes; then + have_sgivc=no + AC_CHECK_X_LIB(Xsgivc, XSGIvcQueryGammaMap, + [have_sgivc=yes; SAVER_LIBS="$SAVER_LIBS -lXsgivc"], [true], + -lXext -lX11) + fi + + # if that succeeded, then we've really got it. + if test "$have_sgivc" = yes; then + AC_DEFINE(HAVE_SGI_VC_EXTENSION) + fi + +elif test "$with_sgivc" != no; then + echo "error: must be yes or no: --with-sgivc-ext=$with_sgivc" + exit 1 +fi + + +############################################################################### +# +# Check for the SGI XReadDisplay server extension. +# +############################################################################### + +have_readdisplay=no +with_readdisplay_req=unspecified +AC_ARG_WITH(readdisplay, +[ --with-readdisplay Include support for the SGI XReadDisplay extension.], + [with_readdisplay="$withval"; with_readdisplay_req="$withval"], + [with_readdisplay=$ac_irix]) + +HANDLE_X_PATH_ARG(with_readdisplay, --with-readdisplay, XReadDisplay) + +if test "$with_readdisplay" = yes; then + AC_CHECK_X_HEADER(X11/extensions/readdisplay.h, + AC_DEFINE(HAVE_READ_DISPLAY_EXTENSION),, + [#include ]) +elif test "$with_readdisplay" != no; then + echo "error: must be yes or no: --with-readdisplay=$with_readdisplay" + exit 1 +fi + + +############################################################################### +# +# Check for the XSHM server extension. +# +############################################################################### + +have_xshm=no +with_xshm_req=unspecified +AC_ARG_WITH(xshm-ext, +[ --with-xshm-ext Include support for the Shared Memory extension.], + [with_xshm="$withval"; with_xshm_req="$withval"],[with_xshm=yes]) + +HANDLE_X_PATH_ARG(with_xshm, --with-xshm-ext, XSHM) + +if test "$with_xshm" = yes; then + + # first check for Xshm.h. + AC_CHECK_X_HEADER(X11/extensions/XShm.h, [have_xshm=yes],, + [#include ]) + + # if that succeeded, then check for sys/ipc.h. + if test "$have_xshm" = yes; then + have_xshm=no + AC_CHECK_X_HEADER(sys/ipc.h, [have_xshm=yes]) + fi + + # if that succeeded, then check for sys/shm.h. + if test "$have_xshm" = yes; then + have_xshm=no + AC_CHECK_X_HEADER(sys/shm.h, [have_xshm=yes]) + fi + + # AIX is pathological, as usual: apparently it's normal for the Xshm headers + # to exist, but the library code to not exist. And even better, the library + # code is in its own library: libXextSam.a. So, if we're on AIX, and that + # lib doesn't exist, give up. (This lib gets added to X_EXTRA_LIBS, and + # that's not quite right, but close enough.) + # + case "$host" in + *-aix*) + if [ `uname -v` -eq 3 ]; then + have_xshm=no + AC_CHECK_X_LIB(XextSam, XShmQueryExtension, + [have_xshm=yes; X_EXTRA_LIBS="$X_EXTRA_LIBS -lXextSam"], + [true], -lX11 -lXext -lm) + fi + ;; + esac + + # if that succeeded, then we've really got it. + if test "$have_xshm" = yes; then + AC_DEFINE(HAVE_XSHM_EXTENSION) + fi + +elif test "$with_xshm" != no; then + echo "error: must be yes or no: --with-xshm-ext=$with_xshm" + exit 1 +fi + + +############################################################################### +# +# Check for the DOUBLE-BUFFER server extension. +# +############################################################################### + +have_xdbe=no +with_xdbe_req=unspecified +AC_ARG_WITH(xdbe-ext, +[ --with-xdbe-ext Include support for the DOUBLE-BUFFER extension.], + [with_xdbe="$withval"; with_xdbe_req="$withval"],[with_xdbe=yes]) + +HANDLE_X_PATH_ARG(with_xdbe, --with-xdbe-ext, DOUBLE-BUFFER) + +if test "$with_xdbe" = yes; then + + AC_CHECK_X_HEADER(X11/extensions/Xdbe.h, [have_xdbe=yes],, + [#include ]) + if test "$have_xdbe" = yes; then + AC_DEFINE(HAVE_DOUBLE_BUFFER_EXTENSION) + fi + +elif test "$with_xdbe" != no; then + echo "error: must be yes or no: --with-xdbe-ext=$with_xshm" + exit 1 +fi + + +############################################################################### +# +# Check for HP XHPDisableReset and XHPEnableReset. +# +############################################################################### + +AC_MSG_CHECKING([for XHPDisableReset in X11/XHPlib.h]) +AC_EGREP_X_HEADER(XHPDisableReset, X11/XHPlib.h, + [AC_DEFINE(HAVE_XHPDISABLERESET) + SAVER_LIBS="-lXhp11 $SAVER_LIBS" + AC_MSG_RESULT(yes)], + [AC_MSG_RESULT(no)]) + + +############################################################################### +# +# Check for /proc/interrupts. +# +############################################################################### + +have_proc_interrupts=no +with_proc_interrupts_req=unspecified +AC_ARG_WITH(proc-interrupts, +[ --with-proc-interrupts Include support for consulting the /proc/interrupts + file to notice keyboard activity.], + [with_proc_interrupts="$withval"; with_proc_interrupts_req="$withval"], + [with_proc_interrupts=yes]) + +if test "$with_proc_interrupts" = yes; then + + # Note that we may be building in an environment (e.g. Debian buildd chroot) + # without a proper /proc filesystem. If /proc/interrupts exists, then we'll + # check that it has the bits we need, but otherwise we'll just go on faith. + # + have_proc_interrupts=yes + + if test -f /proc/interrupts; then + AC_CACHE_CHECK([whether /proc/interrupts contains keyboard data], + ac_cv_have_proc_interrupts, + [ac_cv_have_proc_interrupts=no + if grep 'keyboard\|i8042' /proc/interrupts >/dev/null 2>&1 ; then + ac_cv_have_proc_interrupts=yes + fi + ]) + have_proc_interrupts=$ac_cv_have_proc_interrupts + fi + + if test "$have_proc_interrupts" = yes; then + AC_DEFINE(HAVE_PROC_INTERRUPTS) + fi + +elif test "$with_proc_interrupts" != no; then + echo "error: must be yes or no: --with-proc-interrupts=$with_proc_interrupts" + exit 1 +fi + + +############################################################################### +# +# Check for /proc/*/oom_score_adj. +# +############################################################################### + +have_proc_oom=no +with_proc_oom_req=unspecified +AC_ARG_WITH(proc-oom, +[ --with-proc-oom Include support for disabling the OOM-killer.], + [with_proc_oom="$withval"; with_proc_oom_req="$withval"], + [with_proc_oom=yes]) + +if test "$with_proc_oom_req" = yes; then + + # Note that we may be building in an environment (e.g. Debian buildd chroot) + # without a proper /proc filesystem. + # + have_proc_oom=yes + AC_DEFINE(HAVE_PROC_OOM) + +elif test "$with_proc_oom_req" = unspecified; then + + have_proc_oom=no + AC_CACHE_CHECK([whether /proc/$$/oom_score_adj exists], + ac_cv_have_proc_oom, + [ac_cv_have_proc_oom=no + if test -f /proc/$$/oom_score_adj; then + ac_cv_have_proc_oom=yes + fi + ]) + have_proc_oom=$ac_cv_have_proc_oom + + if test "$have_proc_oom" = yes; then + AC_DEFINE(HAVE_PROC_OOM) + fi + +elif test "$with_proc_oom" != no; then + echo "error: must be yes or no: --with-proc-oom=$with_proc_oom" + exit 1 +fi + + +############################################################################### +# +# Check for -lsystemd +# +############################################################################### + +have_systemd=no +with_systemd_req=unspecified +systemd_halfassed=no +systemd_too_old=no +AC_ARG_WITH(systemd, +[ --with-systemd Support systemd requests to lock on suspend, and to + allow video players to inhibit the screen saver.], + [with_systemd="$withval"; with_systemd_req="$withval"], + [with_systemd=yes]) + +HANDLE_X_PATH_ARG(with_systemd, --with-systemd, systemd) + +if test "$with_systemd" != yes -a "$with_systemd" != no ; then + echo "error: must be yes or no: --with-systemd=$with_systemd" + exit 1 +fi + +if test "$with_systemd" = yes; then + + pkgs='' + ok="yes" + pkg_check_version libsystemd 221 + have_systemd="$ok" + + if test "$have_systemd" = no; then + if $pkg_config --exists libsystemd ; then + systemd_too_old=yes + fi + fi + + if test "$have_systemd" = yes; then + AC_CACHE_CHECK([for libsystemd includes], ac_cv_systemd_config_cflags, + [ac_cv_systemd_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for libsystemd libs], ac_cv_systemd_config_libs, + [ac_cv_systemd_config_libs=`$pkg_config --libs $pkgs`]) + fi + + ac_systemd_config_cflags=$ac_cv_systemd_config_cflags + ac_systemd_config_libs=$ac_cv_systemd_config_libs + + if test "$have_systemd" = yes; then + # + # we appear to have libsystemd; check for headers/libs to be sure. + # + ac_save_systemd_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_systemd_config_cflags" + + have_systemd=no + AC_CHECK_X_HEADER(systemd/sd-bus.h, [have_systemd=yes]) + + CPPFLAGS="$ac_save_systemd_CPPFLAGS" + fi + + if test "$have_systemd" = yes; then + # we have the headers, now check for the libraries + have_systemd=no + systemd_halfassed=yes + + AC_MSG_RESULT(checking for libsystemd usability...) + AC_CHECK_X_LIB(c, sd_bus_open_system, [have_systemd=yes],, + $ac_systemd_config_libs -lX11 -lXext -lm) + fi + + if test "$have_systemd" = no; then + AC_MSG_RESULT(checking for libsystemd usability... no) + fi +fi + +if test "$have_systemd" = yes; then + INCLUDES="$INCLUDES $ac_systemd_config_cflags" + EXES_SYSTEMD='$(EXES_SYSTEMD)' + AC_DEFINE(HAVE_LIBSYSTEMD) +else + EXES_SYSTEMD='' +fi + + +############################################################################### +# +# The --enable-locking option +# +# Note: "configure --help" list all "--enable" options before any +# "--with" options, so we document the --enable options inline with +# the --with options where it looks better, instead of in AC_ARG_ENABLE +# where it would make sense, sigh... +# +############################################################################### + +AC_ARG_ENABLE(locking, +[], # This is documented elsewhere because of --enable/--with option sorting. + [enable_locking="$enableval"], + [if test "$ac_macosx" = yes; then + # We can't lock on MacOS X, so default to not compiling in support for it. + # But allow --enable-locking to override that, so I can debug Linux locking + # under MacOS X11. + enable_locking=no + else + enable_locking=yes + fi]) +if test "$enable_locking" = yes; then + true +elif test "$enable_locking" = no; then + AC_DEFINE(NO_LOCKING) +else + echo "error: must be yes or no: --enable-locking=$enable_locking" + exit 1 +fi + + +############################################################################## +# +# Whether to allow root password to unblank. +# +############################################################################### + +AC_ARG_ENABLE(root-passwd, +[], # This is documented elsewhere because of --enable/--with option sorting. + [enable_root_passwd="$enableval"],[enable_root_passwd=yes]) +if test "$enable_root_passwd" = yes; then + AC_DEFINE(ALLOW_ROOT_PASSWD) + true +elif test "$enable_root_passwd" != no; then + echo "error: must be yes or no: --enable-root-passwd=$enable_root_passwd" + exit 1 +fi + + +############################################################################### +# +# Check for PAM. +# +############################################################################### + +case "$host" in + *-solaris*) + # Solaris systems tend to come with PAM misconfigured. + # Don't build it by default, even if the headers exist. + with_pam_default=no + ;; + *) + # Default to building PAM support on all other systems, if it exists. + with_pam_default=yes + ;; +esac + +#### H1 + +have_pam=no +with_pam_req=unspecified + +AC_ARG_WITH(pam,[ +Screen Locking Options: + + --disable-locking Do not allow locking of the display at all. + --with-pam Include support for PAM (Pluggable Auth Modules.)], + [with_pam="$withval"; with_pam_req="$withval"],[with_pam=$with_pam_default]) + +AC_ARG_WITH([pam_service_name], +[ --with-pam-service-name Set the name of the xscreensaver PAM service. + --enable-pam-account Whether PAM should check the result of account + modules when authenticating. Only do this if you + have "account" modules configured on your system. + --enable-root-passwd Allow the root passwd to unlock, if not using PAM.], + [pam_service_name="$withval"],[pam_service_name="xscreensaver"]) + +AC_ARG_ENABLE(pam-check-account-type, +[], # This is documented elsewhere because of --enable/--with option sorting. + [enable_pam_check_account_type="$enableval"],[enable_pam_check_account_type=no]) +if test "$enable_pam_check_account_type" = yes ; then + AC_DEFINE(PAM_CHECK_ACCOUNT_TYPE) + true +elif test "$enable_pam_check_account_type" != no ; then + echo "error: must be yes or no: --enable-pam-check-account-type=$enable_pam_check_account_type" + exit 1 +fi + +HANDLE_X_PATH_ARG(with_pam, --with-pam, PAM) + +if test "$enable_locking" = yes -a "$with_pam" = yes; then + AC_CACHE_CHECK([for PAM], ac_cv_pam, + [AC_TRY_X_COMPILE([#include ],, + [ac_cv_pam=yes], + [ac_cv_pam=no])]) + if test "$ac_cv_pam" = yes ; then + have_pam=yes + AC_DEFINE(HAVE_PAM) + AC_DEFINE_UNQUOTED(PAM_SERVICE_NAME,"$pam_service_name") + + PASSWD_LIBS="${PASSWD_LIBS} -lpam" + + # libpam typically requires dlopen and dlsym. On FreeBSD, + # those are in libc. On Linux and Solaris, they're in libdl. + AC_CHECK_LIB(dl, dlopen, [PASSWD_LIBS="${PASSWD_LIBS} -ldl"]) + + # On Linux, sigtimedwait() is in libc; on Solaris, it's in librt. + have_timedwait=no + AC_CHECK_LIB(c, sigtimedwait, + [have_timedwait=yes + AC_DEFINE(HAVE_SIGTIMEDWAIT)]) + if test "$have_timedwait" = no ; then + AC_CHECK_LIB(rt, sigtimedwait, [have_timedwait=yes + AC_DEFINE(HAVE_SIGTIMEDWAIT) + PASSWD_LIBS="${PASSWD_LIBS} -lrt"]) + fi + + AC_MSG_CHECKING(how to call pam_strerror) + AC_CACHE_VAL(ac_cv_pam_strerror_args, + [AC_TRY_X_COMPILE([#include + #include + #include ], + [pam_handle_t *pamh = 0; + char *s = pam_strerror(pamh, PAM_SUCCESS);], + [ac_pam_strerror_args=2], + [AC_TRY_X_COMPILE([#include + #include + #include ], + [char *s = + pam_strerror(PAM_SUCCESS);], + [ac_pam_strerror_args=1], + [ac_pam_strerror_args=0])]) + ac_cv_pam_strerror_args=$ac_pam_strerror_args]) + ac_pam_strerror_args=$ac_cv_pam_strerror_args + if test "$ac_pam_strerror_args" = 1 ; then + AC_MSG_RESULT(one argument) + elif test "$ac_pam_strerror_args" = 2 ; then + AC_DEFINE(PAM_STRERROR_TWO_ARGS) + AC_MSG_RESULT(two arguments) + else + AC_MSG_RESULT(unknown) + fi + +# Check pam_fail_delay + AC_MSG_CHECKING(pam_fail_delay in -lpam) + AC_CACHE_VAL(ac_cv_pam_fail_delay, + [ac_save_LDFLAGS="$LDFLAGS" + LDFLAGS="-lpam" + AC_TRY_LINK([#include ], + [pam_handle_t *pamh = 0; + unsigned int usec = 1; + int status = pam_fail_delay (pamh, usec);], + [ac_pam_fail_delay=yes], + [ac_pam_fail_delay=no]) + ac_cv_pam_fail_delay=$ac_pam_fail_delay, + LDFLAGS=$ac_save_LDFLAGS]) + + if test "$ac_pam_fail_delay" = yes ; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PAM_FAIL_DELAY) + else + AC_MSG_RESULT(no) + fi + + fi +fi + + +############################################################################### +# +# Check for Kerberos. +# +############################################################################### + +have_kerberos=no +have_kerberos5=no +with_kerberos_req=unspecified + +AC_ARG_WITH(kerberos, +[ --with-kerberos Include support for Kerberos authentication.], + [with_kerberos="$withval"; with_kerberos_req="$withval"],[with_kerberos=yes]) + +HANDLE_X_PATH_ARG(with_kerberos, --with-kerberos, Kerberos) + +if test "$enable_locking" = yes -a "$with_kerberos" = yes; then + AC_CACHE_CHECK([for Kerberos 4], ac_cv_kerberos, + [AC_TRY_X_COMPILE([#include ],, + [ac_cv_kerberos=yes], + [ac_cv_kerberos=no])]) + AC_CACHE_CHECK([for Kerberos 5], ac_cv_kerberos5, + [AC_TRY_X_COMPILE([#include ],, + [ac_cv_kerberos5=yes], + [ac_cv_kerberos5=no])]) + + if test "$ac_cv_kerberos" = yes ; then + have_kerberos=yes + AC_DEFINE(HAVE_KERBEROS) + fi + + if test "$ac_cv_kerberos5" = yes ; then + + # Andrew Snare wrote: + # + # You were assuming that if kerberosV (krb5) was found, then kerberosIV + # (krb4) was also available. This turns out not to be the case with + # mit-krb-1.2.7; apparently backwards-compatibility with KerberosIV + # is optional. + # + # So, disable kerberosV support if libkrb4 can't be found. + # This is not the best solution, but it makes the compile not fail. + # + AC_CHECK_X_LIB(krb4, krb_get_tf_realm, + [have_kerberos=yes], + [have_kerberos=no]) + if test "$have_kerberos" = yes ; then + have_kerberos5=yes + AC_DEFINE(HAVE_KERBEROS) + AC_DEFINE(HAVE_KERBEROS5) + else + have_kerberos5=no + AC_MSG_WARN([Cannot find compat lib (libkrb4) needed to use Kerberos 5]) + fi + + fi + + if test "$have_kerberos5" = yes ; then + # from Matt Knopp + # (who got it from amu@mit.edu) + + PASSWD_LIBS="$PASSWD_LIBS -lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err" + + # jwz: MacOS X uses -lkrb5, but not -lcrypt + AC_CHECK_X_LIB(crypt, crypt, [PASSWD_LIBS="$PASSWD_LIBS -lcrypt"]) + + elif test "$have_kerberos" = yes ; then + # from Tim Showalter for FreeBSD 4.2 + PASSWD_LIBS="$PASSWD_LIBS -lkrb -ldes -lcom_err" + fi + + if test "$have_kerberos" = yes ; then + AC_CHECK_FUNC(res_search,, + AC_CHECK_LIB(resolv,res_search,PASSWD_LIBS="${PASSWD_LIBS} -lresolv", + AC_MSG_WARN([Can't find DNS resolver libraries needed for Kerberos]) + )) + fi +fi + + +############################################################################### +# +# Check for the nine billion variants of shadow passwords... +# +############################################################################### + +need_setuid=no + +have_shadow=no +with_shadow_req=unspecified + +AC_ARG_WITH(shadow, +[ --with-shadow Include support for shadow password authentication.], + [with_shadow="$withval"; with_shadow_req="$withval"],[with_shadow=yes]) + +HANDLE_X_PATH_ARG(with_shadow, --with-shadow, shadow password) + +if test "$enable_locking" = no ; then + with_shadow_req=no + with_shadow=no +fi + + +############################################################################### +# +# Check for Sun "adjunct" passwords. +# +############################################################################### + +if test "$with_shadow" = yes ; then + AC_CACHE_CHECK([for Sun-style shadow passwords], ac_cv_sun_adjunct, + [AC_TRY_X_COMPILE([#include + #include + #include + #include + #include + #include ], + [struct passwd_adjunct *p = getpwanam("nobody"); + const char *pw = p->pwa_passwd;], + [ac_cv_sun_adjunct=yes], + [ac_cv_sun_adjunct=no])]) + if test "$ac_cv_sun_adjunct" = yes; then + have_shadow_adjunct=yes + have_shadow=yes + need_setuid=yes + fi +fi + + +############################################################################### +# +# Check for DEC and SCO so-called "enhanced" security. +# +############################################################################### + +if test "$with_shadow" = yes ; then + AC_CACHE_CHECK([for DEC-style shadow passwords], ac_cv_enhanced_passwd, + [AC_TRY_X_COMPILE([#include + #include + #include + #include + #include + #include ], + [struct pr_passwd *p; + const char *pw; + set_auth_parameters(0, 0); + check_auth_parameters(); + p = getprpwnam("nobody"); + pw = p->ufld.fd_encrypt;], + [ac_cv_enhanced_passwd=yes], + [ac_cv_enhanced_passwd=no])]) + if test $ac_cv_enhanced_passwd = yes; then + have_shadow_enhanced=yes + have_shadow=yes + need_setuid=yes + + # On SCO, getprpwnam() is in -lprot (which uses nap() from -lx) + # (I'm told it needs -lcurses too, but I don't understand why.) + # But on DEC, it's in -lsecurity. + # + AC_CHECK_LIB(prot, getprpwnam, + [PASSWD_LIBS="$PASSWD_LIBS -lprot -lcurses -lx"], + [AC_CHECK_LIB(security, getprpwnam, + [PASSWD_LIBS="$PASSWD_LIBS -lsecurity"])], + [-lx]) + fi +fi + +############################################################################### +# +# Check for HP's entry in the "Not Invented Here" Sweepstakes. +# +############################################################################### + +if test "$with_shadow" = yes ; then + AC_CACHE_CHECK([for HP-style shadow passwords], ac_cv_hpux_passwd, + [AC_TRY_X_COMPILE([#include + #include + #include + #include + #include + #include ], + [struct s_passwd *p = getspwnam("nobody"); + const char *pw = p->pw_passwd;], + [ac_cv_hpux_passwd=yes], + [ac_cv_hpux_passwd=no])]) + if test "$ac_cv_hpux_passwd" = yes; then + have_shadow_hpux=yes + have_shadow=yes + need_setuid=yes + + # on HPUX, bigcrypt is in -lsec + AC_CHECK_LIB(sec, bigcrypt, [PASSWD_LIBS="$PASSWD_LIBS -lsec"]) + fi +fi + + +############################################################################### +# +# Check for FreeBSD-style shadow passwords. +# +# On FreeBSD, getpwnam() and friends work just like on non-shadow- +# password systems -- except you only get stuff in the pw_passwd field +# if the running program is setuid. So, guess that we've got this +# lossage to contend with if /etc/master.passwd exists, and default to +# a setuid installation. +# +############################################################################### + +if test "$with_shadow" = yes ; then + AC_CACHE_CHECK([for FreeBSD-style shadow passwords], ac_cv_master_passwd, + [if test -f /etc/master.passwd ; then + ac_cv_master_passwd=yes + else + ac_cv_master_passwd=no + fi]) + if test "$ac_cv_master_passwd" = yes; then + need_setuid=yes + fi +fi + + +############################################################################### +# +# Check for traditional (ha!) shadow passwords. +# +############################################################################### + +if test "$with_shadow" = yes ; then + AC_CACHE_CHECK([for generic shadow passwords], ac_cv_shadow, + [AC_TRY_X_COMPILE([#include + #include + #include + #include + #include ], + [struct spwd *p = getspnam("nobody"); + const char *pw = p->sp_pwdp;], + [ac_cv_shadow=yes], + [ac_cv_shadow=no])]) + if test "$ac_cv_shadow" = yes; then + have_shadow=yes + need_setuid=yes + + # On some systems (UnixWare 2.1), getspnam() is in -lgen instead of -lc. + have_getspnam=no + AC_CHECK_LIB(c, getspnam, [have_getspnam=yes]) + if test "$have_getspnam" = no ; then + AC_CHECK_LIB(gen, getspnam, + [have_getspnam=yes; PASSWD_LIBS="$PASSWD_LIBS -lgen"]) + fi + fi +fi + + +############################################################################### +# +# Check for other libraries needed for non-shadow passwords. +# +############################################################################### + +if test "$enable_locking" = yes ; then + + # On some systems (UnixWare 2.1), crypt() is in -lcrypt instead of -lc. + have_crypt=no + AC_CHECK_LIB(c, crypt, [have_crypt=yes]) + if test "$have_crypt" = no ; then + AC_CHECK_LIB(crypt, crypt, + [have_crypt=yes; PASSWD_LIBS="$PASSWD_LIBS -lcrypt"]) + fi +fi + + +# Most of the above shadow mechanisms will have set need_setuid to yes, +# if they were found. But, on some systems, we need setuid even when +# using plain old vanilla passwords. +# +if test "$enable_locking" = yes ; then + case "$host" in + *-hpux* | *-aix* | *-netbsd* | *-freebsd* | *-openbsd* ) + need_setuid=yes + ;; + esac +fi + + +if test "$have_shadow_adjunct" = yes ; then + AC_DEFINE(HAVE_ADJUNCT_PASSWD) +elif test "$have_shadow_enhanced" = yes ; then + AC_DEFINE(HAVE_ENHANCED_PASSWD) +elif test "$have_shadow_hpux" = yes ; then + AC_DEFINE(HAVE_HPUX_PASSWD) +elif test "$have_shadow" = yes ; then + AC_DEFINE(HAVE_SHADOW_PASSWD) +fi + + +############################################################################### +# +# Check for external password helper +# On SuSE, instead of having xscreensaver be a setuid program, they +# fork an external program that takes the password on stdin, and +# returns true if that password is a valid one. Then only that +# smaller program needs to be setuid. +# +# (Note that this external program is not a GUI: the GUI is still +# all in xscreensaver itself; the external program just does auth.) +# +############################################################################### + +have_passwd_helper=no +with_passwd_helper_req=unspecified + +AC_ARG_WITH(passwd-helper, +[ --with-passwd-helper Include support for an external password + verification helper program.], + [with_passwd_helper="$withval"; with_passwd_helper_req="$withval"],[with_passwd_helper=no]) +# no HANDLE_X_PATH_ARG for this one + +if test "$enable_locking" = no ; then + with_passwd_helper_req=no + with_passwd_helper=no +fi + +case "$with_passwd_helper" in + ""|no) : ;; + /*) + AC_DEFINE_UNQUOTED(PASSWD_HELPER_PROGRAM, "$with_passwd_helper") + have_passwd_helper=yes;; + *) + echo "error: --with-passwd-helper needs full pathname of helper (not '$with_passwd_helper')." >&2 + exit 1 +esac + + + +############################################################################### +# +# Check for -lgtk (and Gnome stuff) +# +############################################################################### + +#### H1 + +have_gtk=no +with_gtk_req=unspecified +AC_ARG_WITH(gtk, +[ +User Interface Options: + + --with-gtk Use the Gtk toolkit for the user interface.], + [with_gtk="$withval"; with_gtk_req="$withval"],[with_gtk=yes]) + +# if --with-gtk=/directory/ was specified, remember that directory so that +# we can also look for the `gtk-config' program in that directory. +case "$with_gtk" in + /*) + gtk_dir="$with_gtk" + ;; + *) + gtk_dir="" + ;; +esac + +HANDLE_X_PATH_ARG(with_gtk, --with-gtk, Gtk) + +if test "$with_gtk" != yes -a "$with_gtk" != no ; then + echo "error: must be yes or no: --with-gtk=$with_gtk" + exit 1 +fi + + +parse_gtk_version_string() { + # M4 sucks!! + changequote(X,Y) + maj=`echo $ac_gtk_version_string | sed -n 's/\..*//p'` + min=`echo $ac_gtk_version_string | sed -n 's/[^.]*\.\([^.]*\).*/\1/p'` + changequote([,]) + ac_gtk_version=`echo "$maj * 1000 + $min" | bc` + if test -z "$ac_gtk_version"; then + ac_gtk_version=unknown + ac_gtk_version_string=unknown + fi +} + +jurassic_gtk=no +gtk_halfassed=no + +if test "$with_gtk" = yes; then + have_gtk=no + + ok="yes" + pkg_check_version gtk+-2.0 2.22.0 ; ac_gtk_version_string="$vers" + pkg_check_version gmodule-2.0 2.0.0 + pkg_check_version libxml-2.0 2.4.6 + pkg_check_version gdk-pixbuf-2.0 2.0.0 + pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 + have_gtk="$ok" + + if test "$have_gtk" = no; then + if test -n "$ac_gtk_version_string" ; then + gtk_halfassed="$ac_gtk_version_string" + gtk_halfassed_lib="$req" + fi + fi + + if test "$have_gtk" = yes; then + parse_gtk_version_string + jurassic_gtk=no + fi + + if test "$have_gtk" = yes; then + AC_CACHE_CHECK([for Gtk includes], ac_cv_gtk_config_cflags, + [ac_cv_gtk_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for Gtk libs], ac_cv_gtk_config_libs, + [ac_cv_gtk_config_libs=`$pkg_config --libs $pkgs`]) + fi + + ac_gtk_config_cflags=$ac_cv_gtk_config_cflags + ac_gtk_config_libs=$ac_cv_gtk_config_libs + + GTK_EXTRA_OBJS="" + GTK_DATADIR="" + if test "$have_gtk" = yes; then + GTK_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` + GTK_DATADIR="$GTK_DATADIR/share" + fi + + if test "$have_gtk" = yes; then + INCLUDES="$INCLUDES $ac_gtk_config_cflags" + GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs" + AC_DEFINE(HAVE_GTK) + AC_DEFINE(HAVE_GTK2) + AC_DEFINE(HAVE_XML) + fi +fi + + +# Check for the various Gnome help and URL loading programs. +# +WITH_BROWSER=gnome-open +if test "$have_gtk" = yes; then + AC_CHECK_PROGS(gnome_open_program, gnome-open) + AC_CHECK_PROGS(gnome_url_show_program, gnome-url-show) +fi + + +############################################################################### +# +# Check for -lXm. +# +############################################################################### + +have_motif=no +with_motif_req=unspecified +AC_ARG_WITH(motif, +[ --with-motif Use the Motif toolkit for the user interface.], + [with_motif="$withval"; with_motif_req="$withval"],[with_motif=no]) + +HANDLE_X_PATH_ARG(with_motif, --with-motif, Motif) + +if test "$with_motif" != yes -a "$with_motif" != no ; then + echo "error: must be yes or no: --with-motif=$with_motif" + exit 1 +fi + +if test "$with_motif" = yes; then + have_motif=no + AC_CHECK_X_HEADER(Xm/Xm.h, + [have_motif=yes + AC_DEFINE(HAVE_MOTIF) + MOTIF_LIBS="$MOTIF_LIBS -lXm"],, + [#include + #include + #include ]) +fi + + +if test "$have_motif" = yes; then + AC_CHECK_X_HEADER(Xm/ComboBox.h, [AC_DEFINE(HAVE_XMCOMBOBOX)],, + [#include + #include + #include ]) +fi + + +############################################################################### +# +# Checking whether Motif is really Lesstif. +# +############################################################################### + +have_lesstif=no +if test "$have_motif" = yes ; then + AC_CACHE_CHECK([whether Motif is really LessTif], + ac_cv_have_lesstif, + [AC_TRY_X_COMPILE([#include ], + [long vers = LesstifVersion;], + [ac_cv_have_lesstif=yes], + [ac_cv_have_lesstif=no])]) + have_lesstif=$ac_cv_have_lesstif +fi + + +lesstif_version=unknown +lesstif_version_string=unknown + +if test "$have_lesstif" = yes ; then + ltv=unknown + echo unknown > conftest-lt + AC_CACHE_CHECK([LessTif version number], + ac_cv_lesstif_version_string, + [AC_TRY_X_RUN([#include + #include + int main() { + FILE *f = fopen("conftest-lt", "w"); + if (!f) exit(1); + fprintf(f, "%d %d.%d\n", LesstifVersion, + LESSTIF_VERSION, LESSTIF_REVISION); + fclose(f); + exit(0); + }], + [ltv=`cat conftest-lt` + ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'` + ac_cv_lesstif_version_string=`echo $ltv | sed 's/.* //'`], + [ac_cv_lesstif_version=unknown + ac_cv_lesstif_version_string=unknown], + [ac_cv_lesstif_version=unknown + ac_cv_lesstif_version_string=unknown])]) + rm -f conftest-lt + lesstif_version=$ac_cv_lesstif_version + lesstif_version_string=$ac_cv_lesstif_version_string + +fi + + +if test "$have_motif" = yes ; then + mtv=unknown + echo unknown > conftest-mt + AC_CACHE_CHECK([Motif version number], + ac_cv_motif_version_string, + [AC_TRY_X_RUN([#include + #include + int main() { + FILE *f = fopen("conftest-mt", "w"); + if (!f) exit(1); + fprintf(f, "%d %d.%d\n", XmVersion, + XmVERSION, XmREVISION); + fclose(f); + exit(0); + }], + [mtv=`cat conftest-mt` + ac_cv_motif_version=`echo $mtv | sed 's/ .*//'` + ac_cv_motif_version_string=`echo $mtv | sed 's/.* //'`], + [ac_cv_motif_version=unknown + ac_cv_motif_version_string=unknown], + [ac_cv_motif_version=unknown + ac_cv_motif_version_string=unknown])]) + rm -f conftest-mt + motif_version=$ac_cv_motif_version + motif_version_string=$ac_cv_motif_version_string + +fi + + +############################################################################### +# +# Checking whether Motif requires -lXp. +# +# Some versions of Motif (2.1.0, at least) require -lXp, the "X Printing +# Extension". Why this extension isn't in -lXext with all the others, +# I have no idea. +# +############################################################################### + +have_xp_ext=no +if test "$have_motif" = yes ; then + have_xp_ext=no + AC_CHECK_X_LIB(Xp, XpQueryExtension, + [have_xp_ext=yes; MOTIF_LIBS="$MOTIF_LIBS -lXp"], + [true], -lX11 -lXext -lm) +fi + + +############################################################################### +# +# Checking whether Motif requires -lXintl (for _Xsetlocale.) +# +############################################################################### + +have_xintl=no +if test "$have_motif" = yes ; then + AC_CHECK_X_LIB(Xintl, _Xsetlocale, [have_xintl=yes], [have_xintl=no], + -lX11 -lXext -lm) + if test "$have_xintl" = yes; then + MOTIF_LIBS="$MOTIF_LIBS -lXintl" + fi +fi + + +############################################################################### +# +# Check for a login manager for a "New Login" button on the lock dialog. +# Usually this will be "/usr/bin/gdmflexiserver". +# +############################################################################### + +with_login_manager_req=unspecified +default_login_manager_1='gdmflexiserver -ls' +default_login_manager_2='kdmctl reserve' +default_login_manager_3='lxdm -c USER_SWITCH' +default_login_manager_4='dm-tool switch-to-greeter' + +AC_ARG_WITH(login-manager, +[ --with-login-manager Put a "New Login" button on the unlock dialog that + runs a login manager like gdmflexiserver or kdmctl.], + [with_login_manager="$withval"; with_login_manager_req="$withval"], + [with_login_manager=yes]) +# no HANDLE_X_PATH_ARG for this one + +if test "$enable_locking" = no ; then + with_login_manager_req=no + with_login_manager=no +fi + +case "$with_login_manager_req" in + no) + with_login_manager="" + ;; + + yes|unspecified) + # Try various defaults, use the first one that exists. + + with_login_manager="" + + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_1 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_1" + fi + fi + + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_2 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_2" + fi + fi + + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_3 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_3" + fi + fi + + if test -z "$with_login_manager" ; then + set dummy $default_login_manager_4 ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) + if test ! -z "$login_manager_tmp" ; then + with_login_manager="$default_login_manager_4" + fi + fi + + ;; + + /*) + # absolute path specified on cmd line + set dummy $with_login_manager_req ; login_manager_tmp=$2 + AC_MSG_CHECKING([for $login_manager_tmp]) + if test -x "$login_manager_tmp" ; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + with_login_manager="" + fi + ;; + + *) + # relative path specified on cmd line + set dummy $with_login_manager_req ; login_manager_tmp=$2 + unset ac_cv_path_login_manager_tmp # don't cache + AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) + if test -z "$login_manager_tmp" ; then + with_login_manager="" + else + with_login_manager="$login_manager_tmp" + fi + ;; +esac +ac_cv_login_manager_program="$with_login_manager" + +NEW_LOGIN_COMMAND_P='' +NEW_LOGIN_COMMAND="$ac_cv_login_manager_program" + +AC_MSG_CHECKING(for login manager) +if test -z "$NEW_LOGIN_COMMAND" ; then + NEW_LOGIN_COMMAND="$default_login_manager_1" + NEW_LOGIN_COMMAND_P='! ' + AC_MSG_RESULT($NEW_LOGIN_COMMAND (disabled)) +else + AC_MSG_RESULT($NEW_LOGIN_COMMAND) +fi + + + +############################################################################### +# +# Check for a directory full of images to use as the default value +# of the "imageDirectory" preference. +# +############################################################################### + +have_imagedir=no +with_imagedir_req=unspecified + +AC_ARG_WITH(image-directory, +[ --with-image-directory Some demos will display random images from here.], + [with_imagedir="$withval"; with_imagedir_req="$withval"], + [with_imagedir=yes]) +# no HANDLE_X_PATH_ARG for this one + +case "$with_imagedir" in + /*) + # absolute path + AC_MSG_CHECKING([for image directory $with_imagedir]) + if test -d "$with_imagedir" ; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + with_imagedir="" + fi + ;; + yes) + with_imagedir="" + + #### Could use some more defaults here... + for dd in \ + "/usr/share/rpd-wallpaper" \ + "/usr/share/backgrounds/images/" \ + "/usr/share/wallpapers/" \ + "/Library/Desktop Pictures/" \ + ; do + if test -z "$with_imagedir"; then + AC_MSG_CHECKING([for image directory $dd]) + if test -d "$dd" ; then + AC_MSG_RESULT(yes) + with_imagedir="$dd" + else + AC_MSG_RESULT(no) + fi + fi + done + + ;; + no) + with_imagedir="" + ;; + + *) + echo "error: must be an absolute path: --with-image-directory=$with_imagedir_req" + exit 1 + ;; +esac +ac_cv_imagedir="$with_imagedir" + +DEFAULT_IMAGES_P='True' +DEFAULT_IMAGE_DIRECTORY="$ac_cv_imagedir" + +if test -z "$DEFAULT_IMAGE_DIRECTORY" ; then + DEFAULT_IMAGES_P='False' +fi + + +############################################################################### +# +# Pick a text file to use as the default of the "textFile" preference. +# Any old file will do, but preferably one that will make interesting +# shapes when displayed by "starwars" and "fontglide". +# +############################################################################### + +have_textfile=no +with_textfile_req=unspecified + +AC_ARG_WITH(text-file, +[ --with-text-file=FILE Some demos will use this as a source of text.], + [with_textfile="$withval"; with_textfile_req="$withval"], + [with_textfile=yes]) +# no HANDLE_X_PATH_ARG for this one + +case "$with_textfile" in + /*) + # absolute path + AC_MSG_CHECKING([for text file $with_textfile]) + if test -f "$with_textfile" ; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + with_textfile="" + fi + ;; + yes) + with_textfile="" + + #### Could use some more defaults here... + for f in \ + "/usr/X11R6/lib/X11/doc/README" \ + "/usr/share/doc/xserver-common/copyright" \ + "/usr/share/doc/xserver-xorg-core/copyright" \ + "/usr/X11R6/README" \ + "/usr/share/doc/libX11*/COPYING" \ + "/usr/X11/share/X11/doc/README*" \ + "/usr/share/doc/debian/debian-manifesto" \ + ; do + if test -z "$with_textfile"; then + AC_MSG_CHECKING([for text file $f]) + f=`/bin/ls $f 2>&- | head -1` + if test -f "$f" ; then + AC_MSG_RESULT(yes) + with_textfile="$f" + else + AC_MSG_RESULT(no) + fi + fi + done + + ;; + no) + with_textfile="" + ;; + + *) + echo "error: must be an absolute path: --with-text-file=$with_textfile_req" + exit 1 + ;; +esac +ac_cv_textfile="$with_textfile" + +DEFAULT_TEXT_FILE="$ac_cv_textfile" + + +############################################################################### +# +# Check the browser to see help URL +# +############################################################################### + +have_browser=no +with_browser_req=unspecified + +AC_ARG_WITH(browser, +[ --with-browser=BROWSER The web browser used to open the "Help" URL.], + [with_browser="$withval"; with_browser_req="$withval"], + [with_browser=no ]) +# no HANDLE_X_PATH_ARG for this one + +case "$with_browser" in + no ) + ;; + * ) + WITH_BROWSER=$with_browser + gnome_open_program=$with_browser + AC_MSG_CHECKING([for browser $with_browser]) + with_browser_fullpath=`which $with_browser 2>/dev/null` + case $with_browser_fullpath in + /* ) + AC_MSG_RESULT(yes) + have_browser=yes + ;; + * ) + AC_MSG_RESULT(no) +# Only warning: we don't want to install all packages for the +# dependency of the browser in building stage... + echo "WARNING: browser not found: --with-browser=$with_browser" + ;; + esac + ;; +esac +ac_cv_browser="$with_browser" + + +############################################################################### +# +# Check for -lGL or -lMesaGL. +# +############################################################################### + +#### H1 + +have_gl=no +ac_have_mesa_gl=no +with_gl_req=unspecified +gl_halfassed=no +have_glext=no +AC_ARG_WITH(gl, +[ +Graphics Options: + + --with-gl Build those demos which depend on OpenGL.], + [with_gl="$withval"; with_gl_req="$withval"],[with_gl=yes]) + +HANDLE_X_PATH_ARG(with_gl, --with-gl, GL) + +ac_mesagl_version=unknown +ac_mesagl_version_string=unknown + +if test "$with_gl" = yes; then + AC_CHECK_X_HEADER(GL/gl.h, have_gl=yes, have_gl=no) + if test "$have_gl" = yes ; then + AC_CHECK_X_HEADER(GL/glx.h, have_gl=yes, have_gl=no, + [#include ]) + fi + + # If we have the headers, try and figure out which vendor it's from. + # + if test "$have_gl" = yes ; then + + # We need to know whether it's MesaGL so that we know which libraries + # to link against. + # + AC_CACHE_CHECK([whether GL is really MesaGL], ac_cv_have_mesa_gl, + [ac_cv_have_mesa_gl=no + if test "$ac_macosx" = no; then + # WTF! MacOS 10.5.0 ships the Mesa GL headers! + # It's not really Mesa, is it? + AC_EGREP_X_HEADER(Mesa|MESA, GL/glx.h, [ac_cv_have_mesa_gl=yes]) + fi]) + ac_have_mesa_gl=$ac_cv_have_mesa_gl + + gl_lib_1="" + GL_LIBS="" + + if test "$ac_macosx" = yes; then + + # Without these, every link against libGL gets a bunch of useless + # warnings. + # + osx_crud="-bind_at_load -multiply_defined suppress" + AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) + GL_LIBS="$GL_LIBS $osx_crud" + unset osx_crud + + # New lossage in 10.5.0: without this, we get: + # ld: cycle in dylib re-exports with /usr/X11/lib/libGL.dylib + # + osx_crud="/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + osx_crud="-Wl,-dylib_file,${osx_crud}:${osx_crud}" + + AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) + GL_LIBS="$GL_LIBS $osx_crud" + unset osx_crud + + # New lossage in 10.6.8: we can't allow -L/opt/local/lib to be in the + # link line, or at runtime XQueryExtension gets a segv due to some kind + # of library version skew. Libs must come from /usr/X11/lib even if + # $prefix and/or $exec_prefix are set to /opt/local/. + # + AC_MSG_RESULT(omitting "$libdir" from LDFLAGS) + libdir='' + + # Looks like as of OSX 10.12, gcc can't do ObjC. + OBJCC="clang -Wall" + + fi + + + # Some versions of MesaGL are compiled to require -lpthread. + # So if the Mesa headers exist, and -lpthread exists, then always + # link -lpthread after the Mesa libs (be they named -lGL or -lMesaGL.) + # + # Oftentimes, AX_PTHREAD will bring in -lpthread as well; but that ends + # up before -l(Mesa)GL, instead of after where it would belong. + # + if test "$ac_have_mesa_gl" = yes; then + AC_CHECK_LIB(pthread, pthread_create, [GL_LIBS="-lpthread"], [],) + fi + + + # If we have Mesa headers, check to see if we can link against -lMesaGL. + # If we don't have Mesa headers, or we don't have -lMesaGL, try -lGL. + # Else, warn that GL is busted. (We have the headers, but no libs.) + # + + if test "$ac_have_mesa_gl" = yes ; then + AC_CHECK_X_LIB(MesaGL, glXCreateContext, + [gl_lib_1="MesaGL" + GL_LIBS="-lMesaGL -lMesaGLU $VIDMODE_LIBS $GL_LIBS"], + [], -lMesaGLU $GL_LIBS -lX11 -lXext $VIDMODE_LIBS -lm) + fi + + if test "$gl_lib_1" = "" ; then + AC_CHECK_X_LIB(GL, glXCreateContext, + [gl_lib_1="GL" + GL_LIBS="-lGL -lGLU $VIDMODE_LIBS $GL_LIBS"], + [], -lGLU $GL_LIBS -lX11 -lXext $VIDMODE_LIBS -lm) + fi + + if test "$gl_lib_1" = "" ; then + # we have headers, but no libs -- bail. + have_gl=no + ac_have_mesa_gl=no + gl_halfassed=yes + else + # linking works -- we can build the GL hacks. + AC_DEFINE(HAVE_GL) + if test "$ac_have_mesa_gl" = yes ; then + AC_DEFINE(HAVE_MESA_GL) + fi + fi + fi + + + # Now that we know we have GL headers and libs, do some more GL testing. + # + + if test "$have_gl" = yes ; then + # If it's MesaGL, we'd like to issue a warning if the version number + # is less than or equal to 2.6, because that version had a security bug. + # + if test "$ac_have_mesa_gl" = yes; then + + AC_CACHE_CHECK([MesaGL version number], ac_cv_mesagl_version_string, + [cat > conftest.$ac_ext < +#ifndef MESA_MAJOR_VERSION +# include +# ifdef XMESA_MAJOR_VERSION + /* Around Mesa 3.2, they took out the Mesa version number, so instead, + we have to check the XMesa version number (the number of the X protocol + support, which seems to be the same as the Mesa version number.) + */ +# define MESA_MAJOR_VERSION XMESA_MAJOR_VERSION +# define MESA_MINOR_VERSION XMESA_MINOR_VERSION +# else + /* Oh great. Some time after 3.4, they took out the xmesa.h header file, + so we have no way of telling what version of Mesa this is at all. + So, we'll guess that the osmesa version (the "offscreen protocol") + is less than or equal to the real mesa version number. Except that + if OSmesa is 3.3, assume at least Mesa 3.4, since OSmesa was 3.3 in + Mesa 3.4. And Mesa 3.3 had xmesa.h. What a complete load of shit! + */ +# include +# define MESA_MAJOR_VERSION OSMESA_MAJOR_VERSION +# define MESA_MINOR_VERSION OSMESA_MINOR_VERSION or newer, probably? +# if OSMESA_MAJOR_VERSION == 3 && OSMESA_MINOR_VERSION == 3 +# undef MESA_MINOR_VERSION +# define MESA_MINOR_VERSION 4 or newer, probably? +# endif +# endif +#endif +configure: MESA_MAJOR_VERSION MESA_MINOR_VERSION +EOF + + ac_save_CPPFLAGS="$CPPFLAGS" + if test \! -z "$includedir" ; then + CPPFLAGS="$CPPFLAGS -I$includedir" + fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + + mglv=`(eval "$ac_cpp conftest.$ac_ext") 2>&AC_FD_CC | grep configure:` + + # M4 sucks!! + changequote(X,Y) + mglv=`echo "$mglv" | sed -n \ + 's/^configure: *\([0-9][0-9]*\) *\([0-9].*\)$/\1.\2/p'` + changequote([,]) + + rm -f conftest.$ac_ext + + CPPFLAGS="$ac_save_CPPFLAGS" + + if test "$mglv" = ""; then + ac_mesagl_version=unknown + ac_mesagl_version_string=unknown + else + ac_mesagl_version_string="$mglv" + # M4 sucks!! + changequote(X,Y) + maj=`echo "$mglv" | sed -n 's/^\([0-9][0-9]*\)\..*$/\1/p'` + min=`echo "$mglv" | sed -n 's/^.*\.\([0-9][0-9]*\).*$/\1/p'` + changequote([,]) + ac_mesagl_version=`echo "$maj * 1000 + $min" | bc` + if test -z "$ac_mesagl_version"; then + ac_mesagl_version=unknown + ac_mesagl_version_string=unknown + fi + fi + ac_cv_mesagl_version=$ac_mesagl_version + ac_cv_mesagl_version_string=$ac_mesagl_version_string + ]) + ac_mesagl_version=$ac_cv_mesagl_version + ac_mesagl_version_string=$ac_cv_mesagl_version_string + fi + + + # Check for OpenGL 1.1 features. + # + AC_CHECK_X_LIB($gl_lib_1, glBindTexture, [AC_DEFINE(HAVE_GLBINDTEXTURE)], + [true], $GL_LIBS -lX11 -lXext -lm) + + # Check for OpenGL GLSL features. + # + AC_CHECK_X_HEADER(GL/glext.h, have_glext=yes, have_glext=no, + [#include ]) + if test "$have_glext" = yes ; then + AC_CHECK_X_LIB($gl_lib_1, glUseProgram, [AC_DEFINE(HAVE_GLSL)], + [true], $GL_LIBS -lX11 -lXext -lm) + fi + fi + +elif test "$with_gl" != no; then + echo "error: must be yes or no: --with-gl=$with_gl" + exit 1 +fi + + +############################################################################### +# +# Check for -lgle. +# +############################################################################### + +have_gle=no +with_gle_req=unspecified +gle_halfassed=no +AC_ARG_WITH(gle, +[ --with-gle Build those demos which depend on GLE (extrusion).], + [with_gle="$withval"; with_gle_req="$withval"],[with_gle=yes]) + +HANDLE_X_PATH_ARG(with_gle, --with-gle, GLE) + +GLE_LIBS="" + +if test "$have_gl" = no ; then + true +elif test "$with_gle" = yes; then + + AC_CHECK_X_HEADER(GL/gle.h, have_gle3=yes, have_gle3=no, + [#include ]) + if test "$have_gle3" = yes ; then + have_gle=yes; + else + AC_CHECK_X_HEADER(GL/gutil.h, have_gle=yes, have_gle=no, + [#include ]) + if test "$have_gle" = yes ; then + AC_CHECK_X_HEADER(GL/tube.h, have_gle=yes, have_gle=no, + [#include ]) + fi + fi + + if test "$have_gle" = yes ; then + have_gle=no + gle_halfassed=yes + AC_CHECK_X_LIB(gle, gleCreateGC, + [have_gle=yes; gle_halfassed=no; GLE_LIBS="-lgle"], + [], $GL_LIBS -lX11 -lXext -lm) + fi + if test "$have_gle" = yes ; then + have_gle=no + gle_halfassed=yes + + # sometimes the libmatrix stuff is included in libgle. look there first. +# +# I don't get it. For some reason, this test passes on SGI, as if +# uview_direction_d() was in libgle -- but it's not, it's in libmatrix. +# Yet the link is succeeding. Why??? +# +# AC_CHECK_X_LIB(gle, uview_direction_d, +# [have_gle=yes; gle_halfassed=no], +# [], $GL_LIBS -lX11 -lXext -lm) + + # As of GLE 3 this is in libgle, and has changed name to uview_direction! + # *sigh* + if test "$have_gle3" = yes ; then + AC_CHECK_X_LIB(gle, uview_direction, + [have_gle=yes; gle_halfassed=no], + [], $GL_LIBS -lX11 -lXext -lm) + fi + # if it wasn't in libgle, then look in libmatrix. + if test "$have_gle" = no ; then + AC_CHECK_X_LIB(matrix, uview_direction_d, + [have_gle=yes; gle_halfassed=no; + GLE_LIBS="$GLE_LIBS -lmatrix"], + [], $GL_LIBS -lX11 -lXext -lm) + fi + fi + + if test "$have_gle" = yes ; then + AC_DEFINE(HAVE_GLE) + if test "$have_gle3" = yes ; then + AC_DEFINE(HAVE_GLE3) + fi + fi + +elif test "$with_gle" != no; then + echo "error: must be yes or no: --with-gle=$with_gle" + exit 1 + +fi + + +############################################################################### +# +# Handle --with-gles +# +############################################################################### + +with_gles_req=unspecified +AC_ARG_WITH(gles, +[ --with-gles Target OpenGL ES 1.x API instead of OpenGL 1.3.], + [with_gles="$withval"; with_gles_req="$withval"],[with_gles=no]) + +HANDLE_X_PATH_ARG(with_gles, --with-gles, JWZGLES) + +if test "$with_gles" = yes; then + have_gles=yes + AC_DEFINE(HAVE_JWZGLES) + JWZGLES_OBJS='$(JWXYZ_BIN)/jwzgles.o' + AC_MSG_RESULT(using OpenGL ES compatiblity shim) +elif test "$with_gles" != no; then + echo "error: must be yes or no: --with-gles=$with_gles" + exit 1 +fi + +############################################################################### +# +# Check for -ljpeg +# +############################################################################### + +have_jpeg=no +with_jpeg_req=unspecified +jpeg_halfassed=no +AC_ARG_WITH(jpeg, +[ --with-jpeg Include support for the JPEG library.], + [with_jpeg="$withval"; with_jpeg_req="$withval"], + [with_jpeg=yes]) + +HANDLE_X_PATH_ARG(with_jpeg, --with-jpeg, JPEG) + +if test "$with_jpeg" != yes -a "$with_jpeg" != no ; then + echo "error: must be yes or no: --with-jpeg=$with_jpeg" + exit 1 +fi + +if test "$with_jpeg" = yes; then + + have_jpeg=no + AC_CHECK_X_HEADER(jpeglib.h, [have_jpeg=yes]) + + if test "$have_jpeg" = yes; then + # we have the header, now check for the library + have_jpeg=no + jpeg_halfassed=yes + AC_CHECK_X_LIB(jpeg, jpeg_start_compress, + [have_jpeg=yes + jpeg_halfassed=no + JPEG_LIBS="-ljpeg" + AC_DEFINE(HAVE_JPEGLIB)]) + fi +fi + + +############################################################################### +# +# Check for -lpng +# +############################################################################### + +have_png=no +with_png_req=unspecified +png_halfassed=no +AC_ARG_WITH(png, +[ --with-png Include support for the PNG library.], + [with_png="$withval"; with_png_req="$withval"], + [with_png=yes]) + +HANDLE_X_PATH_ARG(with_png, --with-png, PNG) + +if test "$with_png" != yes -a "$with_png" != no ; then + echo "error: must be yes or no: --with-png=$with_png" + exit 1 +fi + +if test "$with_png" = yes; then + + have_png=no + AC_CHECK_X_HEADER(png.h, [have_png=yes]) + + if test "$have_png" = yes; then + # we have the header, now check for the library + have_png=no + png_halfassed=yes + AC_CHECK_X_LIB(png, png_create_read_struct, + [have_png=yes + png_halfassed=no + PNG_LIBS="-lpng" + AC_DEFINE(HAVE_LIBPNG)]) + fi +fi + + +############################################################################### +# +# Check for -lgdk_pixbuf. +# These tests are for gdk_pixbuf usage of the hacks, +# not xscreensaver-demo (thus we have to test again to get +# the libraries right: don't want to pull in all of GTK +# for the hacks.) +# +############################################################################### + +have_gdk_pixbuf=no +with_gdk_pixbuf_req=unspecified +AC_ARG_WITH(pixbuf, +[ --with-pixbuf Include support for the GDK-Pixbuf library, which + allows the display of JPEG, PNG, GIF and SVG images.], + [with_gdk_pixbuf="$withval"; with_gdk_pixbuf_req="$withval"], + [with_gdk_pixbuf=yes]) + +# if --with-pixbuf=/directory/ was specified, remember that directory so that +# we can also look for the `gdk-pixbuf-config' program in that directory. +case "$with_gdk_pixbuf" in + /*) + gdk_pixbuf_dir="$with_gdk_pixbuf" + ;; + *) + gdk_pixbuf_dir="" + ;; +esac + +HANDLE_X_PATH_ARG(with_gdk_pixbuf, --with-pixbuf, GDK_PIXBUF) + +if test "$with_gdk_pixbuf" != yes -a "$with_gdk_pixbuf" != no ; then + echo "error: must be yes or no: --with-pixbuf=$with_gdk_pixbuf" + exit 1 +fi + +if test "$with_gdk_pixbuf" = yes; then + have_gdk_pixbuf=no + + pkgs='' + ok="yes" + + pkg_check_version gdk-pixbuf-2.0 2.0.0 + pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 + pkg_check_version gio-2.0 2.0.0 + have_gdk_pixbuf="$ok" + + if test "$have_gdk_pixbuf" = yes; then + AC_CACHE_CHECK([for gdk-pixbuf includes], ac_cv_gdk_pixbuf_config_cflags, + [ac_cv_gdk_pixbuf_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for gdk-pixbuf libs], ac_cv_gdk_pixbuf_config_libs, + [ac_cv_gdk_pixbuf_config_libs=`$pkg_config --libs $pkgs`]) + fi + + ac_gdk_pixbuf_config_cflags=$ac_cv_gdk_pixbuf_config_cflags + ac_gdk_pixbuf_config_libs=$ac_cv_gdk_pixbuf_config_libs + + + if test "$have_gdk_pixbuf" = yes; then + # + # we appear to have pixbuf; check for headers/libs to be sure. + # + ac_save_gdk_pixbuf_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_config_cflags" + + have_gdk_pixbuf=no + + # check for header A... + AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf.h, [have_gdk_pixbuf=yes]) + + # if that worked, check for header B... + if test "$have_gdk_pixbuf" = yes; then + have_gdk_pixbuf=no + gdk_pixbuf_halfassed=yes + AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf-xlib.h, + [have_gdk_pixbuf=yes + gdk_pixbuf_halfassed=no]) + + # yay, it has a new name in Gtk 2.x... + if test "$have_gdk_pixbuf" = no; then + have_gdk_pixbuf=no + gdk_pixbuf_halfassed=yes + AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h, + [have_gdk_pixbuf=yes + gdk_pixbuf_halfassed=no]) + fi + fi + CPPFLAGS="$ac_save_gdk_pixbuf_CPPFLAGS" + fi + + if test "$have_gdk_pixbuf" = yes; then + # we have the headers, now check for the libraries + have_gdk_pixbuf=no + gdk_pixbuf_halfassed=yes + + AC_MSG_RESULT(checking for gdk_pixbuf usability...) + + # library A... + AC_CHECK_X_LIB(c, gdk_pixbuf_new_from_file, [have_gdk_pixbuf=yes],, + $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) + # library B... + if test "$have_gdk_pixbuf" = yes; then + have_gdk_pixbuf=no + AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init, + [have_gdk_pixbuf=yes + gdk_pixbuf_halfassed=no],, + $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) + fi + fi + + if test "$have_gdk_pixbuf" = yes; then + INCLUDES="$INCLUDES $ac_gdk_pixbuf_config_cflags" + PNG_LIBS="$ac_gdk_pixbuf_config_libs" + AC_DEFINE(HAVE_GDK_PIXBUF) + else + AC_MSG_RESULT(checking for gdk_pixbuf usability... no) + fi + + if test "$have_gdk_pixbuf" = yes; then + AC_CHECK_X_LIB(c, gdk_pixbuf_apply_embedded_orientation, + [AC_DEFINE(HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION)],, + $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) + fi +fi + + +############################################################################### +# +# Check for -lXft +# +############################################################################### + +have_xutf8drawstring=no +AC_CHECK_X_LIB(X11, Xutf8DrawString, + [have_xutf8drawstring=yes], + [true], -lX11 -lXext -lm) +if test "$have_xutf8drawstring" = yes ; then + AC_DEFINE(HAVE_XUTF8DRAWSTRING) +fi + + +have_xft=no +with_xft_req=unspecified +xft_halfassed=no +AC_ARG_WITH(xft, +[ --with-xft Include support for the X Freetype library.], + [with_xft="$withval"; with_xft_req="$withval"], + [with_xft=yes]) + +HANDLE_X_PATH_ARG(with_xft, --with-xft, Xft) + +if test "$with_xft" != yes -a "$with_xft" != no ; then + echo "error: must be yes or no: --with-xft=$with_xft" + exit 1 +fi + +if test "$with_xft" = yes; then + + pkgs='' + ok="yes" + pkg_check_version xft 2.1.0 + have_xft="$ok" + + if test "$have_xft" = yes; then + AC_CACHE_CHECK([for Xft includes], ac_cv_xft_config_cflags, + [ac_cv_xft_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for Xft libs], ac_cv_xft_config_libs, + [ac_cv_xft_config_libs=`$pkg_config --libs $pkgs`]) + fi + + ac_xft_config_cflags=$ac_cv_xft_config_cflags + ac_xft_config_libs=$ac_cv_xft_config_libs + + if test "$have_xft" = yes; then + # + # we appear to have Xft; check for headers/libs to be sure. + # + ac_save_xft_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_xft_config_cflags" + + have_xft=no + AC_CHECK_X_HEADER(X11/Xft/Xft.h, [have_xft=yes]) + + CPPFLAGS="$ac_save_xft_CPPFLAGS" + fi + + if test "$have_xft" = yes; then + # we have the headers, now check for the libraries + have_xft=no + xft_halfassed=yes + + AC_MSG_RESULT(checking for Xft usability...) + AC_CHECK_X_LIB(c, XftDrawStringUtf8, [have_xft=yes],, + $ac_xft_config_libs -lX11 -lXext -lm) + fi + + if test "$have_xft" = no; then + AC_MSG_RESULT(checking for Xft usability... no) + fi +fi + +if test "$have_xft" = yes; then + INCLUDES="$INCLUDES $ac_xft_config_cflags" + XFT_LIBS="$ac_xft_config_libs" + XFT_SRCS='' + XFT_OBJS='' + AC_DEFINE(HAVE_XFT) +else + XFT_LIBS='' + XFT_SRCS='$(UTILS_SRC)/xft.c' + XFT_OBJS='$(UTILS_BIN)/xft.o' +fi + + +# Also check for the standard X11 bitmap fonts, since Debian likes to not +# install any of those by default. The unlock dialog requires them. +# +have_bitmap_fonts=no +ff='helvB14.pcf.gz helvB14-ISO8859-1.pcf.gz' +AC_MSG_CHECKING(for bitmap font files) +for d in /usr/share/fonts/X11 \ + /usr/share/X11/fonts \ + /opt/X11/share/fonts \ +; do + for r in 100dpi 75dpi ; do + for f in $ff ; do + if test -f "$d/$r/$f" ; then + have_bitmap_fonts=yes + fi + done + done +done +AC_MSG_RESULT($have_bitmap_fonts) + +# In case we didn't guess the font directory properly, check RPMs and DEBs too. +if test $have_bitmap_fonts != yes ; then + for r in 100dpi 75dpi ; do + for f in xfonts-$r \ + xorg-x11-fonts-$r \ + xorg-x11-fonts-ISO8859-1-$r \ + ; do + if test $have_bitmap_fonts != yes ; then + AC_MSG_CHECKING(for $f) + if ( rpm -q "$f" 2>&- >&- ) || + ( dpkg -s "$f" 2>&- | grep -q '^Status:.*installed' ) ; then + have_bitmap_fonts=yes + fi + AC_MSG_RESULT($have_bitmap_fonts) + fi + done + done +fi + + +############################################################################### +# +# Check for pty support: this allows 'phosphor' and 'apple2' +# to run curses-based programs, or be used as terminal windows. +# +############################################################################### + +PTY_LIBS= +AC_CHECK_HEADERS(pty.h util.h sys/termios.h) +AC_CHECK_X_LIB(util, forkpty, + [PTY_LIBS="-lutil" + ac_have_forkpty=yes + AC_DEFINE(HAVE_FORKPTY)]) + +if test "$ac_have_forkpty" != yes ; then + # we don't need (or have) -lutil on MacOS 10.4.2... + AC_CHECK_X_LIB(c, forkpty, + [PTY_LIBS="" + AC_DEFINE(HAVE_FORKPTY)]) +fi + + +############################################################################### +# +# Query AX_PTHREAD, and figure out which compiler gets used. +# +############################################################################### + +have_pthread=no +with_pthread_req=unspecified + +# AX_PTHREAD is from the GNU Autoconf Archive. +# https://savannah.gnu.org/projects/autoconf-archive/ +m4_include(ax_pthread.m4) + +# This affects CC, LIBS, and CFLAGS, instead of defining new variables. + +AC_ARG_WITH([pthread], +[ --with-pthread Enables POSIX threads, for SMP support.], + [with_pthread="$withval"; with_pthread_req="$withval"], + [with_pthread=yes]) + +if test "$with_pthread" = yes; then + # AX_PTHREAD might want a different compiler. + AX_PTHREAD( + [if test "$CC" = "$PTHREAD_CC" -o -z "$ac_original_cc"; then + have_pthread=yes + else + ac_prog_cc_no_pthread=yes + fi + ]) + + if test "$have_pthread" = yes; then + AC_DEFINE([HAVE_PTHREAD]) + CC=$PTHREAD_CC + fi +fi + + +############################################################################### +# +# Check for libcap, which allows "sonar" to work without setuid. +# +############################################################################### + +have_libcap=no +setcap_hacks_default=yes +setcap_hacks="$setcap_hacks_default" +setcap_hacks_req=unspecified +AC_ARG_WITH(setcap-hacks, +[ --with-setcap-hacks Build the "sonar" demo with libcap, which allows + it to ping other hosts without being setuid.], + [setcap_hacks="$withval"; setcap_hacks_req="$withval"], + [setcap_hacks=yes]) + +HANDLE_X_PATH_ARG(setcap_hacks, --with-setcap-hacks, setcap hacks) + +if test "$setcap_hacks" != yes -a "$setcap_hacks" != no ; then + echo "error: must be yes or no: --with-setcap-hacks=$setcap_hacks" + exit 1 +fi + +if test "$setcap_hacks" = yes; then + + AC_CHECK_PROGS(setcap_program, setcap) + if test "$setcap_program" != ''; then + AC_CHECK_X_HEADER(sys/capability.h, [have_setcap=yes]) + fi + if test "$have_setcap" = yes; then + AC_CHECK_X_LIB(cap, cap_set_flag, + [have_libcap=yes + PROG_SETCAP="$setcap_program" + LIBCAP_LIBS="-lcap" + AC_DEFINE(HAVE_LIBCAP)]) + fi +fi + + +############################################################################### +# +# Option to prevent "sonar" from working properly. +# It must be setuid on systems without libcap. +# +############################################################################### + +if test "$have_libcap" = yes; then + setuid_hacks_default=no +else + setuid_hacks_default=yes +fi + +setuid_hacks="$setuid_hacks_default" +AC_ARG_WITH(setuid-hacks, +[ --with-setuid-hacks Install the "sonar" demo as setuid root, which is + needed in order to ping other hosts without setcap.], + [setuid_hacks="$withval"], [setuid_hacks="$setuid_hacks_default"]) + +HANDLE_X_PATH_ARG(setuid_hacks, --with-setuid-hacks, setuid hacks) + +if test "$setuid_hacks" = yes; then + true +elif test "$setuid_hacks" != no; then + echo "error: must be yes or no: --with-setuid-hacks=$setuid_hacks" + exit 1 +fi + + +############################################################################### +# +# Check for --with-record-animation +# +############################################################################### + +record_anim_default=no +record_anim="$record_anim_default" +AC_ARG_WITH(record-animation, +[ --with-record-animation Include code for generating MP4 videos.], + [record_anim="$withval"], [record_anim="$record_anim_default"]) + +HANDLE_X_PATH_ARG(record_anim, --with-record-animation, record animation) + +if test "$record_anim" = yes; then + true +elif test "$record_anim" != no; then + echo "error: must be yes or no: --with-record-animation=$record_anim" + exit 1 +fi + +if test "$record_anim" = yes; then + if test "$have_gdk_pixbuf" != yes; then + AC_MSG_ERROR(--with-record-animation requires GDK-Pixbuf) + else + AC_MSG_RESULT(enabling --with-record-animation) + AC_DEFINE(HAVE_RECORD_ANIM) + ANIM_OBJS='$(ANIM_OBJS)' + ANIM_LIBS='$(ANIM_LIBS)' + fi +fi + + +############################################################################### +# +# Done testing. Now, set up the various -I and -L variables, +# and decide which GUI program to build by default. +# +############################################################################### + +DEPEND=makedepend +DEPEND_FLAGS= +DEPEND_DEFINES= + + +if test \! -z "$includedir" ; then + INCLUDES="$INCLUDES -I$includedir" +fi + +if test \! -z "$libdir" ; then + LDFLAGS="$LDFLAGS -L$libdir" +fi + + +PREFERRED_DEMO_PROGRAM='' +ALL_DEMO_PROGRAMS= +if test "$have_motif" = yes; then + PREFERRED_DEMO_PROGRAM=xscreensaver-demo-Xm + ALL_DEMO_PROGRAMS="$PREFERRED_DEMO_PROGRAM $ALL_DEMO_PROGRAMS" +fi +if test "$have_gtk" = yes; then + PREFERRED_DEMO_PROGRAM=xscreensaver-demo-Gtk + ALL_DEMO_PROGRAMS="$PREFERRED_DEMO_PROGRAM $ALL_DEMO_PROGRAMS" +fi + + +if test "$have_kerberos" = yes; then + PASSWD_SRCS="$PASSWD_SRCS \$(KERBEROS_SRCS)" + PASSWD_OBJS="$PASSWD_OBJS \$(KERBEROS_OBJS)" +fi +if test "$have_pam" = yes; then + PASSWD_SRCS="$PASSWD_SRCS \$(PAM_SRCS)" + PASSWD_OBJS="$PASSWD_OBJS \$(PAM_OBJS)" + INSTALL_PAM="install-pam" +fi +if test "$enable_pam_check_account_type" = yes; then + COMMENT_PAM_CHECK_ACCOUNT="" +else + COMMENT_PAM_CHECK_ACCOUNT="#" +fi +if test "$have_passwd_helper" = yes; then + PASSWD_SRCS="$PASSWD_SRCS \$(PWHELPER_SRCS)" + PASSWD_OBJS="$PASSWD_OBJS \$(PWHELPER_OBJS)" +fi + PASSWD_SRCS="$PASSWD_SRCS \$(PWENT_SRCS)" + PASSWD_OBJS="$PASSWD_OBJS \$(PWENT_OBJS)" + + +if test "$enable_locking" = yes; then + LOCK_SRCS='$(LOCK_SRCS_1) $(PASSWD_SRCS)' + LOCK_OBJS='$(LOCK_OBJS_1) $(PASSWD_OBJS)' +else + LOCK_SRCS='$(NOLOCK_SRCS_1)' + LOCK_OBJS='$(NOLOCK_OBJS_1)' +fi + +if test "$ac_macosx" = yes; then + EXES_OSX='$(EXES_OSX)' + SCRIPTS_OSX='$(SCRIPTS_OSX)' + MEN_OSX='$(MEN_OSX)' +else + EXES_OSX= + SCRIPTS_OSX= + MEN_OSX= +fi + + +INSTALL_SETUID='$(INSTALL_PROGRAM) $(SUID_FLAGS)' + +if test "$need_setuid" = yes; then + NEED_SETUID=yes +else + NEED_SETUID=no +fi + +if test "$setuid_hacks" = yes; then + SETUID_HACKS=yes +else + SETUID_HACKS=no +fi + +if test "$have_libcap" = yes; then + SETCAP_HACKS=yes +else + SETCAP_HACKS=no +fi + +tab=' ' +if test "$have_gl" = yes; then + GL_EXES='$(GL_EXES)' + SUID_EXES='$(SUID_EXES)' + RETIRED_GL_EXES='$(RETIRED_GL_EXES)' + GL_UTIL_EXES='$(GL_UTIL_EXES)' + GL_MEN='$(GL_MEN)' + GL_KLUDGE=" " +else + GL_KLUDGE="-" +fi + +if test "$have_gle" = yes; then + GLE_EXES='$(GLE_EXES)' + GLE_KLUDGE=" " +else + GLE_KLUDGE="-" +fi + +if test "$have_jpeg" = yes -a "$have_gdk_pixbuf" = yes; then + JPEG_EXES='$(JPEG_EXES)' +fi + + +# Another substitution in the XScreenSaver.ad.in file: +# +if test "$gnome_open_program" != ''; then + GNOME24='' + GNOME22='! ' + NOGNOME='! ' +elif test "$gnome_url_show_program" != ''; then + GNOME24='! ' + GNOME22='' + NOGNOME='! ' +else + GNOME24='! ' + GNOME22='! ' + NOGNOME='' +fi + + +# Set PO_DATADIR to something sensible. +# +AC_MSG_CHECKING([for locale directory]) +if test -n "$GTK_DATADIR" ; then + PO_DATADIR="$GTK_DATADIR" +elif test "$have_gtk" = yes; then + PO_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` + PO_DATADIR="$PO_DATADIR/share" +fi + +if test -z "$PO_DATADIR" ; then + # + # #### Total fucking kludge -- + # Map /build/prefix/usr/X11R6/share/ to /build/prefix/usr/share/ + # but of course we need to expand all the nested variables to do that... + # + dd=`eval eval eval eval eval eval eval eval eval eval eval echo $datadir` + PO_DATADIR=`echo $dd | sed 's@/X11R6/@/@'` +fi + +AC_MSG_RESULT($PO_DATADIR/locale) + + +# canonicalize slashes. +HACK_CONF_DIR=`echo "${HACK_CONF_DIR}" | sed 's@/$@@;s@//*@/@g'` + +# gcc 3.0 likes to issue this warning for every file: +# +# cc1: warning: changing search order for system directory "/usr/local/include" +# cc1: warning: as it has already been specified as a non-system directory +# +# Yay. We can only avoid that by deleting "-I${prefix}/include" from the list. +# Which *should* be totally redundant, and thus an ok thing to delete? +# +INCLUDES=`echo "$INCLUDES" | sed 's@ -I${prefix}/include@@g;'` + + +############################################################################### +# +# Perform substitutions and write Makefiles. +# +############################################################################### + +AC_SUBST(INCLUDES) + +AC_SUBST(PREFERRED_DEMO_PROGRAM) +AC_SUBST(ALL_DEMO_PROGRAMS) +AC_SUBST(SAVER_LIBS) +AC_SUBST(MOTIF_LIBS) +AC_SUBST(GTK_LIBS) +AC_SUBST(XML_LIBS) +AC_SUBST(PNG_LIBS) +AC_SUBST(JPEG_LIBS) +AC_SUBST(HACK_LIBS) +AC_SUBST(PTY_LIBS) +AC_SUBST(GL_LIBS) +AC_SUBST(GLE_LIBS) +AC_SUBST(XDPMS_LIBS) +AC_SUBST(XINERAMA_LIBS) +AC_SUBST(PASSWD_LIBS) +AC_SUBST(LIBCAP_CFLAGS) +AC_SUBST(LIBCAP_LIBS) +AC_SUBST(PROG_SETCAP) +AC_SUBST(INSTALL_SETUID) +AC_SUBST(SETUID_HACKS) +AC_SUBST(SETCAP_HACKS) +AC_SUBST(INSTALL_DIRS) +AC_SUBST(NEED_SETUID) +AC_SUBST(INSTALL_PAM) +AC_SUBST(HAVE_PAM_FAIL_DELAY) +AC_SUBST(COMMENT_PAM_CHECK_ACCOUNT) +AC_SUBST(NEW_LOGIN_COMMAND) +AC_SUBST(NEW_LOGIN_COMMAND_P) +AC_SUBST(DEFAULT_IMAGES_P) +AC_SUBST(DEFAULT_IMAGE_DIRECTORY) +AC_SUBST(DEFAULT_TEXT_FILE) +AC_SUBST(WITH_BROWSER) + +AC_SUBST(OBJCC) +AC_SUBST(EXES_OSX) +AC_SUBST(EXES_SYSTEMD) +AC_SUBST(SCRIPTS_OSX) +AC_SUBST(MEN_OSX) + +AC_SUBST(PASSWD_SRCS) +AC_SUBST(PASSWD_OBJS) +AC_SUBST(XMU_SRCS) +AC_SUBST(XMU_OBJS) +AC_SUBST(XMU_LIBS) +AC_SUBST(XFT_SRCS) +AC_SUBST(XFT_OBJS) +AC_SUBST(XFT_LIBS) +AC_SUBST(SAVER_GL_SRCS) +AC_SUBST(SAVER_GL_OBJS) +AC_SUBST(SAVER_GL_LIBS) +AC_SUBST(LOCK_SRCS) +AC_SUBST(LOCK_OBJS) +AC_SUBST(JPEG_EXES) +AC_SUBST(GL_EXES) +AC_SUBST(RETIRED_GL_EXES) +AC_SUBST(SUID_EXES) +AC_SUBST(GL_UTIL_EXES) +AC_SUBST(GL_MEN) +AC_SUBST(GL_KLUDGE) +AC_SUBST(GLE_EXES) +AC_SUBST(GLE_KLUDGE) +AC_SUBST(JWZGLES_OBJS) +AC_SUBST(GNOME24) +AC_SUBST(GNOME22) +AC_SUBST(NOGNOME) +AC_SUBST(HACKDIR) +AC_SUBST(HACKDIR_FULL) +AC_SUBST(GTK_DATADIR) +AC_SUBST(PO_DATADIR) +AC_SUBST(HACK_CONF_DIR) +AC_SUBST(GTK_EXTRA_OBJS) +AC_SUBST(ANIM_OBJS) +AC_SUBST(ANIM_LIBS) + +APPDEFAULTS=$ac_x_app_defaults +AC_SUBST(APPDEFAULTS) + +AC_SUBST(DEPEND) +AC_SUBST(DEPEND_FLAGS) +AC_SUBST(DEPEND_DEFINES) +AC_SUBST(PERL) + +AC_OUTPUT(Makefile + utils/Makefile + jwxyz/Makefile + hacks/Makefile + hacks/images/Makefile + hacks/glx/Makefile + po/Makefile.in + driver/Makefile + driver/xscreensaver.pam + driver/XScreenSaver.ad) + +############################################################################### +# +# Print some warnings at the end. +# +############################################################################### + +warn_prefix_1=" Warning:" +warn_prefix_2=" Note:" +warn_prefix="$warn_prefix_1" + +warning=no +warnsep=' #################################################################' + +warnpre() { + if test "$warning" = no ; then + echo '' ; echo "$warnsep" ; echo '' + warning=yes + fi +} + +warn() { + warnpre + if test "$warning" = long ; then echo '' ; fi + warning=yes + rest="$@" + echo "$warn_prefix $rest" +} + +warnL() { + was=$warning + warnpre + warning=yes + if test "$was" != no ; then echo '' ; fi + rest="$@" + echo "$warn_prefix $rest" +} + +warn2() { + rest="$@" + echo " $rest" + warning=long +} + +note() { + warn_prefix="$warn_prefix_2" + warn $@ + warn_prefix="$warn_prefix_1" +} + +noteL() { + warn_prefix="$warn_prefix_2" + warnL $@ + warn_prefix="$warn_prefix_1" +} + + +# ac_prog_cc_no_pthread normally only happens on AIX, because according +# to AX_PTHREAD, AIX needs CC=xlc_r or CC=cc_r to do threads. +# If CC is specified, it takes precedence over --with-pthread. +if test "$ac_prog_cc_no_pthread" ; then + warnL "You requested $ac_original_cc for the C compiler, but it doesn't" + warn2 "support POSIX threads." + echo "" + warn2 "If you have multiple CPU cores, try CC=$PTHREAD_CC." +elif test "$with_pthread_req" = yes -a "$have_pthread" = no ; then + warn 'POSIX threads were requested, but were not found.' +fi + +if test "$with_sgi_req" = yes -a "$have_sgi" = no ; then + warn 'The SGI saver extension was requested, but was not found.' +fi + +if test "$with_xidle_req" = yes -a "$have_xidle" = no ; then + warn 'The XIdle extension was requested, but was not found.' +fi + +if test "$with_mit_req" = yes -a "$have_mit" = no ; then + warn 'The MIT-SCREEN-SAVER extension was requested, but was not found.' +fi + +if test "$with_xshm_req" = yes -a "$have_xshm" = no ; then + warn 'The XSHM extension was requested, but was not found.' +fi + +if test "$with_xdbe_req" = yes -a "$have_xdbe" = no ; then + warn 'The DOUBLE-BUFFER extension was requested, but was not found.' +fi + +if test "$with_sgivc_req" = yes -a "$have_sgivc" = no ; then + warn 'The SGI-VIDEO-CONTROL extension was requested, but was not found.' +fi + +if test "$with_dpms_req" = yes -a "$have_dpms" = no ; then + warn 'The DPMS extension was requested, but was not found.' +fi + +if test "$with_xinerama_req" = yes -a "$have_xinerama" = no ; then + warn 'The Xinerama extension was requested, but was not found.' +fi + +if test "$with_xf86vmode_req" = yes -a "$have_xf86vmode" = no ; then + warn 'The XF86VMODE extension was requested, but was not found.' +fi + +if test "$with_randr_req" = yes -a "$have_randr" = no ; then + warn 'The RANDR extension was requested, but was not found.' +fi + +if test "$with_proc_interrupts_req" = yes -a "$have_proc_interrupts" = no; then + warn "Checking of /proc/interrupts was requested, but it's bogus." +fi + +if test "$pkg_config" = false ; then + warnL 'The "pkg-config" program was not found. Without that,' + warn2 "detection of the various GTK libraries won't work." +else + pkgerr=`$pkg_config --list-all 2>&1 >/dev/null` + if test "x$pkgerr" != "x" ; then + warnL 'The "pkg-config" program produces errors. This often causes' + warn2 "detection of the various GTK libraries to malfunction." + warn2 "The errors are:" + echo '' + echo "$pkgerr" | sed 's/^/ > /g' + fi +fi + +if test "$gtk_halfassed" != no ; then + warnL "GTK version $gtk_halfassed was found, but at least one supporting" + warn2 "library ($gtk_halfassed_lib) was not, so GTK can't be used." + warn2 "Perhaps some of the development packages are not installed?" + if test "$have_gtk" = yes ; then + v="$ac_gtk_version_string" + warn2 "GTK $v is also installed, so it will be used instead." + warn2 "Please read the above output and the \`config.log' file" + warn2 "for more details." + fi +fi + +motif_warn2() { + warn2 'Though the Motif front-end to xscreensaver is still' + warn2 'maintained, it is no longer being updated with new' + warn2 'features: all new development on the xscreensaver-demo' + warn2 'program is happening in the GTK version, and not in the' + warn2 'Motif version. It is recommended that you build against' + warn2 'GTK instead of Motif. See .' +} + +if test "$have_motif" = no -a "$have_gtk" = no; then + + if test "$with_motif" = yes; then + warnL "Neither the GTK nor Motif libraries were found; the" + warn2 "\`xscreensaver-demo' program requires one of these." + echo '' + motif_warn2 + else + warnL "The GTK libraries do not seem to be available; the" + warn2 "\`xscreensaver-demo' program requires them." +# echo '' +# warn2 'You can use Motif or Lesstif instead of GTK (use the' +# warn2 "\`--with-motif' option) but that is NOT recommended." +# motif_warn2 + fi + +elif test "$with_motif_req" = yes -a "$have_motif" = no ; then + warnL "Use of Motif was requested, but it wasn't found;" + warn2 "Gtk will be used instead." + +elif test "$jurassic_gtk" = yes ; then + + pref_gtk=2.0 + + v="$ac_gtk_version_string" + if test "$with_gtk_req" = yes -a "$ac_gtk_version" = "unknown" ; then + warnL "Use of Gtk was requested, but its version number is unknown;" + elif test "$with_gtk_req" = yes ; then + warnL "Use of Gtk was requested, but it is version $v;" + else + warnL "Gtk was found on this system, but it is version $v;" + fi + + warn2 "Gtk $pref_gtk or newer is required." + +elif test "$with_gtk_req" = yes -a "$have_gtk" = no ; then + warnL "Use of Gtk was requested, but it wasn't found." +fi + + +if test "$have_gtk" = yes -a "$have_gdk_pixbuf" = no ; then + warn "GTK is being used, but the GDK-Pixbuf library and/or" + warn2 "headers were not found. That can't be good. Please" + warn2 "install the GDK-Pixbuf development kit and re-configure." +fi + +if test "$have_motif" = yes -a "$have_lesstif" = yes ; then + + preferred_lesstif=0.92 + + if test "$lesstif_version" = unknown; then + warnL "Unable to determine the LessTif version number!" + warn2 "Make sure you are using version $preferred_lesstif or newer." + warn2 "See ." + + elif test \! $lesstif_version -gt 82; then + warnL "LessTif version $lesstif_version_string is being used." + warn2 "LessTif versions 0.82 and earlier are too buggy to" + warn2 "use with XScreenSaver; it is strongly recommended" + warn2 "that you upgrade to at least version $preferred_lesstif!" + warn2 "See ." + fi +fi + + +if test "$have_motif" = yes -a "$have_gtk" = no ; then + warn 'Motif is being used, and GTK is not.' + echo '' + motif_warn2 +fi + + +if test "$with_gdk_pixbuf_req" = yes -a "$have_gdk_pixbuf" = no; then + warnL 'Use of GDK-Pixbuf was requested, but it was not found.' +fi + +if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \ + test "$have_gdk_pixbuf" = no ; then + + if test "$with_gdk_pixbuf_req" = yes ; then + true + elif test "$with_gdk_pixbuf_req" = no ; then + warnL 'The GDK-Pixbuf library is not being used.' + else + warnL 'The GDK-Pixbuf library was not found.' + fi + + if test "$gdk_pixbuf_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'libraries; so either GDK-Pixbuf is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + fi + + if test "$have_png" = yes ; then + echo '' + warn2 'The PNG library is being used instead.' + fi + + echo '' + warn2 'Some of the demos will not use images as much as they could.' + warn2 'You should consider installing GDK-Pixbuf and re-running' + warn2 'configure.' +fi + + +if test "$have_jpeg" = no ; then + if test "$with_jpeg_req" = yes ; then + warnL 'Use of libjpeg was requested, but it was not found.' + elif test "$with_jpeg_req" = no ; then + noteL 'The JPEG library is not being used.' + else + noteL 'The JPEG library was not found.' + fi + + if test "$jpeg_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'library; so either JPEG is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + echo '' + fi + + if test "$have_gdk_pixbuf" = no ; then + warn2 "This means that it won't be possible for the image-manipulating" + warn2 "display modes to load files from disk; and it also means that" + warn2 "the \`webcollage' program will be much slower." + else + warn2 "This means the \`webcollage' program will be much slower." + fi +fi + + +if test "$have_png" = no ; then + if test "$with_png_req" = yes ; then + warnL 'Use of libpng was requested, but it was not found.' + elif test "$with_png_req" = no ; then + noteL 'The PNG library is not being used.' + else + noteL 'The PNG library was not found.' + fi + + if test "$png_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'library; so either PNG is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + echo '' + fi + + warn2 "Many things aren't going to work right." +fi + + +if test "$have_xft" = no ; then + if test "$with_xft_req" = yes ; then + warnL "Use of libXft was requested, but it was not found." + elif test "$with_xft_req" = no ; then + noteL 'The Xft library is not being used.' + else + noteL "The Xft library was not found." + fi + + if test "$xft_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'libraries; so either Xft is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + echo '' + fi + + warn2 "This means that fonts won't be anti-aliased." +fi + + +if test "$have_bitmap_fonts" = no ; then + warnL 'The standard bitmap fonts do not seem to be installed.' + warn2 'That is not going to work out well for you.' + warn2 'Install "xfonts-100dpi" or "xorg-x11-fonts-100dpi".' +fi + + +if test "$have_systemd" = no ; then + systemd_warned=no + if test "$systemd_too_old" = yes ; then + warnL "The systemd library is too old." + systemd_warned=yes + elif test "$with_systemd_req" = yes ; then + warnL "Use of systemd was requested, but it was not found." + systemd_warned=yes + elif test "$ac_macosx" = yes; then + true + elif test "$with_systemd_req" = no ; then + noteL 'The systemd library is not being used.' + systemd_warned=yes + else + warnL "The systemd library was not found." + systemd_warned=yes + fi + + if test "$systemd_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'libraries; so either systemd is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + echo '' + systemd_warned=yes + fi + + if test "$systemd_warned" = yes; then + echo '' + warn2 "This means that xscreensaver-systemd won't be built." + warn2 "Without that, xscreensaver will not be able to auto-lock" + warn2 "before the system is suspended (e.g., closing laptop lid)" + warn2 "and might activate while video playback is in progress." + fi +fi + + +if test "$have_gl" = yes -a "$ac_have_mesa_gl" = yes ; then + preferred_mesagl=3.4 + mgv="$ac_mesagl_version_string" + pgl="$preferred_mesagl" + + if test "$ac_mesagl_version" = unknown; then + true + # warnL "Unable to determine the MesaGL version number!" + # warn2 "Make sure you are using version $preferred_mesagl or newer." + + elif test \! "$ac_mesagl_version" -gt 2006; then + warnL "MesaGL version number is $mgv --" + warn2 "MesaGL 2.6 and earlier have a security bug. It is strongly" + warn2 "recommended that you upgrade to at least version $preferred_mesagl." + + elif test \! "$ac_mesagl_version" -gt 3003; then + warnL "MesaGL version number is $mgv --" + warn2 "MesaGL 3.3 and earlier have some bugs; it is recommended" + warn2 "that you upgrade to $pgl or newer." + fi +fi + +if test "$have_gl" = no ; then + if test "$with_gl_req" = yes ; then + warnL 'Use of GL was requested, but it was not found.' + elif test "$with_gl_req" = no ; then + noteL 'The OpenGL 3D library is not being used.' + else + noteL 'The OpenGL 3D library was not found.' + fi + + if test "$gl_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'libraries; so either GL is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + fi + + echo '' + warn2 'Those demos which use 3D will not be built or installed.' + warn2 'You might want to consider installing OpenGL and' + warn2 're-running configure.' + +fi + + +if test "$have_gl" = yes -a "$have_gle" = no ; then + + # nobody cares about this; don't print the warning unless it was + # requested and not found, or halfway-found. + if test "$with_gle_req" = yes -o "$gle_halfassed" = yes ; then + + if test "$with_gle_req" = yes ; then + noteL 'Use of the GLE (GL Extrusion) library was requested, but' + warn2 'it was not found (though the OpenGL library was found, and' + warn2 'is being used.)' + elif test "$with_gle_req" = no ; then + noteL 'The OpenGL Library is being used, but the GLE (GL Extrusion)' + warn2 'library is not.' + else + noteL 'The OpenGL Library was found, but the GLE (GL Extrusion)' + warn2 'library was not.' + fi + + if test "$gle_halfassed" = yes ; then + echo '' + warn2 'More specifically, we found the headers, but not the' + warn2 'libraries; so either GLE is half-installed on this' + warn2 "system, or something else went wrong. The \`config.log'" + warn2 'file might contain some clues.' + fi + + echo '' + warn2 'Some of the OpenGL (3D) demos (those that depend on GLE)' + warn2 'will not be built or installed. You might want to consider' + warn2 'installing GLE and re-running configure. You can find the' + warn2 'GLE library at ' + + fi +fi + + +if test "$with_readdisplay_req" = yes -a "$have_readdisplay" = no ; then + warn 'Use of XReadDisplay was requested, but it was not found.' +fi + +if test "$with_kerberos_req" = yes -a "$have_kerberos" = no ; then + warn 'Use of Kerberos was requested, but it was not found.' +fi + +if test "$with_pam_req" = yes -a "$have_pam" = no ; then + warn 'Use of PAM was requested, but it was not found.' +fi + +if test "$with_shadow_req" = yes -a "$have_shadow" = no ; then + warn 'Use of shadow passwords was requested, but they were not found.' +fi + +if test "$setcap_hacks_req" = yes -a "$have_libcap" = no ; then + warn 'Use of libcap was requested, but it was not found.' +fi + +if test "$ac_macosx" = yes ; then + if test "$enable_locking" = yes ; then + warn "You have specified --enable-locking on MacOS X." + warn2 "THIS DOES NOT WORK! Don't do this!" + fi +fi + + +# You are in a twisty maze of namespaces and syntaxes, all alike. +# Fuck the skull of Unix. +# +bindir=`eval eval eval eval eval eval eval echo $bindir` +HACKDIR=`eval eval eval eval eval eval eval echo $HACKDIR` +HACK_CONF_DIR=`eval eval eval eval eval eval eval echo $HACK_CONF_DIR` + +# canonicalize slashes. +bindir=`echo "${bindir}" | sed 's@/$@@;s@//*@/@g'` +HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` +HACK_CONF_DIR=`echo "${HACK_CONF_DIR}" | sed 's@/$@@;s@//*@/@g'` + + +# Sanity check the hackdir +for bad_choice in xscreensaver xscreensaver-demo xscreensaver-command ; do + if test "${HACKDIR}" = "${bindir}/${bad_choice}" ; then + echo "" + AC_MSG_ERROR([\"--with-hackdir=${bindir}/${bad_choice}\" won't work. + There will be an executable installed with that name, so + that can't be the name of a directory as well. Please + re-configure with a different directory name.]) + fi +done + + +# Now let's warn if there's a previous RPM version already installed. +# But don't bother with this test if we are currently *building* an RPM. + +if test -z "$RPM_PACKAGE_VERSION" ; then + + rpmnames="xscreensaver xscreensaver-base xscreensaver-extras" + + # M4 sucks!! + changequote(X,Y) + rpmv=`(rpm -qv $rpmnames) 2>/dev/null | \ + sed -n 's/^[-a-z]*-\([0-9][0-9]*[.][0-9][0-9a-z]*\)-.*$/\1/p' | \ + head -1` + changequote([,]) + + if test \! -z "$rpmv" ; then + + # M4 sucks!! + changequote(A,B) + rpmbdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)xscreensaver-demo$@\1@p'` + rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares$@\1@p'` + rpmcdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` + rpmadir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)XScreenSaver$@\1@p'` + changequote([,]) + + err=" (DIFFERS)" + if test -z "$rpmbdir" ; then rpmbdir='???' + elif test "$rpmbdir" != "${bindir}/" ; then rpmbdir="$rpmbdir$err";fi + + if test -z "$rpmhdir" ; then rpmhdir='???' + elif test "$rpmhdir" != "${HACKDIR}/" ; then rpmhdir="$rpmhdir$err";fi + + if test -z "$rpmcdir" ; then rpmcdir='???' + elif test "$rpmcdir" != "${HACK_CONF_DIR}/"; then rpmcdir="$rpmcdir$err";fi + + if test -z "$rpmadir" ; then rpmadir='???' + elif test "$rpmadir" != "${APPDEFAULTS}/" ; then rpmadir="$rpmadir$err";fi + + warning=no + warnL "There is already an installed RPM of xscreensaver" + warn2 "version \"$rpmv\" on this system." + echo "" + warn2 "It is currently installed in these directories:" + echo "" + warn2 "User programs: $rpmbdir$berr" + warn2 "Screen savers: $rpmhdir$herr" + warn2 "Configuration: $rpmcdir$cerr" + warn2 "App Defaults: $rpmadir$aerr" + fi +fi + +# Also warn if there's a Debian package installed. +# +debnames="xscreensaver xscreensaver-data xscreensaver-data-extra" +debv='' +for dpkg in $debnames ; do + if test -z "$debv"; then + debv=`dpkg -s $dpkg 2>/dev/null | sed -n 's/^Version: \(.*\)$/\1/p'` + fi +done + +if test \! -z "$debv" ; then + + # M4 sucks!! + changequote(A,B) + debbdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/bin/\)xscreensaver$@\1@p'` + debhdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares$@\1@p'` + debcdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` + debadir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)XScreenSaver[^/]*$@\1@p'` + changequote([,]) + + err=" (DIFFERS)" + if test -z "$debbdir" ; then debbdir='???' + elif test "$debbdir" != "${bindir}/" ; then debbdir="$debbdir$err"; fi + + if test -z "$debhdir" ; then debhdir='???' + elif test "$debhdir" != "${HACKDIR}/" ; then debhdir="$debhdir$err"; fi + + if test -z "$debcdir" ; then debcdir='???' + elif test "$debcdir" != "${HACK_CONF_DIR}/" ; then debcdir="$debcdir$err"; fi + + if test -z "$debadir" ; then debadir='???' + elif test "$debadir" != "${APPDEFAULTS}/" ; then debadir="$debadir$err"; fi + + warning=no + warnL "There is already an installed dpkg of xscreensaver" + warn2 "version \"$debv\" on this system." + echo "" + warn2 "It is currently installed in these directories:" + echo "" + warn2 "User programs: $debbdir$berr" + warn2 "Screen savers: $debhdir$herr" + warn2 "Configuration: $debcdir$cerr" + warn2 "App Defaults: $debadir$aerr" +fi + +echo "" +echo "$warnsep" +echo "" +echo " XScreenSaver will be installed in these directories:" +echo "" +echo " User programs: ${bindir}/" +echo " Screen savers: ${HACKDIR}/" +echo " Configuration: ${HACK_CONF_DIR}/" +echo " App Defaults: ${APPDEFAULTS}/" +echo "" diff --git a/configure.in b/configure.in deleted file mode 100644 index a2e943e..0000000 --- a/configure.in +++ /dev/null @@ -1,4928 +0,0 @@ -# configure.in --- xscreensaver, Copyright (c) 1997-2014 Jamie Zawinski. -# - -AC_PREREQ(2.52) -AC_INIT(driver/subprocs.c) -AC_CONFIG_HEADERS([config.h]) - -echo "current directory: `pwd`" -echo "command line was: $0 $@" - -############################################################################### -# -# Autoheader stuff -# -############################################################################### - -AH_TOP([ -/* config.h.in --- xscreensaver, Copyright (c) 1991-2014 Jamie Zawinski. - * - * The best way to set these parameters is by running the included `configure' - * script. That examines your system, and generates `config.h' from - * `config.h.in'. - * - * If something goes very wrong, you can edit `config.h' directly, but beware - * that your changes will be lost if you ever run `configure' again. - */ -]) - -AH_TEMPLATE([HAVE_READ_DISPLAY_EXTENSION], - [Define this if you have the XReadDisplay extension (I think - this is an SGI-only thing; it's in - .) A few of the screenhacks will - take advantage of this if it's available.]) - -AH_TEMPLATE([HAVE_XHPDISABLERESET], - [Define this if you have the XHPDisableReset function (an HP only - thing which allows the Ctrl-Sh-Reset key sequence to be - temporarily disabled.)]) - -# This only ever existed in X11R4 and X11R5. -#AH_TEMPLATE([HAVE_XIDLE_EXTENSION], -# [Define this if you have the XIDLE extension installed. If you -# have the XIDLE extension, this is recommended. (You have this -# extension if the file /usr/include/X11/extensions/xidle.h -# exists.) Turning on this flag lets XScreenSaver work better with -# servers which support this extension; but it will still work -# with servers which do not suport it, so it's a good idea to -# compile in support for it if you can.]) - -# Using this extension will crash your X server and make fading not work. -#AH_TEMPLATE([HAVE_MIT_SAVER_EXTENSION], -# [Define this if you have the MIT-SCREEN-SAVER extension -# installed. See the caveats about this extension, above. -# (It's available if /usr/include/X11/extensions/scrnsaver.h -# exists.)]) - -# This only ever existed on SGI hardware. -#AH_TEMPLATE([HAVE_SGI_SAVER_EXTENSION], -# [Define this if you have the SGI SCREEN_SAVER extension. This is -# standard on Irix systems, and not available elsewhere.]) - -# This only ever existed on SGI hardware. -#AH_TEMPLATE([HAVE_SGI_VC_EXTENSION], -# [Define this if you have the SGI-VIDEO-CONTROL extension. This -# is standard on Irix systems, and not available elsewhere.]) - -AH_TEMPLATE([HAVE_DPMS_EXTENSION], - [Define this if you have the XDPMS extension. This is standard - on sufficiently-recent XFree86 systems, and possibly elsewhere. - (It's available if the file /usr/include/X11/extensions/dpms.h - exists.)]) - -AH_TEMPLATE([HAVE_XF86VMODE], - [Define this if you have the functions XF86VidModeGetModeLine() - and XF86VidModeGetViewPort(), in support of virtual desktops - where the X server's root window is bigger than the actual - screen. This is an XFree86 thing, and probably doesn't exist - elsewhere. (It's available if the file - /usr/include/X11/extensions/xf86vmode.h exists.)]) - -AH_TEMPLATE([HAVE_XF86VMODE_GAMMA], - [Define this if you have the functions XF86VidModeGetGamma() and - XF86VidModeSetGamma(), which allow clients to change the gamma - response of the monitor. This is an XFree86 4.0.x thing, and - probably doesn't exist elsewhere. (It's available if the file - /usr/include/X11/extensions/xf86vmode.h exists and has stuff about - gamma in it.)]) - -AH_TEMPLATE([HAVE_XF86VMODE_GAMMA_RAMP], - [Define this if you have the functions XF86VidModeGetGammaRamp() - and XF86VidModeSetGammaRamp(), which provide finer-grained - control than XF86VidMode[GS]etGamma(). These appeared in - XFree86 4.1.0.]) - -AH_TEMPLATE([HAVE_XINERAMA], - [Define this if you have the Xinerama extension. This is - standard on sufficiently-recent XFree86 systems, and possibly - elsewhere. (It's available if the file - /usr/include/X11/extensions/Xinerama.h exists.)]) - -AH_TEMPLATE([HAVE_XINPUT], - [Define this if you have the Xinput extension. This is - standard since X11R5, and is thus almost everywhere. - (It's available if the file /usr/include/X11/extensions/XInput.h - exists.)]) - -AH_TEMPLATE([HAVE_XF86MISCSETGRABKEYSSTATE], - [Define this if you have the XF86MiscSetGrabKeysState function - (which allows the Ctrl-Alt-KP_star and Ctrl-Alt-KP_slash key - sequences to be temporarily disabled. Sadly, it doesn't affect - Ctrl-Alt-BS or Ctrl-Alt-F1.)]) - -AH_TEMPLATE([HAVE_RANDR], - [Define this if you have the Resize and Rotate extension. - This is standard on sufficiently-recent XFree86 systems, and - possibly elsewhere. (It's available if the file - /usr/include/X11/extensions/Xrandr.h exists.)]) - -AH_TEMPLATE([HAVE_RANDR_12], - [Define this if the RANDR library is version 1.2 or newer.]) - -AH_TEMPLATE([HAVE_PROC_INTERRUPTS], - [Define this if you have a Linux-like /proc/interrupts file which - can be examined to determine when keyboard activity has - occurred.]) - -AH_TEMPLATE([HAVE_PROC_OOM], - [Define this if you have a Linux-like /proc/.../oom_score_adj file - which can be adjusted by root to exempt us from the out-of-memory - .]) - -AH_TEMPLATE([HAVE_MOTIF],[Define this if you have Motif.]) - -AH_TEMPLATE([HAVE_XMCOMBOBOX], - [Define this if you have the XmComboBox Motif widget (Motif 2.0.)]) - -AH_TEMPLATE([HAVE_GTK],[Define this if you have Gtk (any version.)]) -AH_TEMPLATE([HAVE_GTK2],[Define this if you have Gtk 2.x.]) - -AH_TEMPLATE([HAVE_CRAPPLET], - [Define this if you have Gnome and want to build support for the - xscreensaver control panel in the Gnome Control Center - (gnomecc). (This is needed only with Gtk 1.x.)]) - -AH_TEMPLATE([HAVE_CRAPPLET_IMMEDIATE], - [Define this if HAVE_CRAPPLET is defined, and the function - capplet_widget_changes_are_immediate() is available.]) - -AH_TEMPLATE([HAVE_XML],[Define this if you have the XML library.]) - -AH_TEMPLATE([HAVE_OLD_XML_HEADERS], - [Define this if you have the XML library headers in their old, - non-namespaced location (you lack the gnome-xml/libxml symlink)]) - -AH_TEMPLATE([HAVE_GDK_PIXBUF], - [Define this if you have the GDK_Pixbuf library installed. Some - of the demos can make use of this if it is available.]) - -AH_TEMPLATE([HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION], - [Define this if you have the gdk_pixbuf_apply_embedded_orientation - function (gdk-pixbuf 2.12).]) - -AH_TEMPLATE([HAVE_JPEGLIB], - [Define this if you have the Independent JPEG Group's JPEG - library installed. Some of the demos can make use of this if it - is available.]) - -AH_TEMPLATE([HAVE_LIBPNG], - [Define this if the Portable Network Graphics library is installed. - It is basically required, but many things will more-or-less limp - along without it.]) - -AH_TEMPLATE([HAVE_XMU], - [Define this if you have the Xmu library. This is standard part - of X, and if your vendor doesn't ship it, you should report that - as a bug.]) - -AH_TEMPLATE([HAVE_XUTF8DRAWSTRING], - [Define this if you have the function Xutf8DrawString().]) - -AH_TEMPLATE([HAVE_XFT], - [Define this if you have libXft2.]) - -AH_TEMPLATE([HAVE_LIBSYSTEMD], - [Define this if you have libsystemd.]) - -AH_TEMPLATE([HAVE_GL], - [Define this if you have OpenGL. Some of the demos require it, - so if you don't have it, then those particular demos won't be - built. (This won't affect the screen saver as a whole.)]) - -AH_TEMPLATE([HAVE_MESA_GL], - [Define this if you have OpenGL, but it's the MesaGL variant. - (The libraries have different names.) (HAVE_GL should be defined - too.)]) - -AH_TEMPLATE([HAVE_GLBINDTEXTURE], - [Define this if your version of OpenGL has the glBindTexture() - routine. This is the case for OpenGL 1.1, but not for OpenGL - 1.0.]) - -AH_TEMPLATE([HAVE_GLE], - [Define this if you have the -lgle and -lmatrix libraries (GL - extrusion.)]) - -AH_TEMPLATE([HAVE_GLE3],[Define this if you have the -lgle from GLE version 3]) - -AH_TEMPLATE([HAVE_JWZGLES],[Define this to target the OpenGL ES 1.x API - instead of OpenGL 1.3.]) - -AH_TEMPLATE([HAVE_XSHM_EXTENSION], - [Define this if you have the X Shared Memory Extension.]) - -AH_TEMPLATE([HAVE_DOUBLE_BUFFER_EXTENSION], - [Define this if you have the X Double Buffer Extension.]) - -AH_TEMPLATE([FORTUNE_PROGRAM], - [Some screenhacks like to run an external program to generate - random pieces of text; set this to the one you like. Note that - this is just the default; X resources can be used to override - it.]) - -AH_TEMPLATE([PASSWD_HELPER_PROGRAM], - [Set the name of the password helper program, if any]) - -AH_TEMPLATE([NO_LOCKING], - [Define this to remove the option of locking the screen at all.]) - -AH_TEMPLATE([ALLOW_ROOT_PASSWD], - [Define this to allow the root password to unlock the screen.]) - -AH_TEMPLATE([HAVE_KERBEROS], - [Define this if you want to use Kerberos authentication to - lock/unlock the screen instead of your local password. This - currently uses Kerberos V4, but a V5 server with V4 - compatibility will work. WARNING: DO NOT USE AFS string-to-key - passwords with this option. This option currently *only* works - with standard Kerberos des_string_to_key. If your password is - an AFS password and not a kerberos password, it will not - authenticate properly. See the comments in driver/kpasswd.c for - more information if you need it.]) - -AH_TEMPLATE([HAVE_KERBEROS5], - [Define this if you have Kerberos 5, meaning we need to use the - Kerberos 4 compatibility layer.]) - -AH_TEMPLATE([HAVE_PAM], - [Define this if you want to use PAM (Pluggable Authentication - Modules) to lock/unlock the screen, instead of standard - /etc/passwd authentication.]) - -AH_TEMPLATE([PAM_SERVICE_NAME], - [If PAM is being used, this is the name of the PAM service that - xscreensaver will authenticate as. The default is - "xscreensaver", which means that the PAM library will look for - an "xscreensaver" line in /etc/pam.conf, or (on recent Linux - systems) will look for a file called /etc/pam.d/xscreensaver. - Some systems might already have a PAM installation that is - configured for xlock, so setting this to "xlock" would also work - in that case.]) - -AH_TEMPLATE([HAVE_PAM_FAIL_DELAY], - [Define this if you have pam_fail_delay function. - see driver/passwd-pam.c.]) - -AH_TEMPLATE([PAM_CHECK_ACCOUNT_TYPE], - [Whether PAM should check the result of account modules - when authenticating. Only do this if you have account - configured properly on your system.]) - -AH_TEMPLATE([PAM_STRERROR_TWO_ARGS], - [Define if you have PAM and pam_strerror() requires two - arguments.]) - -AH_TEMPLATE([HAVE_SIGTIMEDWAIT], - [Define to 1 if you have the `sigtimedwait' function.]) - -AH_TEMPLATE([HAVE_SHADOW_PASSWD], - [Define this if your system uses 'shadow' passwords, that is, the - passwords live in /etc/shadow instead of /etc/passwd, and one - reads them with getspnam() instead of getpwnam(). (Note that - SCO systems do some random other thing; others might as well. - See the ifdefs in driver/passwd-pwent.c if you're having trouble - related to reading passwords.)]) - -AH_TEMPLATE([HAVE_ENHANCED_PASSWD], - [Define this if your system is Digital or SCO Unix with so-called - ``Enhanced Security'', that is, the passwords live in - /tcb/files/auth// instead of in /etc/passwd, and one - reads them with getprpwnam() instead of getpwnam().]) - -AH_TEMPLATE([HAVE_ADJUNCT_PASSWD], - [Define this if your system is Solaris with ``adjunct'' passwords - (this is the version where one gets at the passwords with - getpwanam() instead of getpwnam().) I haven't tested this one, - let me know if it works.]) - -AH_TEMPLATE([HAVE_HPUX_PASSWD], - [Define this if you are running HPUX with so-called ``Secure - Passwords'' (if you have /usr/include/hpsecurity.h, you probably - have this.) I haven't tested this one, let me know if it works.]) - -AH_TEMPLATE([HAVE_SYSLOG], - [Define this if you the openlog(), syslog(), and closelog() - functions. This is used for logging failed login attempts.]) - -AH_TEMPLATE([HAVE_ICMP], - [Define this if you do pings with a `struct icmp' and an - `icmp_id' slot.]) - -AH_TEMPLATE([HAVE_ICMPHDR], - [Define this if you do pings with a `struct icmphdr' and an - `un.echo.id' slot.]) - -AH_TEMPLATE([HAVE_GETIFADDRS], - [Define this if you have the getifaddrs() function.]) - -AH_TEMPLATE([HAVE_FORKPTY], - [Define this if you have the 'forkpty' function: - This allows 'phosphor' and 'apple2' to run curses-based - programs, or be used as terminal windows.]) - -AH_TEMPLATE([HAVE_GETTIMEOFDAY], - [Define this if you have the gettimeofday function.]) - -AH_TEMPLATE([GETTIMEOFDAY_TWO_ARGS], - [Define this if gettimeofday() takes two arguments.]) - -AH_TEMPLATE([XPointer], - [Define this to void* if you're using X11R4 or earlier.]) - -AH_TEMPLATE([HAVE_PTHREAD], - [Define this if your system supports POSIX threads.]) - -AH_TEMPLATE([HAVE_LIBCAP], - [Define this if your system has libcap.]) - -AH_TEMPLATE([HAVE_RECORD_ANIM], - [Define this to enable recording of videos.]) - -# After checking to see that --srcdir is correct (which AC_INIT does) -# check for some random other files that come later in the tar file, -# to make sure everything is here. -# -for d in utils jwxyz hacks hacks/glx driver ; do - f=$srcdir/$d/Makefile.in - if test \! -r $f ; then - echo "" - echo "ERROR: The package is incomplete: $f does not exist." - echo " This probably means that your download was truncated." - echo "" - exit 1 - fi -done - -############################################################################### -# -# Query AX_PTHREAD, and figure out which compiler gets used. -# -############################################################################### - -AC_DEFUN([AC_PROG_CC_PTHREAD], - [have_pthread=no - with_pthread_req=unspecified - - # AX_PTHREAD is from the GNU Autoconf Archive. - # https://savannah.gnu.org/projects/autoconf-archive/ - m4_include(ax_pthread.m4) - - # This affects CC, LIBS, and CFLAGS, instead of defining new variables. - - AC_ARG_WITH([pthread], - [ --with-pthread Enables POSIX threads, for SMP support.], - [with_pthread="$withval"; with_pthread_req="$withval"], - [with_pthread=yes]) - - if test "$with_pthread" = yes; then - # AX_PTHREAD might want a different compiler. - AX_PTHREAD( - [if test "$CC" = "$PTHREAD_CC" -o -z "$ac_original_cc"; then - have_pthread=yes - else - ac_prog_cc_no_pthread=yes - fi - ]) - - if test "$have_pthread" = yes; then - AC_DEFINE([HAVE_PTHREAD]) - CC=$PTHREAD_CC - fi - fi -]) - - -############################################################################### -# -# Function to figure out how to run the compiler. -# -############################################################################### - -AC_DEFUN([AC_PROG_CC_ANSI], - [AC_REQUIRE([AC_PROG_CC]) - - if test -z "$GCC"; then - # not using GCC - AC_MSG_CHECKING(how to request ANSI compilation) - case "$host" in - *-hpux* ) - AC_MSG_RESULT(HPUX: adding -Ae) - CC="$CC -Ae" - ;; - *-aix* ) - AC_MSG_RESULT(AIX: adding -qlanglvl=ansi -qhalt=e) - CC="$CC -qlanglvl=ansi -qhalt=e" - ;; - *-dec-* ) - AC_MSG_RESULT(DEC: adding -std1 -ieee) - CC="$CC -std1" - ;; - *) - AC_MSG_RESULT(no idea) - ;; - esac - else - # using GCC - case "$host" in - *-solaris*) - AC_MSG_RESULT(Solaris: adding -D__EXTENSIONS__) - CC="$CC -D__EXTENSIONS__" - ;; - esac - fi - - OBJCC="$CC" - - # This test makes cross-compiling fail, so let's just assume that nobody - # is using a K&R compiler any more... - # -# AC_MSG_CHECKING([whether the compiler works on ANSI C]) -# AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], -# AC_MSG_RESULT(yes), -# AC_MSG_RESULT(no) -# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.), -# AC_MSG_ERROR(Couldn't build even a trivial ANSI C program: check CC.)) - - if test -n "$GCC"; then - AC_MSG_RESULT(Turning on gcc compiler warnings.) - CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs -Wmissing-prototypes" - OBJCC="$OBJCC -Wall" - # As of gcc 3.4, we have "-Wdeclaration-after-statement" - # and so perhaps now we can do without -pedantic? - else - case "$host" in - *-irix5* |*-irix6.[0-3]* ) - AC_MSG_RESULT(Turning on SGI compiler warnings.) - CC="$CC -fullwarn -use_readonly_const -rdata_shared -g3" - ;; -# *-dec-osf* ) -# if test -z "$GCC"; then -# AC_MSG_RESULT(Turning on DEC C compiler warnings.) -# CC="$CC -migrate -w0 -verbose -warnprotos" -# fi -# ;; - esac - fi -]) - - -############################################################################### -# -# Check for availability of various gcc command-line options. -# -############################################################################### - -AC_DEFUN([AC_CHECK_GCC_ARG], - [if test -n "$GCC"; then - AC_CACHE_CHECK([whether gcc accepts [$2]], - ac_cv_gcc_accepts_[$1], - [rm -rf conftest.$ac_ext - touch conftest.$ac_ext - if ( ( gcc -c [$2] conftest.$ac_ext -o/dev/null >/dev/null ) 2>&1 | \ - grep unrecognized >/dev/null ); then - ac_cv_gcc_accepts_[$1]=no - else - ac_cv_gcc_accepts_[$1]=yes - CC="$CC [$2]" - fi]) - ac_gcc_accepts_[$1]="$ac_cv_gcc_accepts_[$1]" - fi -]) - -AC_DEFUN([AC_NO_LONG_STRING_WARNINGS], - [AC_CHECK_GCC_ARG(no_overlength, -Wno-overlength-strings)]) - -AC_DEFUN([AC_NO_MISPLACED_DECLARATIONS], - [AC_CHECK_GCC_ARG(no_decl_after, -Wdeclaration-after-statement)]) - -# Need to disable Objective C extensions in ANSI C on MacOS X to work -# around an Apple-specific gcc bug. -# -AC_DEFUN([AC_NO_OBJECTIVE_C], - [AC_CHECK_GCC_ARG(no_cpp_precomp, -no-cpp-precomp)]) - -############################################################################### -# -# Function to figure out how to disable // comments in ANSI C code. -# -# (With recent gcc, this is done with "-std=c89". With older gcc, this -# is done by passing "-lang-c89" to cpp, by passing "-Wp,-lang-c89" to -# gcc. Old gcc doesn't support -std, and new gcc doesn't support -lang. -# so much for compatibility!) -# -# UPDATE: apparently there is NO WAY to tell gcc 3.2.2 to require that -# declarations preceed statements, without resorting to "-pedantic". -# This means that there is no way to get gcc3 to issue warnings that -# ensure that your code complies with the ANSI/ISO C89 standard, without -# also drowning in totally useless warnings. Thank you master may I -# have another. -# -# So, I give up, let's just use -pedantic. -# -############################################################################### - -AC_DEFUN([AC_GCC_ACCEPTS_STD], [ - case "$host" in - *-darwin* ) - # Fucking Apple let // comments sneak into OpenGL headers, so - # we *must* allow // comments when compiling on Mac OS 10.6! FUCK! - ;; - *) - AC_CHECK_GCC_ARG(std, -std=c89) - ;; - esac -]) - -AC_DEFUN([AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE], - [if test -n "$GCC"; then - AC_GCC_ACCEPTS_STD - AC_MSG_RESULT(Disabling C++ comments in ANSI C code.) - # - # The reason that // comments are banned from xscreensaver is that gcc is - # basically the only compiler in the world that supports them in C code. - # All other vendors support them only in their C++ compilers, not in their - # ANSI C compilers. This means that it's a portability problem: every time - # these comments have snuck into the xscreensaver source code, I've gotten - # complaints about it the next day. So we turn off support for them in gcc - # as well to prevent them from accidentially slipping in. - # - if test "$ac_gcc_accepts_std" = yes ; then - # - # -std=c89 defines __STRICT_ANSI__, which we don't want. - # (That appears to be the only additional preprocessor symbol - # it defines, in addition to the syntax changes it makes.) - # - # -std=gnu89 is no good, because // comments were a GNU extension - # before they were in the ANSI C 99 spec... (gcc 2.96 permits // - # with -std=gnu89 but not with -std=c89.) - # - # $CC already contains "-std=c89" via AC_GCC_ACCEPTS_STD - CC="$CC -U__STRICT_ANSI__" -# else -# # The old way: -# CC="$CC -Wp,-lang-c89" - fi - fi -]) - - -############################################################################### -# -# Function to figure out how to create directory trees. -# -############################################################################### - -AC_DEFUN([AC_PROG_INSTALL_DIRS], - [AC_CACHE_CHECK([whether "\${INSTALL} -d" creates intermediate directories], - ac_cv_install_d_creates_dirs, - [ac_cv_install_d_creates_dirs=no - rm -rf conftestdir - if mkdir conftestdir; then - cd conftestdir 2>/dev/null - ${INSTALL} -d `pwd`/dir1/dir2 >/dev/null 2>&1 - if test -d dir1/dir2/. ; then - ac_cv_install_d_creates_dirs=yes - fi - cd .. 2>/dev/null - rm -rf conftestdir - fi - ]) - - if test "$ac_cv_install_d_creates_dirs" = no ; then - AC_CACHE_CHECK([whether "mkdir -p" creates intermediate directories], - ac_cv_mkdir_p_creates_dirs, - [ac_cv_mkdir_p_creates_dirs=no - rm -rf conftestdir - if mkdir conftestdir; then - cd conftestdir 2>/dev/null - mkdir -p dir1/dir2 >/dev/null 2>&1 - if test -d dir1/dir2/. ; then - ac_cv_mkdir_p_creates_dirs=yes - fi - cd .. 2>/dev/null - rm -rf conftestdir - fi - ]) - fi - - if test "$ac_cv_install_d_creates_dirs" = yes ; then - INSTALL_DIRS='${INSTALL} -d' - elif test "$ac_cv_mkdir_p_creates_dirs" = yes ; then - INSTALL_DIRS='mkdir -p' - else - # any other ideas? - INSTALL_DIRS='${INSTALL} -d' - fi -]) - - -############################################################################### -# -# Function to check whether gettimeofday() exists, and how to call it. -# This may define HAVE_GETTIMEOFDAY and GETTIMEOFDAY_TWO_ARGS. -# -############################################################################### - -AC_DEFUN([AC_GETTIMEOFDAY_ARGS], - [AC_MSG_CHECKING(how to call gettimeofday) - AC_CACHE_VAL(ac_cv_gettimeofday_args, - [AC_TRY_COMPILE([#include - #include ], - [struct timeval tv; struct timezone tzp; - gettimeofday(&tv, &tzp);], - [ac_gettimeofday_args=2], - [AC_TRY_COMPILE([#include - #include ], - [struct timeval tv; gettimeofday(&tv);], - [ac_gettimeofday_args=1], - [ac_gettimeofday_args=0])]) - ac_cv_gettimeofday_args=$ac_gettimeofday_args]) - ac_gettimeofday_args=$ac_cv_gettimeofday_args - if test "$ac_gettimeofday_args" = 1 ; then - AC_DEFINE(HAVE_GETTIMEOFDAY) - AC_MSG_RESULT(one argument) - elif test "$ac_gettimeofday_args" = 2 ; then - AC_DEFINE(HAVE_GETTIMEOFDAY) - AC_DEFINE(GETTIMEOFDAY_TWO_ARGS) - AC_MSG_RESULT(two arguments) - else - AC_MSG_RESULT(unknown) - fi -]) - - -############################################################################### -# -# Function to find perl5 (defines PERL and PERL_VERSION.) -# -############################################################################### - -# M4 sucks!! perl sucks too!! -changequote(X,Y) -perl_version_cmd='print $]' -changequote([,]) - -AC_DEFUN([AC_PROG_PERL], - [AC_PATH_PROGS(PERL, [perl5 perl],,) - if test -z "$PERL" ; then - PERL_VERSION=0 - else - AC_CACHE_CHECK([perl version], ac_cv_perl_version, - [ac_cv_perl_version=`$PERL -e "$perl_version_cmd"`]) - PERL_VERSION=$ac_cv_perl_version - fi - ]) - - -############################################################################### -# -# Function to demand "bc". Losers. -# -############################################################################### - -AC_DEFUN([AC_DEMAND_BC], - [ac_bc_result=`echo 6+9 | bc 2>/dev/null` - AC_MSG_CHECKING([for bc]) - if test "$ac_bc_result" = "15" ; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - echo '' - AC_MSG_ERROR([Your system doesn't have \"bc\", which has been a standard - part of Unix since the 1970s. Come back when your vendor - has grown a clue.]) - fi - ]) - -############################################################################### -# -# Functions to check how to do ICMP PING requests. -# -############################################################################### - -AC_DEFUN([AC_CHECK_ICMP], - [AC_CACHE_CHECK([for struct icmp], ac_cv_have_icmp, - [AC_TRY_COMPILE([#include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include ], - [struct icmp i; - struct sockaddr s; - struct sockaddr_in si; - struct ip ip; - i.icmp_type = ICMP_ECHO; - i.icmp_code = 0; - i.icmp_cksum = 0; - i.icmp_id = 0; - i.icmp_seq = 0; - si.sin_family = AF_INET; - #if defined(__DECC) || defined(_IP_VHL) - ip.ip_vhl = 0; - #else - ip.ip_hl = 0; - #endif - ], - [ac_cv_have_icmp=yes], - [ac_cv_have_icmp=no])]) - if test "$ac_cv_have_icmp" = yes ; then - AC_DEFINE(HAVE_ICMP) - fi]) - -AC_DEFUN([AC_CHECK_ICMPHDR], - [AC_CACHE_CHECK([for struct icmphdr], ac_cv_have_icmphdr, - [AC_TRY_COMPILE([#include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include ], - [struct icmphdr i; - struct sockaddr s; - struct sockaddr_in si; - struct ip ip; - i.type = ICMP_ECHO; - i.code = 0; - i.checksum = 0; - i.un.echo.id = 0; - i.un.echo.sequence = 0; - si.sin_family = AF_INET; - ip.ip_hl = 0;], - [ac_cv_have_icmphdr=yes], - [ac_cv_have_icmphdr=no])]) - if test "$ac_cv_have_icmphdr" = yes ; then - AC_DEFINE(HAVE_ICMPHDR) - fi]) - - -############################################################################### -# -# Functions to check for various X11 crap. -# -############################################################################### - -# Try and find the app-defaults directory. -# It sucks that autoconf doesn't do this already... -# -AC_DEFUN([AC_PATH_X_APP_DEFAULTS_XMKMF],[ - rm -fr conftestdir - if mkdir conftestdir; then - cd conftestdir 2>/dev/null - # Make sure to not put "make" in the Imakefile rules, since we grep it out. - cat > Imakefile <<'EOF' -acfindx: - @echo 'ac_x_app_defaults="${XAPPLOADDIR}"' -EOF - if (xmkmf) >/dev/null 2>&1 && test -f Makefile; then - # GNU make sometimes prints "make[1]: Entering...", which'd confuse us. - eval `${MAKE-make} acfindx 2>/dev/null | grep -v make` - fi - cd .. 2>/dev/null - rm -fr conftestdir - fi]) - -############################################################################### -# -# Handle the --with-x-app-defaults option HERE -# -############################################################################### - -AC_ARG_WITH(x-app-defaults,[], - [ac_cv_x_app_defaults="$withval"], - [eval ac_x_app_defaults="$withval"]) - - -AC_DEFUN([AC_PATH_X_APP_DEFAULTS_DIRECT],[ - # Look for the directory under a standard set of common directories. - # Check X11 before X11Rn because it's often a symlink to the current release. - for ac_dir in \ - \ - /usr/share/X11/app-defaults \ - \ - /usr/X11/lib/app-defaults \ - /usr/X11R6/lib/app-defaults \ - /usr/X11R6/lib/X11/app-defaults \ - /usr/X11R5/lib/app-defaults \ - /usr/X11R5/lib/X11/app-defaults \ - /usr/X11R4/lib/app-defaults \ - /usr/X11R4/lib/X11/app-defaults \ - \ - /usr/lib/X11/app-defaults \ - /usr/lib/X11R6/app-defaults \ - /usr/lib/X11R5/app-defaults \ - /usr/lib/X11R4/app-defaults \ - \ - /etc/X11/app-defaults \ - \ - /usr/local/X11/lib/app-defaults \ - /usr/local/X11R6/lib/app-defaults \ - /usr/local/X11R5/lib/app-defaults \ - /usr/local/X11R4/lib/app-defaults \ - \ - /usr/local/lib/X11/app-defaults \ - /usr/local/lib/X11R6/app-defaults \ - /usr/local/lib/X11R6/X11/app-defaults \ - /usr/local/lib/X11R5/app-defaults \ - /usr/local/lib/X11R5/X11/app-defaults \ - /usr/local/lib/X11R4/app-defaults \ - /usr/local/lib/X11R4/X11/app-defaults \ - \ - /usr/X386/lib/X11/app-defaults \ - /usr/x386/lib/X11/app-defaults \ - /usr/XFree86/lib/X11/app-defaults \ - \ - /usr/lib/X11/app-defaults \ - /usr/local/lib/X11/app-defaults \ - /usr/unsupported/lib/X11/app-defaults \ - /usr/athena/lib/X11/app-defaults \ - /usr/local/x11r5/lib/X11/app-defaults \ - /usr/lpp/Xamples/lib/X11/app-defaults \ - /lib/usr/lib/X11/app-defaults \ - \ - /usr/openwin/lib/app-defaults \ - /usr/openwin/lib/X11/app-defaults \ - /usr/openwin/share/lib/app-defaults \ - /usr/openwin/share/lib/X11/app-defaults \ - \ - /X11R6/lib/app-defaults \ - /X11R5/lib/app-defaults \ - /X11R4/lib/app-defaults \ - ; \ - do - if test -d "$ac_dir"; then - ac_x_app_defaults=$ac_dir - break - fi - done -]) - -AC_DEFUN([AC_PATH_X_APP_DEFAULTS], - [AC_REQUIRE_CPP() - AC_CACHE_CHECK([for X app-defaults directory], ac_cv_x_app_defaults, - [# skip this, it's always wrong these days. - # AC_PATH_X_APP_DEFAULTS_XMKMF - if test x"$ac_x_app_defaults" = x; then - true AC_PATH_X_APP_DEFAULTS_DIRECT - fi - if test x"$ac_x_app_defaults" = x; then - /bin/echo -n 'fallback: ' - ac_cv_x_app_defaults="/usr/lib/X11/app-defaults" - else - # Record where we found app-defaults for the cache. - ac_cv_x_app_defaults="$ac_x_app_defaults" - fi]) - eval ac_x_app_defaults="$ac_cv_x_app_defaults"]) - - -AC_DEFUN([AC_XPOINTER], - [AC_CACHE_CHECK([for XPointer], ac_cv_xpointer, - [AC_TRY_X_COMPILE([#include ], - [XPointer foo = (XPointer) 0;], - [ac_cv_xpointer=yes], - [ac_cv_xpointer=no])]) - if test "$ac_cv_xpointer" != yes; then - AC_DEFINE(XPointer,[char*]) - fi]) - - -# Random special-cases for X on certain pathological OSes. -# You know who you are. -# -AC_DEFUN([AC_X_RANDOM_PATHS], - [case "$host" in - *-hpux*) - - # The following arcana was gleaned from conversations with - # Eric Schwartz : - # - # On HPUX 10.x, the parts of X that HP considers "standard" live in - # /usr/{include,lib}/X11R6/. The parts that HP doesn't consider - # "standard", notably, Xaw and Xmu, live in /usr/contrib/X11R6/. - # Yet /usr/contrib/X11R6/ comes preinstalled on all HPUX systems. - # Also, there are symlinks from /usr/include/ and /usr/lib/ into - # /usr/{include,lib}/X11R6/, so that (if you don't use Xmu at all) - # you don't need any -I or -L arguments. - # - # On HPUX 9.x, /usr/{include,lib}/X11R5/ and /usr/contrib/X11R5/ - # are the same division as 10.x. However, there are no symlinks to - # the X stuff from /usr/include/ and /usr/lib/, so -I and -L - # arguments are always necessary. - # - # However, X11R6 was available on HPUX 9.x as a patch: if that - # patch was installed, then all of X11R6 went in to - # /usr/contrib/X11R6/ (there was no /usr/{include,lib}/X11R6/.) - # - # HPUX 8.x was the same as 9.x, but was X11R4 instead (I don't know - # whether R5 was available as a patch; R6 undoubtedly was not.) - # - # So. We try and use the highest numbered pair of - # /usr/{include,lib}/X11R?/ and /usr/contrib/X11R?/{include,lib}/ - # that are available. We do not mix and match different versions - # of X. - # - # Question I still don't know the answer to: (do you?) - # - # * On HPUX 9.x, where /usr/include/X11R5/ was standard, and - # /usr/contrib/X11R6/ could be installed as a patch, what was in - # that contrib directory? Did it contain so-called "standard" - # X11R6, or did it include Xaw and Xmu as well? If the former, - # where did one find Xaw and Xmu on 9.x R6 systems? Would this - # be a situation where one had to reach into the R5 headers and - # libs to find Xmu? That is, must both R6 and R5 directories - # be on the -I and -L lists in that case? - # - for version in X11R6 X11R5 X11R4 ; do - # if either pair of directories exists... - if test -d /usr/include/$version || test -d /usr/contrib/$version/include - then - # if contrib exists, use it... - if test -d /usr/contrib/$version/include ; then - X_CFLAGS="$X_CFLAGS -I/usr/contrib/$version/include" - X_LIBS="$X_LIBS -L/usr/contrib/$version/lib" - fi - # if the "standard" one exists, use it. - if test -d /usr/include/$version ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/$version" - X_LIBS="$X_LIBS -L/usr/lib/$version" - fi - # since at least one of the pair exists, go no farther. - break - fi - done - - # Now find Motif. Thanks for not making xmkmf find this by - # default, you losers. - # - if test -d /usr/include/Motif2.1 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif2.1" - X_LIBS="$X_LIBS -L/usr/lib/Motif2.1" - elif test -d /usr/include/Motif1.2 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.2" - X_LIBS="$X_LIBS -L/usr/lib/Motif1.2" - elif test -d /usr/include/Motif1.1 ; then - X_CFLAGS="$X_CFLAGS -I/usr/include/Motif1.1" - X_LIBS="$X_LIBS -L/usr/lib/Motif1.1" - fi - - # Now let's check for the pseudo-standard locations for OpenGL. - # - if test -d /opt/graphics/OpenGL/include ; then - # HP-UX 10.20 puts it here - X_CFLAGS="-I/opt/graphics/OpenGL/include $X_CFLAGS" - X_LIBS="-L/opt/graphics/OpenGL/lib $X_LIBS" - elif test -d /opt/Mesa/lib ; then - X_CFLAGS="-I/opt/Mesa/include $X_CFLAGS" - X_LIBS="-L/opt/Mesa/lib $X_LIBS" - fi - - - # On HPUX, default to installing in /opt/xscreensaver/ instead of - # in /usr/local/, unless there is already an xscreensaver in - # /usr/local/bin/. This can be overridden with the --prefix arg - # to configure. I'm not sure this is the right thing to do, but - # Richard Lloyd says so... - # - if test \! -x /usr/local/bin/xscreensaver ; then - ac_default_prefix=/opt/xscreensaver - fi - - ;; - *-solaris*) - - # Thanks for not making xmkmf find this by default, pinheads. - # And thanks for moving things around again, too. Is this - # really the standard location now? What happened to the - # joke that this kind of thing went in /opt? - # cthomp says "answer: CDE (Common Disorganized Environment)" - # - if test -f /usr/dt/include/Xm/Xm.h ; then - X_CFLAGS="$X_CFLAGS -I/usr/dt/include" - MOTIF_LIBS="$MOTIF_LIBS -L/usr/dt/lib -R/usr/dt/lib" - - # Some versions of Slowlaris Motif require -lgen. But not all. Why? - AC_CHECK_LIB(gen, regcmp, [MOTIF_LIBS="$MOTIF_LIBS -lgen"]) - fi - - ;; - *-darwin*) - - # On MacOS X (10.x with "fink"), many things are under /sw/. - # - if test -d /sw/include ; then - X_CFLAGS="-I/sw/include $X_CFLAGS" - X_LIBS="-L/sw/lib $X_LIBS" - fi - ;; - esac]) - -AC_DEFUN([AC_CHECK_GETIFADDRS], - [AC_CACHE_CHECK([for getifaddrs], ac_cv_have_getifaddrs, - [AC_TRY_COMPILE([#include - #include - #include - #include ], - [struct ifaddrs *ifa; - getifaddrs (&ifa); - ifa->ifa_next = 0; - ifa->ifa_addr->sa_family = 0;], - [ac_cv_have_getifaddrs=yes], - [ac_cv_have_getifaddrs=no])]) - if test "$ac_cv_have_getifaddrs" = yes ; then - AC_DEFINE(HAVE_GETIFADDRS) - fi]) - -AC_DEFUN([AC_TYPE_SOCKLEN_T], - [AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t, - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include - #include ]], [[ - socklen_t socklen; - ]])],[ac_cv_type_socklen_t=yes],[ac_cv_type_socklen_t=no])]) - if test "$ac_cv_type_socklen_t" != yes; then - AC_DEFINE(socklen_t, int, - [Define to `int' if or does not define.]) - fi]) - -############################################################################### -# -# Some utility functions to make checking for X things easier. -# -############################################################################### - -# Like AC_CHECK_HEADER, but it uses the already-computed -I directories. -# -AC_DEFUN([AC_CHECK_X_HEADER], [ - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - AC_CHECK_HEADER([$1],[$2],[$3],[$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) - -# Like AC_EGREP_HEADER, but it uses the already-computed -I directories. -# -AC_DEFUN([AC_EGREP_X_HEADER], [ - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - AC_EGREP_HEADER([$1], [$2], [$3], [$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) - -# Like AC_TRY_COMPILE, but it uses the already-computed -I directories. -# -AC_DEFUN([AC_TRY_X_COMPILE], [ - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - AC_TRY_COMPILE([$1], [$2], [$3], [$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) - - -# Like AC_CHECK_LIB, but it uses the already-computed -I and -L directories. -# Use this sparingly; it probably doesn't work very well on X programs. -# -AC_DEFUN([AC_CHECK_X_LIB], [ - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" -# ac_save_LIBS="$LIBS" - - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" - fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS" - - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS` - AC_CHECK_LIB([$1], [$2], [$3], [$4], [$5]) - CPPFLAGS="$ac_save_CPPFLAGS" - LDFLAGS="$ac_save_LDFLAGS" -# LIBS="$ac_save_LIBS" - ]) - -# Like AC_TRY_RUN, but it uses the already-computed -I directories. -# (But not the -L directories!) -# -AC_DEFUN([AC_TRY_X_RUN], [ - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS` - AC_TRY_RUN([$1], [$2], [$3], [$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) - - - -# Usage: HANDLE_X_PATH_ARG([variable_name], -# [--command-line-option], -# [descriptive string]) -# -# All of the --with options take three forms: -# -# --with-foo (or --with-foo=yes) -# --without-foo (or --with-foo=no) -# --with-foo=/DIR -# -# This function, HANDLE_X_PATH_ARG, deals with the /DIR case. When it sees -# a directory (string beginning with a slash) it checks to see whether -# /DIR/include and /DIR/lib exist, and adds them to $X_CFLAGS and $X_LIBS -# as appropriate. -# -AC_DEFUN([HANDLE_X_PATH_ARG], [ - case "$[$1]" in - yes) ;; - no) ;; - - /*) - AC_MSG_CHECKING([for [$3] headers]) - d=$[$1]/include - if test -d $d; then - X_CFLAGS="-I$d $X_CFLAGS" - AC_MSG_RESULT($d) - else - AC_MSG_RESULT(not found ($d: no such directory)) - fi - - AC_MSG_CHECKING([for [$3] libs]) - d=$[$1]/lib - if test -d $d; then - X_LIBS="-L$d $X_LIBS" - AC_MSG_RESULT($d) - else - AC_MSG_RESULT(not found ($d: no such directory)) - fi - - # replace the directory string with "yes". - [$1]_req="yes" - [$1]=$[$1]_req - ;; - - *) - echo "" - echo "error: argument to [$2] must be \"yes\", \"no\", or a directory." - echo " If it is a directory, then \`DIR/include' will be added to" - echo " the -I list, and \`DIR/lib' will be added to the -L list." - exit 1 - ;; - esac - ]) - - - -############################################################################### -############################################################################### -# -# End of function definitions. Now start actually executing stuff. -# -############################################################################### -############################################################################### - -# WTF! autoconf emits this *way* too late. Do it earlier. -test "x$prefix" = xNONE && prefix=$ac_default_prefix -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - - -# random compiler setup -AC_CANONICAL_HOST - -ac_original_cc=$CC -AC_PROG_CC -AC_PROG_CC_PTHREAD # Needs ac_original_cc. - -AC_PROG_CC_ANSI -AC_NO_LONG_STRING_WARNINGS -AC_NO_MISPLACED_DECLARATIONS -AC_NO_OBJECTIVE_C -AC_NO_CPLUSPLUS_COMMENTS_IN_C_CODE -AC_PROG_CPP -AC_C_CONST -AC_C_INLINE -AC_EXEEXT -AC_DEMAND_BC - -# stuff for Makefiles -AC_PROG_INSTALL -AC_PROG_INSTALL_DIRS -AC_PROG_MAKE_SET - -# By default, autoconf sets INSTALL_SCRIPT to '${INSTALL_PROGRAM}'. -# That's wrong: it should be set to '${INSTALL}', so that one can -# implement the "install-strip" target properly (strip executables, -# but do not try to strip scripts.) -# -INSTALL_SCRIPT='${INSTALL}' - -# random libc stuff -AC_HEADER_STDC -AC_CHECK_HEADERS(unistd.h inttypes.h) -AC_TYPE_MODE_T -AC_TYPE_PID_T -AC_TYPE_SIZE_T -AC_TYPE_SIGNAL -AC_HEADER_TIME -AC_HEADER_SYS_WAIT -AC_HEADER_DIRENT -AC_GETTIMEOFDAY_ARGS -AC_SYS_LARGEFILE -AC_CHECK_FUNCS(select fcntl uname nice setpriority getcwd getwd putenv sbrk) -AC_CHECK_FUNCS(sigaction syslog realpath setrlimit) -AC_CHECK_FUNCS(setlocale sqrtf) -AC_CHECK_FUNCS(getaddrinfo) -AC_CHECK_MEMBERS([struct sockaddr.sa_len],,, [[#include ]]) -AC_CHECK_ICMP -AC_CHECK_ICMPHDR -AC_CHECK_GETIFADDRS -AC_TYPE_SOCKLEN_T -AC_CHECK_HEADERS(crypt.h sys/select.h) -AC_PROG_PERL - -if test -z "$PERL" ; then - # don't let it be blank... - PERL=/usr/bin/perl -fi - -AC_PATH_XTRA - -if test "$have_x" != yes; then - AC_MSG_ERROR(Couldn't find X11 headers/libs. Try `$0 --help'.) -fi - -AC_PATH_X_APP_DEFAULTS -AC_X_RANDOM_PATHS -AC_XPOINTER - -AC_MSG_CHECKING(whether this is MacOS X) - ac_macosx=no - case "$host" in - *-apple-darwin* ) - ac_macosx=yes - ;; - esac -AC_MSG_RESULT($ac_macosx) - - -############################################################################### -# -# Gettext support -# -############################################################################### - -IT_PROG_INTLTOOL -GETTEXT_PACKAGE=xscreensaver -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", - [This is the name of the gettext package to use.]) -AC_DEFINE_UNQUOTED(PACKAGE, "$GETTEXT_PACKAGE", - [This is the same as GETTEXT_PACKAGE, but for the glade - generated code.]) -AC_SUBST(GETTEXT_PACKAGE) - -ALL_LINGUAS="da de es et fi fr hu it ja ko nb nl pl pt pt_BR ru sk sv vi wa zh_CN zh_TW" -AM_GLIB_GNU_GETTEXT -MKINSTALLDIRS="$INSTALL_DIRS" - - -############################################################################### -# -# Check for -lXmu (some fucked up vendors don't ship it...) -# -############################################################################### - -have_xmu=no -AC_CHECK_X_HEADER(X11/Xmu/Error.h, [have_xmu=yes],, - [#include - #include - #include ]) -if test "$have_xmu" = no ; then - XMU_SRCS='$(UTILS_SRC)/xmu.c' - XMU_OBJS='$(UTILS_BIN)/xmu.o' - XMU_LIBS='' -else - XMU_SRCS='' - XMU_OBJS='' - XMU_LIBS='-lXmu' - AC_DEFINE(HAVE_XMU) -fi - - -############################################################################### -# -# Check for the SunOS 4.1.x _get_wmShellWidgetClass bug. -# See comp.windows.x FAQ question 124. The right fix is to -# get OpenWindows 3.0 patches 100512-02 and 100573-03. -# -############################################################################### - -if test "$have_xmu" = yes ; then - case "$host" in - *-sunos4*) - AC_CACHE_CHECK([for the SunOS 4.1.x _get_wmShellWidgetClass bug], - ac_cv_sunos_xmu_bug, - [ac_save_LDFLAGS="$LDFLAGS" - if test \! -z "$x_libraries" ; then - LDFLAGS="$LDFLAGS -L$x_libraries" - fi - # Note: this trick never works! (Generally.) - # We're only getting away with using AC_TRY_LINK - # with X libraries because we know it's SunOS. - LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm" - AC_TRY_LINK(,, - [ac_cv_sunos_xmu_bug=no], - [ac_cv_sunos_xmu_bug=yes]) - LDFLAGS="$ac_save_LDFLAGS"]) - if test "$ac_cv_sunos_xmu_bug" = yes ; then - AC_CACHE_CHECK([whether the compiler understands -static], - ac_cv_ld_static, - [ac_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -static" - AC_TRY_LINK(,,[ac_cv_ld_static=yes],[ac_cv_ld_static=no]) - LDFLAGS="$ac_save_LDFLAGS"]) - if test "$ac_cv_ld_static" = yes ; then - LDFLAGS="$LDFLAGS -static" - else - LDFLAGS="$LDFLAGS -Bstatic" - fi - fi - ;; - esac -fi - - -############################################################################### -# -# Handle the --with-hackdir option -# -############################################################################### - -have_hackdir=yes -with_hackdir_req=unspecified -AC_ARG_WITH(hackdir,[ - -Installation options: - --with-hackdir=DIR Where to install the hundreds of demo executables. - Default: `PREFIX/libexec/xscreensaver/'], - [with_hackdir="$withval"; with_hackdir_req="$withval"],[with_hackdir=yes]) - -if test x"$with_hackdir" = xyes; then - HACKDIR='${libexecdir}/xscreensaver' -elif test x"$with_hackdir" = xno; then - HACKDIR='${bindir}' -else - HACKDIR=$with_hackdir -fi - -# canonicalize slashes. -HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` - -# Expand HACKDIR as HACKDIR_FULL -HACKDIR_FULL=`eval eval eval eval eval eval eval eval eval echo $HACKDIR` - -# This option used to be called --enable-subdir; make sure that is no longer -# used, since configure brain-damagedly ignores unknown --enable options. - -obsolete_enable= -AC_ARG_ENABLE(subdir,,[obsolete_enable=yes]) -if test -n "$obsolete_enable"; then - echo "error: the --enable-subdir option has been replaced with" - echo " the new --with-hackdir option; see \`configure --help'" - echo " for more information." - exit 1 -fi - - -############################################################################### -# -# Handle the --with-configdir option -# Help for --with-x-app-defaults option added. -# -############################################################################### - -have_configdir=yes -with_configdir_req=unspecified -AC_ARG_WITH(configdir, -[ --with-configdir=DIR Where to install the data files that describe each - of the display modes to the GUI. - Default: `PREFIX/share/xscreensaver/config/' - --with-x-app-defaults=DIR - Where to install xscreensaver configuration file. -], - [with_configdir="$withval"; with_configdir_req="$withval"], - [with_configdir=yes]) - -if test x"$with_configdir" = xyes; then - HACK_CONF_DIR='${datadir}/xscreensaver/config' -elif test x"$with_configdir" = xno; then - echo "error: must be yes, or a pathname: --with-configdir=$with_configdir" - exit 1 -else - # there must be a better way than this... - if test -z "`echo $with_configdir | sed 's@^/.*@@'`" ; then - # absolute path - HACK_CONF_DIR=$with_configdir - else - # relative path - HACK_CONF_DIR="\${exec_prefix}$with_configdir" - fi -fi - - - - -############################################################################### -# -# Check for the SGI SCREEN_SAVER server extension. -# -############################################################################### - -#have_sgi=no -#with_sgi_req=unspecified -#AC_ARG_WITH(sgi-ext, -#[Except where noted, all of the --with options below can also take a -#directory argument: for example, `--with-motif=/opt/Motif'. That would -#cause /opt/Motif/include/ to be added to the -I list, and /opt/Motif/lib/ -#to be added to the -L list, assuming those directories exist. -# -#By default, support for each of these options will be built in, if the -#relevant library routines exist. At run time, they will then be used -#only if the X server being used supports them. Each --with option has -#a corresponding --without option, to override building support for them -#at all. -# -#Screen blanking and idle-detection options: -# -# --with-sgi-ext Include support for the SGI SCREEN_SAVER extension.], -# [with_sgi="$withval"; with_sgi_req="$withval"],[with_sgi=yes]) -# -#HANDLE_X_PATH_ARG(with_sgi, --with-sgi-ext, SGI SCREEN_SAVER) -# -#if test "$with_sgi" = yes; then -# AC_CHECK_X_HEADER(X11/extensions/XScreenSaver.h, -# [have_sgi=yes -# AC_DEFINE(HAVE_SGI_SAVER_EXTENSION)],, -# [#include ]) -# -#elif test "$with_sgi" != no; then -# echo "error: must be yes or no: --with-sgi-ext=$with_sgi" -# exit 1 -#fi - - -############################################################################### -# -# Check for the XIDLE server extension. -# -############################################################################### - -#have_xidle=no -#with_xidle_req=unspecified -#AC_ARG_WITH(xidle-ext, -#[ --with-xidle-ext Include support for the XIDLE extension.], -# [with_xidle="$withval"; with_xidle_req="$withval"],[with_xidle=yes]) -# -#HANDLE_X_PATH_ARG(with_xidle, --with-xidle-ext, XIDLE) -# -#if test "$with_xidle" = yes; then -# AC_CHECK_X_HEADER(X11/extensions/xidle.h, -# [have_xidle=yes -# AC_DEFINE(HAVE_XIDLE_EXTENSION)],, -# [#include ]) -#elif test "$with_xidle" != no; then -# echo "error: must be yes or no: --with-xidle-ext=$with_xidle" -# exit 1 -#fi - - -############################################################################### -# -# Check for the SGI-VIDEO-CONTROL server extension. -# -############################################################################### - -#have_sgivc=no -#with_sgivc_req=unspecified -#AC_ARG_WITH(sgivc-ext, -#[ --with-sgivc-ext Include support for the SGI-VIDEO-CONTROL extension.], -# [with_sgivc="$withval"; with_sgivc_req="$withval"],[with_sgivc=yes]) -# -#HANDLE_X_PATH_ARG(with_sgivc, --with-sgivc-ext, SGI-VIDEO-CONTROL) -# -#if test "$with_sgivc" = yes; then -# -# # first check for XSGIvc.h -# AC_CHECK_X_HEADER(X11/extensions/XSGIvc.h, [have_sgivc=yes],, -# [#include ]) -# -# # if that succeeded, then check for the -lXsgivc -# if test "$have_sgivc" = yes; then -# have_sgivc=no -# AC_CHECK_X_LIB(Xsgivc, XSGIvcQueryGammaMap, -# [have_sgivc=yes; SAVER_LIBS="$SAVER_LIBS -lXsgivc"], [true], -# -lXext -lX11) -# fi -# -# # if that succeeded, then we've really got it. -# if test "$have_sgivc" = yes; then -# AC_DEFINE(HAVE_SGI_VC_EXTENSION) -# fi -# -#elif test "$with_sgivc" != no; then -# echo "error: must be yes or no: --with-sgivc-ext=$with_sgivc" -# exit 1 -#fi - - -############################################################################### -# -# Check for the DPMS server extension. -# -############################################################################### - -have_dpms=no -with_dpms_req=unspecified -AC_ARG_WITH(dpms-ext, -[ --with-dpms-ext Include support for the DPMS extension.], - [with_dpms="$withval"; with_dpms_req="$withval"],[with_dpms=yes]) - -HANDLE_X_PATH_ARG(with_dpms, --with-dpms-ext, DPMS) - -if test "$with_dpms" = yes; then - - # first check for dpms.h - AC_CHECK_X_HEADER(X11/extensions/dpms.h, [have_dpms=yes],, - [#include - #include ]) - - # if that succeeded, then check for the DPMS code in the libraries - if test "$have_dpms" = yes; then - - # first look in -lXext (this is where it is with XFree86 4.0) - have_dpms=no - AC_CHECK_X_LIB(Xext, DPMSInfo, [have_dpms=yes], [true], -lXext -lX11) - - # if that failed, look in -lXdpms (this is where it was in XFree86 3.x) - if test "$have_dpms" = no; then - AC_CHECK_X_LIB(Xdpms, DPMSInfo, - [have_dpms=yes; XDPMS_LIBS="-lXdpms"], [true], - -lXext -lX11) - fi - fi - - - # if that succeeded, then we've really got it. - if test "$have_dpms" = yes; then - AC_DEFINE(HAVE_DPMS_EXTENSION) - fi - -elif test "$with_dpms" != no; then - echo "error: must be yes or no: --with-dpms-ext=$with_dpms" - exit 1 -fi - - -############################################################################### -# -# Check for the XINERAMA server extension. -# -############################################################################### - -have_xinerama=no -with_xinerama_req=unspecified -AC_ARG_WITH(xinerama-ext, -[ --with-xinerama-ext Include support for the XINERAMA extension.], - [with_xinerama="$withval"; with_xinerama_req="$withval"],[with_xinerama=yes]) - -HANDLE_X_PATH_ARG(with_xinerama, --with-xinerama-ext, XINERAMA) - -AC_CHECK_X_LIB(Xss, XScreenSaverQueryInfo, [X_EXTRA_LIBS="$X_EXTRA_LIBS -lXss"], [true], - -lXss -lX11) - - -if test "$with_xinerama" = yes; then - - # first check for Xinerama.h - AC_CHECK_X_HEADER(X11/extensions/Xinerama.h, [have_xinerama=yes],, - [#include ]) - - # if that succeeded, then check for the XINERAMA code in the libraries - if test "$have_xinerama" = yes; then - - # first look in -lXext - have_xinerama=no - AC_CHECK_X_LIB(Xext, XineramaQueryScreens, [have_xinerama=yes], [true], - -lXext -lX11) - - # if that failed, look in -lXinerama (this is where it is in XFree86 4.1.) - if test "$have_xinerama" = no; then - AC_CHECK_X_LIB(Xinerama, XineramaQueryScreens, - [have_xinerama=yes; XINERAMA_LIBS="-lXinerama"], - [true], -lXext -lX11) - fi - fi - - # if that succeeded, then we've really got it. - if test "$have_xinerama" = yes; then - AC_DEFINE(HAVE_XINERAMA) - fi - -elif test "$with_xinerama" != no; then - echo "error: must be yes or no: --with-xinerama-ext=$with_xinerama" - exit 1 -fi - - -############################################################################### -# -# Check for the XINPUT server extension. -# -############################################################################### - -have_xinput=no -with_xinput_req=unspecified -AC_ARG_WITH(xinput-ext, -[ --with-xinput-ext Include support for the XInput extension.], - [with_xinput="$withval"; with_xinput_req="$withval"], [with_xinput=yes]) - -HANDLE_X_PATH_ARG(with_xinput, --with-xinput-ext, XINPUT) - -if test "$with_xinput" = yes; then - - # first check for Xinput.h - AC_CHECK_X_HEADER(X11/extensions/XInput.h, [have_xinput=yes],, - [#include ]) - - # if that succeeded, then check for libXi - if test "$have_xinput" = yes; then - have_xinput=no - AC_CHECK_X_LIB(Xi, XListInputDevices, - [have_xinput=yes; SAVER_LIBS="$SAVER_LIBS -lXi"], - [true], -lXext -lX11) - fi - - # if that succeeded, then we've really got it. - if test "$have_xinput" = yes; then - AC_DEFINE(HAVE_XINPUT) - fi - -elif test "$with_xinput" != no; then - echo "error: must be yes or no: --with-xinput-ext=$with_xinput" - exit 1 -fi - - -############################################################################### -# -# Check for the XF86VMODE server extension (for virtual screens.) -# -############################################################################### - -have_xf86vmode=no -with_xf86vmode_req=unspecified -AC_ARG_WITH(xf86vmode-ext, -[ --with-xf86vmode-ext Include support for XFree86 virtual screens.], - [with_xf86vmode="$withval"; with_xf86vmode_req="$withval"], - [with_xf86vmode=yes]) - -HANDLE_X_PATH_ARG(with_xf86vmode, --with-xf86vmode-ext, xf86vmode) - -VIDMODE_LIBS="" - -if test "$with_xf86vmode" = yes; then - - # first check for xf86vmode.h - AC_CHECK_X_HEADER(X11/extensions/xf86vmode.h, [have_xf86vmode=yes],, - [#include ]) - - # if that succeeded, then check for the -lXxf86vm - if test "$have_xf86vmode" = yes; then - have_xf86vmode=no - AC_CHECK_X_LIB(Xxf86vm, XF86VidModeGetViewPort, - [have_xf86vmode=yes; - VIDMODE_LIBS="-lXxf86vm"; - SAVER_LIBS="$SAVER_LIBS $VIDMODE_LIBS"], - [true], -lXext -lX11) - fi - - # if that succeeded, then we've really got it. - if test "$have_xf86vmode" = yes; then - AC_DEFINE(HAVE_XF86VMODE) - fi - -elif test "$with_xf86vmode" != no; then - echo "error: must be yes or no: --with-xf86vmode-ext=$with_xf86vmode" - exit 1 -fi - - -############################################################################### -# -# Check for the XF86VMODE server extension (for gamma fading.) -# -############################################################################### - -have_xf86gamma=no -have_xf86gamma_ramp=no -with_xf86gamma_req=unspecified -AC_ARG_WITH(xf86gamma-ext, -[ --with-xf86gamma-ext Include support for XFree86 gamma fading.], - [with_xf86gamma="$withval"; with_xf86gamma_req="$withval"], - [with_xf86gamma=yes]) - -HANDLE_X_PATH_ARG(with_xf86gamma, --with-xf86gamma-ext, xf86gamma) - -if test "$with_xf86gamma" = yes; then - - # first check for xf86vmode.h, if we haven't already - if test "$have_xf86vmode" = yes; then - have_xf86gamma=yes - else - AC_CHECK_X_HEADER(X11/extensions/xf86vmode.h, [have_xf86gamma=yes],, - [#include ]) - fi - - # if that succeeded, then check for the -lXxf86vm - if test "$have_xf86gamma" = yes; then - have_xf86gamma=no - AC_CHECK_X_LIB(Xxf86vm, XF86VidModeSetGamma, - [have_xf86gamma=yes], - [true], -lXext -lX11) - fi - - # check for the Ramp versions of the functions too. - if test "$have_xf86gamma" = yes; then - have_xf86gamma_ramp=no - AC_CHECK_X_LIB(Xxf86vm, XF86VidModeSetGammaRamp, - [have_xf86gamma_ramp=yes], - [true], -lXext -lX11) - fi - - # if those tests succeeded, then we've really got the functions. - if test "$have_xf86gamma" = yes; then - AC_DEFINE(HAVE_XF86VMODE_GAMMA) - fi - - if test "$have_xf86gamma_ramp" = yes; then - AC_DEFINE(HAVE_XF86VMODE_GAMMA_RAMP) - fi - - # pull in the lib, if we haven't already - if test "$have_xf86gamma" = yes -a "$have_xf86vmode" = no; then - SAVER_LIBS="$SAVER_LIBS -lXxf86vm" - fi - -elif test "$with_xf86gamma" != no; then - echo "error: must be yes or no: --with-xf86gamma-ext=$with_xf86vmode" - exit 1 -fi - - -############################################################################### -# -# Check for the RANDR (Resize and Rotate) server extension. -# -# We need this to detect when the resolution of the desktop -# has changed out from under us (this is a newer, different -# mechanism than the XF86VMODE virtual viewports.) -# -############################################################################### - -have_randr=no -with_randr_req=unspecified -AC_ARG_WITH(randr-ext, -[ --with-randr-ext Include support for the X Resize+Rotate extension.], - [with_randr="$withval"; with_randr_req="$withval"],[with_randr=yes]) - -HANDLE_X_PATH_ARG(with_randr, --with-randr-ext, RANDR) - -if test "$with_randr" = yes; then - - # first check for Xrandr.h - AC_CHECK_X_HEADER(X11/extensions/Xrandr.h, [have_randr=yes],, - [#include ]) - - # if that succeeded, then check for the XRR code in the libraries - if test "$have_randr" = yes; then - - # RANDR probably needs -lXrender - xrender_libs= - AC_CHECK_X_LIB(Xrender, XRenderSetSubpixelOrder, - [xrender_libs="-lXrender"], [true], -lXext -lX11) - - # first look for RANDR in -lXext - have_randr=no - AC_CHECK_X_LIB(Xext, XRRGetScreenInfo, - [have_randr=yes; SAVER_LIBS="$SAVER_LIBS $xrender_libs"], - [true], $xrender_libs -lXext -lX11) - - # if that failed, look in -lXrandr - if test "$have_randr" = no; then - AC_CHECK_X_LIB(Xrandr, XRRGetScreenInfo, - [have_randr=yes; SAVER_LIBS="$SAVER_LIBS -lXrandr $xrender_libs"], - [true], $xrender_libs -lXext -lX11) - fi - fi - - # if that succeeded, then we've really got it. - if test "$have_randr" = yes; then - AC_DEFINE(HAVE_RANDR) - - # Now check for version 1.2 in the same libs. - # Try to compile, since on MacOS 10.5.7, headers are older than libs! - AC_CACHE_CHECK([for XRRGetScreenResources], ac_cv_randr_12, - [ac_cv_randr_12=no - AC_TRY_X_COMPILE([#include - #include - #include ], - [XRRScreenResources *res = - XRRGetScreenResources (0, 0);], - [ac_cv_randr_12=yes], - [ac_cv_randr_12=no])]) - if test "$ac_cv_randr_12" = yes ; then - AC_DEFINE(HAVE_RANDR_12) - fi -# AC_CHECK_X_LIB(c, XRRGetOutputInfo, [AC_DEFINE(HAVE_RANDR_12)], -# [true], $SAVER_LIBS) - fi - - -elif test "$with_randr" != no; then - echo "error: must be yes or no: --with-randr-ext=$with_randr" - exit 1 -fi - - -############################################################################### -# -# Check for XF86MiscSetGrabKeysState (but only bother if we are already -# using other XF86 stuff.) -# -############################################################################### - -have_xf86miscsetgrabkeysstate=no -if test "$have_xf86gamma" = yes -o "$have_xf86vmode" = yes; then - AC_CHECK_X_LIB(Xxf86misc, XF86MiscSetGrabKeysState, - [have_xf86miscsetgrabkeysstate=yes], - [true], -lXext -lX11) - if test "$have_xf86miscsetgrabkeysstate" = yes ; then - SAVER_LIBS="$SAVER_LIBS -lXxf86misc" - AC_DEFINE(HAVE_XF86MISCSETGRABKEYSSTATE) - fi -fi - - -############################################################################### -# -# Check for HP XHPDisableReset and XHPEnableReset. -# -############################################################################### - -AC_MSG_CHECKING([for XHPDisableReset in X11/XHPlib.h]) -AC_EGREP_X_HEADER(XHPDisableReset, X11/XHPlib.h, - [AC_DEFINE(HAVE_XHPDISABLERESET) - SAVER_LIBS="-lXhp11 $SAVER_LIBS" - AC_MSG_RESULT(yes)], - [AC_MSG_RESULT(no)]) - - -############################################################################### -# -# Check for /proc/interrupts. -# -############################################################################### - -have_proc_interrupts=no -with_proc_interrupts_req=unspecified -AC_ARG_WITH(proc-interrupts, -[ --with-proc-interrupts Include support for consulting the /proc/interrupts - file to notice keyboard activity.], - [with_proc_interrupts="$withval"; with_proc_interrupts_req="$withval"], - [with_proc_interrupts=yes]) - -if test "$with_proc_interrupts" = yes; then - - # Note that we may be building in an environment (e.g. Debian buildd chroot) - # without a proper /proc filesystem. If /proc/interrupts exists, then we'll - # check that it has the bits we need, but otherwise we'll just go on faith. - # - have_proc_interrupts=yes - - if test -f /proc/interrupts; then - AC_CACHE_CHECK([whether /proc/interrupts contains keyboard data], - ac_cv_have_proc_interrupts, - [ac_cv_have_proc_interrupts=no - if grep 'keyboard\|i8042' /proc/interrupts >/dev/null 2>&1 ; then - ac_cv_have_proc_interrupts=yes - fi - ]) - have_proc_interrupts=$ac_cv_have_proc_interrupts - fi - - if test "$have_proc_interrupts" = yes; then - AC_DEFINE(HAVE_PROC_INTERRUPTS) - fi - -elif test "$with_proc_interrupts" != no; then - echo "error: must be yes or no: --with-proc-interrupts=$with_proc_interrupts" - exit 1 -fi - - -############################################################################### -# -# Check for /proc/*/oom_score_adj. -# -############################################################################### - -have_proc_oom=no -with_proc_oom_req=unspecified -AC_ARG_WITH(proc-oom, -[ --with-proc-oom Include support for disabling the OOM-killer.], - [with_proc_oom="$withval"; with_proc_oom_req="$withval"], - [with_proc_oom=yes]) - -if test "$with_proc_oom_req" = yes; then - - # Note that we may be building in an environment (e.g. Debian buildd chroot) - # without a proper /proc filesystem. - # - have_proc_oom=yes - AC_DEFINE(HAVE_PROC_OOM) - -elif test "$with_proc_oom_req" = unspecified; then - - have_proc_oom=no - AC_CACHE_CHECK([whether /proc/$$/oom_score_adj exists], - ac_cv_have_proc_oom, - [ac_cv_have_proc_oom=no - if test -f /proc/$$/oom_score_adj; then - ac_cv_have_proc_oom=yes - fi - ]) - have_proc_oom=$ac_cv_have_proc_oom - - if test "$have_proc_oom" = yes; then - AC_DEFINE(HAVE_PROC_OOM) - fi - -elif test "$with_proc_oom" != no; then - echo "error: must be yes or no: --with-proc-oom=$with_proc_oom" - exit 1 -fi - - -############################################################################### -# -# The --enable-locking option -# -############################################################################### - -AC_ARG_ENABLE(locking,[Screen locking options: - --enable-locking Compile in support for locking the display. - --disable-locking Do not allow locking at all.], - [enable_locking="$enableval"], - [if test "$ac_macosx" = yes; then - # We can't lock on MacOS X, so default to not compiling in support for it. - # But allow --enable-locking to override that, so I can debug Linux locking - # under MacOS X11. - enable_locking=no - else - enable_locking=yes - fi]) -if test "$enable_locking" = yes; then - true -elif test "$enable_locking" = no; then - AC_DEFINE(NO_LOCKING) -else - echo "error: must be yes or no: --enable-locking=$enable_locking" - exit 1 -fi - - -############################################################################### -# -# Whether to allow root password to unblank. -# -############################################################################### -AC_ARG_ENABLE(root-passwd, [ - --enable-root-passwd Allow root passwd to unlock screen. - --disable-root-passwd Do not allow that.], - [enable_root_passwd="$enableval"],[enable_root_passwd=yes]) -if test "$enable_root_passwd" = yes; then - AC_DEFINE(ALLOW_ROOT_PASSWD) - true -elif test "$enable_root_passwd" != no; then - echo "error: must be yes or no: --enable-root-passwd=$enable_root_passwd" - exit 1 -fi - -############################################################################### -# -# Check for PAM. -# -############################################################################### - -case "$host" in - *-solaris*) - # Solaris systems tend to come with PAM misconfigured. - # Don't build it by default, even if the headers exist. - with_pam_default=no - ;; - *) - # Default to building PAM support on all other systems, if it exists. - with_pam_default=yes - ;; -esac - -have_pam=no -with_pam_req=unspecified - -AC_ARG_WITH(pam, -[ --with-pam Include support for PAM (Pluggable Auth Modules.)], - [with_pam="$withval"; with_pam_req="$withval"],[with_pam=$with_pam_default]) - -AC_ARG_WITH([pam_service_name], - AC_HELP_STRING([--with-pam-service-name], - [NAME arg is the name of the PAM service that - xscreensaver will authenticate as.]), - [pam_service_name="$withval"],[pam_service_name="xscreensaver"]) - -AC_ARG_ENABLE(pam-check-account-type, - [AC_HELP_STRING([--enable-pam-check-account-type], - [Whether PAM should check the result of account - modules when authenticating. Only do this if you - have account configured properly on your system.])], - [enable_pam_check_account_type="$enableval"],[enable_pam_check_account_type=no]) -if test "$enable_pam_check_account_type" = yes ; then - AC_DEFINE(PAM_CHECK_ACCOUNT_TYPE) - true -elif test "$enable_pam_check_account_type" != no ; then - echo "error: must be yes or no: --enable-pam-check-account-type=$enable_pam_check_account_type" - exit 1 -fi - -HANDLE_X_PATH_ARG(with_pam, --with-pam, PAM) - -if test "$enable_locking" = yes -a "$with_pam" = yes; then - AC_CACHE_CHECK([for PAM], ac_cv_pam, - [AC_TRY_X_COMPILE([#include ],, - [ac_cv_pam=yes], - [ac_cv_pam=no])]) - if test "$ac_cv_pam" = yes ; then - have_pam=yes - AC_DEFINE(HAVE_PAM) - AC_DEFINE_UNQUOTED(PAM_SERVICE_NAME,"$pam_service_name") - - PASSWD_LIBS="${PASSWD_LIBS} -lpam" - - # libpam typically requires dlopen and dlsym. On FreeBSD, - # those are in libc. On Linux and Solaris, they're in libdl. - AC_CHECK_LIB(dl, dlopen, [PASSWD_LIBS="${PASSWD_LIBS} -ldl"]) - - # On Linux, sigtimedwait() is in libc; on Solaris, it's in librt. - have_timedwait=no - AC_CHECK_LIB(c, sigtimedwait, - [have_timedwait=yes - AC_DEFINE(HAVE_SIGTIMEDWAIT)]) - if test "$have_timedwait" = no ; then - AC_CHECK_LIB(rt, sigtimedwait, [have_timedwait=yes - AC_DEFINE(HAVE_SIGTIMEDWAIT) - PASSWD_LIBS="${PASSWD_LIBS} -lrt"]) - fi - - AC_MSG_CHECKING(how to call pam_strerror) - AC_CACHE_VAL(ac_cv_pam_strerror_args, - [AC_TRY_X_COMPILE([#include - #include - #include ], - [pam_handle_t *pamh = 0; - char *s = pam_strerror(pamh, PAM_SUCCESS);], - [ac_pam_strerror_args=2], - [AC_TRY_X_COMPILE([#include - #include - #include ], - [char *s = - pam_strerror(PAM_SUCCESS);], - [ac_pam_strerror_args=1], - [ac_pam_strerror_args=0])]) - ac_cv_pam_strerror_args=$ac_pam_strerror_args]) - ac_pam_strerror_args=$ac_cv_pam_strerror_args - if test "$ac_pam_strerror_args" = 1 ; then - AC_MSG_RESULT(one argument) - elif test "$ac_pam_strerror_args" = 2 ; then - AC_DEFINE(PAM_STRERROR_TWO_ARGS) - AC_MSG_RESULT(two arguments) - else - AC_MSG_RESULT(unknown) - fi - -# Check pam_fail_delay - AC_MSG_CHECKING(pam_fail_delay in -lpam) - AC_CACHE_VAL(ac_cv_pam_fail_delay, - [ac_save_LDFLAGS="$LDFLAGS" - LDFLAGS="-lpam" - AC_TRY_LINK([#include ], - [pam_handle_t *pamh = 0; - unsigned int usec = 1; - int status = pam_fail_delay (pamh, usec);], - [ac_pam_fail_delay=yes], - [ac_pam_fail_delay=no]) - ac_cv_pam_fail_delay=$ac_pam_fail_delay, - LDFLAGS=$ac_save_LDFLAGS]) - - if test "$ac_pam_fail_delay" = yes ; then - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_PAM_FAIL_DELAY) - else - AC_MSG_RESULT(no) - fi - - fi -fi - - -############################################################################### -# -# Check for Kerberos. -# -############################################################################### - -have_kerberos=no -have_kerberos5=no -with_kerberos_req=unspecified - -AC_ARG_WITH(kerberos, -[ --with-kerberos Include support for Kerberos authentication.], - [with_kerberos="$withval"; with_kerberos_req="$withval"],[with_kerberos=yes]) - -HANDLE_X_PATH_ARG(with_kerberos, --with-kerberos, Kerberos) - -if test "$enable_locking" = yes -a "$with_kerberos" = yes; then - AC_CACHE_CHECK([for Kerberos 4], ac_cv_kerberos, - [AC_TRY_X_COMPILE([#include ],, - [ac_cv_kerberos=yes], - [ac_cv_kerberos=no])]) - AC_CACHE_CHECK([for Kerberos 5], ac_cv_kerberos5, - [AC_TRY_X_COMPILE([#include ],, - [ac_cv_kerberos5=yes], - [ac_cv_kerberos5=no])]) - - if test "$ac_cv_kerberos" = yes ; then - have_kerberos=yes - AC_DEFINE(HAVE_KERBEROS) - fi - - if test "$ac_cv_kerberos5" = yes ; then - - # Andrew Snare wrote: - # - # You were assuming that if kerberosV (krb5) was found, then kerberosIV - # (krb4) was also available. This turns out not to be the case with - # mit-krb-1.2.7; apparently backwards-compatibility with KerberosIV - # is optional. - # - # So, disable kerberosV support if libkrb4 can't be found. - # This is not the best solution, but it makes the compile not fail. - # - AC_CHECK_X_LIB(krb4, krb_get_tf_realm, - [have_kerberos=yes], - [have_kerberos=no]) - if test "$have_kerberos" = yes ; then - have_kerberos5=yes - AC_DEFINE(HAVE_KERBEROS) - AC_DEFINE(HAVE_KERBEROS5) - else - have_kerberos5=no - AC_MSG_WARN([Cannot find compat lib (libkrb4) needed to use Kerberos 5]) - fi - - fi - - if test "$have_kerberos5" = yes ; then - # from Matt Knopp - # (who got it from amu@mit.edu) - - PASSWD_LIBS="$PASSWD_LIBS -lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err" - - # jwz: MacOS X uses -lkrb5, but not -lcrypt - AC_CHECK_X_LIB(crypt, crypt, [PASSWD_LIBS="$PASSWD_LIBS -lcrypt"]) - - elif test "$have_kerberos" = yes ; then - # from Tim Showalter for FreeBSD 4.2 - PASSWD_LIBS="$PASSWD_LIBS -lkrb -ldes -lcom_err" - fi - - if test "$have_kerberos" = yes ; then - AC_CHECK_FUNC(res_search,, - AC_CHECK_LIB(resolv,res_search,PASSWD_LIBS="${PASSWD_LIBS} -lresolv", - AC_MSG_WARN([Can't find DNS resolver libraries needed for Kerberos]) - )) - fi -fi - - -############################################################################### -# -# Check for the nine billion variants of shadow passwords... -# -############################################################################### - -need_setuid=no - -have_shadow=no -with_shadow_req=unspecified - -AC_ARG_WITH(shadow, -[ --with-shadow Include support for shadow password authentication.], - [with_shadow="$withval"; with_shadow_req="$withval"],[with_shadow=yes]) - -HANDLE_X_PATH_ARG(with_shadow, --with-shadow, shadow password) - -if test "$enable_locking" = no ; then - with_shadow_req=no - with_shadow=no -fi - - -############################################################################### -# -# Check for Sun "adjunct" passwords. -# -############################################################################### - -if test "$with_shadow" = yes ; then - AC_CACHE_CHECK([for Sun-style shadow passwords], ac_cv_sun_adjunct, - [AC_TRY_X_COMPILE([#include - #include - #include - #include - #include - #include ], - [struct passwd_adjunct *p = getpwanam("nobody"); - const char *pw = p->pwa_passwd;], - [ac_cv_sun_adjunct=yes], - [ac_cv_sun_adjunct=no])]) - if test "$ac_cv_sun_adjunct" = yes; then - have_shadow_adjunct=yes - have_shadow=yes - need_setuid=yes - fi -fi - - -############################################################################### -# -# Check for DEC and SCO so-called "enhanced" security. -# -############################################################################### - -if test "$with_shadow" = yes ; then - AC_CACHE_CHECK([for DEC-style shadow passwords], ac_cv_enhanced_passwd, - [AC_TRY_X_COMPILE([#include - #include - #include - #include - #include - #include ], - [struct pr_passwd *p; - const char *pw; - set_auth_parameters(0, 0); - check_auth_parameters(); - p = getprpwnam("nobody"); - pw = p->ufld.fd_encrypt;], - [ac_cv_enhanced_passwd=yes], - [ac_cv_enhanced_passwd=no])]) - if test $ac_cv_enhanced_passwd = yes; then - have_shadow_enhanced=yes - have_shadow=yes - need_setuid=yes - - # On SCO, getprpwnam() is in -lprot (which uses nap() from -lx) - # (I'm told it needs -lcurses too, but I don't understand why.) - # But on DEC, it's in -lsecurity. - # - AC_CHECK_LIB(prot, getprpwnam, - [PASSWD_LIBS="$PASSWD_LIBS -lprot -lcurses -lx"], - [AC_CHECK_LIB(security, getprpwnam, - [PASSWD_LIBS="$PASSWD_LIBS -lsecurity"])], - [-lx]) - fi -fi - -############################################################################### -# -# Check for HP's entry in the "Not Invented Here" Sweepstakes. -# -############################################################################### - -if test "$with_shadow" = yes ; then - AC_CACHE_CHECK([for HP-style shadow passwords], ac_cv_hpux_passwd, - [AC_TRY_X_COMPILE([#include - #include - #include - #include - #include - #include ], - [struct s_passwd *p = getspwnam("nobody"); - const char *pw = p->pw_passwd;], - [ac_cv_hpux_passwd=yes], - [ac_cv_hpux_passwd=no])]) - if test "$ac_cv_hpux_passwd" = yes; then - have_shadow_hpux=yes - have_shadow=yes - need_setuid=yes - - # on HPUX, bigcrypt is in -lsec - AC_CHECK_LIB(sec, bigcrypt, [PASSWD_LIBS="$PASSWD_LIBS -lsec"]) - fi -fi - - -############################################################################### -# -# Check for FreeBSD-style shadow passwords. -# -# On FreeBSD, getpwnam() and friends work just like on non-shadow- -# password systems -- except you only get stuff in the pw_passwd field -# if the running program is setuid. So, guess that we've got this -# lossage to contend with if /etc/master.passwd exists, and default to -# a setuid installation. -# -############################################################################### - -if test "$with_shadow" = yes ; then - AC_CACHE_CHECK([for FreeBSD-style shadow passwords], ac_cv_master_passwd, - [if test -f /etc/master.passwd ; then - ac_cv_master_passwd=yes - else - ac_cv_master_passwd=no - fi]) - if test "$ac_cv_master_passwd" = yes; then - need_setuid=yes - fi -fi - - -############################################################################### -# -# Check for traditional (ha!) shadow passwords. -# -############################################################################### - -if test "$with_shadow" = yes ; then - AC_CACHE_CHECK([for generic shadow passwords], ac_cv_shadow, - [AC_TRY_X_COMPILE([#include - #include - #include - #include - #include ], - [struct spwd *p = getspnam("nobody"); - const char *pw = p->sp_pwdp;], - [ac_cv_shadow=yes], - [ac_cv_shadow=no])]) - if test "$ac_cv_shadow" = yes; then - have_shadow=yes - need_setuid=yes - - # On some systems (UnixWare 2.1), getspnam() is in -lgen instead of -lc. - have_getspnam=no - AC_CHECK_LIB(c, getspnam, [have_getspnam=yes]) - if test "$have_getspnam" = no ; then - AC_CHECK_LIB(gen, getspnam, - [have_getspnam=yes; PASSWD_LIBS="$PASSWD_LIBS -lgen"]) - fi - fi -fi - - -############################################################################### -# -# Check for other libraries needed for non-shadow passwords. -# -############################################################################### - -if test "$enable_locking" = yes ; then - - # On some systems (UnixWare 2.1), crypt() is in -lcrypt instead of -lc. - have_crypt=no - AC_CHECK_LIB(c, crypt, [have_crypt=yes]) - if test "$have_crypt" = no ; then - AC_CHECK_LIB(crypt, crypt, - [have_crypt=yes; PASSWD_LIBS="$PASSWD_LIBS -lcrypt"]) - fi -fi - - -# Most of the above shadow mechanisms will have set need_setuid to yes, -# if they were found. But, on some systems, we need setuid even when -# using plain old vanilla passwords. -# -if test "$enable_locking" = yes ; then - case "$host" in - *-hpux* | *-aix* | *-netbsd* | *-freebsd* | *-openbsd* ) - need_setuid=yes - ;; - esac -fi - - -if test "$have_shadow_adjunct" = yes ; then - AC_DEFINE(HAVE_ADJUNCT_PASSWD) -elif test "$have_shadow_enhanced" = yes ; then - AC_DEFINE(HAVE_ENHANCED_PASSWD) -elif test "$have_shadow_hpux" = yes ; then - AC_DEFINE(HAVE_HPUX_PASSWD) -elif test "$have_shadow" = yes ; then - AC_DEFINE(HAVE_SHADOW_PASSWD) -fi - - -############################################################################### -# -# Check for external password helper -# On SuSE, instead of having xscreensaver be a setuid program, they -# fork an external program that takes the password on stdin, and -# returns true if that password is a valid one. Then only that -# smaller program needs to be setuid. -# -# (Note that this external program is not a GUI: the GUI is still -# all in xscreensaver itself; the external program just does auth.) -# -############################################################################### - -have_passwd_helper=no -with_passwd_helper_req=unspecified - -AC_ARG_WITH(passwd-helper, -[ --with-passwd-helper Include support for an external password - verification helper program.], - [with_passwd_helper="$withval"; with_passwd_helper_req="$withval"],[with_passwd_helper=no]) -# no HANDLE_X_PATH_ARG for this one - -if test "$enable_locking" = no ; then - with_passwd_helper_req=no - with_passwd_helper=no -fi - -case "$with_passwd_helper" in - ""|no) : ;; - /*) - AC_DEFINE_UNQUOTED(PASSWD_HELPER_PROGRAM, "$with_passwd_helper") - have_passwd_helper=yes;; - *) - echo "error: --with-passwd-helper needs full pathname of helper (not '$with_passwd_helper')." >&2 - exit 1 -esac - - -############################################################################### -# -# Check for a login manager for a "New Login" button on the lock dialog. -# Usually this will be "/usr/bin/gdmflexiserver". -# -############################################################################### - -with_login_manager_req=unspecified -default_login_manager_1='gdmflexiserver -ls' -default_login_manager_2='kdmctl reserve' -default_login_manager_3='lxdm -c USER_SWITCH' -default_login_manager_4='dm-tool switch-to-greeter' - -AC_ARG_WITH(login-manager, -[ --with-login-manager Put a "New Login" button on the unlock dialog that - runs a login manager like gdmflexiserver or kdmctl.], - [with_login_manager="$withval"; with_login_manager_req="$withval"], - [with_login_manager=yes]) -# no HANDLE_X_PATH_ARG for this one - -if test "$enable_locking" = no ; then - with_login_manager_req=no - with_login_manager=no -fi - -case "$with_login_manager_req" in - no) - with_login_manager="" - ;; - - yes|unspecified) - # Try various defaults, use the first one that exists. - - with_login_manager="" - - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_1 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_1" - fi - fi - - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_2 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_2" - fi - fi - - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_3 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_3" - fi - fi - - if test -z "$with_login_manager" ; then - set dummy $default_login_manager_4 ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) - if test ! -z "$login_manager_tmp" ; then - with_login_manager="$default_login_manager_4" - fi - fi - - ;; - - /*) - # absolute path specified on cmd line - set dummy $with_login_manager_req ; login_manager_tmp=$2 - AC_MSG_CHECKING([for $login_manager_tmp]) - if test -x "$login_manager_tmp" ; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - with_login_manager="" - fi - ;; - - *) - # relative path specified on cmd line - set dummy $with_login_manager_req ; login_manager_tmp=$2 - unset ac_cv_path_login_manager_tmp # don't cache - AC_PATH_PROG(login_manager_tmp, $login_manager_tmp, []) - if test -z "$login_manager_tmp" ; then - with_login_manager="" - else - with_login_manager="$login_manager_tmp" - fi - ;; -esac -ac_cv_login_manager_program="$with_login_manager" - -NEW_LOGIN_COMMAND_P='' -NEW_LOGIN_COMMAND="$ac_cv_login_manager_program" - -AC_MSG_CHECKING(for login manager) -if test -z "$NEW_LOGIN_COMMAND" ; then - NEW_LOGIN_COMMAND="$default_login_manager_1" - NEW_LOGIN_COMMAND_P='! ' - AC_MSG_RESULT($NEW_LOGIN_COMMAND (disabled)) -else - AC_MSG_RESULT($NEW_LOGIN_COMMAND) -fi - - -############################################################################### -# -# Check for -lgtk (and Gnome stuff) -# -############################################################################### - -have_gtk=no -with_gtk_req=unspecified -AC_ARG_WITH(gtk,[ -User interface options: - - --with-gtk Use the Gtk toolkit for the user interface.], - [with_gtk="$withval"; with_gtk_req="$withval"],[with_gtk=yes]) - -# if --with-gtk=/directory/ was specified, remember that directory so that -# we can also look for the `gtk-config' program in that directory. -case "$with_gtk" in - /*) - gtk_dir="$with_gtk" - ;; - *) - gtk_dir="" - ;; -esac - -HANDLE_X_PATH_ARG(with_gtk, --with-gtk, Gtk) - -if test "$with_gtk" != yes -a "$with_gtk" != no ; then - echo "error: must be yes or no: --with-gtk=$with_gtk" - exit 1 -fi - - -parse_gtk_version_string() { - # M4 sucks!! - changequote(X,Y) - maj=`echo $ac_gtk_version_string | sed -n 's/\..*//p'` - min=`echo $ac_gtk_version_string | sed -n 's/[^.]*\.\([^.]*\).*/\1/p'` - changequote([,]) - ac_gtk_version=`echo "$maj * 1000 + $min" | bc` - if test -z "$ac_gtk_version"; then - ac_gtk_version=unknown - ac_gtk_version_string=unknown - fi -} - -# Find pkg-config... (need this for both gtk and gdk_pixbuf.) -# if the user specified --with-gtk=/foo/ then look there. -# -gtk_path="$PATH" -if test ! -z "$gtk_dir"; then - # canonicalize slashes. - foo=`echo "${gtk_dir}/bin" | sed 's@//*@/@g'` - gtk_path="$foo:$gtk_path" -fi - -AC_PATH_PROGS(pkg_config, pkg-config,, $gtk_path) - -if test -z "$pkg_config" ; then - AC_MSG_WARN([pkg-config not found!]) - pkg_config="false" -fi - - -# Utility function for running pkg-config-based tests... -# -pkgs='' -pkg_check_version() { - if test "$ok" = yes ; then - req="$1" - min="$2" - AC_MSG_CHECKING(for $req) - if $pkg_config --exists "$req" ; then - vers=`$pkg_config --modversion "$req"` - if $pkg_config --exists "$req >= $min" ; then - AC_MSG_RESULT($vers) - pkgs="$pkgs $req" - return 1 - else - AC_MSG_RESULT($vers (wanted >= $min)) - ok=no - return 0 - fi - else - AC_MSG_RESULT(no) - ok=no - return 0 - fi - fi -} - - -jurassic_gtk=no -gtk_halfassed=no -have_gtk_2_22_or_higher=no -COMMENT_DEMO_GLADE2_GTK_2_22_HEAD="" -COMMENT_DEMO_GLADE2_GTK_2_22_TAIL="" - -if test "$with_gtk" = yes; then - have_gtk=no - - ok="yes" - pkg_check_version gtk+-2.0 2.0.1 ; ac_gtk_version_string="$vers" - pkg_check_version gmodule-2.0 2.0.0 - pkg_check_version libxml-2.0 2.4.6 - pkg_check_version libglade-2.0 1.99.0 - pkg_check_version gdk-pixbuf-2.0 2.0.0 - pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 - have_gtk="$ok" - - if test "$have_gtk" = no; then - if test -n "$ac_gtk_version_string" ; then - gtk_halfassed="$ac_gtk_version_string" - gtk_halfassed_lib="$req" - fi - fi - - if test "$have_gtk" = yes; then - parse_gtk_version_string - jurassic_gtk=no - fi - - if test "$have_gtk" = yes; then - AC_CACHE_CHECK([for Gtk includes], ac_cv_gtk_config_cflags, - [ac_cv_gtk_config_cflags=`$pkg_config --cflags $pkgs`]) - AC_CACHE_CHECK([for Gtk libs], ac_cv_gtk_config_libs, - [ac_cv_gtk_config_libs=`$pkg_config --libs $pkgs`]) - fi - - ac_gtk_config_cflags=$ac_cv_gtk_config_cflags - ac_gtk_config_libs=$ac_cv_gtk_config_libs - - GTK_EXTRA_OBJS="" - GTK_DATADIR="" - if test "$have_gtk" = yes; then - GTK_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` - GTK_DATADIR="$GTK_DATADIR/share" - fi - - if test "$have_gtk" = yes; then - INCLUDES="$INCLUDES $ac_gtk_config_cflags" - GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs" - AC_DEFINE(HAVE_GTK) - AC_DEFINE(HAVE_GTK2) - AC_DEFINE(HAVE_XML) - fi - - if test "$have_gtk" = yes; then - ok="yes" - pkg_check_version gtk+-2.0 2.22 - have_gtk_2_22_or_higher="$ok" - if test "$have_gtk_2_22_or_higher" = yes; then - COMMENT_DEMO_GLADE2_GTK_2_22_HEAD="" - fi - fi -fi - - -# Check for the various Gnome help and URL loading programs. -# -WITH_BROWSER=gnome-open -if test "$have_gtk" = yes; then - AC_CHECK_PROGS(gnome_open_program, gnome-open) - AC_CHECK_PROGS(gnome_url_show_program, gnome-url-show) -fi - - -############################################################################### -# -# Check for -lXm. -# -############################################################################### - -have_motif=no -with_motif_req=unspecified -AC_ARG_WITH(motif,[ --with-motif Use the Motif toolkit for the user interface - (no longer supported.)], - [with_motif="$withval"; with_motif_req="$withval"],[with_motif=no]) - -HANDLE_X_PATH_ARG(with_motif, --with-motif, Motif) - -if test "$with_motif" != yes -a "$with_motif" != no ; then - echo "error: must be yes or no: --with-motif=$with_motif" - exit 1 -fi - -if test "$with_motif" = yes; then - have_motif=no - AC_CHECK_X_HEADER(Xm/Xm.h, - [have_motif=yes - AC_DEFINE(HAVE_MOTIF) - MOTIF_LIBS="$MOTIF_LIBS -lXm"],, - [#include - #include - #include ]) -fi - - -if test "$have_motif" = yes; then - AC_CHECK_X_HEADER(Xm/ComboBox.h, [AC_DEFINE(HAVE_XMCOMBOBOX)],, - [#include - #include - #include ]) -fi - - -############################################################################### -# -# Checking whether Motif is really Lesstif. -# -############################################################################### - -have_lesstif=no -if test "$have_motif" = yes ; then - AC_CACHE_CHECK([whether Motif is really LessTif], - ac_cv_have_lesstif, - [AC_TRY_X_COMPILE([#include ], - [long vers = LesstifVersion;], - [ac_cv_have_lesstif=yes], - [ac_cv_have_lesstif=no])]) - have_lesstif=$ac_cv_have_lesstif -fi - - -lesstif_version=unknown -lesstif_version_string=unknown - -if test "$have_lesstif" = yes ; then - ltv=unknown - echo unknown > conftest-lt - AC_CACHE_CHECK([LessTif version number], - ac_cv_lesstif_version_string, - [AC_TRY_X_RUN([#include - #include - int main() { - FILE *f = fopen("conftest-lt", "w"); - if (!f) exit(1); - fprintf(f, "%d %d.%d\n", LesstifVersion, - LESSTIF_VERSION, LESSTIF_REVISION); - fclose(f); - exit(0); - }], - [ltv=`cat conftest-lt` - ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'` - ac_cv_lesstif_version_string=`echo $ltv | sed 's/.* //'`], - [ac_cv_lesstif_version=unknown - ac_cv_lesstif_version_string=unknown], - [ac_cv_lesstif_version=unknown - ac_cv_lesstif_version_string=unknown])]) - rm -f conftest-lt - lesstif_version=$ac_cv_lesstif_version - lesstif_version_string=$ac_cv_lesstif_version_string - -fi - - -if test "$have_motif" = yes ; then - mtv=unknown - echo unknown > conftest-mt - AC_CACHE_CHECK([Motif version number], - ac_cv_motif_version_string, - [AC_TRY_X_RUN([#include - #include - int main() { - FILE *f = fopen("conftest-mt", "w"); - if (!f) exit(1); - fprintf(f, "%d %d.%d\n", XmVersion, - XmVERSION, XmREVISION); - fclose(f); - exit(0); - }], - [mtv=`cat conftest-mt` - ac_cv_motif_version=`echo $mtv | sed 's/ .*//'` - ac_cv_motif_version_string=`echo $mtv | sed 's/.* //'`], - [ac_cv_motif_version=unknown - ac_cv_motif_version_string=unknown], - [ac_cv_motif_version=unknown - ac_cv_motif_version_string=unknown])]) - rm -f conftest-mt - motif_version=$ac_cv_motif_version - motif_version_string=$ac_cv_motif_version_string - -fi - - -############################################################################### -# -# Checking whether Motif requires -lXp. -# -# Some versions of Motif (2.1.0, at least) require -lXp, the "X Printing -# Extension". Why this extension isn't in -lXext with all the others, -# I have no idea. -# -############################################################################### - -have_xp_ext=no -if test "$have_motif" = yes ; then - have_xp_ext=no - AC_CHECK_X_LIB(Xp, XpQueryExtension, - [have_xp_ext=yes; MOTIF_LIBS="$MOTIF_LIBS -lXp"], - [true], -lX11 -lXext -lm) -fi - - -############################################################################### -# -# Checking whether Motif requires -lXintl (for _Xsetlocale.) -# -############################################################################### - -have_xintl=no -if test "$have_motif" = yes ; then - AC_CHECK_X_LIB(Xintl, _Xsetlocale, [have_xintl=yes], [have_xintl=no], - -lX11 -lXext -lm) - if test "$have_xintl" = yes; then - MOTIF_LIBS="$MOTIF_LIBS -lXintl" - fi -fi - - -############################################################################### -# -# Check for -lGL or -lMesaGL. -# -############################################################################### - -have_gl=no -ac_have_mesa_gl=no -with_gl_req=unspecified -gl_halfassed=no -AC_ARG_WITH(gl,[ -Graphics options: - - --with-gl Build those demos which depend on OpenGL.], - [with_gl="$withval"; with_gl_req="$withval"],[with_gl=yes]) - -HANDLE_X_PATH_ARG(with_gl, --with-gl, GL) - -ac_mesagl_version=unknown -ac_mesagl_version_string=unknown - -if test "$with_gl" = yes; then - AC_CHECK_X_HEADER(GL/gl.h, have_gl=yes, have_gl=no) - if test "$have_gl" = yes ; then - AC_CHECK_X_HEADER(GL/glx.h, have_gl=yes, have_gl=no, - [#include ]) - fi - - # If we have the headers, try and figure out which vendor it's from. - # - if test "$have_gl" = yes ; then - - # We need to know whether it's MesaGL so that we know which libraries - # to link against. - # - AC_CACHE_CHECK([whether GL is really MesaGL], ac_cv_have_mesa_gl, - [ac_cv_have_mesa_gl=no - if test "$ac_macosx" = no; then - # WTF! MacOS 10.5.0 ships the Mesa GL headers! - # It's not really Mesa, is it? - AC_EGREP_X_HEADER(Mesa|MESA, GL/glx.h, [ac_cv_have_mesa_gl=yes]) - fi]) - ac_have_mesa_gl=$ac_cv_have_mesa_gl - - gl_lib_1="" - GL_LIBS="" - - if test "$ac_macosx" = yes; then - - # Without these, every link against libGL gets a bunch of useless - # warnings. - # - osx_crud="-bind_at_load -multiply_defined suppress" - AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) - GL_LIBS="$GL_LIBS $osx_crud" - unset osx_crud - - # New lossage in 10.5.0: without this, we get: - # ld: cycle in dylib re-exports with /usr/X11/lib/libGL.dylib - # - osx_crud="/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" - osx_crud="-Wl,-dylib_file,${osx_crud}:${osx_crud}" - - AC_MSG_RESULT(adding "$osx_crud" to GL_LIBS) - GL_LIBS="$GL_LIBS $osx_crud" - unset osx_crud - - # New lossage in 10.6.8: we can't allow -L/opt/local/lib to be in the - # link line, or at runtime XQueryExtension gets a segv due to some kind - # of library version skew. Libs must come from /usr/X11/lib even if - # $prefix and/or $exec_prefix are set to /opt/local/. - # - AC_MSG_RESULT(omitting "$libdir" from LDFLAGS) - libdir='' - - # Looks like as of OSX 10.12, gcc can't do ObjC. - OBJCC="clang -Wall" - - fi - - - # Some versions of MesaGL are compiled to require -lpthread. - # So if the Mesa headers exist, and -lpthread exists, then always - # link -lpthread after the Mesa libs (be they named -lGL or -lMesaGL.) - # - # Oftentimes, AX_PTHREAD will bring in -lpthread as well; but that ends - # up before -l(Mesa)GL, instead of after where it would belong. - # - if test "$ac_have_mesa_gl" = yes; then - AC_CHECK_LIB(pthread, pthread_create, [GL_LIBS="-lpthread"], [],) - fi - - - # If we have Mesa headers, check to see if we can link against -lMesaGL. - # If we don't have Mesa headers, or we don't have -lMesaGL, try -lGL. - # Else, warn that GL is busted. (We have the headers, but no libs.) - # - - if test "$ac_have_mesa_gl" = yes ; then - AC_CHECK_X_LIB(MesaGL, glXCreateContext, - [gl_lib_1="MesaGL" - GL_LIBS="-lMesaGL -lMesaGLU $VIDMODE_LIBS $GL_LIBS"], - [], -lMesaGLU $GL_LIBS -lX11 -lXext $VIDMODE_LIBS -lm) - fi - - if test "$gl_lib_1" = "" ; then - AC_CHECK_X_LIB(GL, glXCreateContext, - [gl_lib_1="GL" - GL_LIBS="-lGL -lGLU $VIDMODE_LIBS $GL_LIBS"], - [], -lGLU $GL_LIBS -lX11 -lXext $VIDMODE_LIBS -lm) - fi - - if test "$gl_lib_1" = "" ; then - # we have headers, but no libs -- bail. - have_gl=no - ac_have_mesa_gl=no - gl_halfassed=yes - else - # linking works -- we can build the GL hacks. - AC_DEFINE(HAVE_GL) - if test "$ac_have_mesa_gl" = yes ; then - AC_DEFINE(HAVE_MESA_GL) - fi - fi - fi - - - # Now that we know we have GL headers and libs, do some more GL testing. - # - - if test "$have_gl" = yes ; then - # If it's MesaGL, we'd like to issue a warning if the version number - # is less than or equal to 2.6, because that version had a security bug. - # - if test "$ac_have_mesa_gl" = yes; then - - AC_CACHE_CHECK([MesaGL version number], ac_cv_mesagl_version_string, - [cat > conftest.$ac_ext < -#ifndef MESA_MAJOR_VERSION -# include -# ifdef XMESA_MAJOR_VERSION - /* Around Mesa 3.2, they took out the Mesa version number, so instead, - we have to check the XMesa version number (the number of the X protocol - support, which seems to be the same as the Mesa version number.) - */ -# define MESA_MAJOR_VERSION XMESA_MAJOR_VERSION -# define MESA_MINOR_VERSION XMESA_MINOR_VERSION -# else - /* Oh great. Some time after 3.4, they took out the xmesa.h header file, - so we have no way of telling what version of Mesa this is at all. - So, we'll guess that the osmesa version (the "offscreen protocol") - is less than or equal to the real mesa version number. Except that - if OSmesa is 3.3, assume at least Mesa 3.4, since OSmesa was 3.3 in - Mesa 3.4. And Mesa 3.3 had xmesa.h. What a complete load of shit! - */ -# include -# define MESA_MAJOR_VERSION OSMESA_MAJOR_VERSION -# define MESA_MINOR_VERSION OSMESA_MINOR_VERSION or newer, probably? -# if OSMESA_MAJOR_VERSION == 3 && OSMESA_MINOR_VERSION == 3 -# undef MESA_MINOR_VERSION -# define MESA_MINOR_VERSION 4 or newer, probably? -# endif -# endif -#endif -configure: MESA_MAJOR_VERSION MESA_MINOR_VERSION -EOF - - ac_save_CPPFLAGS="$CPPFLAGS" - if test \! -z "$includedir" ; then - CPPFLAGS="$CPPFLAGS -I$includedir" - fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - - mglv=`(eval "$ac_cpp conftest.$ac_ext") 2>&AC_FD_CC | grep configure:` - - # M4 sucks!! - changequote(X,Y) - mglv=`echo "$mglv" | sed -n \ - 's/^configure: *\([0-9][0-9]*\) *\([0-9].*\)$/\1.\2/p'` - changequote([,]) - - rm -f conftest.$ac_ext - - CPPFLAGS="$ac_save_CPPFLAGS" - - if test "$mglv" = ""; then - ac_mesagl_version=unknown - ac_mesagl_version_string=unknown - else - ac_mesagl_version_string="$mglv" - # M4 sucks!! - changequote(X,Y) - maj=`echo "$mglv" | sed -n 's/^\([0-9][0-9]*\)\..*$/\1/p'` - min=`echo "$mglv" | sed -n 's/^.*\.\([0-9][0-9]*\).*$/\1/p'` - changequote([,]) - ac_mesagl_version=`echo "$maj * 1000 + $min" | bc` - if test -z "$ac_mesagl_version"; then - ac_mesagl_version=unknown - ac_mesagl_version_string=unknown - fi - fi - ac_cv_mesagl_version=$ac_mesagl_version - ac_cv_mesagl_version_string=$ac_mesagl_version_string - ]) - ac_mesagl_version=$ac_cv_mesagl_version - ac_mesagl_version_string=$ac_cv_mesagl_version_string - fi - - - # Check for OpenGL 1.1 features. - # - AC_CHECK_X_LIB($gl_lib_1, glBindTexture, [AC_DEFINE(HAVE_GLBINDTEXTURE)], - [true], $GL_LIBS -lX11 -lXext -lm) - fi - -elif test "$with_gl" != no; then - echo "error: must be yes or no: --with-gl=$with_gl" - exit 1 -fi - - -############################################################################### -# -# Check for -lgle. -# -############################################################################### - -have_gle=no -with_gle_req=unspecified -gle_halfassed=no -AC_ARG_WITH(gle, -[ --with-gle Build those demos which depend on GLE - (the OpenGL "extrusion" library.)], - [with_gle="$withval"; with_gle_req="$withval"],[with_gle=yes]) - -HANDLE_X_PATH_ARG(with_gle, --with-gle, GLE) - -GLE_LIBS="" - -if test "$have_gl" = no ; then - true -elif test "$with_gle" = yes; then - - AC_CHECK_X_HEADER(GL/gle.h, have_gle3=yes, have_gle3=no, - [#include ]) - if test "$have_gle3" = yes ; then - have_gle=yes; - else - AC_CHECK_X_HEADER(GL/gutil.h, have_gle=yes, have_gle=no, - [#include ]) - if test "$have_gle" = yes ; then - AC_CHECK_X_HEADER(GL/tube.h, have_gle=yes, have_gle=no, - [#include ]) - fi - fi - - if test "$have_gle" = yes ; then - have_gle=no - gle_halfassed=yes - AC_CHECK_X_LIB(gle, gleCreateGC, - [have_gle=yes; gle_halfassed=no; GLE_LIBS="-lgle"], - [], $GL_LIBS -lX11 -lXext -lm) - fi - if test "$have_gle" = yes ; then - have_gle=no - gle_halfassed=yes - - # sometimes the libmatrix stuff is included in libgle. look there first. -# -# I don't get it. For some reason, this test passes on SGI, as if -# uview_direction_d() was in libgle -- but it's not, it's in libmatrix. -# Yet the link is succeeding. Why??? -# -# AC_CHECK_X_LIB(gle, uview_direction_d, -# [have_gle=yes; gle_halfassed=no], -# [], $GL_LIBS -lX11 -lXext -lm) - - # As of GLE 3 this is in libgle, and has changed name to uview_direction! - # *sigh* - if test "$have_gle3" = yes ; then - AC_CHECK_X_LIB(gle, uview_direction, - [have_gle=yes; gle_halfassed=no], - [], $GL_LIBS -lX11 -lXext -lm) - fi - # if it wasn't in libgle, then look in libmatrix. - if test "$have_gle" = no ; then - AC_CHECK_X_LIB(matrix, uview_direction_d, - [have_gle=yes; gle_halfassed=no; - GLE_LIBS="$GLE_LIBS -lmatrix"], - [], $GL_LIBS -lX11 -lXext -lm) - fi - fi - - if test "$have_gle" = yes ; then - AC_DEFINE(HAVE_GLE) - if test "$have_gle3" = yes ; then - AC_DEFINE(HAVE_GLE3) - fi - fi - -elif test "$with_gle" != no; then - echo "error: must be yes or no: --with-gle=$with_gle" - exit 1 - -fi - - -############################################################################### -# -# Handle --with-gles -# -############################################################################### - -with_gles_req=unspecified -AC_ARG_WITH(gles, -[ --with-gles Target OpenGL ES 1.x API instead of OpenGL 1.3.], - [with_gles="$withval"; with_gles_req="$withval"],[with_gles=no]) - -HANDLE_X_PATH_ARG(with_gles, --with-gles, JWZGLES) - -if test "$with_gles" = yes; then - have_gles=yes - AC_DEFINE(HAVE_JWZGLES) - JWZGLES_OBJS='$(JWXYZ_BIN)/jwzgles.o' - AC_MSG_RESULT(using OpenGL ES compatiblity shim) -elif test "$with_gles" != no; then - echo "error: must be yes or no: --with-gles=$with_gles" - exit 1 -fi - -############################################################################### -# -# Check for -lpng -# -############################################################################### - -have_png=no -with_png_req=unspecified -png_halfassed=no -AC_ARG_WITH(png, -[ --with-png Include support for the PNG library.], - [with_png="$withval"; with_png_req="$withval"], - [with_png=yes]) - -HANDLE_X_PATH_ARG(with_png, --with-png, PNG) - -if test "$with_png" != yes -a "$with_png" != no ; then - echo "error: must be yes or no: --with-png=$with_png" - exit 1 -fi - -if test "$with_png" = yes; then - - have_png=no - AC_CHECK_X_HEADER(png.h, [have_png=yes]) - - if test "$have_png" = yes; then - # we have the header, now check for the library - have_png=no - png_halfassed=yes - AC_CHECK_X_LIB(png, png_create_read_struct, - [have_png=yes - png_halfassed=no - PNG_LIBS="-lpng" - AC_DEFINE(HAVE_LIBPNG)]) - fi -fi - - -############################################################################### -# -# Check for -lgdk_pixbuf. -# These tests are for gdk_pixbuf usage of the hacks, -# not xscreensaver-demo (thus we have to test again to get -# the libraries right: don't want to pull in all of GTK -# for the hacks.) -# -############################################################################### - -have_gdk_pixbuf=no -with_gdk_pixbuf_req=unspecified -AC_ARG_WITH(pixbuf, -[ --with-pixbuf Include support for the GDK-Pixbuf library in some - demos, which will make it possible for them to read - GIF, JPEG, and PNG files as well.], - [with_gdk_pixbuf="$withval"; with_gdk_pixbuf_req="$withval"], - [with_gdk_pixbuf=yes]) - -# if --with-pixbuf=/directory/ was specified, remember that directory so that -# we can also look for the `gdk-pixbuf-config' program in that directory. -case "$with_gdk_pixbuf" in - /*) - gdk_pixbuf_dir="$with_gdk_pixbuf" - ;; - *) - gdk_pixbuf_dir="" - ;; -esac - -HANDLE_X_PATH_ARG(with_gdk_pixbuf, --with-pixbuf, GDK_PIXBUF) - -if test "$with_gdk_pixbuf" != yes -a "$with_gdk_pixbuf" != no ; then - echo "error: must be yes or no: --with-pixbuf=$with_gdk_pixbuf" - exit 1 -fi - -if test "$with_gdk_pixbuf" = yes; then - have_gdk_pixbuf=no - - pkgs='' - ok="yes" - - pkg_check_version gdk-pixbuf-2.0 2.0.0 - pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 - pkg_check_version gio-2.0 2.0.0 - have_gdk_pixbuf="$ok" - - if test "$have_gdk_pixbuf" = yes; then - AC_CACHE_CHECK([for gdk-pixbuf includes], ac_cv_gdk_pixbuf_config_cflags, - [ac_cv_gdk_pixbuf_config_cflags=`$pkg_config --cflags $pkgs`]) - AC_CACHE_CHECK([for gdk-pixbuf libs], ac_cv_gdk_pixbuf_config_libs, - [ac_cv_gdk_pixbuf_config_libs=`$pkg_config --libs $pkgs`]) - fi - - ac_gdk_pixbuf_config_cflags=$ac_cv_gdk_pixbuf_config_cflags - ac_gdk_pixbuf_config_libs=$ac_cv_gdk_pixbuf_config_libs - - - if test "$have_gdk_pixbuf" = yes; then - # - # we appear to have pixbuf; check for headers/libs to be sure. - # - ac_save_gdk_pixbuf_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_config_cflags" - - have_gdk_pixbuf=no - - # check for header A... - AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf.h, [have_gdk_pixbuf=yes]) - - # if that worked, check for header B... - if test "$have_gdk_pixbuf" = yes; then - have_gdk_pixbuf=no - gdk_pixbuf_halfassed=yes - AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf-xlib.h, - [have_gdk_pixbuf=yes - gdk_pixbuf_halfassed=no]) - - # yay, it has a new name in Gtk 2.x... - if test "$have_gdk_pixbuf" = no; then - have_gdk_pixbuf=no - gdk_pixbuf_halfassed=yes - AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h, - [have_gdk_pixbuf=yes - gdk_pixbuf_halfassed=no]) - fi - fi - CPPFLAGS="$ac_save_gdk_pixbuf_CPPFLAGS" - fi - - if test "$have_gdk_pixbuf" = yes; then - # we have the headers, now check for the libraries - have_gdk_pixbuf=no - gdk_pixbuf_halfassed=yes - - AC_MSG_RESULT(checking for gdk_pixbuf usability...) - - # library A... - AC_CHECK_X_LIB(c, gdk_pixbuf_new_from_file, [have_gdk_pixbuf=yes],, - $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) - # library B... - if test "$have_gdk_pixbuf" = yes; then - have_gdk_pixbuf=no - AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init, - [have_gdk_pixbuf=yes - gdk_pixbuf_halfassed=no],, - $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) - fi - fi - - if test "$have_gdk_pixbuf" = yes; then - INCLUDES="$INCLUDES $ac_gdk_pixbuf_config_cflags" - PNG_LIBS="$ac_gdk_pixbuf_config_libs" - AC_DEFINE(HAVE_GDK_PIXBUF) - else - AC_MSG_RESULT(checking for gdk_pixbuf usability... no) - fi - - if test "$have_gdk_pixbuf" = yes; then - AC_CHECK_X_LIB(c, gdk_pixbuf_apply_embedded_orientation, - [AC_DEFINE(HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION)],, - $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm) - fi -fi - - -############################################################################### -# -# Check for -ljpeg -# -############################################################################### - -have_jpeg=no -with_jpeg_req=unspecified -jpeg_halfassed=no -AC_ARG_WITH(jpeg, -[ --with-jpeg Include support for the JPEG library.], - [with_jpeg="$withval"; with_jpeg_req="$withval"], - [with_jpeg=yes]) - -HANDLE_X_PATH_ARG(with_jpeg, --with-jpeg, JPEG) - -if test "$with_jpeg" != yes -a "$with_jpeg" != no ; then - echo "error: must be yes or no: --with-jpeg=$with_jpeg" - exit 1 -fi - -if test "$with_jpeg" = yes; then - - have_jpeg=no - AC_CHECK_X_HEADER(jpeglib.h, [have_jpeg=yes]) - - if test "$have_jpeg" = yes; then - # we have the header, now check for the library - have_jpeg=no - jpeg_halfassed=yes - AC_CHECK_X_LIB(jpeg, jpeg_start_compress, - [have_jpeg=yes - jpeg_halfassed=no - JPEG_LIBS="-ljpeg" - AC_DEFINE(HAVE_JPEGLIB)]) - fi -fi - - -############################################################################### -# -# Check for -lXft -# -############################################################################### - -have_xutf8drawstring=no -AC_CHECK_X_LIB(X11, Xutf8DrawString, - [have_xutf8drawstring=yes], - [true], -lX11 -lXext -lm) -if test "$have_xutf8drawstring" = yes ; then - AC_DEFINE(HAVE_XUTF8DRAWSTRING) -fi - - -have_xft=no -with_xft_req=unspecified -xft_halfassed=no -AC_ARG_WITH(xft, -[ --with-xft Include support for the X Freetype library.], - [with_xft="$withval"; with_xft_req="$withval"], - [with_xft=yes]) - -HANDLE_X_PATH_ARG(with_xft, --with-xft, Xft) - -if test "$with_xft" != yes -a "$with_xft" != no ; then - echo "error: must be yes or no: --with-xft=$with_xft" - exit 1 -fi - -if test "$with_xft" = yes; then - - pkgs='' - ok="yes" - pkg_check_version xft 2.1.0 - have_xft="$ok" - - if test "$have_xft" = yes; then - AC_CACHE_CHECK([for Xft includes], ac_cv_xft_config_cflags, - [ac_cv_xft_config_cflags=`$pkg_config --cflags $pkgs`]) - AC_CACHE_CHECK([for Xft libs], ac_cv_xft_config_libs, - [ac_cv_xft_config_libs=`$pkg_config --libs $pkgs`]) - fi - - ac_xft_config_cflags=$ac_cv_xft_config_cflags - ac_xft_config_libs=$ac_cv_xft_config_libs - - if test "$have_xft" = yes; then - # - # we appear to have Xft; check for headers/libs to be sure. - # - ac_save_xft_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $ac_xft_config_cflags" - - have_xft=no - AC_CHECK_X_HEADER(X11/Xft/Xft.h, [have_xft=yes]) - - CPPFLAGS="$ac_save_xft_CPPFLAGS" - fi - - if test "$have_xft" = yes; then - # we have the headers, now check for the libraries - have_xft=no - xft_halfassed=yes - - AC_MSG_RESULT(checking for Xft usability...) - AC_CHECK_X_LIB(c, XftDrawStringUtf8, [have_xft=yes],, - $ac_xft_config_libs -lX11 -lXext -lm) - fi - - if test "$have_xft" = no; then - AC_MSG_RESULT(checking for Xft usability... no) - fi -fi - -if test "$have_xft" = yes; then - INCLUDES="$INCLUDES $ac_xft_config_cflags" - XFT_LIBS="$ac_xft_config_libs" - XFT_SRCS='' - XFT_OBJS='' - AC_DEFINE(HAVE_XFT) -else - XFT_LIBS='' - XFT_SRCS='$(UTILS_SRC)/xft.c' - XFT_OBJS='$(UTILS_BIN)/xft.o' -fi - - -############################################################################### -# -# Check for -lsystemd -# -############################################################################### - -have_systemd=no -with_systemd_req=unspecified -systemd_halfassed=no -AC_ARG_WITH(systemd, -[ --with-systemd Build xscreensaver-systemd to lock on suspend.], - [with_systemd="$withval"; with_systemd_req="$withval"], - [with_systemd=yes]) - -HANDLE_X_PATH_ARG(with_systemd, --with-systemd, systemd) - -if test "$with_systemd" != yes -a "$with_systemd" != no ; then - echo "error: must be yes or no: --with-systemd=$with_systemd" - exit 1 -fi - -if test "$with_systemd" = yes; then - - pkgs='' - ok="yes" - pkg_check_version libsystemd 221 - have_systemd="$ok" - - if test "$have_systemd" = yes; then - AC_CACHE_CHECK([for libsystemd includes], ac_cv_systemd_config_cflags, - [ac_cv_systemd_config_cflags=`$pkg_config --cflags $pkgs`]) - AC_CACHE_CHECK([for libsystemd libs], ac_cv_systemd_config_libs, - [ac_cv_systemd_config_libs=`$pkg_config --libs $pkgs`]) - fi - - ac_systemd_config_cflags=$ac_cv_systemd_config_cflags - ac_systemd_config_libs=$ac_cv_systemd_config_libs - - if test "$have_systemd" = yes; then - # - # we appear to have libsystemd; check for headers/libs to be sure. - # - ac_save_systemd_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $ac_systemd_config_cflags" - - have_systemd=no - AC_CHECK_X_HEADER(systemd/sd-bus.h, [have_systemd=yes]) - - CPPFLAGS="$ac_save_systemd_CPPFLAGS" - fi - - if test "$have_systemd" = yes; then - # we have the headers, now check for the libraries - have_systemd=no - systemd_halfassed=yes - - AC_MSG_RESULT(checking for libsystemd usability...) - AC_CHECK_X_LIB(c, sd_bus_open_system, [have_systemd=yes],, - $ac_systemd_config_libs -lX11 -lXext -lm) - fi - - if test "$have_systemd" = no; then - AC_MSG_RESULT(checking for libsystemd usability... no) - fi -fi - -if test "$have_systemd" = yes; then - INCLUDES="$INCLUDES $ac_systemd_config_cflags" - EXES_SYSTEMD='$(EXES_SYSTEMD)' - AC_DEFINE(HAVE_LIBSYSTEMD) -else - EXES_SYSTEMD='' -fi - - -############################################################################### -# -# Check for pty support: this allows 'phosphor' and 'apple2' -# to run curses-based programs, or be used as terminal windows. -# -############################################################################### - -PTY_LIBS= -AC_CHECK_HEADERS(pty.h util.h sys/termios.h) -AC_CHECK_X_LIB(util, forkpty, - [PTY_LIBS="-lutil" - ac_have_forkpty=yes - AC_DEFINE(HAVE_FORKPTY)]) - -if test "$ac_have_forkpty" != yes ; then - # we don't need (or have) -lutil on MacOS 10.4.2... - AC_CHECK_X_LIB(c, forkpty, - [PTY_LIBS="" - AC_DEFINE(HAVE_FORKPTY)]) -fi - -############################################################################### -# -# Check for the XSHM server extension. -# -############################################################################### - -have_xshm=no -with_xshm_req=unspecified -AC_ARG_WITH(xshm-ext, -[ --with-xshm-ext Include support for the Shared Memory extension.], - [with_xshm="$withval"; with_xshm_req="$withval"],[with_xshm=yes]) - -HANDLE_X_PATH_ARG(with_xshm, --with-xshm-ext, XSHM) - -if test "$with_xshm" = yes; then - - # first check for Xshm.h. - AC_CHECK_X_HEADER(X11/extensions/XShm.h, [have_xshm=yes],, - [#include ]) - - # if that succeeded, then check for sys/ipc.h. - if test "$have_xshm" = yes; then - have_xshm=no - AC_CHECK_X_HEADER(sys/ipc.h, [have_xshm=yes]) - fi - - # if that succeeded, then check for sys/shm.h. - if test "$have_xshm" = yes; then - have_xshm=no - AC_CHECK_X_HEADER(sys/shm.h, [have_xshm=yes]) - fi - - # AIX is pathological, as usual: apparently it's normal for the Xshm headers - # to exist, but the library code to not exist. And even better, the library - # code is in its own library: libXextSam.a. So, if we're on AIX, and that - # lib doesn't exist, give up. (This lib gets added to X_EXTRA_LIBS, and - # that's not quite right, but close enough.) - # - case "$host" in - *-aix*) - if [ `uname -v` -eq 3 ]; then - have_xshm=no - AC_CHECK_X_LIB(XextSam, XShmQueryExtension, - [have_xshm=yes; X_EXTRA_LIBS="$X_EXTRA_LIBS -lXextSam"], - [true], -lX11 -lXext -lm) - fi - ;; - esac - - # if that succeeded, then we've really got it. - if test "$have_xshm" = yes; then - AC_DEFINE(HAVE_XSHM_EXTENSION) - fi - -elif test "$with_xshm" != no; then - echo "error: must be yes or no: --with-xshm-ext=$with_xshm" - exit 1 -fi - - -############################################################################### -# -# Check for the DOUBLE-BUFFER server extension. -# -############################################################################### - -have_xdbe=no -with_xdbe_req=unspecified -AC_ARG_WITH(xdbe-ext, -[ --with-xdbe-ext Include support for the DOUBLE-BUFFER extension.], - [with_xdbe="$withval"; with_xdbe_req="$withval"],[with_xdbe=yes]) - -HANDLE_X_PATH_ARG(with_xdbe, --with-xdbe-ext, DOUBLE-BUFFER) - -if test "$with_xdbe" = yes; then - - AC_CHECK_X_HEADER(X11/extensions/Xdbe.h, [have_xdbe=yes],, - [#include ]) - if test "$have_xdbe" = yes; then - AC_DEFINE(HAVE_DOUBLE_BUFFER_EXTENSION) - fi - -elif test "$with_xdbe" != no; then - echo "error: must be yes or no: --with-xdbe-ext=$with_xshm" - exit 1 -fi - - -############################################################################### -# -# Check for the SGI XReadDisplay server extension. -# -# Note: this has to be down here, rather than up with the other server -# extension tests, so that the output of `configure --help' is in the -# right order. Arrgh! -# -############################################################################### - -have_readdisplay=no -with_readdisplay_req=unspecified -AC_ARG_WITH(readdisplay, -[ --with-readdisplay Include support for the XReadDisplay extension.], - [with_readdisplay="$withval"; with_readdisplay_req="$withval"], - [with_readdisplay=yes]) - -HANDLE_X_PATH_ARG(with_readdisplay, --with-readdisplay, XReadDisplay) - -if test "$with_readdisplay" = yes; then - AC_CHECK_X_HEADER(X11/extensions/readdisplay.h, - AC_DEFINE(HAVE_READ_DISPLAY_EXTENSION),, - [#include ]) -elif test "$with_readdisplay" != no; then - echo "error: must be yes or no: --with-readdisplay=$with_readdisplay" - exit 1 -fi - - -############################################################################### -# -# Check for a directory full of images to use as the default value -# of the "imageDirectory" preference. -# -############################################################################### - -have_imagedir=no -with_imagedir_req=unspecified - -AC_ARG_WITH(image-directory, -[ --with-image-directory Arg is the default directory from which some demos - will choose random images to display.], - [with_imagedir="$withval"; with_imagedir_req="$withval"], - [with_imagedir=yes]) -# no HANDLE_X_PATH_ARG for this one - -case "$with_imagedir" in - /*) - # absolute path - AC_MSG_CHECKING([for image directory $with_imagedir]) - if test -d "$with_imagedir" ; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - with_imagedir="" - fi - ;; - yes) - with_imagedir="" - - #### Could use some more defaults here... - for dd in \ - "/usr/share/backgrounds/images/" \ - "/usr/share/wallpapers/" \ - "/Library/Desktop Pictures/" \ - ; do - if test -z "$with_imagedir"; then - AC_MSG_CHECKING([for image directory $dd]) - if test -d "$dd" ; then - AC_MSG_RESULT(yes) - with_imagedir="$dd" - else - AC_MSG_RESULT(no) - fi - fi - done - - ;; - no) - with_imagedir="" - ;; - - *) - echo "error: must be an absolute path: --with-image-directory=$with_imagedir_req" - exit 1 - ;; -esac -ac_cv_imagedir="$with_imagedir" - -DEFAULT_IMAGES_P='True' -DEFAULT_IMAGE_DIRECTORY="$ac_cv_imagedir" - -if test -z "$DEFAULT_IMAGE_DIRECTORY" ; then - DEFAULT_IMAGES_P='False' -fi - - -############################################################################### -# -# Pick a text file to use as the default of the "textFile" preference. -# Any old file will do, but preferably one that will make interesting -# shapes when displayed by "starwars" and "fontglide". -# -############################################################################### - -have_textfile=no -with_textfile_req=unspecified - -AC_ARG_WITH(text-file, -[ --with-text-file=FILE By default, some demos may display this file.], - [with_textfile="$withval"; with_textfile_req="$withval"], - [with_textfile=yes]) -# no HANDLE_X_PATH_ARG for this one - -case "$with_textfile" in - /*) - # absolute path - AC_MSG_CHECKING([for text file $with_textfile]) - if test -f "$with_textfile" ; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - with_textfile="" - fi - ;; - yes) - with_textfile="" - - #### Could use some more defaults here... - for f in \ - "/usr/X11R6/lib/X11/doc/README" \ - "/usr/share/doc/xserver-common/copyright" \ - "/usr/share/doc/xserver-xorg-core/copyright" \ - "/usr/X11R6/README" \ - "/usr/share/doc/libX11*/COPYING" \ - "/usr/X11/share/X11/doc/README*" \ - "/usr/share/doc/debian/debian-manifesto" \ - ; do - if test -z "$with_textfile"; then - AC_MSG_CHECKING([for text file $f]) - f=`/bin/ls $f 2>&- | head -1` - if test -f "$f" ; then - AC_MSG_RESULT(yes) - with_textfile="$f" - else - AC_MSG_RESULT(no) - fi - fi - done - - ;; - no) - with_textfile="" - ;; - - *) - echo "error: must be an absolute path: --with-text-file=$with_textfile_req" - exit 1 - ;; -esac -ac_cv_textfile="$with_textfile" - -DEFAULT_TEXT_FILE="$ac_cv_textfile" - - -############################################################################### -# -# Check the browser to see help URL -# -############################################################################### - -have_browser=no -with_browser_req=unspecified - -AC_ARG_WITH(browser, -[ --with-browser=BROWSER Specify the web browser used to show the help URL.], - [with_browser="$withval"; with_browser_req="$withval"], - [with_browser=no ]) -# no HANDLE_X_PATH_ARG for this one - -case "$with_browser" in - no ) - ;; - * ) - WITH_BROWSER=$with_browser - gnome_open_program=$with_browser - AC_MSG_CHECKING([for browser $with_browser]) - with_browser_fullpath=`which $with_browser 2>/dev/null` - case $with_browser_fullpath in - /* ) - AC_MSG_RESULT(yes) - have_browser=yes - ;; - * ) - AC_MSG_RESULT(no) -# Only warning: we don't want to install all packages for the -# dependency of the browser in building stage... - echo "WARNING: browser not found: --with-browser=$with_browser" - ;; - esac - ;; -esac -ac_cv_browser="$with_browser" - -############################################################################### -# -# Check whether it's ok to install some hacks as setuid (e.g., "sonar") -# This should be safe, but let's give people the option. -# -############################################################################### - -setuid_hacks_default=no -setuid_hacks="$setuid_hacks_default" -AC_ARG_WITH(setuid-hacks, -[ --with-setuid-hacks Allow some demos to be installed `setuid root' - (which is needed in order to ping other hosts.)], - [setuid_hacks="$withval"], [setuid_hacks="$setuid_hacks_default"]) - -HANDLE_X_PATH_ARG(setuid_hacks, --with-setuid-hacks, setuid hacks) - -if test "$setuid_hacks" = yes; then - true -elif test "$setuid_hacks" != no; then - echo "error: must be yes or no: --with-setuid-hacks=$setuid_hacks" - exit 1 -fi - - -############################################################################### -# -# Check for setcap, which is less worrying than setuid. -# -############################################################################### - -have_libcap=no -setcap_hacks_default=yes -setcap_hacks="$setcap_hacks_default" -setcap_hacks_req=unspecified -AC_ARG_WITH(setcap-hacks, -[ --with-setcap-hacks Allow some demos to be installed with setcap - (which is needed in order to ping other hosts.)], - [setcap_hacks="$withval"; setcap_hacks_req="$withval"], - [setcap_hacks=yes]) - -HANDLE_X_PATH_ARG(setcap_hacks, --with-setcap-hacks, setcap hacks) - -if test "$setcap_hacks" != yes -a "$setcap_hacks" != no ; then - echo "error: must be yes or no: --with-setcap-hacks=$setcap_hacks" - exit 1 -fi - -if test "$setcap_hacks" = yes; then - - AC_CHECK_PROGS(setcap_program, setcap) - if test "$setcap_program" != ''; then - AC_CHECK_X_HEADER(sys/capability.h, [have_setcap=yes]) - fi - if test "$have_setcap" = yes; then - AC_CHECK_X_LIB(cap, cap_set_flag, - [have_libcap=yes - PROG_SETCAP="$setcap_program" - LIBCAP_LIBS="-lcap" - AC_DEFINE(HAVE_LIBCAP)]) - fi -fi - - -############################################################################### -# -# Check for --with-record-animation -# -############################################################################### - -record_anim_default=no -record_anim="$record_anim_default" -AC_ARG_WITH(record-animation, -[ --with-record-animation Include code for generating MP4 videos.], - [record_anim="$withval"], [record_anim="$record_anim_default"]) - -HANDLE_X_PATH_ARG(record_anim, --with-record-animation, record animation) - -if test "$record_anim" = yes; then - true -elif test "$record_anim" != no; then - echo "error: must be yes or no: --with-record-animation=$record_anim" - exit 1 -fi - -if test "$record_anim" = yes; then - if test "$have_gdk_pixbuf" != yes; then - AC_MSG_ERROR(--with-record-animation requires GDK-Pixbuf) - else - AC_MSG_RESULT(enabling --with-record-animation) - AC_DEFINE(HAVE_RECORD_ANIM) - ANIM_OBJS='$(ANIM_OBJS)' - ANIM_LIBS='$(ANIM_LIBS)' - fi -fi - -############################################################################### -# -# Done testing. Now, set up the various -I and -L variables, -# and decide which GUI program to build by default. -# -############################################################################### - -DEPEND=makedepend -DEPEND_FLAGS= -DEPEND_DEFINES= - - -if test \! -z "$includedir" ; then - INCLUDES="$INCLUDES -I$includedir" -fi - -if test \! -z "$libdir" ; then - LDFLAGS="$LDFLAGS -L$libdir" -fi - - -PREFERRED_DEMO_PROGRAM='' -ALL_DEMO_PROGRAMS= -if test "$have_motif" = yes; then - PREFERRED_DEMO_PROGRAM=xscreensaver-demo-Xm - ALL_DEMO_PROGRAMS="$PREFERRED_DEMO_PROGRAM $ALL_DEMO_PROGRAMS" -fi -if test "$have_gtk" = yes; then - PREFERRED_DEMO_PROGRAM=xscreensaver-demo-Gtk - ALL_DEMO_PROGRAMS="$PREFERRED_DEMO_PROGRAM $ALL_DEMO_PROGRAMS" -fi - - -if test "$have_kerberos" = yes; then - PASSWD_SRCS="$PASSWD_SRCS \$(KERBEROS_SRCS)" - PASSWD_OBJS="$PASSWD_OBJS \$(KERBEROS_OBJS)" -fi -if test "$have_pam" = yes; then - PASSWD_SRCS="$PASSWD_SRCS \$(PAM_SRCS)" - PASSWD_OBJS="$PASSWD_OBJS \$(PAM_OBJS)" - INSTALL_PAM="install-pam" -fi -if test "$enable_pam_check_account_type" = yes; then - COMMENT_PAM_CHECK_ACCOUNT="" -else - COMMENT_PAM_CHECK_ACCOUNT="#" -fi -if test "$have_passwd_helper" = yes; then - PASSWD_SRCS="$PASSWD_SRCS \$(PWHELPER_SRCS)" - PASSWD_OBJS="$PASSWD_OBJS \$(PWHELPER_OBJS)" -fi - PASSWD_SRCS="$PASSWD_SRCS \$(PWENT_SRCS)" - PASSWD_OBJS="$PASSWD_OBJS \$(PWENT_OBJS)" - - -if test "$enable_locking" = yes; then - LOCK_SRCS='$(LOCK_SRCS_1) $(PASSWD_SRCS)' - LOCK_OBJS='$(LOCK_OBJS_1) $(PASSWD_OBJS)' -else - LOCK_SRCS='$(NOLOCK_SRCS_1)' - LOCK_OBJS='$(NOLOCK_OBJS_1)' -fi - -if test "$ac_macosx" = yes; then - EXES_OSX='$(EXES_OSX)' - SCRIPTS_OSX='$(SCRIPTS_OSX)' - MEN_OSX='$(MEN_OSX)' -else - EXES_OSX= - SCRIPTS_OSX= - MEN_OSX= -fi - - -INSTALL_SETUID='$(INSTALL_PROGRAM) $(SUID_FLAGS)' - -if test "$need_setuid" = yes; then - NEED_SETUID=yes -else - NEED_SETUID=no -fi - -if test "$setuid_hacks" = yes; then - SETUID_HACKS=yes -else - SETUID_HACKS=no -fi - -if test "$have_libcap" = yes; then - SETCAP_HACKS=yes -else - SETCAP_HACKS=no -fi - -tab=' ' -if test "$have_gl" = yes; then - GL_EXES='$(GL_EXES)' - SUID_EXES='$(SUID_EXES)' - RETIRED_GL_EXES='$(RETIRED_GL_EXES)' - GL_UTIL_EXES='$(GL_UTIL_EXES)' - GL_MEN='$(GL_MEN)' - GL_KLUDGE=" " -else - GL_KLUDGE="-" -fi - -if test "$have_gle" = yes; then - GLE_EXES='$(GLE_EXES)' - GLE_KLUDGE=" " -else - GLE_KLUDGE="-" -fi - -if test "$have_jpeg" = yes -a "$have_gdk_pixbuf" = yes; then - JPEG_EXES='$(JPEG_EXES)' -fi - - -# Another substitution in the XScreenSaver.ad.in file: -# -if test "$gnome_open_program" != ''; then - GNOME24='' - GNOME22='! ' - NOGNOME='! ' -elif test "$gnome_url_show_program" != ''; then - GNOME24='! ' - GNOME22='' - NOGNOME='! ' -else - GNOME24='! ' - GNOME22='! ' - NOGNOME='' -fi - - -# Set PO_DATADIR to something sensible. -# -AC_MSG_CHECKING([for locale directory]) -if test -n "$GTK_DATADIR" ; then - PO_DATADIR="$GTK_DATADIR" -elif test "$have_gtk" = yes; then - PO_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` - PO_DATADIR="$PO_DATADIR/share" -fi - -if test -z "$PO_DATADIR" ; then - # - # #### Total fucking kludge -- - # Map /build/prefix/usr/X11R6/share/ to /build/prefix/usr/share/ - # but of course we need to expand all the nested variables to do that... - # - dd=`eval eval eval eval eval eval eval eval eval eval eval echo $datadir` - PO_DATADIR=`echo $dd | sed 's@/X11R6/@/@'` -fi - -AC_MSG_RESULT($PO_DATADIR/locale) - - -# canonicalize slashes. -HACK_CONF_DIR=`echo "${HACK_CONF_DIR}" | sed 's@/$@@;s@//*@/@g'` - -# gcc 3.0 likes to issue this warning for every file: -# -# cc1: warning: changing search order for system directory "/usr/local/include" -# cc1: warning: as it has already been specified as a non-system directory -# -# Yay. We can only avoid that by deleting "-I${prefix}/include" from the list. -# Which *should* be totally redundant, and thus an ok thing to delete? -# -INCLUDES=`echo "$INCLUDES" | sed 's@ -I${prefix}/include@@g;'` - - -############################################################################### -# -# Perform substitutions and write Makefiles. -# -############################################################################### - -AC_SUBST(INCLUDES) - -AC_SUBST(PREFERRED_DEMO_PROGRAM) -AC_SUBST(ALL_DEMO_PROGRAMS) -AC_SUBST(SAVER_LIBS) -AC_SUBST(MOTIF_LIBS) -AC_SUBST(GTK_LIBS) -AC_SUBST(XML_LIBS) -AC_SUBST(PNG_LIBS) -AC_SUBST(JPEG_LIBS) -AC_SUBST(HACK_LIBS) -AC_SUBST(PTY_LIBS) -AC_SUBST(GL_LIBS) -AC_SUBST(GLE_LIBS) -AC_SUBST(XDPMS_LIBS) -AC_SUBST(XINERAMA_LIBS) -AC_SUBST(PASSWD_LIBS) -AC_SUBST(LIBCAP_CFLAGS) -AC_SUBST(LIBCAP_LIBS) -AC_SUBST(PROG_SETCAP) -AC_SUBST(INSTALL_SETUID) -AC_SUBST(SETUID_HACKS) -AC_SUBST(SETCAP_HACKS) -AC_SUBST(INSTALL_DIRS) -AC_SUBST(NEED_SETUID) -AC_SUBST(INSTALL_PAM) -AC_SUBST(HAVE_PAM_FAIL_DELAY) -AC_SUBST(COMMENT_PAM_CHECK_ACCOUNT) -AC_SUBST(NEW_LOGIN_COMMAND) -AC_SUBST(NEW_LOGIN_COMMAND_P) -AC_SUBST(DEFAULT_IMAGES_P) -AC_SUBST(DEFAULT_IMAGE_DIRECTORY) -AC_SUBST(DEFAULT_TEXT_FILE) -AC_SUBST(WITH_BROWSER) -AC_SUBST(COMMENT_DEMO_GLADE2_GTK_2_22_HEAD) -AC_SUBST(COMMENT_DEMO_GLADE2_GTK_2_22_TAIL) - - -AC_SUBST(OBJCC) -AC_SUBST(EXES_OSX) -AC_SUBST(EXES_SYSTEMD) -AC_SUBST(SCRIPTS_OSX) -AC_SUBST(MEN_OSX) - -AC_SUBST(PASSWD_SRCS) -AC_SUBST(PASSWD_OBJS) -AC_SUBST(XMU_SRCS) -AC_SUBST(XMU_OBJS) -AC_SUBST(XMU_LIBS) -AC_SUBST(XFT_SRCS) -AC_SUBST(XFT_OBJS) -AC_SUBST(XFT_LIBS) -AC_SUBST(SAVER_GL_SRCS) -AC_SUBST(SAVER_GL_OBJS) -AC_SUBST(SAVER_GL_LIBS) -AC_SUBST(LOCK_SRCS) -AC_SUBST(LOCK_OBJS) -AC_SUBST(JPEG_EXES) -AC_SUBST(GL_EXES) -AC_SUBST(RETIRED_GL_EXES) -AC_SUBST(SUID_EXES) -AC_SUBST(GL_UTIL_EXES) -AC_SUBST(GL_MEN) -AC_SUBST(GL_KLUDGE) -AC_SUBST(GLE_EXES) -AC_SUBST(GLE_KLUDGE) -AC_SUBST(JWZGLES_OBJS) -AC_SUBST(GNOME24) -AC_SUBST(GNOME22) -AC_SUBST(NOGNOME) -AC_SUBST(HACKDIR) -AC_SUBST(HACKDIR_FULL) -AC_SUBST(GTK_DATADIR) -AC_SUBST(PO_DATADIR) -AC_SUBST(HACK_CONF_DIR) -AC_SUBST(GTK_EXTRA_OBJS) -AC_SUBST(ANIM_OBJS) -AC_SUBST(ANIM_LIBS) - -APPDEFAULTS=$ac_x_app_defaults -AC_SUBST(APPDEFAULTS) - -AC_SUBST(DEPEND) -AC_SUBST(DEPEND_FLAGS) -AC_SUBST(DEPEND_DEFINES) -AC_SUBST(PERL) - -AC_OUTPUT(Makefile - utils/Makefile - jwxyz/Makefile - hacks/Makefile - hacks/images/Makefile - hacks/glx/Makefile - po/Makefile.in - driver/Makefile - driver/xscreensaver.pam - driver/xscreensaver-demo.glade2 - driver/XScreenSaver.ad) - -############################################################################### -# -# Print some warnings at the end. -# -############################################################################### - -warn_prefix_1=" Warning:" -warn_prefix_2=" Note:" -warn_prefix="$warn_prefix_1" - -warning=no -warnsep=' #################################################################' - -warnpre() { - if test "$warning" = no ; then - echo '' ; echo "$warnsep" ; echo '' - warning=yes - fi -} - -warn() { - warnpre - if test "$warning" = long ; then echo '' ; fi - warning=yes - rest="$@" - echo "$warn_prefix $rest" -} - -warnL() { - was=$warning - warnpre - warning=yes - if test "$was" != no ; then echo '' ; fi - rest="$@" - echo "$warn_prefix $rest" -} - -warn2() { - rest="$@" - echo " $rest" - warning=long -} - -note() { - warn_prefix="$warn_prefix_2" - warn $@ - warn_prefix="$warn_prefix_1" -} - -noteL() { - warn_prefix="$warn_prefix_2" - warnL $@ - warn_prefix="$warn_prefix_1" -} - - -# ac_prog_cc_no_pthread normally only happens on AIX, because according -# to AX_PTHREAD, AIX needs CC=xlc_r or CC=cc_r to do threads. -# If CC is specified, it takes precedence over --with-pthread. -if test "$ac_prog_cc_no_pthread" ; then - warnL "You requested $ac_original_cc for the C compiler, but it doesn't" - warn2 "support POSIX threads." - echo "" - warn2 "If you have multiple CPU cores, try CC=$PTHREAD_CC." -elif test "$with_pthread_req" = yes -a "$have_pthread" = no ; then - warn 'POSIX threads were requested, but were not found.' -fi - -if test "$with_sgi_req" = yes -a "$have_sgi" = no ; then - warn 'The SGI saver extension was requested, but was not found.' -fi - -if test "$with_xidle_req" = yes -a "$have_xidle" = no ; then - warn 'The XIdle extension was requested, but was not found.' -fi - -if test "$with_xshm_req" = yes -a "$have_xshm" = no ; then - warn 'The XSHM extension was requested, but was not found.' -fi - -if test "$with_xdbe_req" = yes -a "$have_xdbe" = no ; then - warn 'The DOUBLE-BUFFER extension was requested, but was not found.' -fi - -if test "$with_sgivc_req" = yes -a "$have_sgivc" = no ; then - warn 'The SGI-VIDEO-CONTROL extension was requested, but was not found.' -fi - -if test "$with_dpms_req" = yes -a "$have_dpms" = no ; then - warn 'The DPMS extension was requested, but was not found.' -fi - -if test "$with_xinerama_req" = yes -a "$have_xinerama" = no ; then - warn 'The Xinerama extension was requested, but was not found.' -fi - -if test "$with_xf86vmode_req" = yes -a "$have_xf86vmode" = no ; then - warn 'The XF86VMODE extension was requested, but was not found.' -fi - -if test "$with_randr_req" = yes -a "$have_randr" = no ; then - warn 'The RANDR extension was requested, but was not found.' -fi - -if test "$with_proc_interrupts_req" = yes -a "$have_proc_interrupts" = no; then - warn "Checking of /proc/interrupts was requested, but it's bogus." -fi - -if test "$pkg_config" = false ; then - warnL 'The "pkg-config" program was not found. Without that,' - warn2 "detection of the various GTK libraries won't work." -else - pkgerr=`$pkg_config --list-all 2>&1 >/dev/null` - if test "x$pkgerr" != "x" ; then - warnL 'The "pkg-config" program produces errors. This often causes' - warn2 "detection of the various GTK libraries to malfunction." - warn2 "The errors are:" - echo '' - echo "$pkgerr" | sed 's/^/ > /g' - fi -fi - -if test "$gtk_halfassed" != no ; then - warnL "GTK version $gtk_halfassed was found, but at least one supporting" - warn2 "library ($gtk_halfassed_lib) was not, so GTK can't be used." - warn2 "Perhaps some of the development packages are not installed?" - if test "$have_gtk" = yes ; then - v="$ac_gtk_version_string" - warn2 "GTK $v is also installed, so it will be used instead." - warn2 "Please read the above output and the \`config.log' file" - warn2 "for more details." - fi -fi - -motif_warn2() { - warn2 'Though the Motif front-end to xscreensaver is still' - warn2 'maintained, it is no longer being updated with new' - warn2 'features: all new development on the xscreensaver-demo' - warn2 'program is happening in the GTK version, and not in the' - warn2 'Motif version. It is recommended that you build against' - warn2 'GTK instead of Motif. See .' -} - -if test "$have_motif" = no -a "$have_gtk" = no; then - - if test "$with_motif" = yes; then - warnL "Neither the GTK nor Motif libraries were found; the" - warn2 "\`xscreensaver-demo' program requires one of these." - echo '' - motif_warn2 - else - warnL "The GTK libraries do not seem to be available; the" - warn2 "\`xscreensaver-demo' program requires them." -# echo '' -# warn2 'You can use Motif or Lesstif instead of GTK (use the' -# warn2 "\`--with-motif' option) but that is NOT recommended." -# motif_warn2 - fi - -elif test "$with_motif_req" = yes -a "$have_motif" = no ; then - warnL "Use of Motif was requested, but it wasn't found;" - warn2 "Gtk will be used instead." - -elif test "$jurassic_gtk" = yes ; then - - pref_gtk=2.0 - - v="$ac_gtk_version_string" - if test "$with_gtk_req" = yes -a "$ac_gtk_version" = "unknown" ; then - warnL "Use of Gtk was requested, but its version number is unknown;" - elif test "$with_gtk_req" = yes ; then - warnL "Use of Gtk was requested, but it is version $v;" - else - warnL "Gtk was found on this system, but it is version $v;" - fi - - warn2 "Gtk $pref_gtk or newer is required." - -elif test "$with_gtk_req" = yes -a "$have_gtk" = no ; then - warnL "Use of Gtk was requested, but it wasn't found." -fi - - -if test "$have_gtk" = yes -a "$have_gdk_pixbuf" = no ; then - warn "GTK is being used, but the GDK-Pixbuf library and/or" - warn2 "headers were not found. That can't be good. Please" - warn2 "install the GDK-Pixbuf development kit and re-configure." -fi - -if test "$have_motif" = yes -a "$have_lesstif" = yes ; then - - preferred_lesstif=0.92 - - if test "$lesstif_version" = unknown; then - warnL "Unable to determine the LessTif version number!" - warn2 "Make sure you are using version $preferred_lesstif or newer." - warn2 "See ." - - elif test \! $lesstif_version -gt 82; then - warnL "LessTif version $lesstif_version_string is being used." - warn2 "LessTif versions 0.82 and earlier are too buggy to" - warn2 "use with XScreenSaver; it is strongly recommended" - warn2 "that you upgrade to at least version $preferred_lesstif!" - warn2 "See ." - fi -fi - - -if test "$have_motif" = yes -a "$have_gtk" = no ; then - warn 'Motif is being used, and GTK is not.' - echo '' - motif_warn2 -fi - - -if test "$with_gdk_pixbuf_req" = yes -a "$have_gdk_pixbuf" = no; then - warnL 'Use of GDK-Pixbuf was requested, but it was not found.' -fi - -if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \ - test "$have_gdk_pixbuf" = no ; then - - if test "$with_gdk_pixbuf_req" = yes ; then - true - elif test "$with_gdk_pixbuf_req" = no ; then - warnL 'The GDK-Pixbuf library is not being used.' - else - warnL 'The GDK-Pixbuf library was not found.' - fi - - if test "$gdk_pixbuf_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'libraries; so either GDK-Pixbuf is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - fi - - if test "$have_png" = yes ; then - echo '' - warn2 'The PNG library is being used instead.' - fi - - echo '' - warn2 'Some of the demos will not use images as much as they could.' - warn2 'You should consider installing GDK-Pixbuf and re-running' - warn2 'configure.' -fi - - -if test "$have_jpeg" = no ; then - if test "$with_jpeg_req" = yes ; then - warnL 'Use of libjpeg was requested, but it was not found.' - elif test "$with_jpeg_req" = no ; then - noteL 'The JPEG library is not being used.' - else - noteL 'The JPEG library was not found.' - fi - - if test "$jpeg_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'library; so either JPEG is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - echo '' - fi - - if test "$have_gdk_pixbuf" = no ; then - warn2 "This means that it won't be possible for the image-manipulating" - warn2 "display modes to load files from disk; and it also means that" - warn2 "the \`webcollage' program will be much slower." - else - warn2 "This means the \`webcollage' program will be much slower." - fi -fi - - -if test "$have_png" = no ; then - if test "$with_png_req" = yes ; then - warnL 'Use of libpng was requested, but it was not found.' - elif test "$with_png_req" = no ; then - noteL 'The PNG library is not being used.' - else - noteL 'The PNG library was not found.' - fi - - if test "$png_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'library; so either PNG is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - echo '' - fi - - warn2 "Many things aren't going to work right." -fi - - -if test "$have_xft" = no ; then - if test "$with_xft_req" = yes ; then - warnL "Use of libXft was requested, but it was not found." - elif test "$with_xft_req" = no ; then - noteL 'The Xft library is not being used.' - else - noteL "The Xft library was not found." - fi - - if test "$xft_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'libraries; so either Xft is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - echo '' - fi - - warn2 "This means that fonts won't be anti-aliased." -fi - - -if test "$have_systemd" = no ; then - systemd_warned=no - if test "$with_systemd_req" = yes ; then - warnL "Use of systemd was requested, but it was not found." - systemd_warned=yes - elif test "$with_systemd_req" = no ; then - true - # noteL 'The systemd library is not being used.' - # systemd_warned=yes - else - true - # noteL "The systemd library was not found." - # systemd_warned=yes - fi - - if test "$systemd_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'libraries; so either systemd is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - echo '' - systemd_warned=yes - fi - - if test "$systemd_warned" = yes; then - warn2 "This means that xscreensaver-systemd won't be built." - fi -fi - - -if test "$have_gl" = yes -a "$ac_have_mesa_gl" = yes ; then - preferred_mesagl=3.4 - mgv="$ac_mesagl_version_string" - pgl="$preferred_mesagl" - - if test "$ac_mesagl_version" = unknown; then - true - # warnL "Unable to determine the MesaGL version number!" - # warn2 "Make sure you are using version $preferred_mesagl or newer." - - elif test \! "$ac_mesagl_version" -gt 2006; then - warnL "MesaGL version number is $mgv --" - warn2 "MesaGL 2.6 and earlier have a security bug. It is strongly" - warn2 "recommended that you upgrade to at least version $preferred_mesagl." - - elif test \! "$ac_mesagl_version" -gt 3003; then - warnL "MesaGL version number is $mgv --" - warn2 "MesaGL 3.3 and earlier have some bugs; it is recommended" - warn2 "that you upgrade to $pgl or newer." - fi -fi - -if test "$have_gl" = no ; then - if test "$with_gl_req" = yes ; then - warnL 'Use of GL was requested, but it was not found.' - elif test "$with_gl_req" = no ; then - noteL 'The OpenGL 3D library is not being used.' - else - noteL 'The OpenGL 3D library was not found.' - fi - - if test "$gl_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'libraries; so either GL is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - fi - - echo '' - warn2 'Those demos which use 3D will not be built or installed.' - warn2 'You might want to consider installing OpenGL and' - warn2 're-running configure.' - -fi - - -if test "$have_gl" = yes -a "$have_gle" = no ; then - - # nobody cares about this; don't print the warning unless it was - # requested and not found, or halfway-found. - if test "$with_gle_req" = yes -o "$gle_halfassed" = yes ; then - - if test "$with_gle_req" = yes ; then - noteL 'Use of the GLE (GL Extrusion) library was requested, but' - warn2 'it was not found (though the OpenGL library was found, and' - warn2 'is being used.)' - elif test "$with_gle_req" = no ; then - noteL 'The OpenGL Library is being used, but the GLE (GL Extrusion)' - warn2 'library is not.' - else - noteL 'The OpenGL Library was found, but the GLE (GL Extrusion)' - warn2 'library was not.' - fi - - if test "$gle_halfassed" = yes ; then - echo '' - warn2 'More specifically, we found the headers, but not the' - warn2 'libraries; so either GLE is half-installed on this' - warn2 "system, or something else went wrong. The \`config.log'" - warn2 'file might contain some clues.' - fi - - echo '' - warn2 'Some of the OpenGL (3D) demos (those that depend on GLE)' - warn2 'will not be built or installed. You might want to consider' - warn2 'installing GLE and re-running configure. You can find the' - warn2 'GLE library at ' - - fi -fi - - -if test "$with_readdisplay_req" = yes -a "$have_readdisplay" = no ; then - warn 'Use of XReadDisplay was requested, but it was not found.' -fi - -if test "$with_kerberos_req" = yes -a "$have_kerberos" = no ; then - warn 'Use of Kerberos was requested, but it was not found.' -fi - -if test "$with_pam_req" = yes -a "$have_pam" = no ; then - warn 'Use of PAM was requested, but it was not found.' -fi - -if test "$with_shadow_req" = yes -a "$have_shadow" = no ; then - warn 'Use of shadow passwords was requested, but they were not found.' -fi - -if test "$setcap_hacks_req" = yes -a "$have_libcap" = no ; then - warn 'Use of libcap was requested, but it was not found.' -fi - -if test "$ac_macosx" = yes ; then - if test "$enable_locking" = yes ; then - warn "You have specified --enable-locking on MacOS X." - warn2 "THIS DOES NOT WORK! Don't do this!" - fi -fi - - -# You are in a twisty maze of namespaces and syntaxes, all alike. -# Fuck the skull of Unix. -# -bindir=`eval eval eval eval eval eval eval echo $bindir` -HACKDIR=`eval eval eval eval eval eval eval echo $HACKDIR` -HACK_CONF_DIR=`eval eval eval eval eval eval eval echo $HACK_CONF_DIR` - -# canonicalize slashes. -bindir=`echo "${bindir}" | sed 's@/$@@;s@//*@/@g'` -HACKDIR=`echo "${HACKDIR}" | sed 's@/$@@;s@//*@/@g'` -HACK_CONF_DIR=`echo "${HACK_CONF_DIR}" | sed 's@/$@@;s@//*@/@g'` - - -# Sanity check the hackdir -for bad_choice in xscreensaver xscreensaver-demo xscreensaver-command ; do - if test "${HACKDIR}" = "${bindir}/${bad_choice}" ; then - echo "" - AC_MSG_ERROR([\"--with-hackdir=${bindir}/${bad_choice}\" won't work. - There will be an executable installed with that name, so - that can't be the name of a directory as well. Please - re-configure with a different directory name.]) - fi -done - - -do_dir_warning=no - -# Now let's warn if there's a previous RPM version already installed. -# But don't bother with this test if we are currently *building* an RPM. - -if test -z "$RPM_PACKAGE_VERSION" ; then - - rpmnames="xscreensaver xscreensaver-base xscreensaver-extras" - - # M4 sucks!! - changequote(X,Y) - rpmv=`(rpm -qv $rpmnames) 2>/dev/null | \ - sed -n 's/^[-a-z]*-\([0-9][0-9]*[.][0-9][0-9a-z]*\)-.*$/\1/p' | \ - head -1` - changequote([,]) - - if test \! -z "$rpmv" ; then - rpmbdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/xscreensaver-demo$@\1@p'` - rpmhdir=`rpm -ql $rpmnames | sed -n 's@^\(.*\)/popsquares$@\1@p'` - - warning=no - warnL "There is already an installed RPM of xscreensaver $rpmv" - warn2 'on this system. You might want to remove it ("rpm -ve")' - warn2 'before running "make install" in this directory.' - echo "" - warn2 "Alternately, you could build this version of xscreensaver" - warn2 'as an RPM, and then install that. An "xscreensaver.spec"' - warn2 'file is included. Try "rpmbuild -v -ba xscreensaver.spec".' - warn2 "See the RPM documentation for more info." - echo "" - - if test "$rpmbdir" = "$rpmhdir" ; then - warn2 "The RPM version was installed in $rpmbdir/." - do_dir_warning=yes - else - warn2 "The RPM version was installed in $rpmbdir/," - warn2 "with demos in $rpmhdir/." - fi - fi -fi - -# Also warn if there's a Debian package installed. -# -debnames="xscreensaver xscreensaver-data xscreensaver-data-extra" -debv='' -for dpkg in $debnames ; do - if test -z "$debv"; then - debv=`dpkg -s $dpkg 2>/dev/null | sed -n 's/^Version: \(.*\)$/\1/p'` - fi -done - -if test \! -z "$debv" ; then - debbdir=`dpkg -L $debnames 2>/dev/null | \ - sed -n 's@^\(.*/bin/\)xscreensaver$@\1@p'` - debhdir=`dpkg -L $debnames 2>/dev/null | \ - sed -n 's@^\(.*/\)popsquares$@\1@p'` - if test -z "$debbdir" ; then debbdir='???'; fi - if test -z "$debhdir" ; then debhdir='???'; fi - - warning=no - warnL "There is already an installed dpkg of xscreensaver" - warn2 "version \"$debv\" on this system." - echo "" - warn2 "The dpkg was installed in $debbdir," - warn2 "with demos in $debhdir." -fi - - -if test "${bindir}" = "${HACKDIR}" ; then - do_dir_warning=yes -fi - -if test "$do_dir_warning" = yes; then - echo "" - echo "$warnsep" - echo "" - echo ' When you run "make install", the "xscreensaver",' - echo ' "xscreensaver-demo", and "xscreensaver-command" executables' - echo " will be installed in ${bindir}/." - echo "" - echo " The various graphics demos (200+ different executables) will" - echo " be installed in ${HACKDIR}/." - echo "" - echo " If you would prefer the demos to be installed elsewhere," - echo " you should re-run configure with the --with-hackdir=DIR" - echo " option. For more information, run \`./configure --help'." - warning=yes -fi - -if test "$warning" != no; then - echo '' ; echo "$warnsep" ; echo '' -fi - -if test "$do_dir_warning" = no; then - if test "$warning" = no; then - echo '' - fi - echo "User programs will be installed in ${bindir}/" - echo "Screen savers will be installed in ${HACKDIR}/" - echo "Configuration dialogs will be installed in ${HACK_CONF_DIR}/" - echo "System-wide default settings will be installed in ${APPDEFAULTS}/" - echo '' -fi diff --git a/driver/Makefile.in b/driver/Makefile.in index 7baf504..070a8b7 100644 --- a/driver/Makefile.in +++ b/driver/Makefile.in @@ -27,7 +27,8 @@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ GTK_DATADIR = @GTK_DATADIR@ GTK_APPDIR = $(GTK_DATADIR)/applications GTK_ICONDIR = $(GTK_DATADIR)/pixmaps -GTK_GLADEDIR = $(GTK_DATADIR)/xscreensaver/glade +GTK_UIDIR = $(GTK_DATADIR)/xscreensaver/ui +OLD_GLADEDIR = $(GTK_DATADIR)/xscreensaver/glade HACK_CONF_DIR = @HACK_CONF_DIR@ CC = @CC@ @@ -36,8 +37,8 @@ CFLAGS = @CFLAGS@ LDFLAGS = @LDFLAGS@ DEFS = @DEFS@ INTL_DEFS = -DLOCALEDIR=\"$(localedir)\" -SUBP_DEFS = $(DEFS) -DDEFAULT_PATH_PREFIX='"@HACKDIR@"' -GTK_DEFS = $(DEFS) -DDEFAULT_ICONDIR='"$(GTK_GLADEDIR)"' +SUBP_DEFS = -DDEFAULT_PATH_PREFIX='"@HACKDIR@"' +GTK_DEFS = -DDEFAULT_ICONDIR='"$(GTK_UIDIR)"' CONF_DEFS = -DHACK_CONFIGURATION_PATH='"$(HACK_CONF_DIR)"' LIBS = @LIBS@ @@ -114,7 +115,7 @@ NOLOCK_SRCS_1 = lock.c NOLOCK_OBJS_1 = lock.o SYSTEMD_SRCS = xscreensaver-systemd.c -SYSTEMD_OBJS = xscreensaver-systemd.o +SYSTEMD_OBJS = xscreensaver-systemd.o $(UTILS_BIN)/yarandom.o SYSTEMD_LIBS = -lsystemd TEST_SRCS = test-passwd.c test-uid.c test-xdpms.c test-grab.c \ @@ -245,7 +246,7 @@ MEN = $(MEN_1) @MEN_OSX@ EXTRAS = README Makefile.in \ XScreenSaver.ad.in XScreenSaver-Xm.ad xscreensaver.pam.in \ - xscreensaver-demo.glade2.in xscreensaver-demo.glade2p \ + xscreensaver-demo.ui \ screensaver-properties.desktop.in \ .gdbinit VMSFILES = compile_axp.com compile_decc.com link_axp.com link_decc.com \ @@ -378,7 +379,7 @@ munge-scripts: $(SCRIPTS) install-man: $(MEN) @men="$(MEN)" ; \ U=$(UTILS_SRC)/version.h ; \ - V=`sed -n 's/.*xscreensaver \([0-9]\.[^)]*)\).*/\1/p' < $$U` ; \ + V=`sed -n 's/.*xscreensaver \([0-9]\.[^)]*)\).*/\1/p' < $$U` ; \ T=/tmp/xs$$$$.$(mansuffix) ; \ TH=".TH XScreenSaver $(mansuffix) \"$$V\" \"X Version 11\"" ; \ echo "installing man pages: $$TH" ; \ @@ -529,42 +530,42 @@ install-gnome:: $(LOGO) fi # ../utils/images/screensaver-*.png -# into /usr/share/xscreensaver/glade/ +# into /usr/share/xscreensaver/ui/ install-gnome:: - @if [ "$(GTK_DATADIR)" != "" ]; then \ - if [ ! -d "$(install_prefix)$(GTK_GLADEDIR)" ]; then \ - echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_GLADEDIR)" ;\ - $(INSTALL_DIRS) "$(install_prefix)$(GTK_GLADEDIR)" ;\ + @if [ "$(GTK_DATADIR)" != "" ]; then \ + if [ ! -d "$(install_prefix)$(GTK_UIDIR)" ]; then \ + echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)" ;\ + $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)" ;\ fi ;\ for target in $(GTK_ICONS) ; do \ dest=`echo $$target | sed 's@^.*/@@'` ;\ echo $(INSTALL_DATA) $$target \ - $(install_prefix)$(GTK_GLADEDIR)/$$dest ;\ + $(install_prefix)$(GTK_UIDIR)/$$dest ;\ $(INSTALL_DATA) $$target \ - $(install_prefix)$(GTK_GLADEDIR)/$$dest ;\ + $(install_prefix)$(GTK_UIDIR)/$$dest ;\ done ;\ fi -# xscreensaver-demo.glade2 -# into /usr/share/xscreensaver/glade/ -install-gnome:: xscreensaver-demo.glade2 +# xscreensaver-demo.ui +# into /usr/share/xscreensaver/ui/ +install-gnome:: xscreensaver-demo.ui @if [ "$(GTK_DATADIR)" != "" ]; then \ - if [ ! -d "$(install_prefix)$(GTK_GLADEDIR)" ]; then \ - echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_GLADEDIR)" ;\ - $(INSTALL_DIRS) "$(install_prefix)$(GTK_GLADEDIR)" ;\ + if [ ! -d "$(install_prefix)$(GTK_UIDIR)" ]; then \ + echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)" ;\ + $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)" ;\ fi ;\ - target=xscreensaver-demo.glade2 ;\ - echo $(INSTALL_DATA) $$target \ - $(install_prefix)$(GTK_GLADEDIR)/$$target ;\ - if $(INSTALL_DATA) $$target \ - $(install_prefix)$(GTK_GLADEDIR)/$$target ;\ + target=xscreensaver-demo.ui ;\ + echo $(INSTALL_DATA) $$target \ + $(install_prefix)$(GTK_UIDIR)/$$target ;\ + if $(INSTALL_DATA) $$target \ + $(install_prefix)$(GTK_UIDIR)/$$target ;\ then true ;\ else \ e=echo ; \ $$e "" ;\ $$e " ####################################################################";\ $$e " Warning: unable to install $$target into" ;\ - $$e " $(install_prefix)$(GTK_GLADEDIR)/." ;\ + $$e " $(install_prefix)$(GTK_UIDIR)/." ;\ $$e " Without this file, xscreensaver-demo will not" ;\ $$e " be able to run properly." ;\ $$e " ####################################################################";\ @@ -593,25 +594,29 @@ uninstall-gnome:: fi # ../utils/images/screensaver-*.png -# into /usr/share/xscreensaver/glade/ +# into /usr/share/xscreensaver/ui/ uninstall-gnome:: @if [ "$(GTK_DATADIR)" != "" ]; then \ for target in $(GTK_ICONS) ; do \ dest=`echo $$target | sed 's@^.*/@@'` ;\ - echo rm -f $(install_prefix)$(GTK_GLADEDIR)/$$dest ;\ - rm -f $(install_prefix)$(GTK_GLADEDIR)/$$dest ;\ + echo rm -f $(install_prefix)$(GTK_UIDIR)/$$dest ;\ + rm -f $(install_prefix)$(GTK_UIDIR)/$$dest ;\ done ;\ fi -# xscreensaver-demo.glade2 -# into /usr/share/xscreensaver/glade/ -uninstall-gnome:: xscreensaver-demo.glade2 +# xscreensaver-demo.ui +# into /usr/share/xscreensaver/ui/ +uninstall-gnome:: @if [ "$(GTK_DATADIR)" != "" ]; then \ - target=xscreensaver-demo.glade2 ;\ - echo rm -f $(install_prefix)$(GTK_GLADEDIR)/$$target ;\ - rm -f $(install_prefix)$(GTK_GLADEDIR)/$$target ;\ + target=xscreensaver-demo.ui ;\ + echo rm -f $(install_prefix)$(GTK_UIDIR)/$$target ;\ + rm -f $(install_prefix)$(GTK_UIDIR)/$$target ;\ fi +# /usr/share/xscreensaver/glade/ no longer used +uninstall-gnome:: + -rm -rf $(OLD_GLADEDIR) + # /usr/share/xscreensaver/config/README install-xml: @dest=$(install_prefix)$(HACK_CONF_DIR) ; \ @@ -632,9 +637,11 @@ clean: XScreenSaver_ad.h XScreenSaver_Xm_ad.h distclean: clean - -rm -f Makefile XScreenSaver.ad \ - TAGS *~ "#"* screensaver-properties.desktop \ - xscreensaver-demo.glade2 \ + -rm -f \ + TAGS *~ "#"* *.rej *.orig \ + Makefile \ + XScreenSaver.ad \ + screensaver-properties.desktop \ xscreensaver.pam # Adds all current dependencies to Makefile @@ -679,12 +686,12 @@ update_ad_version:: @ \ files="XScreenSaver.ad.in ../hacks/config/README ../OSX/bindist.rtf" ; \ U=$(UTILS_SRC)/version.h ; \ - V=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' < $$U` ; \ + V=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^ ]*\).*/\1/p' < $$U` ; \ Y=`date '+%Y'` ; \ D=`date '+%d-%b-%Y'` ; \ for S in $$files ; do \ T=/tmp/xs.$$$$ ; \ - sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9]*[ab]*[0-9]*\(.*\)/\1$$V\2/" \ + sed -e "s/\(.*version \)[0-9][0-9]*\.[0-9.]*[ab]*[0-9]*\(.*\)/\1$$V\2/" \ -e "s/\([0-9][0-9]-[A-Z][a-z][a-z]-[0-9][0-9][0-9]*\)/$$D/" \ -e "s/\( [0-9][0-9][0-9][0-9]-\)[0-9][0-9][0-9][0-9] /\1$$Y /" \ < $$S > $$T ; \ @@ -751,32 +758,26 @@ $(UTIL_OBJS): $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" # How we build object files in this directory. +CC_ALL=$(INCLUDES) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) .c.o: - $(CC) -c $(INCLUDES) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) $< - + $(CC) -c $(CC_ALL) $< .m.o: - $(OBJCC) -c $(INCLUDES) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) $< + $(OBJCC) -c $(CC_ALL) $< # subprocs takes an extra -D option. subprocs.o: subprocs.c - $(CC) -c $(INCLUDES) $(SUBP_DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) \ - $(srcdir)/subprocs.c + $(CC) -c $(CC_ALL) $(SUBP_DEFS) $(srcdir)/subprocs.c # xscreensaver takes an extra -D option. xscreensaver.o: xscreensaver.c - $(CC) -c $(INCLUDES) $(DEFS) $(INTL_DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) \ - $(srcdir)/xscreensaver.c + $(CC) -c $(CC_ALL) $(INTL_DEFS) $(srcdir)/xscreensaver.c -# demo-Gtk takes extra -D options, and an extra -I option. +# demo-Gtk and demo-Gtk-conf take extra -D and -I options. +DEMO_GTK=$(CONF_DEFS) $(SUBP_DEFS) $(GTK_DEFS) $(INTL_DEFS) -I$(ICON_SRC) demo-Gtk.o: demo-Gtk.c - $(CC) -c $(INCLUDES) $(SUBP_DEFS) -I$(ICON_SRC) \ - $(GTK_DEFS) $(INTL_DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) \ - $(srcdir)/demo-Gtk.c - -# demo-Gtk-conf takes an extra -D option. + $(CC) -c $(CC_ALL) $(DEMO_GTK) $(srcdir)/demo-Gtk.c demo-Gtk-conf.o: demo-Gtk-conf.c - $(CC) -c $(INCLUDES) $(CONF_DEFS) $(GTK_DEFS) $(CPPFLAGS) $(CFLAGS) $(X_CFLAGS) \ - $(srcdir)/demo-Gtk-conf.c + $(CC) -c $(CC_ALL) $(DEMO_GTK) $(srcdir)/demo-Gtk-conf.c # How we build the default app-defaults file into the program. @@ -808,15 +809,15 @@ xscreensaver-demo: @PREFERRED_DEMO_PROGRAM@ cp -p @PREFERRED_DEMO_PROGRAM@@EXEEXT@ $@@EXEEXT@ ; \ fi +DEMO_XM_CC=$(DEMO_OBJS) $(MOTIF_OBJS) $(LIBS) $(X_LIBS) $(MOTIF_LIBS) +DEMO_GTK_CC=$(DEMO_OBJS) $(GTK_OBJS) $(LIBS) $(X_LIBS) $(GTK_LIBS) $(XML_LIBS) +DEMO_CC2=$(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 $(XDPMS_LIBS) $(XINERAMA_LIBS) +DEMO_CC3=-lXext $(X_EXTRA_LIBS) xscreensaver-demo-Xm: $(DEMO_OBJS) $(MOTIF_OBJS) - $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(MOTIF_OBJS) $(LIBS) $(X_LIBS) \ - $(MOTIF_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) -lXt -lX11 \ - $(XDPMS_LIBS) $(XINERAMA_LIBS) -lXext $(X_EXTRA_LIBS) + $(CC) $(LDFLAGS) -o $@ $(DEMO_XM_CC) $(DEMO_CC2) $(DEMO_CC3) xscreensaver-demo-Gtk: $(DEMO_OBJS) $(GTK_OBJS) - $(CC) $(LDFLAGS) -o $@ $(DEMO_OBJS) $(GTK_OBJS) $(LIBS) $(X_LIBS) \ - $(GTK_LIBS) $(XML_LIBS) $(INTL_LIBS) $(X_PRE_LIBS) \ - -lXt -lX11 $(XDPMS_LIBS) $(XINERAMA_LIBS) -lXext $(X_EXTRA_LIBS) + $(CC) $(LDFLAGS) -o $@ $(DEMO_GTK_CC) $(DEMO_CC2) $(DEMO_CC3) demo-Gtk.o: XScreenSaver_ad.h demo-Xm.o: XScreenSaver_Xm_ad.h @@ -1042,6 +1043,10 @@ xscreensaver.o: $(UTILS_SRC)/version.h xscreensaver.o: $(UTILS_SRC)/visual.h xscreensaver.o: $(UTILS_SRC)/yarandom.h xscreensaver.o: $(srcdir)/xscreensaver.h +xscreensaver-systemd.o: ../config.h +xscreensaver-systemd.o: $(UTILS_SRC)/queue.h +xscreensaver-systemd.o: $(UTILS_SRC)/version.h +xscreensaver-systemd.o: $(UTILS_SRC)/yarandom.h xset.o: ../config.h xset.o: $(srcdir)/prefs.h xset.o: $(srcdir)/types.h diff --git a/driver/XScreenSaver.ad.in b/driver/XScreenSaver.ad.in index 0b51f0c..8eb0b63 100644 --- a/driver/XScreenSaver.ad.in +++ b/driver/XScreenSaver.ad.in @@ -4,8 +4,8 @@ ! a screen saver and locker for the X window system ! by Jamie Zawinski ! -! version 5.44 -! 20-Mar-2020 +! version 5.45 +! 08-Dec-2020 ! ! See "man xscreensaver" for more info. The latest version is always ! available at https://www.jwz.org/xscreensaver/ @@ -589,8 +589,12 @@ XScreenSaver.bourneShell: /bin/sh vfeedback -root \n\ @GL_KLUDGE@ GL: deepstars -root \n\ @GL_KLUDGE@ GL: gravitywell -root \n\ +@GL_KLUDGE@ GL: beats -root \n\ +@GL_KLUDGE@ GL: covid19 -root \n\ @GL_KLUDGE@ GL: etruscanvenus -root \n\ -@GL_KLUDGE@ GL: gibson -root \n +@GL_KLUDGE@ GL: gibson -root \n\ +@GL_KLUDGE@ GL: headroom -root \n\ +@GL_KLUDGE@ GL: sphereeversion -root \n @@ -615,6 +619,7 @@ XScreenSaver.bourneShell: /bin/sh *hacks.ccurve.name: CCurve *hacks.cloudlife.name: CloudLife *hacks.companioncube.name: CompanionCube +*hacks.covid19.name: COVID19 *hacks.cubestack.name: CubeStack *hacks.cubestorm.name: CubeStorm *hacks.cubetwist.name: CubeTwist @@ -676,6 +681,7 @@ XScreenSaver.bourneShell: /bin/sh *hacks.skytentacles.name: SkyTentacles *hacks.slidescreen.name: SlideScreen *hacks.speedmine.name: SpeedMine +*hacks.sphereeversion.name: SphereEversion *hacks.splitflap.name: SplitFlap *hacks.starwars.name: StarWars *hacks.stonerview.name: StonerView diff --git a/driver/demo-Gtk-conf.c b/driver/demo-Gtk-conf.c index bac6ecc..cc3b6a3 100644 --- a/driver/demo-Gtk-conf.c +++ b/driver/demo-Gtk-conf.c @@ -1,5 +1,5 @@ /* demo-Gtk-conf.c --- implements the dynamic configuration dialogs. - * xscreensaver, Copyright (c) 2001-2014 Jamie Zawinski + * xscreensaver, Copyright (c) 2001-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -59,8 +59,21 @@ # endif /* LIBXML_VERSION */ #endif /* xmlChildrenNode */ +#if (__GNUC__ >= 4) /* Ignore useless warnings generated by gtk.h */ +# undef inline +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wstrict-prototypes" +# pragma GCC diagnostic ignored "-Wlong-long" +# pragma GCC diagnostic ignored "-Wvariadic-macros" +# pragma GCC diagnostic ignored "-Wpedantic" +#endif + #include +#if (__GNUC__ >= 4) +# pragma GCC diagnostic pop +#endif + #include "demo-Gtk-conf.h" /* Deal with deprecation of direct access to struct fields on the way to GTK3 diff --git a/driver/demo-Gtk.c b/driver/demo-Gtk.c index da98c53..c938ef2 100644 --- a/driver/demo-Gtk.c +++ b/driver/demo-Gtk.c @@ -82,6 +82,15 @@ # include #endif /* HAVE_XINERAMA */ +#if (__GNUC__ >= 4) /* Ignore useless warnings generated by gtk.h */ +# undef inline +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wstrict-prototypes" +# pragma GCC diagnostic ignored "-Wlong-long" +# pragma GCC diagnostic ignored "-Wvariadic-macros" +# pragma GCC diagnostic ignored "-Wpedantic" +#endif + #include #ifdef HAVE_CRAPPLET @@ -92,25 +101,20 @@ #include #ifdef HAVE_GTK2 -# include # include #else /* !HAVE_GTK2 */ # define G_MODULE_EXPORT /**/ #endif /* !HAVE_GTK2 */ -#if defined(DEFAULT_ICONDIR) && !defined(GLADE_DIR) -# define GLADE_DIR DEFAULT_ICONDIR -#endif -#if !defined(DEFAULT_ICONDIR) && defined(GLADE_DIR) -# define DEFAULT_ICONDIR GLADE_DIR -#endif - #ifndef HAVE_XML /* Kludge: this is defined in demo-Gtk-conf.c when HAVE_XML. It is unused otherwise, so in that case, stub it out. */ static const char *hack_configuration_path = 0; #endif +#if (__GNUC__ >= 4) +# pragma GCC diagnostic pop +#endif #include "version.h" @@ -208,7 +212,7 @@ typedef struct { conf_data *cdata; /* private data for per-hack configuration */ #ifdef HAVE_GTK2 - GladeXML *glade_ui; /* Glade UI file */ + GtkBuilder *gtk_ui; /* UI file */ #endif /* HAVE_GTK2 */ Bool debug_p; /* whether to print diagnostics */ @@ -272,16 +276,15 @@ static void kill_preview_subproc (state *, Bool reset_p); static void schedule_preview_check (state *); -/* Prototypes of functions used by the Glade-generated code, - to avoid warnings. +/* Prototypes of functions used by the Gtk-generated code, to avoid warnings. */ -void exit_menu_cb (GtkMenuItem *, gpointer user_data); -void about_menu_cb (GtkMenuItem *, gpointer user_data); -void doc_menu_cb (GtkMenuItem *, gpointer user_data); -void file_menu_cb (GtkMenuItem *, gpointer user_data); -void activate_menu_cb (GtkMenuItem *, gpointer user_data); -void lock_menu_cb (GtkMenuItem *, gpointer user_data); -void kill_menu_cb (GtkMenuItem *, gpointer user_data); +void exit_menu_cb (GtkAction *, gpointer user_data); +void about_menu_cb (GtkAction *, gpointer user_data); +void doc_menu_cb (GtkAction *, gpointer user_data); +void file_menu_cb (GtkAction *, gpointer user_data); +void activate_menu_cb (GtkAction *, gpointer user_data); +void lock_menu_cb (GtkAction *, gpointer user_data); +void kill_menu_cb (GtkAction *, gpointer user_data); void restart_menu_cb (GtkWidget *, gpointer user_data); void run_this_cb (GtkButton *, gpointer user_data); void manual_cb (GtkButton *, gpointer user_data); @@ -339,38 +342,49 @@ name_to_widget (state *s, const char *name) if (!*name) abort(); #ifdef HAVE_GTK2 - if (!s->glade_ui) + if (!s->gtk_ui) { - /* First try to load the Glade file from the current directory; + /* First try to load the UI file from the current directory; if there isn't one there, check the installed directory. */ -# define GLADE_FILE_NAME "xscreensaver-demo.glade2" - const char * const files[] = { GLADE_FILE_NAME, - GLADE_DIR "/" GLADE_FILE_NAME }; +# define UI_FILE "xscreensaver-demo.ui" + const char * const files[] = { UI_FILE, + DEFAULT_ICONDIR "/" UI_FILE }; int i; + + s->gtk_ui = gtk_builder_new (); + for (i = 0; i < countof (files); i++) { struct stat st; if (!stat (files[i], &st)) { - s->glade_ui = glade_xml_new (files[i], NULL, NULL); - break; + GError* error = NULL; + + if (gtk_builder_add_from_file (s->gtk_ui, files[i], &error)) + break; + else + { + g_warning ("Couldn't load builder file %s: %s", + files[i], error->message); + g_error_free (error); + } } } - if (!s->glade_ui) + if (i >= countof (files)) { fprintf (stderr, - "%s: could not load \"" GLADE_FILE_NAME "\"\n" - "\tfrom " GLADE_DIR "/ or current directory.\n", + "%s: could not load \"" UI_FILE "\"\n" + "\tfrom " DEFAULT_ICONDIR "/ or current directory.\n", blurb()); exit (-1); } -# undef GLADE_FILE_NAME +# undef UI_FILE - glade_xml_signal_autoconnect (s->glade_ui); + gtk_builder_connect_signals (s->gtk_ui, NULL); } - w = glade_xml_get_widget (s->glade_ui, name); + w = GTK_WIDGET (gtk_builder_get_object (s->gtk_ui, name)); #else /* !HAVE_GTK2 */ @@ -382,7 +396,7 @@ name_to_widget (state *s, const char *name) #endif /* HAVE_GTK2 */ if (w) return w; - fprintf (stderr, "%s: no widget \"%s\" (wrong Glade file?)\n", + fprintf (stderr, "%s: no widget \"%s\" (wrong UI file?)\n", blurb(), name); abort(); } @@ -774,12 +788,12 @@ run_hack (state *s, int list_elt, Bool report_errors_p) /* Button callbacks According to Eric Lassauge, this G_MODULE_EXPORT crud is needed to make - libglade work on Cygwin; apparently all Glade callbacks need this magic - extra declaration. I do not pretend to understand. + GTK work on Cygwin; apparently all GTK callbacks need this magic extra + declaration. I do not pretend to understand. */ G_MODULE_EXPORT void -exit_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +exit_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ flush_dialog_changes_and_save (s); @@ -798,7 +812,7 @@ wm_toplevel_close_cb (GtkWidget *widget, GdkEvent *event, gpointer data) G_MODULE_EXPORT void -about_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +about_menu_cb (GtkAction *menu_action, gpointer user_data) { char msg [2048]; char *vers = strdup (screensaver_id + 4); @@ -819,7 +833,7 @@ about_menu_cb (GtkMenuItem *menuitem, gpointer user_data) /* Ole Laursen says "don't use _() here because non-ASCII characters aren't allowed in localizable string keys." - (I don't want to just use (c) instead of because that doesn't + (I don't want to just use (c) instead of © because that doesn't look as good in the plain-old default Latin1 "C" locale.) */ #ifdef HAVE_GTK2 @@ -851,7 +865,8 @@ about_menu_cb (GtkMenuItem *menuitem, gpointer user_data) GtkWidget *dialog = gtk_dialog_new (); GtkWidget *hbox, *icon, *vbox, *label1, *label2, *hb, *ok; - GtkWidget *parent = GTK_WIDGET (menuitem); + GSList *proxies = gtk_action_get_proxies (menu_action); + GtkWidget *parent = GTK_WIDGET (proxies->data); while (GET_PARENT (parent)) parent = GET_PARENT (parent); @@ -932,7 +947,7 @@ about_menu_cb (GtkMenuItem *menuitem, gpointer user_data) G_MODULE_EXPORT void -doc_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +doc_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ saver_preferences *p = &s->prefs; @@ -960,7 +975,7 @@ doc_menu_cb (GtkMenuItem *menuitem, gpointer user_data) G_MODULE_EXPORT void -file_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +file_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ sensitize_menu_items (s, False); @@ -968,7 +983,7 @@ file_menu_cb (GtkMenuItem *menuitem, gpointer user_data) G_MODULE_EXPORT void -activate_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +activate_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ run_cmd (s, XA_ACTIVATE, 0); @@ -976,7 +991,7 @@ activate_menu_cb (GtkMenuItem *menuitem, gpointer user_data) G_MODULE_EXPORT void -lock_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +lock_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ run_cmd (s, XA_LOCK, 0); @@ -984,7 +999,7 @@ lock_menu_cb (GtkMenuItem *menuitem, gpointer user_data) G_MODULE_EXPORT void -kill_menu_cb (GtkMenuItem *menuitem, gpointer user_data) +kill_menu_cb (GtkAction *menu_action, gpointer user_data) { state *s = global_state_kludge; /* I hate C so much... */ run_cmd (s, XA_EXIT, 0); @@ -1191,7 +1206,7 @@ force_list_select_item (state *s, GtkWidget *list, int list_elt, Bool scroll_p) if (!was) gtk_widget_set_sensitive (parent, True); #ifdef HAVE_GTK2 model = gtk_tree_view_get_model (GTK_TREE_VIEW (list)); - g_assert (model); + if (!model) abort(); if (gtk_tree_model_iter_nth_child (model, &iter, NULL, list_elt)) { selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (list)); @@ -1634,11 +1649,8 @@ flush_dialog_changes_and_save (state *s) /* Map the mode menu to `saver_mode' enum values. */ { - GtkOptionMenu *opt = GTK_OPTION_MENU (name_to_widget (s, "mode_menu")); - GtkMenu *menu = GTK_MENU (gtk_option_menu_get_menu (opt)); - GtkWidget *selected = gtk_menu_get_active (menu); - GList *kids = gtk_container_children (GTK_CONTAINER (menu)); - int menu_elt = g_list_index (kids, (gpointer) selected); + GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu")); + int menu_elt = gtk_combo_box_get_active (opt); if (menu_elt < 0 || menu_elt >= countof(mode_menu_order)) abort(); p2->mode = mode_menu_order[menu_elt]; } @@ -1744,9 +1756,10 @@ flush_popup_changes_and_save (state *s) int list_elt = selected_list_element (s); GtkEntry *cmd = GTK_ENTRY (name_to_widget (s, "cmd_text")); - GtkCombo *vis = GTK_COMBO (name_to_widget (s, "visual_combo")); + GtkComboBoxEntry *vis = GTK_COMBO_BOX_ENTRY (name_to_widget (s, "visual_combo")); + GtkEntry *visent = GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis))); - const char *visual = gtk_entry_get_text (GTK_ENTRY (GTK_COMBO (vis)->entry)); + const char *visual = gtk_entry_get_text (visent); const char *command = gtk_entry_get_text (cmd); char c; @@ -1791,7 +1804,7 @@ flush_popup_changes_and_save (state *s) { gdk_beep (); /* unparsable */ visual = ""; - gtk_entry_set_text (GTK_ENTRY (GTK_COMBO (vis)->entry), _("Any")); + gtk_entry_set_text (visent, _("Any")); } changed = flush_changes (s, list_elt, -1, command, visual); @@ -1839,21 +1852,8 @@ mode_menu_item_cb (GtkWidget *widget, gpointer user_data) GtkWidget *list = name_to_widget (s, "list"); int list_elt; - GList *menu_items = - gtk_container_children (GTK_CONTAINER (GET_PARENT (widget))); - int menu_index = 0; - saver_mode new_mode; - - while (menu_items) - { - if (menu_items->data == widget) - break; - menu_index++; - menu_items = menu_items->next; - } - if (!menu_items) abort(); - - new_mode = mode_menu_order[menu_index]; + int menu_index = gtk_combo_box_get_active (GTK_COMBO_BOX (widget)); + saver_mode new_mode = mode_menu_order[menu_index]; /* Keep the same list element displayed as before; except if we're switching *to* "one screensaver" mode from any other mode, set @@ -1901,7 +1901,7 @@ list_activated_cb (GtkTreeView *list, char *str; int list_elt; - g_return_if_fail (!gdk_pointer_is_grabbed ()); + if (gdk_pointer_is_grabbed()) return; str = gtk_tree_path_to_string (path); list_elt = strtol (str, NULL, 10); @@ -2868,13 +2868,13 @@ populate_prefs_page (state *s) /* Map the `saver_mode' enum to mode menu to values. */ { - GtkOptionMenu *opt = GTK_OPTION_MENU (name_to_widget (s, "mode_menu")); + GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu")); int i; for (i = 0; i < countof(mode_menu_order); i++) if (mode_menu_order[i] == p->mode) break; - gtk_option_menu_set_history (opt, i); + gtk_combo_box_set_active (opt, i); update_list_sensitivity (s); } @@ -3022,7 +3022,7 @@ sensitize_menu_items (state *s, Bool force_p) static Bool running_p = False; static time_t last_checked = 0; time_t now = time ((time_t *) 0); - const char *names[] = { "activate_menu", "lock_menu", "kill_menu", + const char *names[] = { "activate_action", "lock_action", "kill_action", /* "demo" */ }; int i; @@ -3034,8 +3034,8 @@ sensitize_menu_items (state *s, Bool force_p) for (i = 0; i < countof(names); i++) { - GtkWidget *w = name_to_widget (s, names[i]); - gtk_widget_set_sensitive (GTK_WIDGET(w), running_p); + GtkAction *a = GTK_ACTION (gtk_builder_get_object (s->gtk_ui, names[i])); + gtk_action_set_sensitive (a, running_p); } } @@ -3107,7 +3107,7 @@ fix_text_entry_sizes (state *s) /* Now fix the width of the combo box. */ w = GTK_WIDGET (name_to_widget (s, "visual_combo")); - w = GTK_COMBO (w)->entry; + w = GTK_COMBO_BOX_ENTRY (w)->entry; width = gdk_string_width (w->style->font, "PseudoColor___"); gtk_widget_set_usize (w, width, -2); @@ -3313,7 +3313,7 @@ populate_demo_window (state *s, int list_elt) GtkFrame *frame1 = GTK_FRAME (name_to_widget (s, "preview_frame")); GtkFrame *frame2 = GTK_FRAME (name_to_widget (s, "opt_frame")); GtkEntry *cmd = GTK_ENTRY (name_to_widget (s, "cmd_text")); - GtkCombo *vis = GTK_COMBO (name_to_widget (s, "visual_combo")); + GtkComboBoxEntry *vis = GTK_COMBO_BOX_ENTRY (name_to_widget (s, "visual_combo")); GtkWidget *list = GTK_WIDGET (name_to_widget (s, "list")); if (p->mode == BLANK_ONLY) @@ -3363,7 +3363,7 @@ populate_demo_window (state *s, int list_elt) gtk_window_set_title (GTK_WINDOW (s->popup_widget), title); } - gtk_entry_set_text (GTK_ENTRY (GTK_COMBO (vis)->entry), + gtk_entry_set_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis))), (hack ? (hack->visual && *hack->visual ? hack->visual @@ -5171,31 +5171,32 @@ main (int argc, char **argv) #endif /* !HAVE_GTK2 */ /* Hook up callbacks to the items on the mode menu. */ - { - GtkOptionMenu *opt = GTK_OPTION_MENU (name_to_widget (s, "mode_menu")); - GtkMenu *menu = GTK_MENU (gtk_option_menu_get_menu (opt)); - GList *kids = gtk_container_children (GTK_CONTAINER (menu)); - int i; - for (i = 0; kids; kids = kids->next, i++) - { - gtk_signal_connect (GTK_OBJECT (kids->data), "activate", - GTK_SIGNAL_FUNC (mode_menu_item_cb), - (gpointer) s); - - /* The "random-same" mode menu item does not appear unless - there are multple screens. - */ - if (s->nscreens <= 1 && - mode_menu_order[i] == RANDOM_HACKS_SAME) - gtk_widget_hide (GTK_WIDGET (kids->data)); - } + gtk_signal_connect (GTK_OBJECT (name_to_widget (s, "mode_menu")), + "changed", GTK_SIGNAL_FUNC (mode_menu_item_cb), + (gpointer) s); + if (s->nscreens <= 1) + { + GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu")); + GtkTreeModel *list = gtk_combo_box_get_model (opt); + unsigned int i; + for (i = 0; i < countof(mode_menu_order); i++) + { + /* The "random-same" mode menu item does not appear unless + there are multiple screens. + */ + if (mode_menu_order[i] == RANDOM_HACKS_SAME) + { + GtkTreeIter iter; + gtk_tree_model_iter_nth_child (list, &iter, NULL, i); + gtk_list_store_remove (GTK_LIST_STORE (list), &iter); + break; + } + } - if (s->nscreens <= 1) /* recompute option-menu size */ - { - gtk_widget_unrealize (GTK_WIDGET (menu)); - gtk_widget_realize (GTK_WIDGET (menu)); - } - } + /* recompute option-menu size */ + gtk_widget_unrealize (GTK_WIDGET (opt)); + gtk_widget_realize (GTK_WIDGET (opt)); + } /* Handle the -prefs command-line argument. */ diff --git a/driver/lock.c b/driver/lock.c index d36481e..8bcd2e0 100644 --- a/driver/lock.c +++ b/driver/lock.c @@ -1,5 +1,5 @@ /* lock.c --- handling the password dialog for locking-mode. - * xscreensaver, Copyright (c) 1993-2018 Jamie Zawinski + * xscreensaver, Copyright (c) 1993-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -1928,6 +1928,15 @@ passwd_event_loop (saver_info *si) if (si->pw_data->login_button_p) handle_login_button (si, &event.x_event); } + else if (event.x_event.xany.type == ClientMessage && + event.x_event.xclient.message_type == XA_SCREENSAVER && + event.x_event.xclient.format == 32) + { + const char *msg = + "ClientMessage ignored while authentication dialog is active"; + clientmessage_response (si, event.x_event.xclient.window, + True, msg, msg); + } else XtDispatchEvent (&event.x_event); } diff --git a/driver/passwd-pam.c b/driver/passwd-pam.c index d463bc2..457fed5 100644 --- a/driver/passwd-pam.c +++ b/driver/passwd-pam.c @@ -131,7 +131,7 @@ Bool pam_priv_init (int argc, char **argv, Bool verbose_p); set up an "xscreensaver" PAM service. However, if we went that route, it would have a really awful failure mode: the failure mode would be that xscreensaver was willing to *lock* the screen, but would be unwilling to - *unlock* the screen. (With the non-PAM password code, the analagous + *unlock* the screen. (With the non-PAM password code, the analogous situation -- security not being configured properly, for example do to the executable not being installed as setuid root -- the failure mode is much more palettable, in that xscreensaver will refuse to *lock* the screen, diff --git a/driver/pdf2jpeg.m b/driver/pdf2jpeg.m index d681b4a..a9975e8 100644 --- a/driver/pdf2jpeg.m +++ b/driver/pdf2jpeg.m @@ -138,7 +138,7 @@ main (int argc, char** argv) dictionaryWithObject: [NSNumber numberWithFloat:compression] forKey:NSImageCompressionFactor]; - NSData *jpeg_data = [bit_rep representationUsingType:NSJPEGFileType + NSData *jpeg_data = [bit_rep representationUsingType:NSBitmapImageFileTypeJPEG properties:props]; [jpeg_data writeToFile: diff --git a/driver/prefs.c b/driver/prefs.c index b608738..8c8c19a 100644 --- a/driver/prefs.c +++ b/driver/prefs.c @@ -971,7 +971,9 @@ write_init_file (Display *dpy, /* Since the .xscreensaver file is used for IPC, let's try and make sure that the bits actually land on the disk right away. */ - sync (); + /* Update 2020: Apparently here in the future, this sometimes takes + 3+ seconds, so let's not. */ + /* sync(); */ status = 0; /* wrote and renamed successfully! */ } @@ -1779,5 +1781,5 @@ senesculent_p (void) mrnths = ((((tm->tm_year + 1900) * 12) + tm->tm_mon) - /* h */ (y * 12 + m)); /* h */ /* p */ - return (mrnths >= 34); /* . */ + return (mrnths >= 44); /* . */ } diff --git a/driver/remote.c b/driver/remote.c index 83254e0..218aa6a 100644 --- a/driver/remote.c +++ b/driver/remote.c @@ -1,4 +1,4 @@ -/* xscreensaver-command, Copyright (c) 1991-2019 Jamie Zawinski +/* xscreensaver-command, Copyright (c) 1991-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -551,7 +551,7 @@ xscreensaver_command_wait_for_blank (Display *dpy, Window window, } else if (xgwa.map_state == IsViewable) { - if (verbose_p) + if (verbose_p > 1) fprintf (stderr, "%s: window 0x%08x mapped.\n", progname, (unsigned int) window); return 0; @@ -570,10 +570,11 @@ xscreensaver_command_wait_for_blank (Display *dpy, Window window, fprintf (stderr, "%s: %s\n", progname, err); return -1; } - else if (verbose_p && now > start+1) + else if (verbose_p && now > start + 3) { fprintf (stderr, "%s: waiting for window 0x%08x to map\n", progname, (unsigned int) window); + verbose_p++; } } @@ -681,11 +682,12 @@ server_xscreensaver_version (Display *dpy, { char *o = 0, *p = 0, *c = 0; o = strchr ((char *) id, '('); - if (o) p = strchr (o, '@'); + if (o) p = strrchr (o, '@'); if (p) c = strchr (p, ')'); if (c) { - /* found ID of the form "1234 (user@host)". */ + /* found ID of the form "1234 (user@host)" + or the weirder "1234 (user@crap@host)". */ user = o+1; host = p+1; *p = 0; diff --git a/driver/screens.c b/driver/screens.c index f319c96..5aeb55d 100644 --- a/driver/screens.c +++ b/driver/screens.c @@ -1,5 +1,5 @@ /* screens.c --- dealing with RANDR, Xinerama, and VidMode Viewports. - * xscreensaver, Copyright (c) 1991-2008 Jamie Zawinski + * xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -1089,6 +1089,22 @@ update_screen_layout (saver_info *si) j++; } + for (; j < count; j++) + { + saver_screen_info *ssi = &si->screens[j]; + if (!ssi->screensaver_window) + continue; + fprintf (stderr, "%s: %d: screen now unused, disabling.\n", + blurb(), j); + /* Undo store_saver_id() so that xscreensaver-command doesn't attempt + to communicate with us through this window. It might make more + sense to destroy the window, but I'm not 100% sure that there are + no outstanding grabs on it that have yet been transferred. + */ + XDeleteProperty (si->dpy, ssi->screensaver_window, + XA_SCREENSAVER_VERSION); + } + si->default_screen = &si->screens[0]; return True; } diff --git a/driver/stderr.c b/driver/stderr.c index 84fa697..140f6c1 100644 --- a/driver/stderr.c +++ b/driver/stderr.c @@ -1,5 +1,5 @@ /* stderr.c --- capturing stdout/stderr output onto the screensaver window. - * xscreensaver, Copyright (c) 1991-2016 Jamie Zawinski + * xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -296,6 +296,7 @@ static void stderr_callback (XtPointer closure, int *fd, XtIntervalId *id) { saver_info *si = (saver_info *) closure; + Bool shutting_down_p = (id == 0); /* Called from shutdown_stderr() */ char *s; int left; int size; @@ -345,7 +346,7 @@ stderr_callback (XtPointer closure, int *fd, XtIntervalId *id) However, if the buffer is full (meaning lots of data has been written) then we don't reset the timer. */ - if (read_this_time > 0) + if (read_this_time > 0 && !shutting_down_p) { if (si->stderr_popup_timer) XtRemoveTimeOut (si->stderr_popup_timer); @@ -361,7 +362,7 @@ stderr_callback (XtPointer closure, int *fd, XtIntervalId *id) screen as well as on the original value of those streams. */ void -initialize_stderr (saver_info *si) +initialize_stderr (saver_info *si, Bool inhibit_p) { static Boolean done = False; int fds [2]; @@ -378,6 +379,9 @@ initialize_stderr (saver_info *si) real_stderr = stderr; real_stdout = stdout; + if (inhibit_p) + return; + stderr_dialog_p = get_boolean_resource (si->dpy, "captureStderr", "Boolean"); if (!stderr_dialog_p) @@ -476,8 +480,9 @@ initialize_stderr (saver_info *si) /* If the "-log file" command-line option has been specified, open the file for append, and redirect stdout/stderr there. This is called very early, before initialize_stderr(). + Returns true if logging to a file. */ -void +Bool stderr_log_file (saver_info *si) { int stdout_fd = 1; @@ -485,7 +490,8 @@ stderr_log_file (saver_info *si) const char *filename = get_string_resource (si->dpy, "logFile", "LogFile"); int fd; - if (!filename || !*filename) return; + if (!filename || !*filename) + return False; fd = open (filename, O_WRONLY | O_APPEND | O_CREAT, 0666); @@ -511,6 +517,7 @@ stderr_log_file (saver_info *si) "##########################################################################\n" "\n", blurb(), filename, timestring(0)); + return True; } @@ -527,6 +534,7 @@ shutdown_stderr (saver_info *si) if (!real_stderr || stderr_stdout_read_fd < 0) return; + /* Copy any stragglers from the stderr pipe into stderr_buffer */ stderr_callback ((XtPointer) si, &stderr_stdout_read_fd, 0); if (stderr_tail && diff --git a/driver/subprocs.c b/driver/subprocs.c index 6cb96d3..d4d26ae 100644 --- a/driver/subprocs.c +++ b/driver/subprocs.c @@ -1,5 +1,5 @@ /* subprocs.c --- choosing, spawning, and killing screenhacks. - * xscreensaver, Copyright (c) 1991-2019 Jamie Zawinski + * xscreensaver, Copyright (c) 1991-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -62,7 +62,7 @@ extern int kill (pid_t, int); /* signal() is in sys/signal.h... */ #undef XtPointer #define XtAppContext void* #define XrmDatabase void* -#define XtIntervalId void* +#define XtIntervalId unsigned long #define XtPointer void* #define Widget void* @@ -369,7 +369,8 @@ find_job (pid_t pid) static void await_dying_children (saver_info *si); #ifndef VMS -static void describe_dead_child (saver_info *, pid_t, int wait_status); +static void describe_dead_child (saver_info *, pid_t, int wait_status, + struct rusage); #endif @@ -561,9 +562,10 @@ await_dying_children (saver_info *si) { int wait_status = 0; pid_t kid; + struct rusage rus; errno = 0; - kid = waitpid (-1, &wait_status, WNOHANG|WUNTRACED); + kid = wait4 (-1, &wait_status, WNOHANG|WUNTRACED, &rus); if (si->prefs.debug_p) { @@ -600,13 +602,14 @@ await_dying_children (saver_info *si) (kid < 0 && errno != EINTR)) break; - describe_dead_child (si, kid, wait_status); + describe_dead_child (si, kid, wait_status, rus); } } static void -describe_dead_child (saver_info *si, pid_t kid, int wait_status) +describe_dead_child (saver_info *si, pid_t kid, int wait_status, + struct rusage rus) { int i; saver_preferences *p = &si->prefs; @@ -678,6 +681,10 @@ describe_dead_child (saver_info *si, pid_t kid, int wait_status) blurb(), screen_no, (unsigned long) kid, name, signal_name (WTERMSIG(wait_status))); */ +# ifdef LOG_CPU_TIME + long u_ms = rus.ru_utime.tv_usec / 1000 + rus.ru_utime.tv_sec * 1000; + long s_ms = rus.ru_stime.tv_usec / 1000 + rus.ru_stime.tv_sec * 1000; +# endif /* LOG_CPU_TIME */ write_string (STDERR_FILENO, blurb()); write_string (STDERR_FILENO, ": "); write_long (STDERR_FILENO, (long) screen_no); @@ -688,6 +695,20 @@ describe_dead_child (saver_info *si, pid_t kid, int wait_status) write_string (STDERR_FILENO, ") terminated with signal "); write_long (STDERR_FILENO, WTERMSIG(wait_status)); write_string (STDERR_FILENO, ".\n"); +# ifdef LOG_CPU_TIME + write_string (STDERR_FILENO, blurb()); + write_string (STDERR_FILENO, ": "); + write_long (STDERR_FILENO, (long) screen_no); + write_string (STDERR_FILENO, ": CPU used: "); + write_long (STDERR_FILENO, (u_ms / 1000)); /* msec -> sec */ + write_string (STDERR_FILENO, "."); + write_long (STDERR_FILENO, (u_ms % 1000) / 100); + write_string (STDERR_FILENO, "u, "); + write_long (STDERR_FILENO, (s_ms / 1000)); /* msec -> sec */ + write_string (STDERR_FILENO, "."); + write_long (STDERR_FILENO, (s_ms % 1000) / 100); + write_string (STDERR_FILENO, "s.\n"); +# endif /* LOG_CPU_TIME */ } if (job) @@ -1468,9 +1489,25 @@ save_argv (int argc, char **argv) void restart_process (saver_info *si) { - fflush (stdout); - fflush (stderr); - shutdown_stderr (si); + if (si->screen_blanked_p) + { + unblank_screen (si); + XSync (si->dpy, False); + } + + emergency_kill_subproc (si); + +# ifdef HAVE_LIBSYSTEMD + if (si->systemd_pid) /* Kill background xscreensaver-systemd process */ + { + /* We're exiting, so there's no need to do a full kill_job() here, + which would waitpid(). */ + /* kill_job (si, si->systemd_pid, SIGTERM); */ + kill (si->systemd_pid, SIGTERM); + si->systemd_pid = 0; + } +# endif + if (si->prefs.verbose_p) { int i; @@ -1478,12 +1515,13 @@ restart_process (saver_info *si) for (i = 0; saved_argv[i]; i++) fprintf (stderr, " %s", saved_argv[i]); fprintf (stderr, "\n"); + + describe_uids (si, stderr); + fprintf (stderr, "\n"); } - describe_uids (si, stderr); - fprintf (stderr, "\n"); - fflush (stdout); - fflush (stderr); + shutdown_stderr (si); + execvp (saved_argv [0], saved_argv); /* shouldn't return */ { char buf [512]; diff --git a/driver/timers.c b/driver/timers.c index b096000..17781eb 100644 --- a/driver/timers.c +++ b/driver/timers.c @@ -729,6 +729,9 @@ flush_events (saver_info *si) deactivated by clientmessage. I trust that explains why this function is a big hairy mess. + + See the very long comment at the top of xscreensaver.c for why the + MIT-SCREEN-SAVER extension is garbage and should not be used. */ void sleep_until_idle (saver_info *si, Bool until_idle_p) diff --git a/driver/windows.c b/driver/windows.c index c0e2291..f70e7cb 100644 --- a/driver/windows.c +++ b/driver/windows.c @@ -63,7 +63,7 @@ typedef long PROP32; #undef XtPointer #define XtAppContext void* #define XrmDatabase void* -#define XtIntervalId void* +#define XtIntervalId unsigned long #define XtPointer void* #define Widget void* @@ -774,24 +774,37 @@ static RETSIGTYPE restore_real_vroot_handler (int sig) { saver_info *si = global_si_kludge; /* I hate C so much... */ + Bool restored_p; signal (sig, SIG_DFL); - if (restore_real_vroot (si)) - fprintf (real_stderr, "\n%s: %s intercepted, vroot restored.\n", - blurb(), signal_name(sig)); + # ifdef HAVE_LIBSYSTEMD if (si->systemd_pid) /* Kill background xscreensaver-systemd process */ { /* We're exiting, so there's no need to do a full kill_job() here, - which will waitpid(). */ + which would waitpid(). */ /* kill_job (si, si->systemd_pid, SIGTERM); */ kill (si->systemd_pid, SIGTERM); si->systemd_pid = 0; } # endif + + /* This is a signal handler, and the following might do X protocol, + which is horrible, but we're about to terminate so we don't have + a choice... */ + restored_p = restore_real_vroot (si); + + /* Calling fprintf from a signal handler is also risky, but we're + so far into the weeds on that front already... */ + fprintf (stderr, "\n%s: %s%s\n\n", blurb(), signal_name(sig), + (restored_p ? ", vroot restored" : "")); + + shutdown_stderr (si); + kill (getpid (), sig); } + static void catch_signal (saver_info *si, int sig, RETSIGTYPE (*handler) (int)) { @@ -874,15 +887,6 @@ saver_sighup_handler (int sig) fprintf (stderr, "%s: %s received: restarting...\n", blurb(), signal_name(sig)); - if (si->screen_blanked_p) - { - int i; - for (i = 0; i < si->nscreens; i++) - kill_screenhack (&si->screens[i]); - unblank_screen (si); - XSync (si->dpy, False); - } - restart_process (si); /* Does not return */ abort (); } @@ -898,17 +902,16 @@ saver_exit (saver_info *si, int status, const char *dump_core_reason) Bool vrs; if (exiting) - exit(status); + exit (status); exiting = True; vrs = restore_real_vroot (si); - emergency_kill_subproc (si); - shutdown_stderr (si); - if (p->verbose_p && vrs) fprintf (real_stderr, "%s: old vroot restored.\n", blurb()); + emergency_kill_subproc (si); + # ifdef HAVE_LIBSYSTEMD if (si->systemd_pid) /* Kill background xscreensaver-systemd process */ { @@ -917,12 +920,7 @@ saver_exit (saver_info *si, int status, const char *dump_core_reason) } # endif - fflush(real_stdout); - -#ifdef VMS /* on VMS, 1 is the "normal" exit code instead of 0. */ - if (status == 0) status = 1; - else if (status == 1) status = -1; -#endif + shutdown_stderr (si); bugp = !!dump_core_reason; @@ -960,6 +958,11 @@ saver_exit (saver_info *si, int status, const char *dump_core_reason) abort(); } +# ifdef VMS /* on VMS, 1 is the "normal" exit code instead of 0. */ + if (status == 0) status = 1; + else if (status == 1) status = -1; +# endif + exit (status); } @@ -1322,7 +1325,11 @@ initialize_screensaver_window_1 (saver_screen_info *ssi) always exist (though the ID is constant.) So to use this window, we'd have to reimplement the ACTIVATE ClientMessage to tell the *server* to tell *us* to turn on, to cause the window - to get created at the right time. Gag. */ + to get created at the right time. Gag. + + See the very long comment at the top of xscreensaver.c for why the + MIT-SCREEN-SAVER extension is garbage and should not be used. + */ XScreenSaverSetAttributes (si->dpy, root, 0, 0, width, height, 0, current_depth, InputOutput, visual, diff --git a/driver/xscreensaver-command.c b/driver/xscreensaver-command.c index 4a4f0b4..e452112 100644 --- a/driver/xscreensaver-command.c +++ b/driver/xscreensaver-command.c @@ -1,4 +1,4 @@ -/* xscreensaver-command, Copyright (c) 1991-2019 Jamie Zawinski +/* xscreensaver-command, Copyright (c) 1991-2020 Jamie Zawinski * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -71,6 +71,9 @@ usage: %s -