From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: [platform-testers] Emacs 26.2 RC1 is out! Date: Mon, 25 Mar 2019 10:50:11 -0700 Organization: UCLA Computer Science Department Message-ID: <1733188e-ee18-5204-51c0-dc0b83e22884@cs.ucla.edu> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------F9084BAEF1D1FB313F6E1B5F" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="39996"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.0 Cc: "Nelson H. F. Beebe" , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 25 19:02:17 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h8TvJ-000A6T-CT for ged-emacs-devel@m.gmane.org; Mon, 25 Mar 2019 19:02:13 +0100 Original-Received: from localhost ([127.0.0.1]:46264 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h8TvH-0002pA-NU for ged-emacs-devel@m.gmane.org; Mon, 25 Mar 2019 14:02:11 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:56642) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h8Tq2-0007RH-2m for emacs-devel@gnu.org; Mon, 25 Mar 2019 13:56:47 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h8Tju-00060J-MW for emacs-devel@gnu.org; Mon, 25 Mar 2019 13:50:28 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:34152) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1h8Tjt-0005vb-PV for emacs-devel@gnu.org; Mon, 25 Mar 2019 13:50:26 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 7DBE6160D04; Mon, 25 Mar 2019 10:50:19 -0700 (PDT) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id GfeQIM5ycC3r; Mon, 25 Mar 2019 10:50:15 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 1DEA5160D0D; Mon, 25 Mar 2019 10:50:15 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id UOORQpPya5eX; Mon, 25 Mar 2019 10:50:15 -0700 (PDT) Original-Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id EF134160A4B; Mon, 25 Mar 2019 10:50:14 -0700 (PDT) Openpgp: preference=signencrypt Autocrypt: addr=eggert@cs.ucla.edu; prefer-encrypt=mutual; keydata= xsFNBEyAcmQBEADAAyH2xoTu7ppG5D3a8FMZEon74dCvc4+q1XA2J2tBy2pwaTqfhpxxdGA9 Jj50UJ3PD4bSUEgN8tLZ0san47l5XTAFLi2456ciSl5m8sKaHlGdt9XmAAtmXqeZVIYX/UFS 96fDzf4xhEmm/y7LbYEPQdUdxu47xA5KhTYp5bltF3WYDz1Ygd7gx07Auwp7iw7eNvnoDTAl KAl8KYDZzbDNCQGEbpY3efZIvPdeI+FWQN4W+kghy+P6au6PrIIhYraeua7XDdb2LS1en3Ss mE3QjqfRqI/A2ue8JMwsvXe/WK38Ezs6x74iTaqI3AFH6ilAhDqpMnd/msSESNFt76DiO1ZK QMr9amVPknjfPmJISqdhgB1DlEdw34sROf6V8mZw0xfqT6PKE46LcFefzs0kbg4GORf8vjG2 Sf1tk5eU8MBiyN/bZ03bKNjNYMpODDQQwuP84kYLkX2wBxxMAhBxwbDVZudzxDZJ1C2VXujC OJVxq2kljBM9ETYuUGqd75AW2LXrLw6+MuIsHFAYAgRr7+KcwDgBAfwhPBYX34nSSiHlmLC+ KaHLeCLF5ZI2vKm3HEeCTtlOg7xZEONgwzL+fdKo+D6SoC8RRxJKs8a3sVfI4t6CnrQzvJbB n6gxdgCu5i29J1QCYrCYvql2UyFPAK+do99/1jOXT4m2836j1wARAQABzSBQYXVsIEVnZ2Vy dCA8ZWdnZXJ0QGNzLnVjbGEuZWR1PsLBfgQTAQIAKAUCTIByZAIbAwUJEswDAAYLCQgHAwIG FQgCCQoLBBYCAwECH In-Reply-To: Content-Language: en-US X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 131.179.128.68 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:234717 Archived-At: This is a multi-part message in MIME format. --------------F9084BAEF1D1FB313F6E1B5F Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit On 3/21/19 6:08 PM, Stefan Monnier wrote: > Hmm... would there be a way to make it so configure accepts options like > > ./configure ... --with-xpm=ifavailable --with-jpeg=ifavailable ... > > so you can use a single script on all systems and it will use xpm > where available? That's simple, and it sounds like it would make Nelson's job easier. My job too, as I occasionally build on multiple Solaris systems, which often lack some of these libraries. I installed the attached patch on master; it won't be in the Emacs 26.2 release but I hope it survives into Emacs 27. --------------F9084BAEF1D1FB313F6E1B5F Content-Type: text/x-patch; name="0001-Support-.-configure-with-gif-ifavailable-etc.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0001-Support-.-configure-with-gif-ifavailable-etc.patch" >From 97a793cba9fc68a9df67622d8d82c443fe10dd9b Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 25 Mar 2019 10:46:04 -0700 Subject: [PATCH] Support ./configure --with-gif=ifavailable etc. Suggested by Stefan Monnier in: https://lists.gnu.org/r/emacs-devel/2019-03/msg00789.html * INSTALL, etc/NEWS: Document this. * configure.ac: Implement this. --- INSTALL | 6 ++++++ configure.ac | 59 +++++++++++++++++++++++++++++++++++----------------- etc/NEWS | 6 ++++++ 3 files changed, 52 insertions(+), 19 deletions(-) diff --git a/INSTALL b/INSTALL index 72bba25df8..8022385010 100644 --- a/INSTALL +++ b/INSTALL @@ -318,6 +318,12 @@ features enabled, you can combine --without-all with --with-FEATURE. For example, you can use --without-all --without-x --with-dbus to build with D-Bus support and nothing more. +Use --with-gnutls=ifavailable to use GnuTLS if available but go ahead +and build without it if not available. This overrides Emacs's default +behavior of refusing to build if GnuTLS is absent. When X11 support +is enabled, the libraries for gif, jpeg, png, tiff, and xpm are in the +same strongly-recommended category as GnuTLS, and have similar options. + Use --with-wide-int to implement Emacs values with the type 'long long', even on hosts where a narrower type would do. With this option, on a typical 32-bit host, Emacs integers have 62 bits instead of 30. diff --git a/configure.ac b/configure.ac index 110ea2909a..c93cfbbb59 100644 --- a/configure.ac +++ b/configure.ac @@ -2941,7 +2941,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 @@ -3512,7 +3512,10 @@ AC_DEFUN if test "${HAVE_X11}" = "yes"; then dnl Avoid Xpm on AIX unless requested, as it crashes; see Bug#17598. - test "$opsys$with_xpm_set" = aix4-2 && with_xpm=no + case $opsys,$with_xpm_set,$with_xpm in + aix4-2,set,yes) ;; + aix4-2,*) with_xpm=no;; + esac if test "${with_xpm}" != "no"; then AC_CHECK_HEADER(X11/xpm.h, @@ -3830,28 +3833,46 @@ AC_DEFUN dnl Check for required libraries. MISSING= -WITH_NO= +WITH_IFAVAILABLE= if test "${HAVE_X11}" = "yes"; then - test "${with_xpm}" != "no" && test "${HAVE_XPM}" != "yes" && - MISSING="libXpm" && WITH_NO="--with-xpm=no" - test "${with_jpeg}" != "no" && test "${HAVE_JPEG}" != "yes" && - MISSING="$MISSING libjpeg" && WITH_NO="$WITH_NO --with-jpeg=no" - test "${with_png}" != "no" && test "${HAVE_PNG}" != "yes" && - MISSING="$MISSING libpng" && WITH_NO="$WITH_NO --with-png=no" - test "${with_gif}" != "no" && test "${HAVE_GIF}" != "yes" && - MISSING="$MISSING libgif/libungif" && WITH_NO="$WITH_NO --with-gif=no" - test "${with_tiff}" != "no" && test "${HAVE_TIFF}" != "yes" && - MISSING="$MISSING libtiff" && WITH_NO="$WITH_NO --with-tiff=no" -fi -test "${with_gnutls}" != "no" && test "${HAVE_GNUTLS}" != "yes" && - MISSING="$MISSING gnutls" && WITH_NO="$WITH_NO --with-gnutls=no" + case $with_xpm,$HAVE_XPM in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="libXpm" + WITH_IFAVAILABLE="--with-xpm=ifavailable";; + esac + case $with_jpeg,$HAVE_JPEG in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="$MISSING libjpeg" + WITH_IFAVAILABLE="$WITH_IFAVAILABLE --with-jpeg=ifavailable";; + esac + case $with_png,$HAVE_PNG in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="$MISSING libpng" + WITH_IFAVAILABLE="$WITH_IFAVAILABLE --with-png=ifavailable";; + esac + case $with_gif,$HAVE_GIF in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="$MISSING libgif/libungif" + WITH_IFAVAILABLE="$WITH_IFAVAILABLE --with-gif=ifavailable";; + esac + case $with_tiff,$HAVE_TIFF in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="$MISSING libtiff" + WITH_IFAVAILABLE="$WITH_IFAVAILABLE --with-tiff=ifavailable";; + esac +fi +case $with_gnutls,$HAVE_GNUTLS in + no,* | ifavailable,* | *,yes) ;; + *) MISSING="$MISSING gnutls" + WITH_IFAVAILABLE="$WITH_IFAVAILABLE --with-gnutls=ifavailable";; +esac if test "X${MISSING}" != X; then AC_MSG_ERROR([The following required libraries were not found: $MISSING Maybe some development libraries/packages are missing? -If you don't want to link with them give - $WITH_NO -as options to configure]) +To build anyway, give: + $WITH_IFAVAILABLE +as options to configure.]) fi ### Use -lgpm if available, unless '--with-gpm=no'. diff --git a/etc/NEWS b/etc/NEWS index bbba59c549..ad01bd8516 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -37,6 +37,12 @@ functions 'json-serialize', 'json-insert', 'json-parse-string', and 'json-parse-buffer' are typically much faster than their Lisp counterparts from json.el. +** Several configure options now accept an option-argument 'ifavailable'. +For example, './configure --with-xpm=ifavailable' now configures Emacs +to attempt to use libxpm but to continue building even if libxpm is absent. +The other affected options are --with-gif, --with-gnutls, --with-jpeg, +--with-png, and --with-tiff. + ** The etags program now uses the C library's regular expression matcher when possible, and a compatible regex substitute otherwise. This will let developers maintain Emacs's own regex code without having to also -- 2.20.1 --------------F9084BAEF1D1FB313F6E1B5F--