[[!template id=project title="Further isolate builds from system environment" contact=""" [tech-pkg](mailto:tech-pkg@NetBSD.org) """ mentors=""" [Amitai Schleier](mailto:schmonz@NetBSD.org) """ category="pkgsrc" difficulty="easy" duration="1 month" description=""" Buildlink is a framework in pkgsrc that controls what headers and libraries are seen by a package's configure and build processes. We'd like to expand on this isolation by: - Hiding `-L${PREFIX}/{include,lib}` from `CFLAGS`/`LDFLAGS`, so that (for instance) undeclared buildlink dependencies will give the needed "not found" earlier in the package-development cycle - Hiding `${PREFIX}/bin` from `PATH`, so that (for instance) undeclared build- or run-time tools will give the needed "not found" earlier in the package-development cycle Steps: 1. Do bulk builds with the existing defaults on a few platforms (e.g., NetBSD, macOS, Illumos, Linux) 2. Rerun the bulk builds from scratch, this time with the desired infrastructure changes 3. Compare before and after to see which package builds break 4. Fix them 5. Enable the infrastructure changes by default for all users """ ]]