Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Jul 2019 13:28:08 -0700
From:      Theron Tarigo <theron@freebsd.org>
To:        soc-status@freebsd.org
Subject:   GSoC: Separation of Ports Build Process from Local Installation
Message-ID:  <50c43ed4-d385-cea8-1551-42ab76b97488@freebsd.org>

next in thread | raw e-mail | index | archive | help
Hello all,

This project aims to decouple the build process of the ports framework 
from the local installation.  To work around the assumptions made by 
ports about dependency file locations, a userspace tool to remap 
processes' filesystem namespaces is under development.

This past week, I have made the following progress:
- Created a port of freebsd-user-namespace: devel/userns.
- Integrated devel/userns into PORTS_SEPARATED_BUILD mode of ports 
framework.
- freebsd-user-namespace looks up addresses from /usr/lib/debug to 
live-patch ld-elf.so.1 where needed.
- Improved integration of devel/userns and devel/bmake into bsd.ports.mk 
such that these tools are created when required by PORTS_SEPARATED_BUILD 
mode.
- Confirmed that devel/llvm60 and all its dependencies build 
successfully, this time in a fresh FreeBSD 12.0-RELEASE installation 
with https://github.com/therontarigo/freebsd-ports -b separated as 
/usr/ports. This selection of ports represents many build tools commonly 
used in building of other ports: python, perl, lua, GNU, CMake, ...

What I am working on next:

- Review and clean up code; eliminate need for any special configuration 
to be able to use PORTS_SEPARATED_BUILD.
- Build larger set of ports to discover remaining incompatibilities.
- Set up automated testing of ports to assess progress and catch 
regressions.

Project goals and status are kept at 
https://wiki.freebsd.org/SummerOfCode2019Projects/PortsSeparatedBuild .

Source of the userspace filesystem namespace tool is shared at 
https://github.com/therontarigo/freebsd-user-namespace .
Changes to ports framework are shared at 
https://github.com/freebsd/freebsd-ports/compare/master...therontarigo:separated.

Theron Tarigo




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50c43ed4-d385-cea8-1551-42ab76b97488>