From: "Jan Djärv" <jan.h.d@swipnet.se>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: 17289-done@debbugs.gnu.org, Mattia Ziulu <mziulu@gmail.com>
Subject: bug#17289: 24.4.50; Build failure (Fedora 20)
Date: Sat, 19 Apr 2014 23:52:25 +0200 [thread overview]
Message-ID: <D592268E-A319-4CEF-9961-A8ACA56F3E8F@swipnet.se> (raw)
In-Reply-To: <5352B940.3090306@cs.ucla.edu>
Hello.
19 apr 2014 kl. 19:58 skrev Paul Eggert <eggert@cs.ucla.edu>:
> Jan D. wrote:
>
>> I though the point was to let CFLAGS
>> and LIBS to accumulate so we can catch conflicts early. If for example,
>> Glib and librsvg has a conflict, it would be caught at configure time,
>> probably by ignoring one of the libs, and still let Emacs be built.
>
> That may have been the point originally, but 'configure' long ago lost it; even in emacs-24 libraries sometimes accumulate and sometimes do not.
>
> The emacs-24 approach has a different problem: because some libraries accumulate, later tests report answers that are incorrect for non-Emacs applications such as etags which do not necessarily link to these libraries. I ran into one of these problems with IRIX, and installed a small hack-atop-a-hack in emacs-24 to fix that one little problem, but in the trunk I am looking for a cleaner solution. The basic idea is that each test should be try to be independent from the others, and that any necessary dependencies be indicated for the test.
That does not prevent configure from collecting all cflags/libs.
This can be done in some other variable. That would be cleaner, because the solution you
have made now requires the Glib test to know just about everything that configure has done.
This is a really bad solution. Adding another third party library now requires the Glib test to be updated as well. Locality is broken.
>
> I had tested the trunk change myself, but I can't easily test all possible configuration options and so hadn't run into the reported failure.
I think just having Gtk+ and running configure without any parameters gives you this error.
Hardly a strange configuration, but probably the most used one.
> Thanks Mattia for reporting it. I fixed the bug in trunk bzr 116992, by having the glib test mention its dependencies, and am marking the bug report as done.
>
> I'm puzzled, though, as to why glib is treated differently from the other libraries. Currently, Emacs uses glib if glib happens to be dragged in along with some other library, and avoids glib otherwise. Why not just use glib if available? That would be simpler, no?
Some third party libaries use Glib, without Emacs explicitly using Glib itself.
Some older versions of the same libraries (or prehaps even the same version, but compiled differently) may not use Glib. So we check if Glib is used. It may be available, but Emacs and its third party library dependencies may not need it.
We do not want Emacs to require Glib, or link with it if it is not being used.
Jan D.
next prev parent reply other threads:[~2014-04-19 21:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-18 6:33 bug#17289: 24.4.50; Build failure (Fedora 20) Mattia Ziulu
2014-04-18 8:21 ` Jan Djärv
2014-04-18 9:54 ` Jan Djärv
2014-04-18 13:09 ` Jan D.
2014-04-19 17:58 ` Paul Eggert
2014-04-19 21:52 ` Jan Djärv [this message]
2014-04-19 22:21 ` Paul Eggert
2014-04-22 6:14 ` Mattia Ziulu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=D592268E-A319-4CEF-9961-A8ACA56F3E8F@swipnet.se \
--to=jan.h.d@swipnet.se \
--cc=17289-done@debbugs.gnu.org \
--cc=eggert@cs.ucla.edu \
--cc=mziulu@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).