<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><br>
</p>
<div class="moz-cite-prefix">Le 05/10/2021 à 15:24, Javier Jimenez
Shaw a écrit :<br>
</div>
<blockquote type="cite"
cite="mid:CADRrdKtEHtRj+1Sj=ShbYNxbuLO-VJRGvETYqk8Suz1PYqwv2w@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="ltr">I also accept some included by default, that can be
disabled with an option. But never silently depending on what is
installed.<br clear="all">
</div>
</blockquote>
<p>autoconf builds largely automatically uses installed things when
they are in standard locations. That's the practice of most other
projects, which is very convenient, and that should be kept. The
only requirement for GDAL is PROJ, but if you don't have libcurl,
libexpat, etc., you loose a lot of functionality, and requiring
users to list all them would be painful.<br>
</p>
<p>For most packaging system, the set of dependencies available at
build time is fully controlled by the package requirements. We can
assume that whatever if available is wished to be used, and
ideally a plain "cmake .." should automatically find what is
available. And if the packager properly enumerates its build-time
and run-time dependencies, that should work.<br>
</p>
<p>People can explicitly disable a dependency they don't want. We
could perhaps have some option to disable everything by default,
and require explicit activation in use cases where people want
full control, but that shouldn't be the default behavior.<br>
</p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:CADRrdKtEHtRj+1Sj=ShbYNxbuLO-VJRGvETYqk8Suz1PYqwv2w@mail.gmail.com">
<div dir="ltr">
<div>
<div>
<div dir="ltr" class="gmail_signature"
data-smartmail="gmail_signature">.___ ._ ..._ .. . ._.
.___ .. __ . _. . __.. ... .... ._ .__<br>
Entre dos pensamientos racionales <br>
hay infinitos pensamientos irracionales.<br>
<br>
</div>
</div>
<br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Tue, 5 Oct 2021 at 15:11,
Greg Troxel <<a href="mailto:gdt@lexort.com"
moz-do-not-send="true">gdt@lexort.com</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
Javier Jimenez Shaw <<a href="mailto:j1@jimenezshaw.com"
target="_blank" moz-do-not-send="true">j1@jimenezshaw.com</a>>
writes:<br>
<br>
> How would CMake behave with all those options that are
defined depending on<br>
> what is present on the compiler machine?<br>
><br>
> IMHO, the libraries included should be independent on
what is already<br>
> installed on the compiler machine. The last time
something/somebody<br>
> included "zstd" in our compiler machine, and not in the
executing machine,<br>
> and we couldn't run anything. We did not need zstd, but
it was there,<br>
> breaking the execution. I know that the solution there is
disable it<br>
> "--without-zstd". What I do not like is the lack of
definition, because<br>
> what is present on the compiler machine may change.<br>
<br>
I agree that is is best for a build to hard-require what is
required and<br>
decline to use things that are not required. I don't think
this issue<br>
is any different autoconf vs cmake.<br>
</blockquote>
</div>
</blockquote>
<pre class="moz-signature" cols="72">--
<a class="moz-txt-link-freetext" href="http://www.spatialys.com">http://www.spatialys.com</a>
My software is free, but my time generally not.</pre>
</body>
</html>