$NetBSD: BUILDLINK3_DG,v 1.10 2024/01/18 23:38:40 rillig Exp $ 0 Developer's guide to buildlink3 ================================= This is a tutorial for pkgsrc developers to understand and to use the buildlink3 framework in pkgsrc. The buildlink3 framework establishes the principle: only allow the software build process to see what we choose to allow it to see. 1 libtool ============================== The buildlink3 framework handles packages that install libtool archive files for libraries that are also present in the base system. It more tightly controls where libtool can find libtool archives. This reduces the number of conflicts between libtool libraries provided by the base system and those from pkgsrc. 2 buildlink3.mk file structure ============================== The buildlink3.mk files keep track of how "deep" we are in including buildlink3.mk files, and only create dependencies on packages encountered at depth 1. This means that packages that want to add a dependency must directly include the buildlink3.mk file for that dependency. 3 Troubleshooting ================= To see the actual command executed by the wrapper scripts, examine the contents of the ${WRKDIR}/.work.log file. The lines preceded with [*] are the commands that are intercepted by the wrapper scripts, and the lines preceded with <.> are the commands that are executed by the wrapper scripts.