tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkgsrc leakage and default pkg options



Hi,

We have packages like www/curl that have default options that significantly increase compile time. For example, compiling with http2 requires all these additional packages:

gmake
libffi
libuuid
libxml2
nghttp2
python310
readline
xmlcatmgr

On a fast machine, total CPU time goes from 120 seconds for building just curl to 640 seconds for all of the extra dependencies plus curl, which is a significant difference.

Whether http2 is really ever needed is not what I want to discuss here, but we can see that having a common tool and common dependency like curl without all the extra fluff may be desirable. I choose to exclude http2 in general.

However, I've noted that rust fails to build when curl is built with -http2, as seen in PR#56786:

https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=56786

This leads me to wonder about a few things:

1) Forgetting for the moment that Rust should be using its own internal curl, in general, how should a package handle the requirement for specific options in packages it requires?

2) About this specific Rust issue, soes someone know enough about Rust's build system to fix this leakage?

3) In cases where default options bring in significant dependencies, should we default to lighter instead of heavier? For instance, liblinear used to be enabled by default for net/nmap which used to bring in a whole additional gcc. How should decisions like these be made?

Thanks,
John


Home | Main Index | Thread Index | Old Index