summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2012-03-14 00:55:59 (EDT)
committer P. J. McDermott <pjm@nac.net>2012-03-14 00:59:06 (EDT)
commitd3c1125cfda422cd268e12e0e2a18752edbe6b55 (patch)
tree91d8ce22a270beddcc4bb95607e1c15b5c0d0afb
parent4cd2c271ef22a3c221eb196d85c69081ac1fc962 (diff)
Add dependency graph.
-rw-r--r--depgraphs/Build-Depends_system_simplified.dot57
-rw-r--r--depgraphs/Build-Depends_system_simplified.pngbin0 -> 149070 bytes
-rw-r--r--depgraphs/Makefile21
3 files changed, 78 insertions, 0 deletions
diff --git a/depgraphs/Build-Depends_system_simplified.dot b/depgraphs/Build-Depends_system_simplified.dot
new file mode 100644
index 0000000..cbe41ac
--- /dev/null
+++ b/depgraphs/Build-Depends_system_simplified.dot
@@ -0,0 +1,57 @@
+/*
+ * Build-Depends_system_simplified.dot
+ * This is a high-level view of build dependencies between system packages.
+ * It is a graph of "Build-Depends" fields, showing dependencies on source
+ * package names rather than binary package names (e.g. "gcc" build-depends on
+ * "mpfr" rather than "libmpfr.4").
+ */
+
+digraph "Build-Depends_system_simplified" {
+ subgraph "Toolchain" {
+ "gcc" -> "gmp"
+ "gcc" -> "mpfr"
+ "gcc" -> "mpc"
+ "gcc" -> "binutils"
+ "gcc" -> "gcc"
+ "gcc" -> "make"
+ "mpfr" -> "gmp"
+ "mpfr" -> "make"
+ "mpfr" -> "gcc"
+ "mpfr" -> "binutils"
+ "mpc" -> "mpfr"
+ "mpc" -> "gmp"
+ "mpc" -> "make"
+ "mpc" -> "gcc"
+ "mpc" -> "binutils"
+ "gmp" -> "make"
+ "gmp" -> "gcc"
+ "gmp" -> "binutils"
+ "make" -> "make"
+ "make" -> "gcc"
+ "make" -> "binutils"
+ "binutils" -> "make"
+ "binutils" -> "gcc"
+ "binutils" -> "binutils"
+ }
+ subgraph "System" {
+ "busybox" -> "config-<platform>"
+ "busybox" -> "gcc"
+ "busybox" -> "make"
+ "busybox" -> "binutils"
+ "linux" -> "config-<platform>"
+ "linux" -> "make"
+ "linux" -> "gcc"
+ "binutils" -> "binutils"
+ "basefiles-<platform>"
+ }
+ subgraph "Package" {
+ "opkg" -> "gcc"
+ "opkg" -> "make"
+ "opkg" -> "binutils"
+ "fakeroot" -> "gcc"
+ "fakeroot" -> "make"
+ "fakeroot" -> "binutils"
+ "opkhelper"
+ "opkhelper-buildflags"
+ }
+}
diff --git a/depgraphs/Build-Depends_system_simplified.png b/depgraphs/Build-Depends_system_simplified.png
new file mode 100644
index 0000000..8b3ddb8
--- /dev/null
+++ b/depgraphs/Build-Depends_system_simplified.png
Binary files differ
diff --git a/depgraphs/Makefile b/depgraphs/Makefile
new file mode 100644
index 0000000..72db2da
--- /dev/null
+++ b/depgraphs/Makefile
@@ -0,0 +1,21 @@
+# Drawing these graphs requires Graphviz.
+
+.SUFFIXES:
+.SUFFIXES: .dot .png
+
+SRCS = Build-Depends_system_simplified.dot
+OBJS = $(SRCS:.dot=.png)
+
+.PHONY: all
+all: $(OBJS)
+
+$(OBJS):
+ @printf ' DRAW %s\n' '$@'
+ @dot -T png -o '$@' '$*.dot'
+
+.PHONY: clean
+clean:
+ @for obj in $(OBJS); do \
+ printf ' RM %s\n' "$${obj}"; \
+ rm -f $${obj}; \
+ done