Making `port mpgk' create smaller packages

Mojca Miklavec mojca at macports.org
Sun Mar 10 16:00:14 UTC 2019


Dear Werner,

On Sun, 10 Mar 2019 at 08:24, Werner LEMBERG wrote:
>
> trying
>
>   port mpkg lilypond-devel
>
> creates a 1.5GByte bundle, which is far too large to be used for
> distribution.  Is there a possibility to reduce the number of packages
> that gets bundled?
>
> As far as I can see, the main problem is that build and run
> dependencies are intermixed in Portfiles: If `foo' is necessary for
> building and running, it gets only listed in `depends_lib'.

That's a clear bug in a Portfile specification (rather than in MacPorts).

Any dependency that's not required for running should be
depends_build[-append] and any dependency that's not required for
building the port should be depends_run[-append]. There's also
depends_test, depends_fetch, ... (maybe more).

> Is it possible to provide a finer granularity?  For example,
> `lilypond-devel' needs `texlive' for building only but not for
> running.

In that case just move it from depends_lib[-append] to
depends_build[-append] (in a PR, probably)

> Or may `port
> mpkg' gets a new command line option to specify a list of packages
> that should be omitted (together with its dependencies).

I'm pretty sure there is a lot of room for improvement of port mpkg.
Maybe open a ticket for base in our Trac? (Improvements to mpkg might
potentially even be suitable for GSOC projects.)

Mojca


More information about the macports-users mailing list