Topic: standardized package management (was: GUI)


Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Fri, 14 Oct 2016 10:52:31 -0400
Raw View
(*Third* try. Apologies if this shows up more than once; for some reason
I seem to have trouble getting posts to this thread to go through...)

On 2016-10-12 16:45, Ville Voutilainen wrote:
> I know how to get a library into the standard. I don't know how to
> get a package manager in.

I'm not convinced the *C++* standard is the right place for this. We
could certainly use one, maybe even as an ISO standard, but I'm less
convinced that bundling it into C++ is TRTTD.

As I said at Jacksonville, I think the first step is to standardize a
mechanism for consuming an external package. I'd like to see something
that standardizes a way to describe a package, what components it
provides and how to use them (probably using JSON or the like), and how
to find such descriptions.

Both pkg-config and CMake (and possibly others) provide such mechanisms,
but they aren't universally supported, and both have drawbacks
(pkg-config's flags-based approach is problematic, CMake is too steeped
in its own syntax). Ideally, someone would propose such a standard,
tools like pkg-config and CMake would be updated to support consuming
it, and build tools (autotools, CMake, scons, etc.) would be updated to
produce it.

There *might* be room, especially in a post-modules era, for the
compiler to consume these directly, though I am less sure, considering
that stuff like include directives and linking are not something the
standard addresses. Traditionally, this is build tool territory.

--
Matthew

--
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/5800F12F.3030503%40gmail.com.

.