I’m in the process of building (again…) a Linux From Scratch system (and writing some scripts to automate the process a bit).
My base system (LFS proper) is done, and now I’m in the BLFS part. After a couple of basic packages, I need to tackle Xorg.
The dependency graph is quite big, following the dependencies by hand is tedious and error-prone. To ease the task, I decided to make a couple of graphs with Graphviz (in the DOT language).
Just some notes:
- to keep the graph manageable, I didn’t include any “optional” dependency (but I put some in comments in the dot files)
- one graph has “required” and “recommended” deps, the other one only “required” (plus the run-time deps)
- solid lines are “required”
- dash lines are “recommended”
- grey lines with dot heads are “required at run-time”
- for wget, I put as “recommended” “gnutls or openssl” – because I think it makes sense – but I didn’t expand them (gnutls in particular would make a mess in the graph). I already installed wget before looking into Xorg, anyway, and I assume that everybody else would do the same
- in the dot files, I explicitly set [style=solid] for the “required” deps, so it’s easy to change them with sed if desired
- with graphviz installed, generating the images from the dot files is as easy as: dot -Tpng xorg_depgraph.dot >xorg_depgraph.png
- the blue-ish (ghostwhite) nodes are the ones outside the chapter 24 of the BLFS book
EDIT 2015-09-21: added some colouring, fixed gist link
EDIT 2015-09-22: added glib dependencies
EDIT 2015-10-13: checked against BLFS 7.8 (and fixed titles), fixed xorg-server