← findnix.eu
🎬 exquisite.tube exquisite.tube

[2019] Advanced ports toolkit: near-perfect packing-list generation - Marc Espie

⏱ 40:42 🌐 exquisite.tube

The OpenBSD ports tree uses an unique approach. Instead of ad-hoc scripts that manipulate textual information, we do have a semantic parser that creates objects for each element in the plist. The last year saw a complete rewrite of the most complicated piece of machinery, namely update-plist. There are lots of interesting challenges, specifically how to write a generic tool that will handle all the semantic annotations that currently figure in packing-lists with minimal special-casing: * variables that expand to nothing for some flavors, * ambiguous variable expansions, * directories that may not exist for python2 ports, * automatic dispatching to the right subpackage and fragment, * shared libraries, * smart file type handling for libraries, icon themes, etc Before and after comparison shows a new tool that requires minimal human intervention (perfect packing-list re-generation in over 95% of the cases), where the old update-plist required hand-holding over half the time. Marc E

β†—https://exquisite.tube/w/1RSJ3XuTsFLbTRMBTK1kJG
BSD EuroBSDcon Ports Development OpenBSD
Indexiert von findnix.eu Β· Eigene Seite einreichen