On 2021-10-01 22:15, Achim Gratz wrote:
Brian Inglis writes:
As autoconf requires: autoconf2.1 autoconf2.5 bash sed, I believe that
would be the more appropriate place for an autoconf-archive
requirement, otherwise cygport would have to require it, which is not
so obvious.
No. If a build needs autoconf-archive then require it there. The whole
point of having things in separate packages is that you do not have to
install things you don't need. Neither autottols nor cygport require
this package in any way.
See response to Yaakov: the problem is it's just a given in the build
systems of the packages that use it, just as is gnulib implicitly, so
neither are ever mentioned as requirements or components.
You have to trip over the problems, try to find occurences online (which
is difficult with packages preinstalled with every Linux or GNU
development setup), dig down to find the problem, dig around to find the
solution; possibly bounce it off upstream, and reference, pull, or adapt
their patch which is to their current master; or if it's a Cygwin
environment issue, fix it in cygport; and request that upstream at least
mention it in their requirements (for which they may think you, or the
Cygwin build setup, may have some deficiencies); or mention that they
include a release of something which is really an ongoing creeping
unreleased blob: gnulib as of when they last picked it up; or some other
pet project of theirs which they just embed in their package, as it
worked on their system, and saves them writing a few new lines of code.
Off-tangent: cygport has entirely too many dependencies already which we
can't help with our current package system. I'd love to have a way for
these dependencies not to creep into each build.
I'd love to have a way for maintainers not to have to figure out what is
missing from the Cygwin build system that upstream package developers
just assume everyone has on their GNU, Linux, Debian, Fedora, OpenSuSE
or etc. build system! ;^>
I admit I am clueless about autotools, open source development, and
build systems. I have worked mainly in commercial, corporate
environments, with teams of a few dozen to a couple of hundred,
sometimes dozens but usually hundreds of support staff, where they want
some product fixed or enhanced the next day, provide minimal tools, and
don't really care how the job gets done, as long as it is cheap and
soon, or at least within their planned timeframe and budget. (But
necessarily according to this month's list of approved or required
architectures, languages, tools, techniques, methodologies, and project
approaches!) ;^>
And this month has had me spending most of my free time for Cygwin
tripping over issues of only three packages with mysterious issues never
encountered or imagined by the upstreams because of their build
environments; and that makes me pause from contemplating adopting
others, if each could take up a week of my free time to handle each new
update.
Maintainers can spent their time chasing issues with Cygwin
"deficiencies" and digging into the issues, working with upstream
developers to track down problems, and asking upstream developers to
document things (shock!) which no other downstream has ever requested;
or they can release upgraded packages with minimal friction!
But I've always felt putting obstacles that can be easily mitigated in
the way of getting the good work done with minimal friction is possibly
not the best approach that any group should take.
[I got an impression that bits of gnulib blobs may be making their way
into the more formal packaging of autoconf-archive to avoid GNU
autotools maintainers having to blast in random gnulib replacement blobs
once in a while and hope that nothing breaks (on their development
platform at least).]
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]