Page "SummerOfCode" was changed by rjvbertin@gmail.com Diff URL: <https://trac.macports.org/wiki/SummerOfCode?action=diff&version=256> Revision 256 Changes: -------8<------8<------8<------8<------8<------8<------8<------8<-------- Index: SummerOfCode ========================================================================= --- SummerOfCode (version: 255) +++ SummerOfCode (version: 256) @@ -174,6 +174,17 @@ Trace mode is a library preloading-based sandbox used to hide files that a port does not depend on or that are not part of a standard system's installation (such as `/usr/local`). This can avoid problems due to incompatible user-installed software and avoid "automagic" dependencies and increase the reproducibility of builds. Unfortunately, enabling trace mode adds a significant performance penalty to the build process. However, the trace mode code can certainly be optimized using appropriate cache data structures, such as a modified [http://en.wikipedia.org/wiki/Trie Trie]. Your task would be to identify the performance bottle necks, draft appropriate caching data structures and implement them. + +* Difficulty: Medium to Easy +* Programming languages: Tcl, C +* Potential mentors: cal + + +===== Auto-detection of build dependencies ===== #dependencies-gen + +When creating a new portfile one of the problems is always the specification of the complete (and preferably minimal) list of build dependencies, especially when one starts with a rather complete install where most dependencies are already available. + +It is possible to invert the trace mode logic so that it detects all files a configure and/or build process accesses, in ${prefix} but outside of the port's build directory. This information can then be used to generate a dependency tree and information from the registry can then be used to simplify that tree so that it only lists direct dependencies. * Difficulty: Medium to Easy * Programming languages: Tcl, C -------8<------8<------8<------8<------8<------8<------8<------8<-------- -- Page URL: <https://trac.macports.org/wiki/SummerOfCode> MacPorts <https://www.macports.org/> Ports system for OS X This is an automated message. Someone added your email address to be notified of changes on 'SummerOfCode' page. If it was not you, please report to .
participants (1)
-
MacPorts