* bug#28882: emacs-26.0.90 build feedback
2017-10-17 23:31 bug#28882: emacs-26.0.90 build feedback Nelson H. F. Beebe
@ 2017-10-18 3:41 ` Noam Postavsky
2017-10-18 13:31 ` Nelson H. F. Beebe
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Noam Postavsky @ 2017-10-18 3:41 UTC (permalink / raw)
To: Nelson H. F. Beebe; +Cc: 28882
[-- Attachment #1: Type: text/plain, Size: 2105 bytes --]
"Nelson H. F. Beebe" <beebe@math.utah.edu> writes:
> Unfortunately, a further 77 automated builds were broken by this
> obnoxious failure:
>
>>> ...
>>> configure: error: The following required libraries were not found:
>>> gnutls
>>> Maybe some development libraries/packages are missing?
>>> If you don't want to link with them give
>>> --with-gnutls=no
>>> as options to configure
>>> ...
>
> My suspicion is that the gnutls package is needed only for editing
> files across a network, which few users ever do. Thus, my strong view
> is that, while it is fine for configure to test for the availability
> of gnutls, it should NOT be a show-stopper that requires a manual
> override and a fresh build attempt with that extra option.
It's also used for downloading packages from repositories. It is
optional there, but in recent times not using https for this is
considered unacceptable (e.g. [1]). You might call this mass hysteria,
or you might call it sanity being restored, but either way, I don't
think it's accurate that few users will want gnutls.
[1]: https://glyph.twistedmatrix.com/2015/11/editor-malware.html
> I've expressed the view before on this list that the same should apply
> for the various options for libraries that allow emacs to view
> bitmap-graphics files, again a feature that few people are ever likely
> to use.
Yes, in Bug#25317 [2]. I was going to to add an option to make that
possible, but I didn't get around to finishing it at the time.
[2]: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25317#13
> I strongly recommend that configure.ac be revised so that all
> --with-XXX=[no|yes] options allow configuration and building to
> proceed, regardless of their settings. It is just too painful to have
> to spend several unnecessary hours restarting builds to work around
> the current undesirable behavior.
Here's a patch now, which should give the behaviour you want when
passing --with-all=maybe to ./configure. Unfortunately, it's probably
too late to get this in for Emacs 26, but hopefully we can smooth things
out for version 27.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: patch --]
[-- Type: text/x-diff, Size: 9982 bytes --]
From facc909306885f013843ae48b78d916626c6b55f Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Tue, 17 Oct 2017 21:17:53 -0400
Subject: [PATCH v1] Support ./configure --with-all=maybe
* configure.ac: Change all --with-foo options to accept 'maybe' as a
synonym for 'yes' (except that there's no error if the option can't be
used).
---
configure.ac | 67 ++++++++++++++++++++++++++++++------------------------------
1 file changed, 34 insertions(+), 33 deletions(-)
diff --git a/configure.ac b/configure.ac
index 63324c2c7c..0ef9ca5147 100644
--- a/configure.ac
+++ b/configure.ac
@@ -243,7 +243,7 @@ AC_DEFUN
installed])],
[],
[with_mailutils=$with_features
- if test "$with_mailutils" = yes; then
+ if test "$with_mailutils" != no; then
(movemail --version) >/dev/null 2>&1 || with_mailutils=no
fi])
if test "$with_mailutils" = no; then
@@ -302,9 +302,9 @@ AC_DEFUN
[compile with sound support (VALUE one of: yes, alsa, oss, bsd-ossaudio, no;
default yes). Only for GNU/Linux, FreeBSD, NetBSD, MinGW, Cygwin.])],
[ case "${withval}" in
- yes|no|alsa|oss|bsd-ossaudio) val=$withval ;;
+ yes|no|maybe|alsa|oss|bsd-ossaudio) val=$withval ;;
*) AC_MSG_ERROR(['--with-sound=$withval' is invalid;
-this option's value should be 'yes', 'no', 'alsa', 'oss', or 'bsd-ossaudio'.])
+this option's value should be 'yes', 'no', 'maybe', 'alsa', 'oss', or 'bsd-ossaudio'.])
;;
esac
with_sound=$val
@@ -316,10 +316,11 @@ AC_DEFUN
dnl added later on when we find the file name of X, and it's best to
dnl keep them together visually.
AC_ARG_WITH([x-toolkit],[AS_HELP_STRING([--with-x-toolkit=KIT],
- [use an X toolkit (KIT one of: yes or gtk, gtk2, gtk3, lucid or athena, motif, no)])],
+ [use an X toolkit (KIT one of: yes or gtk, gtk2, gtk3, lucid or athena, motif, maybe, no)])],
[ case "${withval}" in
y | ye | yes ) val=gtk ;;
n | no ) val=no ;;
+ maybe ) val=maybe ;;
l | lu | luc | luci | lucid ) val=lucid ;;
a | at | ath | athe | athen | athena ) val=athena ;;
m | mo | mot | moti | motif ) val=motif ;;
@@ -328,7 +329,7 @@ AC_DEFUN
gtk3 ) val=gtk3 ;;
* )
AC_MSG_ERROR(['--with-x-toolkit=$withval' is invalid;
-this option's value should be 'yes', 'no', 'lucid', 'athena', 'motif', 'gtk',
+this option's value should be 'yes', 'no', 'maybe', 'lucid', 'athena', 'motif', 'gtk',
'gtk2' or 'gtk3'. 'yes' and 'gtk' are synonyms.
'athena' and 'lucid' are synonyms.])
;;
@@ -337,7 +338,7 @@ AC_DEFUN
])
OPTION_DEFAULT_OFF([wide-int], [prefer wide Emacs integers (typically 62-bit); allows buffer and string size up to 2GB on 32-bit hosts, at the cost of 10% to 30% slowdown of Lisp interpreter and larger memory footprint])
-if test "$with_wide_int" = yes; then
+if test "$with_wide_int" != no; then
AC_DEFINE([WIDE_EMACS_INT], 1, [Use long long for EMACS_INT if available.])
fi
@@ -384,13 +385,14 @@ AC_DEFUN
[ case "${withval}" in
y | ye | yes ) val=yes ;;
n | no ) val=no ;;
+ maybe ) val=maybe ;;
i | in | ino | inot | inoti | inotif | inotify ) val=inotify ;;
k | kq | kqu | kque | kqueu | kqueue ) val=kqueue ;;
g | gf | gfi | gfil | gfile ) val=gfile ;;
w | w3 | w32 ) val=w32 ;;
* ) AC_MSG_ERROR(['--with-file-notification=$withval' is invalid;
-this option's value should be 'yes', 'no', 'inotify', 'kqueue', 'gfile' or 'w32'.
-'yes' is a synonym for 'w32' on MS-Windows, for 'no' on Nextstep,
+this option's value should be 'yes', 'no', 'maybe', 'inotify', 'kqueue', 'gfile' or 'w32'.
+'yes' and 'maybe' are a synonyms for 'w32' on MS-Windows, for 'no' on Nextstep,
otherwise for the first of 'inotify', 'kqueue' or 'gfile' that is usable.])
;;
esac
@@ -423,7 +425,7 @@ AC_DEFUN
gamegroup=
case ${with_gameuser} in
'' | no) ;;
- yes) gamegroup=games ;;
+ yes | maybe) gamegroup=games ;;
:*) gamegroup=${with_gameuser#:} ;;
*) gameuser=${with_gameuser} ;;
esac
@@ -1622,7 +1624,7 @@ AC_DEFUN
fi
AC_SUBST(LIBSOUND)
- if test "${with_sound}" = "alsa" || test "${with_sound}" = "yes"; then
+ if test "${with_sound}" = "alsa" || test "${with_sound}" = "yes" || test "${with_sound}" = "maybe" ; then
ALSA_REQUIRED=1.0.0
ALSA_MODULES="alsa >= $ALSA_REQUIRED"
EMACS_CHECK_MODULES([ALSA], [$ALSA_MODULES])
@@ -2357,7 +2359,7 @@ AC_DEFUN
AC_MSG_CHECKING([for thread support])
threads_enabled=no
-if test "$with_threads" = yes; then
+if test "$with_threads" != no; then
if test "$emacs_cv_pthread_lib" != no; then
AC_DEFINE(THREADS_ENABLED, 1,
[Define to 1 if you want elisp thread support.])
@@ -2729,7 +2731,7 @@ AC_DEFUN
dnl other platforms.
HAVE_DBUS=no
DBUS_OBJ=
-if test "${with_dbus}" = "yes"; then
+if test "${with_dbus}" != "no"; then
EMACS_CHECK_MODULES([DBUS], [dbus-1 >= 1.0])
if test "$HAVE_DBUS" = yes; then
AC_DEFINE(HAVE_DBUS, 1, [Define to 1 if using D-Bus.])
@@ -2754,7 +2756,7 @@ AC_DEFUN
dnl GSettings has been tested under GNU/Linux only.
HAVE_GSETTINGS=no
-if test "${HAVE_X11}" = "yes" && test "${with_gsettings}" = "yes"; then
+if test "${HAVE_X11}" = "yes" && test "${with_gsettings}" != "no"; then
EMACS_CHECK_MODULES([GSETTINGS], [gio-2.0 >= 2.26])
if test "$HAVE_GSETTINGS" = "yes"; then
old_CFLAGS=$CFLAGS
@@ -2818,7 +2820,7 @@ AC_DEFUN
dnl SELinux is available for GNU/Linux only.
HAVE_LIBSELINUX=no
LIBSELINUX_LIBS=
-if test "${with_selinux}" = "yes"; then
+if test "${with_selinux}" != "no"; then
AC_CHECK_LIB([selinux], [lgetfilecon], HAVE_LIBSELINUX=yes, HAVE_LIBSELINUX=no)
if test "$HAVE_LIBSELINUX" = yes; then
AC_DEFINE(HAVE_LIBSELINUX, 1, [Define to 1 if using SELinux.])
@@ -2828,7 +2830,7 @@ AC_DEFUN
AC_SUBST(LIBSELINUX_LIBS)
HAVE_GNUTLS=no
-if test "${with_gnutls}" = "yes" ; then
+if test "${with_gnutls}" != "no" ; then
EMACS_CHECK_MODULES([LIBGNUTLS], [gnutls >= 2.12.2],
[HAVE_GNUTLS=yes], [HAVE_GNUTLS=no])
if test "${HAVE_GNUTLS}" = "yes"; then
@@ -2845,7 +2847,7 @@ AC_DEFUN
AC_SUBST(LIBGNUTLS_CFLAGS)
HAVE_LIBSYSTEMD=no
-if test "${with_libsystemd}" = "yes" ; then
+if test "${with_libsystemd}" != "no" ; then
dnl This code has been tested with libsystemd 222 and later.
dnl FIXME: Find the earliest version number for which Emacs should work,
dnl and change '222' to that number.
@@ -2869,7 +2871,7 @@ AC_DEFUN
this is only supported on MS-Windows native and MinGW32 builds.
Consider using gfile instead.])
;;
- w32,* | yes,mingw32)
+ w32,* | yes,mingw32 | maybe,mingw32)
AC_CHECK_HEADER(windows.h)
if test "$ac_cv_header_windows_h" = yes ; then
AC_DEFINE(HAVE_W32NOTIFY, 1, [Define to 1 to use w32notify.])
@@ -2880,7 +2882,7 @@ AC_DEFUN
dnl inotify is available only on GNU/Linux.
case $with_file_notification,$NOTIFY_OBJ in
- inotify, | yes,)
+ inotify, | yes, | maybe,)
AC_CHECK_HEADER(sys/inotify.h)
if test "$ac_cv_header_sys_inotify_h" = yes ; then
AC_CHECK_FUNC(inotify_init1)
@@ -2894,7 +2896,7 @@ AC_DEFUN
dnl kqueue is available on BSD-like systems.
case $with_file_notification,$NOTIFY_OBJ in
- kqueue,* | yes,)
+ kqueue,* | yes, | maybe,)
EMACS_CHECK_MODULES([KQUEUE], [libkqueue])
if test "$HAVE_KQUEUE" = "yes"; then
AC_DEFINE(HAVE_KQUEUE, 1, [Define to 1 to use kqueue.])
@@ -2917,7 +2919,7 @@ AC_DEFUN
dnl has been added in glib 2.24. It has been tested under
dnl GNU/Linux only.
case $with_file_notification,$NOTIFY_OBJ in
- gfile,* | yes,)
+ gfile,* | yes, |maybe,)
if test "${HAVE_NS}" = yes; then
AC_MSG_ERROR(['--with-file-notification=gfile' is not supported in NextStep builds.
Consider kqueue instead.])
@@ -2934,7 +2936,7 @@ AC_DEFUN
esac
case $with_file_notification,$NOTIFY_OBJ in
- yes,* | no,* | *,?*) ;;
+ yes,* | no,* | maybe,* | *,?*) ;;
*) AC_MSG_ERROR([File notification '$with_file_notification' requested but requirements not found.]) ;;
esac
@@ -3298,14 +3300,13 @@ AC_DEFUN
EMACS_CHECK_MODULES(CAIRO, $CAIRO_MODULE)
if test $HAVE_CAIRO = yes; then
AC_DEFINE(USE_CAIRO, 1, [Define to 1 if using cairo.])
- else
+ CFLAGS="$CFLAGS $CAIRO_CFLAGS"
+ LIBS="$LIBS $CAIRO_LIBS"
+ AC_SUBST(CAIRO_CFLAGS)
+ AC_SUBST(CAIRO_LIBS)
+ elif test "${with_cairo}" = "yes" ; then
AC_MSG_ERROR([cairo requested but not found.])
fi
-
- CFLAGS="$CFLAGS $CAIRO_CFLAGS"
- LIBS="$LIBS $CAIRO_LIBS"
- AC_SUBST(CAIRO_CFLAGS)
- AC_SUBST(CAIRO_LIBS)
fi
fi
@@ -3672,18 +3673,18 @@ AC_DEFUN
MISSING=
WITH_NO=
if test "${HAVE_X11}" = "yes"; then
- test "${with_xpm}" != "no" && test "${HAVE_XPM}" != "yes" &&
+ test "${with_xpm}" = "yes" && test "${HAVE_XPM}" != "yes" &&
MISSING="libXpm" && WITH_NO="--with-xpm=no"
- test "${with_jpeg}" != "no" && test "${HAVE_JPEG}" != "yes" &&
+ test "${with_jpeg}" = "yes" && test "${HAVE_JPEG}" != "yes" &&
MISSING="$MISSING libjpeg" && WITH_NO="$WITH_NO --with-jpeg=no"
- test "${with_png}" != "no" && test "${HAVE_PNG}" != "yes" &&
+ test "${with_png}" = "yes" && test "${HAVE_PNG}" != "yes" &&
MISSING="$MISSING libpng" && WITH_NO="$WITH_NO --with-png=no"
- test "${with_gif}" != "no" && test "${HAVE_GIF}" != "yes" &&
+ test "${with_gif}" = "yes" && test "${HAVE_GIF}" != "yes" &&
MISSING="$MISSING libgif/libungif" && WITH_NO="$WITH_NO --with-gif=no"
- test "${with_tiff}" != "no" && test "${HAVE_TIFF}" != "yes" &&
+ test "${with_tiff}" = "yes" && test "${HAVE_TIFF}" != "yes" &&
MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no"
fi
-test "${with_gnutls}" != "no" && test "${HAVE_GNUTLS}" != "yes" &&
+test "${with_gnutls}" = "yes" && test "${HAVE_GNUTLS}" != "yes" &&
MISSING="$MISSING gnutls" && WITH_NO="$WITH_NO --with-gnutls=no"
if test "X${MISSING}" != X; then
AC_MSG_ERROR([The following required libraries were not found:
--
2.11.0
[-- Attachment #3: Type: text/plain, Size: 83 bytes --]
And here is the equivalent for configure, in case you don't have
autoconf handy:
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: with-all=maybe patch for configure --]
[-- Type: text/x-diff, Size: 8685 bytes --]
--- configure 2017-10-17 22:10:41.684538677 -0400
+++ configure.with-maybe 2017-10-17 22:10:20.768469411 -0400
@@ -2370,7 +2370,7 @@
oss, bsd-ossaudio, no; default yes). Only for
GNU/Linux, FreeBSD, NetBSD, MinGW, Cygwin.
--with-x-toolkit=KIT use an X toolkit (KIT one of: yes or gtk, gtk2,
- gtk3, lucid or athena, motif, no)
+ gtk3, lucid or athena, motif, maybe, no)
--with-wide-int prefer wide Emacs integers (typically 62-bit);
allows buffer and string size up to 2GB on 32-bit
hosts, at the cost of 10% to 30% slowdown of Lisp
@@ -4168,7 +4168,7 @@
withval=$with_mailutils;
else
with_mailutils=$with_features
- if test "$with_mailutils" = yes; then
+ if test "$with_mailutils" != no; then
(movemail --version) >/dev/null 2>&1 || with_mailutils=no
fi
fi
@@ -4269,9 +4269,9 @@
# Check whether --with-sound was given.
if test "${with_sound+set}" = set; then :
withval=$with_sound; case "${withval}" in
- yes|no|alsa|oss|bsd-ossaudio) val=$withval ;;
+ yes|no|maybe|alsa|oss|bsd-ossaudio) val=$withval ;;
*) as_fn_error $? "'--with-sound=$withval' is invalid;
-this option's value should be 'yes', 'no', 'alsa', 'oss', or 'bsd-ossaudio'." "$LINENO" 5
+this option's value should be 'yes', 'no', 'maybe', 'alsa', 'oss', or 'bsd-ossaudio'." "$LINENO" 5
;;
esac
with_sound=$val
@@ -4287,6 +4287,7 @@
withval=$with_x_toolkit; case "${withval}" in
y | ye | yes ) val=gtk ;;
n | no ) val=no ;;
+ maybe ) val=maybe ;;
l | lu | luc | luci | lucid ) val=lucid ;;
a | at | ath | athe | athen | athena ) val=athena ;;
m | mo | mot | moti | motif ) val=motif ;;
@@ -4295,7 +4296,7 @@
gtk3 ) val=gtk3 ;;
* )
as_fn_error $? "'--with-x-toolkit=$withval' is invalid;
-this option's value should be 'yes', 'no', 'lucid', 'athena', 'motif', 'gtk',
+this option's value should be 'yes', 'no', 'maybe', 'lucid', 'athena', 'motif', 'gtk',
'gtk2' or 'gtk3'. 'yes' and 'gtk' are synonyms.
'athena' and 'lucid' are synonyms." "$LINENO" 5
;;
@@ -4313,7 +4314,7 @@
with_wide_int=no
fi
-if test "$with_wide_int" = yes; then
+if test "$with_wide_int" != no; then
$as_echo "#define WIDE_EMACS_INT 1" >>confdefs.h
@@ -4554,13 +4555,14 @@
withval=$with_file_notification; case "${withval}" in
y | ye | yes ) val=yes ;;
n | no ) val=no ;;
+ maybe ) val=maybe ;;
i | in | ino | inot | inoti | inotif | inotify ) val=inotify ;;
k | kq | kqu | kque | kqueu | kqueue ) val=kqueue ;;
g | gf | gfi | gfil | gfile ) val=gfile ;;
w | w3 | w32 ) val=w32 ;;
* ) as_fn_error $? "'--with-file-notification=$withval' is invalid;
-this option's value should be 'yes', 'no', 'inotify', 'kqueue', 'gfile' or 'w32'.
-'yes' is a synonym for 'w32' on MS-Windows, for 'no' on Nextstep,
+this option's value should be 'yes', 'no', 'maybe', 'inotify', 'kqueue', 'gfile' or 'w32'.
+'yes' and 'maybe' are a synonyms for 'w32' on MS-Windows, for 'no' on Nextstep,
otherwise for the first of 'inotify', 'kqueue' or 'gfile' that is usable." "$LINENO" 5
;;
esac
@@ -4615,7 +4617,7 @@
gamegroup=
case ${with_gameuser} in
'' | no) ;;
- yes) gamegroup=games ;;
+ yes | maybe) gamegroup=games ;;
:*) gamegroup=${with_gameuser#:} ;;
*) gameuser=${with_gameuser} ;;
esac
@@ -9635,7 +9637,7 @@
fi
- if test "${with_sound}" = "alsa" || test "${with_sound}" = "yes"; then
+ if test "${with_sound}" = "alsa" || test "${with_sound}" = "yes" || test "${with_sound}" = "maybe" ; then
ALSA_REQUIRED=1.0.0
ALSA_MODULES="alsa >= $ALSA_REQUIRED"
@@ -11735,7 +11737,7 @@
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for thread support" >&5
$as_echo_n "checking for thread support... " >&6; }
threads_enabled=no
-if test "$with_threads" = yes; then
+if test "$with_threads" != no; then
if test "$emacs_cv_pthread_lib" != no; then
$as_echo "#define THREADS_ENABLED 1" >>confdefs.h
@@ -12715,7 +12717,7 @@
HAVE_DBUS=no
DBUS_OBJ=
-if test "${with_dbus}" = "yes"; then
+if test "${with_dbus}" != "no"; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for DBUS" >&5
@@ -12820,7 +12822,7 @@
HAVE_GSETTINGS=no
-if test "${HAVE_X11}" = "yes" && test "${with_gsettings}" = "yes"; then
+if test "${HAVE_X11}" = "yes" && test "${with_gsettings}" != "no"; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSETTINGS" >&5
@@ -13117,7 +13119,7 @@
HAVE_LIBSELINUX=no
LIBSELINUX_LIBS=
-if test "${with_selinux}" = "yes"; then
+if test "${with_selinux}" != "no"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lgetfilecon in -lselinux" >&5
$as_echo_n "checking for lgetfilecon in -lselinux... " >&6; }
if ${ac_cv_lib_selinux_lgetfilecon+:} false; then :
@@ -13170,7 +13172,7 @@
HAVE_GNUTLS=no
-if test "${with_gnutls}" = "yes" ; then
+if test "${with_gnutls}" != "no" ; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBGNUTLS" >&5
@@ -13259,7 +13261,7 @@
HAVE_LIBSYSTEMD=no
-if test "${with_libsystemd}" = "yes" ; then
+if test "${with_libsystemd}" != "no" ; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBSYSTEMD" >&5
@@ -13351,7 +13353,7 @@
this is only supported on MS-Windows native and MinGW32 builds.
Consider using gfile instead." "$LINENO" 5
;;
- w32,* | yes,mingw32)
+ w32,* | yes,mingw32 | maybe,mingw32)
ac_fn_c_check_header_mongrel "$LINENO" "windows.h" "ac_cv_header_windows_h" "$ac_includes_default"
if test "x$ac_cv_header_windows_h" = xyes; then :
@@ -13368,7 +13370,7 @@
esac
case $with_file_notification,$NOTIFY_OBJ in
- inotify, | yes,)
+ inotify, | yes, | maybe,)
ac_fn_c_check_header_mongrel "$LINENO" "sys/inotify.h" "ac_cv_header_sys_inotify_h" "$ac_includes_default"
if test "x$ac_cv_header_sys_inotify_h" = xyes; then :
@@ -13392,7 +13394,7 @@
esac
case $with_file_notification,$NOTIFY_OBJ in
- kqueue,* | yes,)
+ kqueue,* | yes, | maybe,)
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for KQUEUE" >&5
@@ -13542,7 +13544,7 @@
esac
case $with_file_notification,$NOTIFY_OBJ in
- gfile,* | yes,)
+ gfile,* | yes, |maybe,)
if test "${HAVE_NS}" = yes; then
as_fn_error $? "'--with-file-notification=gfile' is not supported in NextStep builds.
Consider kqueue instead." "$LINENO" 5
@@ -13632,7 +13634,7 @@
esac
case $with_file_notification,$NOTIFY_OBJ in
- yes,* | no,* | *,?*) ;;
+ yes,* | no,* | maybe,* | *,?*) ;;
*) as_fn_error $? "File notification '$with_file_notification' requested but requirements not found." "$LINENO" 5 ;;
esac
@@ -14817,14 +14819,13 @@
$as_echo "#define USE_CAIRO 1" >>confdefs.h
- else
- as_fn_error $? "cairo requested but not found." "$LINENO" 5
- fi
-
- CFLAGS="$CFLAGS $CAIRO_CFLAGS"
- LIBS="$LIBS $CAIRO_LIBS"
+ CFLAGS="$CFLAGS $CAIRO_CFLAGS"
+ LIBS="$LIBS $CAIRO_LIBS"
+ elif test "${with_cairo}" = "yes" ; then
+ as_fn_error $? "cairo requested but not found." "$LINENO" 5
+ fi
fi
fi
@@ -15768,18 +15769,18 @@
MISSING=
WITH_NO=
if test "${HAVE_X11}" = "yes"; then
- test "${with_xpm}" != "no" && test "${HAVE_XPM}" != "yes" &&
+ test "${with_xpm}" = "yes" && test "${HAVE_XPM}" != "yes" &&
MISSING="libXpm" && WITH_NO="--with-xpm=no"
- test "${with_jpeg}" != "no" && test "${HAVE_JPEG}" != "yes" &&
+ test "${with_jpeg}" = "yes" && test "${HAVE_JPEG}" != "yes" &&
MISSING="$MISSING libjpeg" && WITH_NO="$WITH_NO --with-jpeg=no"
- test "${with_png}" != "no" && test "${HAVE_PNG}" != "yes" &&
+ test "${with_png}" = "yes" && test "${HAVE_PNG}" != "yes" &&
MISSING="$MISSING libpng" && WITH_NO="$WITH_NO --with-png=no"
- test "${with_gif}" != "no" && test "${HAVE_GIF}" != "yes" &&
+ test "${with_gif}" = "yes" && test "${HAVE_GIF}" != "yes" &&
MISSING="$MISSING libgif/libungif" && WITH_NO="$WITH_NO --with-gif=no"
- test "${with_tiff}" != "no" && test "${HAVE_TIFF}" != "yes" &&
+ test "${with_tiff}" = "yes" && test "${HAVE_TIFF}" != "yes" &&
MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no"
fi
-test "${with_gnutls}" != "no" && test "${HAVE_GNUTLS}" != "yes" &&
+test "${with_gnutls}" = "yes" && test "${HAVE_GNUTLS}" != "yes" &&
MISSING="$MISSING gnutls" && WITH_NO="$WITH_NO --with-gnutls=no"
if test "X${MISSING}" != X; then
as_fn_error $? "The following required libraries were not found:
[-- Attachment #5: Type: text/plain, Size: 2950 bytes --]
> On our old CentOS 5 systems (packages frozen by Red Hat), I got a
> surprise message that has never appeared with any earlier version of
> emacs (I have almost 6000 logs for emacs builds going back as far as
> 20-Aug-1998):
>
>>> ...
>>> loading /local/build/cc/emacs-26.0.90/lisp/leim/leim-list.el (source)...
>>> Finding pointers to doc strings...
>>> Finding pointers to doc strings...done
>>> Dumping under the name emacs
>>> **************************************************
>>> Warning: Your system has a gap between BSS and the
>>> heap (258966655 bytes). This usually means that exec-shield
>>> or something similar is in effect. The dump may
>>> fail because of this. See the section about
>>> exec-shield in etc/PROBLEMS for more information.
>>> **************************************************
>>> make[1]: *** [bootstrap-emacs] Segmentation fault (core dumped)
>>> ...
>
> I'm doubtful that CentOS 5 had any protection against stack/heap/bss
> collision, because such discussions have only shown up on security
> lists in the last several months. Thus, it may be that the emacs test
> for the unexpected gap is faulty.
Hmm, a quick web search does seem to indicate that exec-shield only is
only set by default in CentOS 6 and up. On the other hand, since you
got a segfault, the test for the gap is probably not faulty (just that
the warning text is imprecise: "exec-shield or something").
> The one class of operating systems for which emacs is known not to
> work out-of-the-box from standard GNU distribution channels is Alpine
> Linux. I have 5 VMs running various versions of that O/S. Alpine uses
> muscl instead of glibc, and has a different memory model that breaks
> emacs, and also the tcsh shell. Some Alpine versions have a patched
> emacs in the package system, but the latest ones do not. Thus,
> emacs-26.0.90 will not build at all on Alpine Linux.
I was under the impression that Emacs 26 should be able to work with
muscl now, see Bug#22086[3] (which specifically mentions "Alpine
Linux").
[3]: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22086
> One final point: as far as I recall, in emacs-25 and earlier, the
> Makefiles were carefully written to be usable by traditional Unix
> make. Sadly, that is no longer the case, and I think the changes that
> now mandate GNU make for building emacs should be rescinded.
I think this is unlikely to happen:
The whole thing is a bit of a mess, and the mess is largely caused by
Emacs using Automake, and Automake is needed only because of Gnulib
(because Gnulib assumes Automake for portability to older systems
lacking GNU Make). I'll look into fixing this so that Gnulib no longer
assumes Automake, so that Emacs can stop relying on Automake. Since
Emacs assumes GNU Make, it doesn't need Automake (except for the Gnulib
code, which I think I can fix).
http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00097.html
^ permalink raw reply related [flat|nested] 7+ messages in thread