unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Interpreting configure script's results
@ 2021-12-31 20:08 John Yates
  2021-12-31 20:30 ` Eli Zaretskii
  2022-01-01  0:10 ` Po Lu
  0 siblings, 2 replies; 4+ messages in thread
From: John Yates @ 2021-12-31 20:08 UTC (permalink / raw)
  To: Emacs developers

Emacs seems to be rapidly acquiring dependencies on separate libraries.
Those listed as --without-xyz in the configure script's help appear to enable
uncontroversial additional capabilities that do not need to be requested
explicitly.  I contrast those with the --with-xyz options.

I build emacs on Ubuntu where I need to install a -dev package for emacs
to link against a library.  When configure displays its summary table I try
to understand the reason for any 'no' result.  Sometimes it is fairly obvious.
So recently when I saw

    Does Emacs use -lsqlite3?  no

I knew immediately that, even though I already had sqlite3 installed, I had
to add libsqlite3-dev.

Now consider that configure's help text shows

    --with-imagemagick      compile with ImageMagick image support
    --without-native-image-api
                          don't use native image APIs (GDI+ on Windows)

I take these to mean that one normally should not request Imagemagick
and that native image APIs will be used by default.  I use no version of
either of these options in my configuration.  My resulting summary is

    Does Emacs use imagemagick?  no
    Does Emacs use native APIs for images?  no

I expected the first 'no' and assumed that I should resolve the second.
But for the life of me I cannot figure out what -dev package is missing.
I have skimmed the configure script and have concluded that these
native APIs are available only on ns, w32 and haiku.  Does this mean
that image functionality is not supported on these three platforms? Do
I need to add --with-imagemagick?

Suggestion: Could configure's output be made more informative?
In particular, when some expected capability fails to be included
for lack of some header could that be called out?

/john



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Interpreting configure script's results
  2021-12-31 20:08 Interpreting configure script's results John Yates
@ 2021-12-31 20:30 ` Eli Zaretskii
  2021-12-31 20:37   ` Eli Zaretskii
  2022-01-01  0:10 ` Po Lu
  1 sibling, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2021-12-31 20:30 UTC (permalink / raw)
  To: John Yates; +Cc: emacs-devel

> From: John Yates <john@yates-sheets.org>
> Date: Fri, 31 Dec 2021 15:08:50 -0500
> 
> Suggestion: Could configure's output be made more informative?
> In particular, when some expected capability fails to be included
> for lack of some header could that be called out?

We follow the same format as configure scripts for any other GNU
package.

When you are about to build a new version of Emacs (or any other
package), you are supposed to run "./configure --help" ans study the
various options to determine which ones are for you.  In the "--help"
output, the options that are spelled as --without-FOO mean that the
default is to build _with_ FOO, if that's possible (which for external
library means the development package for the library is installed).
Options that are spelled as --with-FOO mean that the default is to
build without them, regardless of whether the relevant software is
installed.  So if some option is listed as --without-FOO, and you
didn't use that --without switch, but the configure reports that it
doesn't build with FOO, it means some software component for that is
missing, or maybe the option is not relevant for your platform.

We usually announce new configure options in the "Installation
changes" section of the NEWS file, which is one other place to look
for information about this stuff.



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Interpreting configure script's results
  2021-12-31 20:30 ` Eli Zaretskii
@ 2021-12-31 20:37   ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2021-12-31 20:37 UTC (permalink / raw)
  To: john; +Cc: emacs-devel

> Date: Fri, 31 Dec 2021 22:30:59 +0200
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
> 
> We usually announce new configure options in the "Installation
> changes" section of the NEWS file, which is one other place to look
> for information about this stuff.

And one more thing: quite a few optional features are described in
INSTALL.  (This is in contrast to most other GNU projects, whose
INSTALL file includes only generic instructions and doesn't describe
project-specific options at all.)



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Interpreting configure script's results
  2021-12-31 20:08 Interpreting configure script's results John Yates
  2021-12-31 20:30 ` Eli Zaretskii
@ 2022-01-01  0:10 ` Po Lu
  1 sibling, 0 replies; 4+ messages in thread
From: Po Lu @ 2022-01-01  0:10 UTC (permalink / raw)
  To: John Yates; +Cc: Emacs developers

John Yates <john@yates-sheets.org> writes:

>     Does Emacs use imagemagick?  no
>     Does Emacs use native APIs for images?  no
>
> I expected the first 'no' and assumed that I should resolve the second.
> But for the life of me I cannot figure out what -dev package is missing.
> I have skimmed the configure script and have concluded that these
> native APIs are available only on ns, w32 and haiku.  Does this mean
> that image functionality is not supported on these three platforms? Do
> I need to add --with-imagemagick?

Native image APIs don't provide anything over the options that already
exist.  It only means Emacs will use the platform APIs to load images,
instead of using other image libraries such as libpng and ImageMagick.

Since X has no useful "native image API", that option is not available
there.



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-01-01  0:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-31 20:08 Interpreting configure script's results John Yates
2021-12-31 20:30 ` Eli Zaretskii
2021-12-31 20:37   ` Eli Zaretskii
2022-01-01  0:10 ` Po Lu

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).