GSoC: Separation of Ports Build Process from Local Installation

Lorenzo Salvadore phascolarctos at protonmail.ch
Wed May 29 21:42:32 UTC 2019


> On 29/05/2019 10:56, Peter Pentchev wrote:
>
> > Hmm, I could be wrong, but isn't ${LOCALBASE} supposed to be where
> > ports find stuffduring the build, and ${PREFIX} where they
> > install the built files? Of course, I haven't actually touched
> > a FreeBSD ports build in years, so I might very likely be wrong.
> > I also seem to remember a series of test port builds done a long
> > time ago with a different value for LOCALBASE, specifically to catch
> > ports that do not honor the policy in this regard.
>
> No, you are correct. The LOCALBASE setting is where the ports will look
> for build dependencies. However, the problem here is there is no
> guarrantee that the LOCALBASE value will not somehow be compiled into a
> resulting package (eg. as RPATH for dynamically loading a shlib) so
> would also be needed for runtime dependencies.

Indeed, I maintain a port where LOCALBASE is a value that appears in the
resulting package's files (not as RPATH): math/maxima. See its Makefile at
line 65.


> Being able to build with a custom value of LOCALBASE and then install
> and run the resulting package onto a system using different value for
> PREFIX would be an interesting piece of work. The applicability would
> be people that custom build their own ports, but who are for some reason
> unable or unwilling to set up some sort of clean-build environment.
> This does strike me as an awful lot of work to solve a perceived problem
> where we do already have some pretty good solutions in place, but not to
> everybodies' taste.

Here again I can give an example of someone who does not want any
clean-build environment: myself. My machine is pretty old, cpu is slow,
ram is low and poudriere gets annoying on it: it needs to install and deinstall
plenty of dependencies for each single new package it builds. My solution
at the moment is using ports keeping all the build depenencies always installed.
However, if I understood the project correctly, I fear it would not offer a
useful alternative in my case.

Lorenzo Salvadore.


More information about the freebsd-ports mailing list