diff options
Diffstat (limited to 'configure.ac')
| -rw-r--r-- | configure.ac | 683 |
1 files changed, 485 insertions, 198 deletions
diff --git a/configure.ac b/configure.ac index c3f0b5b..dc2ad2f 100644 --- a/configure.ac +++ b/configure.ac @@ -1,9 +1,18 @@ -# configure.in --- xscreensaver, Copyright © 1997-2021 Jamie Zawinski. +# configure.in --- xscreensaver, Copyright © 1997-2023 Jamie Zawinski. # -# Note: upgrading past 2.69_5 breaks the world. +# Note: upgrading past 2.69_5 breaks the world, mostly the po/ shitshow. AC_PREREQ([2.69]) +# If you accidentally upgraded autoconf, re-install the 2019-08-23 version: +# +# git clone --single-branch https://github.com/macports/macports-ports.git +# cd macports-ports/ +# git checkout 1d802b48a7b00b6c154e971119a2a309550c79c2 +# cd devel/autoconf +# sudo port install +# port installed autoconf + AC_INIT AC_CONFIG_SRCDIR([driver/subprocs.c]) AC_CONFIG_HEADERS([config.h]) @@ -11,6 +20,11 @@ AC_CONFIG_HEADERS([config.h]) echo "current directory: `pwd`" echo "command line was: $0 $@" +if ! test -z "$ac_unrecognized_opts" ; then + echo "" >&2 + exit 2 +fi + ############################################################################### # # Autoheader stuff @@ -18,7 +32,7 @@ echo "command line was: $0 $@" ############################################################################### AH_TOP([ -/* xscreensaver, Copyright © 1991-2021 Jamie Zawinski. +/* xscreensaver, Copyright © 1991-2022 Jamie Zawinski. * Generate this file by running 'configure' rather than editing it by hand. */ ]) @@ -62,9 +76,6 @@ AH_TEMPLATE([HAVE_LIBCAP], AH_TEMPLATE([XPointer], [Stare into the void.]) -AH_TEMPLATE([HAVE_READ_DISPLAY_EXTENSION], - [Define this if you have the SGI XReadDisplay extension.]) - AH_TEMPLATE([HAVE_XINPUT], [Define this if you have the XInput2 extension.]) @@ -126,6 +137,9 @@ AH_TEMPLATE([HAVE_XKB], AH_TEMPLATE([HAVE_LIBSYSTEMD], [Define this if you have libsystemd.]) +AH_TEMPLATE([HAVE_LIBELOGIND], + [Define this if you have libelogind.]) + 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 @@ -146,27 +160,15 @@ AH_TEMPLATE([HAVE_XMCOMBOBOX], [Define this if you have the XmComboBox Motif 2.0 widget.]) AH_TEMPLATE([HAVE_GTK], - [Define this if you have Gtk]) -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 Gtk 1.x Gnome Control Center.]) - -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 the XML library headers lack the - gnome-xml/libxml symlink.]) - AH_TEMPLATE([HAVE_GDK_PIXBUF], - [Define this if you have GDK_Pixbuf.]) + [Define this if you have GDK-Pixbuf.]) +AH_TEMPLATE([HAVE_GDK_PIXBUF_XLIB], + [Define this if you have GDK-Pixbuf-Xlib.]) AH_TEMPLATE([HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION], [Define this if you have the gdk_pixbuf_apply_embedded_orientation @@ -221,6 +223,9 @@ AH_TEMPLATE([HAVE_GLE3], [Define this if GL Extrusion is version 3.]) +AH_TEMPLATE([HAVE_FFMPEG], + [Define this if you have the ffmpeg libraries.]) + AH_TEMPLATE([HAVE_RECORD_ANIM], [Define this to enable recording of videos.]) @@ -271,9 +276,6 @@ AH_TEMPLATE([HAVE_ADJUNCT_PASSWD], AH_TEMPLATE([HAVE_HPUX_PASSWD], [Define this for HPUX so-called "Secure Passwords".]) -#AH_TEMPLATE([PASSWD_HELPER_PROGRAM], -# [Define this to use a third-party password helper program.]) - AH_TEMPLATE([HAVE_SYSLOG], [Define this if you have openlog/syslog/closelog.]) @@ -305,7 +307,17 @@ AC_DEFUN([AC_CHECK_GCC_ARG], 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 | \ + # + # July 2023: With gcc 10.2.1 We get the "unrecognized" warning with + # "-Wlanguage-extension-token" but no warning is printed with + # "-Wno-language-extension-token"... And then later other unrelated + # warnings will volunteer that "unrecognized command-line option + # ‘-Wno-language-extension-token’ may have been intended to silence + # earlier diagnostics". + # + without_no=`echo $2 | sed s/Wno-/W/` + if ( ( gcc -c $without_no conftest.$ac_ext -o/dev/null >/dev/null ) \ + 2>&1 | \ grep unrecognized >/dev/null ); then ac_cv_gcc_accepts_[$1]=no else @@ -328,22 +340,14 @@ AC_DEFUN([AC_PROG_CC_ANSI], if test -z "$GCC"; then # not using GCC - AC_MSG_CHECKING(how to request ANSI compilation) + AC_MSG_CHECKING(for extra compiler flags) case "$host" in - *-hpux* ) - AC_MSG_RESULT(HPUX: adding -Ae) - CC="$CC -Ae" - ;; *-aix* ) - AC_MSG_RESULT(AIX: adding -qlanglvl=ansi -qhalt=e) + AC_MSG_RESULT(AIX: adding -qhalt=e) CC="$CC -qlanglvl=ansi -qhalt=e" ;; - *-dec-* ) - AC_MSG_RESULT(DEC: adding -std1 -ieee) - CC="$CC -std1" - ;; *) - AC_MSG_RESULT(no idea) + AC_MSG_RESULT(none) ;; esac else @@ -361,26 +365,19 @@ AC_DEFUN([AC_PROG_CC_ANSI], # extensions (such as allowing C++ style "//" comments in C code, and # declarations after statements) were not supported by non-gcc compilers # for many years, so we continued to use "-std=c89" to prevent those - # GNU-isms from sneaking in to the code. Well, these days various - # vendors have sloppily allowed non-ANSI syntax to slip into their - # library header files. GTK and OpenGL have been major offenders in this - # way. So... as of 2021, I guess we are forced to use "-std=gnu89", to - # allow those extensions, and hope that the warnings generated by - # "-pedantic" are heeded. + # GNU-isms from sneaking in to the code. + # + # These days XScreenSaver uses C99, which supports "//" comments and + # declarations after statements. # - AC_CHECK_GCC_ARG(gnu89, -std=gnu89) + AC_CHECK_GCC_ARG(gnu99, -std=gnu99) AC_CHECK_GCC_ARG(pedantic, -pedantic) AC_CHECK_GCC_ARG(Wall, -Wall) AC_CHECK_GCC_ARG(wnested_externs, -Wnested-externs) AC_CHECK_GCC_ARG(wstrict_prototypes, -Wstrict-prototypes) AC_CHECK_GCC_ARG(wmissing_prototypes, -Wmissing-prototypes) - AC_CHECK_GCC_ARG(declaration_after, -Wdeclaration-after-statement) # "string length is greater than ISO C89 compilers required to support" AC_CHECK_GCC_ARG(no_overlength_strings, -Wno-overlength-strings) - # Ignore warnings about using "inline" - AC_CHECK_GCC_ARG(no_language_ext_token, -Wno-language-extension-token) - # Xlib headers use named variadic macros. - AC_CHECK_GCC_ARG(no_variadic_macros, -Wno-variadic-macros) fi ]) @@ -756,7 +753,8 @@ AC_DEFUN([AC_X_RANDOM_PATHS], # 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 + 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 @@ -1051,8 +1049,6 @@ ac_original_cc=$CC AC_PROG_CC AC_PROG_CC_ANSI AC_PROG_CPP -AC_C_CONST -AC_C_INLINE AC_EXEEXT # stuff for Makefiles @@ -1125,6 +1121,9 @@ AC_MSG_RESULT($ac_macosx) # ############################################################################### +# Note: In the decades since I wrote this, PKG_CHECK_MODULES came into +# existence, which could probably simplify the following quite a bit. + AC_PATH_TOOL(pkg_config, pkg-config) if test -z "$pkg_config" ; then @@ -1182,9 +1181,19 @@ AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", 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 +AM_GNU_GETTEXT([external]) MKINSTALLDIRS="$INSTALL_DIRS" +# The library is there, but neither $INTLLIBS nor $LIBINTL are getting set. +if test -z "$INTLLIBS" ; then INTLLIBS="$LIBINTL" ; fi +if test -z "$INTLLIBS" ; then + AC_CHECK_X_LIB(intl, gettext, [INTLLIBS="-lintl"]) +fi +LIBINTL="$INTLLIBS" +AC_SUBST(INTLLIBS) +AC_SUBST(LIBINTL) +AC_SUBST(CATALOGS) + ############################################################################### # @@ -1436,7 +1445,8 @@ if test "$with_xinerama" = yes; then # 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"], + [have_xinerama=yes; + XINERAMA_LIBS="$XINERAMA_LIBS -lXinerama"], [true], -lXext -lX11) fi fi @@ -1493,7 +1503,8 @@ if test "$with_randr" = yes; then # 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"], + [have_randr=yes; + XINERAMA_LIBS="$XINERAMA_LIBS -lXrandr $xrender_libs"], [true], $xrender_libs -lXext -lX11) fi fi @@ -1537,7 +1548,7 @@ have_xinput=no with_xinput_req=unspecified xinput_halfassed=no AC_ARG_WITH(xinput-ext, -[ --with-xinput-ext Include support for the XInput2 extension.], +[ --with-xinput-ext The XInput2 extension is required.], [with_xinput="$withval"; with_xinput_req="$withval"], [with_xinput=yes]) HANDLE_X_PATH_ARG(with_xinput, --with-xinput-ext, XINPUT) @@ -1563,6 +1574,10 @@ if test "$with_xinput" = yes; then AC_DEFINE(HAVE_XINPUT) fi +elif test "$with_xinput" = no; then + echo "error: --without-xinput-ext is not supported." + exit 1 + elif test "$with_xinput" != no; then echo "error: must be yes or no: --with-xinput-ext=$with_xinput" exit 1 @@ -1779,31 +1794,6 @@ 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 <X11/Xlib.h>]) -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. # ############################################################################### @@ -2117,7 +2107,8 @@ if test "$with_systemd" = yes; then have_systemd=no systemd_halfassed=yes AC_MSG_RESULT(checking for libsystemd usability...) - AC_CHECK_X_LIB(c, sd_bus_open_system, + # sd_bus_track_count_name was added in some later version of systemd. + AC_CHECK_X_LIB(c, sd_bus_track_count_name, [have_systemd=yes; systemd_halfassed=no],, $ac_systemd_config_libs -lX11 -lXext -lm) fi @@ -2140,6 +2131,87 @@ fi ############################################################################### # +# Check for -lelogind, a stripped down subset of systemd. +# +############################################################################### + +have_elogind=no +with_elogind_req=unspecified +elogind_halfassed=no +elogind_too_old=no +AC_ARG_WITH(elogind, +[ --with-elogind Use elogind instead of systemd.], + [with_elogind="$withval"; with_elogind_req="$withval"], + [with_elogind=yes]) + +HANDLE_X_PATH_ARG(with_elogind, --with-elogind, elogind) + +if test "$with_elogind" != yes -a "$with_elogind" != no ; then + echo "error: must be yes or no: --with-elogind=$with_elogind" + exit 1 +fi + +if test "$with_elogind" = yes; then + + pkgs='' + ok="yes" + pkg_check_version libelogind 221 + have_elogind="$ok" + + if test "$have_elogind" = no; then + if $pkg_config --exists libelogind ; then + elogind_too_old=yes + fi + fi + + if test "$have_elogind" = yes; then + AC_CACHE_CHECK([for libelogind includes], ac_cv_elogind_config_cflags, + [ac_cv_elogind_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for libelogind libs], ac_cv_elogind_config_libs, + [ac_cv_elogind_config_libs=`$pkg_config --libs $pkgs`]) + fi + + ac_elogind_config_cflags=$ac_cv_elogind_config_cflags + ac_elogind_config_libs=$ac_cv_elogind_config_libs + + if test "$have_elogind" = yes; then + # + # we appear to have libelogind; check for headers/libs to be sure. + # + ac_save_elogind_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_elogind_config_cflags" + + have_elogind=no + AC_CHECK_X_HEADER(elogind/sd-bus.h, [have_elogind=yes]) + + CPPFLAGS="$ac_save_elogind_CPPFLAGS" + fi + + if test "$have_elogind" = yes; then + # we have the headers, now check for the libraries + have_elogind=no + elogind_halfassed=yes + AC_MSG_RESULT(checking for libelogind usability...) + AC_CHECK_X_LIB(c, sd_bus_track_count_name, + [have_elogind=yes; elogind_halfassed=no],, + $ac_elogind_config_libs -lX11 -lXext -lm) + fi + + if test "$have_elogind" = no; then + AC_MSG_RESULT(checking for libelogind usability... no) + fi +fi + +if test "$have_elogind" = yes; then + INCLUDES="$INCLUDES $ac_elogind_config_cflags" + EXES_SYSTEMD='$(EXES_SYSTEMD)' + SYSTEMD_LIBS="$ac_elogind_config_libs" + AC_DEFINE(HAVE_LIBELOGIND) +fi + + +############################################################################### +# # The --enable-locking option # # Note: "configure --help" list all "--enable" options before any @@ -2219,7 +2291,7 @@ 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 Use Pluggable Authentication Modules.], [with_pam="$withval"; with_pam_req="$withval"],[with_pam=$with_pam_default]) AC_ARG_WITH([pam_service_name], @@ -2227,12 +2299,13 @@ AC_ARG_WITH([pam_service_name], --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.], + --enable-root-passwd Allow the root password 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]) + [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 @@ -2276,12 +2349,12 @@ if test "$enable_locking" = yes -a "$with_pam" = yes; then #include <stdlib.h> #include <security/pam_appl.h>], [pam_handle_t *pamh = 0; - char *s = pam_strerror(pamh, PAM_SUCCESS);], + const char *s = pam_strerror(pamh, PAM_SUCCESS);], [ac_pam_strerror_args=2], [AC_TRY_X_COMPILE([#include <stdio.h> #include <stdlib.h> #include <security/pam_appl.h>], - [char *s = + [const char *s = pam_strerror(PAM_SUCCESS);], [ac_pam_strerror_args=1], [ac_pam_strerror_args=0])]) @@ -2624,47 +2697,6 @@ if test "$enable_locking" = yes ; then fi -############################################################################### -# -# Strongly suspect that this hasn't been used in years. Also, the same -# goal is achieved by xscreensaver-auth in XScreenSaver 6. -- jwz, 2021 -# -# Check for external password helper -# On SuSE in 1993, 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 external password verification.], -# [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 - - - # Most of the above shadow mechanisms will have set setuid_auth to yes, # if they were found. But, on some systems, we need setuid even when # using plain old vanilla passwords. @@ -2732,13 +2764,14 @@ gtk_halfassed=no if test "$with_gtk" = yes; then have_gtk=no + pkgs='' 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 + pkg_check_version gtk+-3.0 3.0.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 have_gtk="$ok" + gtk_pkgs="$pkgs" if test "$have_gtk" = no; then if test -n "$ac_gtk_version_string" ; then @@ -2759,7 +2792,7 @@ if test "$with_gtk" = yes; then GTK_DATADIR="" if test "$have_gtk" = yes; then - GTK_DATADIR=`$pkg_config --variable=prefix gtk+-2.0` + GTK_DATADIR=`$pkg_config --variable=prefix gtk+-3.0` GTK_DATADIR="$GTK_DATADIR/share" fi @@ -2767,9 +2800,15 @@ if test "$with_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 + AC_CACHE_CHECK([for Glib resource compiler], ac_cv_glib_res, + [ac_cv_glib_res=`$pkg_config --variable=glib_compile_resources gio-2.0`]) + GLIB_COMPILE_RESOURCES="$ac_cv_glib_res" + fi + fi @@ -3295,7 +3334,6 @@ AC_ARG_WITH(gl, [ Graphics Options: - --with-gl Build those demos which depend on OpenGL. --with-gles Emulate OpenGL 1.3 in terms of OpenGL ES 1.x.], [with_gl="$withval"; with_gl_req="$withval"],[with_gl=yes]) @@ -3451,6 +3489,13 @@ if test "$with_gl" = yes; then fi +elif test "$with_gl" = no; then + echo "error: --without-opengl is not supported." + # You may be saying "but but but microcontrollers" -- bullshit. + # It is the Twenty-First Century, and in This Modern World, every + # extant microcontroller is more performant than the desktop + # computers on which I developed most of the OpenGL hacks. + exit 1 elif test "$with_gl" != no; then echo "error: must be yes or no: --with-gl=$with_gl" @@ -3714,6 +3759,7 @@ fi ############################################################################### have_gdk_pixbuf=no +have_gdk_pixbuf_xlib=no with_gdk_pixbuf_req=unspecified AC_ARG_WITH(pixbuf, [ --with-pixbuf Include support for the GDK-Pixbuf library, which @@ -3744,11 +3790,10 @@ if test "$with_gdk_pixbuf" = yes; then 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 + pkg_check_version gdk-pixbuf-2.0 2.0.0 + pkg_check_version gio-2.0 2.0.0 have_gdk_pixbuf="$ok" + pixbuf_pkgs="$pkgs" if test "$have_gdk_pixbuf" = yes; then AC_CACHE_CHECK([for gdk-pixbuf includes], ac_cv_gdk_pixbuf_config_cflags, @@ -3767,50 +3812,17 @@ if test "$with_gdk_pixbuf" = yes; then # 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 @@ -3829,6 +3841,69 @@ if test "$with_gdk_pixbuf" = yes; then fi +# Now that we have checked for gdk_pixbuf, check for gdk_pixbuf_xlib +# separately, since it has fallen out of fashion in recent years. +# +#have_gdk_pixbuf_xlib=no +#gdk_pixbuf_xlib_halfassed=no +#if test "$with_gdk_pixbuf" = yes -a "$have_gdk_pixbuf" = yes; then +# +# have_gdk_pixbuf_xlib=no +# pkgs="$pixbuf_pkgs" +# ok="yes" +# pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0 +# pkg_check_version gdk-pixbuf-2.0 2.0.0 +# have_gdk_pixbuf_xlib="$ok" +# pixbuf_xlib_pkgs="$pkgs" +# +# if test "$have_gdk_pixbuf_xlib" = yes; then +# AC_CACHE_CHECK([for gdk-pixbuf-xlib includes], +# ac_cv_gdk_pixbuf_xlib_config_cflags, +# [ac_cv_gdk_pixbuf_xlib_config_cflags=`$pkg_config --cflags $pkgs`]) +# AC_CACHE_CHECK([for gdk-pixbuf-xlib libs], +# ac_cv_gdk_pixbuf_xlib_config_libs, +# [ac_cv_gdk_pixbuf_xlib_config_libs=`$pkg_config --libs $pkgs`]) +# fi +# +# ac_gdk_pixbuf_xlib_config_cflags=$ac_cv_gdk_pixbuf_xlib_config_cflags +# ac_gdk_pixbuf_xlib_config_libs=$ac_cv_gdk_pixbuf_xlib_config_libs +# +# if test "$have_gdk_pixbuf_xlib" = yes; then +# # +# # we appear to have pixbuf_xlib; check for headers/libs to be sure. +# # +# ac_save_gdk_pixbuf_xlib_CPPFLAGS="$CPPFLAGS" +# CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_xlib_config_cflags" +# have_gdk_pixbuf_xlib=no +# gdk_pixbuf_xlib_halfassed=yes +# AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h, +# [have_gdk_pixbuf_xlib=yes +# gdk_pixbuf_xlib_halfassed=no]) +# CPPFLAGS="$ac_save_gdk_pixbuf_xlib_CPPFLAGS" +# fi +# +# if test "$have_gdk_pixbuf_xlib" = yes; then +# # we have the headers, now check for the libraries +# have_gdk_pixbuf_xlib=no +# gdk_pixbuf_xlib_halfassed=yes +# +# AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability...) +# AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init, +# [have_gdk_pixbuf_xlib=yes +# gdk_pixbuf_xlib_halfassed=no],, +# $ac_gdk_pixbuf_xlib_config_libs -lX11 -lXext -lm) +# fi +# +# if test "$have_gdk_pixbuf_xlib" = yes; then +# INCLUDES="$INCLUDES $ac_gdk_pixbuf_xlib_config_cflags" +# PNG_LIBS="$ac_gdk_pixbuf_xlib_config_libs" +# AC_DEFINE(HAVE_GDK_PIXBUF_XLIB) +# else +# AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability... no) +# fi +#fi + + ############################################################################### # # Check for -lXft @@ -3920,6 +3995,144 @@ fi ############################################################################### # +# Check for various ffmpeg libraries +# +############################################################################### + +pkgs='' +ok="yes" +pkg_check_version libavutil 54.0.0 +have_avutil="$ok" +pkg_check_version libavcodec 56.0.0 +have_avcodec="$ok" +pkg_check_version libavformat 56.0.0 +have_avformat="$ok" +pkg_check_version libswscale 3.0.0 +have_swscale="$ok" +pkg_check_version libswresample 1.0.0 +have_swresample="$ok" + +# Check includes +if test "$have_avutil" = yes; then + ac_save_avutil_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_avutil_config_cflags" + have_avutil=no + AC_CHECK_X_HEADER(libavutil/avutil.h, [have_avutil=yes]) + CPPFLAGS="$ac_save_avutil_CPPFLAGS" +fi + +if test "$have_avcodec" = yes; then + ac_save_avcodec_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_avcodec_config_cflags" + have_avcodec=no + AC_CHECK_X_HEADER(libavcodec/avcodec.h, [have_avcodec=yes]) + CPPFLAGS="$ac_save_avcodec_CPPFLAGS" +fi + +if test "$have_avformat" = yes; then + ac_save_avformat_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_avformat_config_cflags" + have_avformat=no + AC_CHECK_X_HEADER(libavformat/avformat.h, [have_avformat=yes]) + CPPFLAGS="$ac_save_avformat_CPPFLAGS" +fi + +if test "$have_swscale" = yes; then + ac_save_swscale_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_swscale_config_cflags" + have_swscale=no + AC_CHECK_X_HEADER(libswscale/swscale.h, [have_swscale=yes]) + CPPFLAGS="$ac_save_swscale_CPPFLAGS" +fi + +if test "$have_swresample" = yes; then + ac_save_swresample_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ac_swresample_config_cflags" + have_swresample=no + AC_CHECK_X_HEADER(libswresample/swresample.h, [have_swresample=yes]) + CPPFLAGS="$ac_save_swresample_CPPFLAGS" +fi + +# Check libs + +# My CentOS 7.9 build against ffmpeg 4.2.1 requires all this extra crap too. +# Not required on Raspbian 11 or macOS. +extra_ffmpeg_bs="" +if grep -q '7\.' /etc/centos-release 2>/dev/null ; then + extra_ffmpeg_bs="-lfdk-aac -lmp3lame -lspeex -ltheora -ltheoraenc -ltheoradec -lvorbis -lvorbisenc -lx264 -lz -lbz2 -llzma -ldl -pthread" +fi + +if test "$have_avutil" = yes; then + have_avutil=no + AC_MSG_RESULT(checking for libavutil usability...) + AC_CHECK_X_LIB(avutil, avutil_version, + [have_avutil=yes; avutil_halfassed=no],, + `$pkg_config --libs libavutil libswresample` $extra_ffmpeg_bs) +fi + +if test "$have_avcodec" = yes; then + have_avcodec=no + AC_MSG_RESULT(checking for libavcodec usability...) + AC_CHECK_X_LIB(avcodec, avcodec_version, + [have_avcodec=yes; avcodec_halfassed=no],, + `$pkg_config --libs libavcodec libswresample` $PTHREAD_LIBS + -lm $extra_ffmpeg_bs) +fi + +if test "$have_avformat" = yes; then + have_avformat=no + AC_MSG_RESULT(checking for libavformat usability...) + AC_CHECK_X_LIB(avformat, avformat_version, + [have_avformat=yes; avformat_halfassed=no],, + `$pkg_config --libs libavformat libswresample` $PTHREAD_LIBS + -lm $extra_ffmpeg_bs) +fi + +if test "$have_swscale" = yes; then + have_swscale=no + AC_MSG_RESULT(checking for libswscale usability...) + AC_CHECK_X_LIB(swscale, swscale_version, + [have_swscale=yes; swscale_halfassed=no],, + `$pkg_config --libs libswscale` $PTHREAD_LIBS -lm + $extra_ffmpeg_bs) +fi + +if test "$have_swresample" = yes; then + have_swresample=no + AC_MSG_RESULT(checking for libswresample usability...) + AC_CHECK_X_LIB(swresample, swresample_version, + [have_swresample=yes; swresample_halfassed=no],, + `$pkg_config --libs libswresample` $PTHREAD_LIBS -lm + $extra_ffmpeg_bs) +fi + + +have_ffmpeg=no +if test "$have_avformat" = yes -a \ + "$have_avcodec" = yes -a \ + "$have_avutil" = yes -a \ + "$have_swscale" = yes -a \ + "$have_swresample" = yes ; then + have_ffmpeg=yes + AC_CACHE_CHECK([for ffmpeg includes], ac_cv_ffmpeg_config_cflags, + [ac_cv_ffmpeg_config_cflags=`$pkg_config --cflags $pkgs`]) + AC_CACHE_CHECK([for ffmpeg libs], ac_cv_ffmpeg_config_libs, + [ac_cv_ffmpeg_config_libs=`$pkg_config --libs $pkgs`]) + AC_DEFINE(HAVE_FFMPEG) + FFMPEG_OBJS='$(FFMPEG_OBJS)' +fi +ac_ffmpeg_config_cflags=$ac_cv_ffmpeg_config_cflags +ac_ffmpeg_config_libs=$ac_cv_ffmpeg_config_libs +FFMPEG_CFLAGS="$ac_ffmpeg_config_cflags" +FFMPEG_LIBS="$ac_ffmpeg_config_libs" + +if test "$have_ffmpeg" = yes ; then + FFMPEG_LIBS="$FFMPEG_LIBS $extra_ffmpeg_bs" +fi + + +############################################################################### +# # Check for pty support: this allows 'phosphor' and 'apple2' # to run curses-based programs, or be used as terminal windows. # @@ -4031,8 +4244,8 @@ elif test "$record_anim" != no; then fi if test "$record_anim" = yes; then - if test "$have_gdk_pixbuf" != yes; then - AC_MSG_ERROR(--with-record-animation requires GDK-Pixbuf) + if test "$have_ffmpeg" != yes; then + AC_MSG_WARN(--with-record-animation requires the ffmpeg libraries) else AC_MSG_RESULT(enabling --with-record-animation) AC_DEFINE(HAVE_RECORD_ANIM) @@ -4089,12 +4302,8 @@ if test "$enable_pam_check_account_type" = yes; then 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)" +PASSWD_SRCS="$PASSWD_SRCS \$(PWENT_SRCS)" +PASSWD_OBJS="$PASSWD_OBJS \$(PWENT_OBJS)" if test "$enable_locking" = yes; then @@ -4181,7 +4390,7 @@ 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=`$pkg_config --variable=prefix gtk+-3.0` PO_DATADIR="$PO_DATADIR/share" fi @@ -4245,6 +4454,7 @@ AC_SUBST(SETUID_HACKS) AC_SUBST(SETCAP_HACKS) AC_SUBST(INSTALL_DIRS) AC_SUBST(INSTALL_PAM) +AC_SUBST(GLIB_COMPILE_RESOURCES) AC_SUBST(HAVE_PAM_FAIL_DELAY) AC_SUBST(COMMENT_PAM_CHECK_ACCOUNT) AC_SUBST(NEW_LOGIN_COMMAND) @@ -4288,6 +4498,9 @@ AC_SUBST(HACK_CONF_DIR) AC_SUBST(FONT_DIR) AC_SUBST(ANIM_OBJS) AC_SUBST(ANIM_LIBS) +AC_SUBST(FFMPEG_OBJS) +AC_SUBST(FFMPEG_CFLAGS) +AC_SUBST(FFMPEG_LIBS) APPDEFAULTS=$ac_x_app_defaults AC_SUBST(APPDEFAULTS) @@ -4316,6 +4529,8 @@ AC_OUTPUT # ############################################################################### +CONF_STATUS=0 + warn_prefix_1=" Warning:" warn_prefix_2=" Note:" warn_prefix="$warn_prefix_1" @@ -4374,65 +4589,81 @@ if test "$ac_prog_cc_no_pthread" ; then warn2 "support POSIX threads." echo "" warn2 "If you have multiple CPU cores, try CC=$PTHREAD_CC." + CONF_STATUS=1 elif test "$with_pthread_req" = yes -a "$have_pthread" = no ; then warn 'POSIX threads were requested, but were not found.' + CONF_STATUS=1 fi if test "$with_sgi_req" = yes -a "$have_sgi" = no ; then warn 'The SGI saver extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_xidle_req" = yes -a "$have_xidle" = no ; then warn 'The XIdle extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_mit_req" = yes -a "$have_mit" = no ; then warn 'The MIT-SCREEN-SAVER extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_xshm_req" = yes -a "$have_xshm" = no ; then warn 'The XSHM extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_xdbe_req" = yes -a "$have_xdbe" = no ; then warn 'The DOUBLE-BUFFER extension was requested, but was not found.' + CONF_STATUS=1 fi #if test "$with_xcomposite_req" = yes -a "$have_xcomposite" = no ; then # warn 'The XCOMPOSITE extension was requested, but was not found.' +# CONF_STATUS=1 #fi if test "$with_xkb_req" = yes -a "$have_xkb" = no ; then warn 'The X Keyboard extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_sgivc_req" = yes -a "$have_sgivc" = no ; then warn 'The SGI-VIDEO-CONTROL extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_dpms_req" = yes -a "$have_dpms" = no ; then warn 'The DPMS extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_xinerama_req" = yes -a "$have_xinerama" = no ; then warn 'The Xinerama extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_xf86vmode_req" = yes -a "$have_xf86vmode" = no ; then warn 'The XF86VMODE extension was requested, but was not found.' + CONF_STATUS=1 fi if test "$with_randr_req" = yes -a "$have_randr" = no ; then warn 'The RANDR extension was requested, but was not found.' + CONF_STATUS=1 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." + CONF_STATUS=1 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." + CONF_STATUS=1 else pkgerr=`$pkg_config --list-all 2>&1 >/dev/null` if test "x$pkgerr" != "x" ; then @@ -4441,20 +4672,20 @@ else warn2 "The errors are:" echo '' echo "$pkgerr" | sed 's/^/ > /g' + CONF_STATUS=1 fi fi if test "$gtk_halfassed" != no ; then - warnL "GTK was found, but $gtk_halfassed_lib was not, so GTK can't be used." + warnL "GTK was found, but $gtk_halfassed_lib was not, so GTK" + warn2 "can't be used." + CONF_STATUS=1 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-settings' - 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 <http://www.gtk.org/>.' + warn2 "The Motif version of \`xscreensaver-settings' is missing many" + warn2 'features. It is strongly recommended that you build the GTK' + warn2 'version instead.' } if test "$have_motif" = no -a "$have_gtk" = no; then @@ -4464,9 +4695,11 @@ if test "$have_motif" = no -a "$have_gtk" = no; then warn2 "\`xscreensaver-settings' program requires one of these." echo '' motif_warn2 + CONF_STATUS=1 else warnL "The GTK libraries do not seem to be available; the" warn2 "\`xscreensaver-settings' program requires them." + CONF_STATUS=1 # echo '' # warn2 'You can use Motif or Lesstif instead of GTK (use the' # warn2 "\`--with-motif' option) but that is NOT recommended." @@ -4476,20 +4709,24 @@ if test "$have_motif" = no -a "$have_gtk" = no; then 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." + CONF_STATUS=1 elif test "$with_gtk_req" = yes -a "$have_gtk" = no ; then warnL "Use of Gtk was requested, but it wasn't found." + CONF_STATUS=1 fi if test "$ac_cv_libxt" != yes ; then warnL 'The Xt library was not found. It is required.' + CONF_STATUS=1 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." + CONF_STATUS=1 fi if test "$have_motif" = yes -a "$have_lesstif" = yes ; then @@ -4507,6 +4744,7 @@ if test "$have_motif" = yes -a "$have_lesstif" = yes ; then warn2 "use with XScreenSaver; it is strongly recommended" warn2 "that you upgrade to at least version $preferred_lesstif!" warn2 "See <http://www.lesstif.org/>." + CONF_STATUS=1 fi fi @@ -4525,10 +4763,10 @@ halfassery() { 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.' + CONF_STATUS=1 fi -if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \ - test "$have_gdk_pixbuf" = no ; then +if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes ; then if test "$with_gdk_pixbuf_req" = yes ; then true @@ -4551,9 +4789,30 @@ if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \ fi +#if test "$have_gdk_pixbuf" = yes -a "$have_gdk_pixbuf_xlib" = no ; then +# +# warnL 'The GDK-Pixbuf-Xlib library was not found.' +# +# if test "$gdk_pixbuf_xlib_halfassed" = yes ; then halfassery ; 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-Xlib and re-running' +# warn2 'configure.' +# echo '' +# warn2 "Recently, some distros have stopped distributing" +# warn2 "GDK-Pixbuf-Xlib entirely. So good luck with that." +#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.' + CONF_STATUS=1 elif test "$with_jpeg_req" = no ; then warnL 'The JPEG library is not being used.' else @@ -4566,6 +4825,7 @@ if test "$have_jpeg" = 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." + CONF_STATUS=1 else warn2 "This means the \`webcollage' program will be much slower." fi @@ -4575,6 +4835,7 @@ 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.' + CONF_STATUS=1 elif test "$with_png_req" = no ; then warnL 'The PNG library is not being used.' else @@ -4583,18 +4844,21 @@ if test "$have_png" = no ; then if test "$png_halfassed" = yes ; then halfassery ; fi warn2 "Many things aren't going to work right." + CONF_STATUS=1 fi if test "$have_xinput" = no ; then warnL 'The XInput2 library was not found. It is required.' if test "$xinput_halfassed" = yes ; then halfassery ; else echo '' ; fi + CONF_STATUS=1 fi if test "$have_xft" = no ; then warnL 'The XFreeType library was not found. It is required.' if test "$xft_halfassed" = yes ; then halfassery ; else echo '' ; fi + CONF_STATUS=1 fi @@ -4603,9 +4867,11 @@ if test "$have_systemd" = no ; then if test "$systemd_too_old" = yes ; then warnL "The systemd library is too old." systemd_warned=yes + CONF_STATUS=1 elif test "$with_systemd_req" = yes ; then warnL "Use of systemd was requested, but it was not found." systemd_warned=yes + CONF_STATUS=1 elif test "$ac_macosx" = yes; then true elif test "$with_systemd_req" = no ; then @@ -4619,6 +4885,7 @@ if test "$have_systemd" = no ; then if test "$systemd_halfassed" = yes ; then halfassery systemd_warned=yes + CONF_STATUS=1 fi if test "$systemd_warned" = yes; then @@ -4633,11 +4900,14 @@ 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.' + warnL 'The OpenGL 3D library is required, but it was not found.' + CONF_STATUS=1 elif test "$with_gl_req" = no ; then noteL 'The OpenGL 3D library is not being used.' + CONF_STATUS=1 else noteL 'The OpenGL 3D library was not found.' + CONF_STATUS=1 fi if test "$gl_halfassed" = yes ; then @@ -4650,9 +4920,7 @@ if test "$have_gl" = no ; then 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.' - + warn2 'That is most of them.' fi if test "$have_gl" = yes -a "$have_gle" = no ; then @@ -4665,6 +4933,7 @@ if test "$have_gl" = yes -a "$have_gle" = no ; 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.)' + CONF_STATUS=1 elif test "$with_gle_req" = no ; then noteL 'The OpenGL Library is being used, but the GLE (GL Extrusion)' warn2 'library is not.' @@ -4687,28 +4956,33 @@ fi if test "$with_readdisplay_req" = yes -a "$have_readdisplay" = no ; then warn 'Use of XReadDisplay was requested, but it was not found.' + CONF_STATUS=1 fi if test "$with_kerberos_req" = yes -a "$have_kerberos" = no ; then warn 'Use of Kerberos was requested, but it was not found.' + CONF_STATUS=1 fi if test "$with_pam_req" = yes -a "$have_pam" = no ; then warn 'Use of PAM was requested, but it was not found.' -elif test "$have_pam" = no ; then + CONF_STATUS=1 +elif test "$have_pam" = no -a "$enable_locking" = yes ; then if test -d /etc/pam.d -o -f /etc/pam.conf ; then warn "Your system seems to have PAM, but PAM is not being used." warn2 "That is probably not going to work out well." - + CONF_STATUS=1 fi fi if test "$with_shadow_req" = yes -a "$have_shadow" = no ; then warn 'Use of shadow passwords was requested, but they were not found.' + CONF_STATUS=1 fi if test "$setcap_hacks_req" = yes -a "$have_libcap" = no ; then warn 'Use of libcap was requested, but it was not found.' + CONF_STATUS=1 fi if test "$ac_macosx" = yes -a "$enable_locking" = yes ; then @@ -4716,6 +4990,17 @@ if test "$ac_macosx" = yes -a "$enable_locking" = yes ; then warn2 "THIS DOES NOT WORK! Don't do this!" fi +if test "$have_jwzgles" = yes ; then + warn "Do not use --with-gles unless you are sure that you know" + warn2 "what you are doing! It is not recommended on normal X11" + warn2 "systems." + + if test "$have_egl" = no; then + warn2 "" + warn2 "Using --with-gles and --with-glx probably won't work." + fi +fi + # You are in a twisty maze of namespaces and syntaxes, all alike. # Expand all of these as the Makefile will probably expand them. @@ -4774,7 +5059,7 @@ if test \! -z "$rpm_vers" ; then pkg_bindir2=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)xscreensaver-demo$@\1@p'` pkg_hackdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares$@\1@p'` pkg_confdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` - pkg_fontdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)\.ttf$@\1@p'` + pkg_fontdir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\).*\.ttf$@\1@p' | head -1` pkg_addir=`rpm -ql $rpmnames | sed -n 's@^\(.*/\)XScreenSaver$@\1@p'` if test -z "$pkg_bindir" ; then pkg_bindir="$pkg_bindir2" ; fi @@ -4804,7 +5089,7 @@ if test \! -z "$deb_vers" ; then pkg_bindir2=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)xscreensaver-demo$@\1@p'` pkg_hackdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares$@\1@p'` pkg_confdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)popsquares\.xml$@\1@p'` - pkg_fontdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)\.ttf$@\1@p'` + pkg_fontdir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\).*\.ttf$@\1@p' | head -1` pkg_addir=`dpkg -L $debnames 2>&- | sed -n 's@^\(.*/\)XScreenSaver[^/]*$@\1@p'` changequote([,]) @@ -4857,3 +5142,5 @@ echo " Configuration: ${HACK_CONF_DIR}/$confdir_err" echo " Extra Fonts: ${FONT_DIR}$fontdir_err" echo " App Defaults: ${APPDEFAULTS}/$addir_err" echo "" + +exit $CONF_STATUS |
