One of the last tasks on my todo list before I look at the GUI is the dependency graph generation. Currently this is in self contained code which works but has odd bugs. I'd like to convert it to use the new taskData and runqueue data handling routines. The main advantage of doing this is consistency - I want the graph to actually match what bitbake does and for that we only want one code path :).
Currently we can graph DEPENDS and RDEPENDS. Bitbake has changed and now works at the task level. I'm wondering if outputting DEPENDS and RDEPENDS data makes sense any longer or should we should output the actual computed task dependencies? As an example, the task based output would look like: "gnu-config-native.do_populate_staging" [label="gnu-config-native do_populate_staging\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_populate_staging" -> "gnu-config-native.do_package_write" "gnu-config-native.do_package_write" [label="gnu-config-native do_package_write\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_package_write" -> "gnu-config-native.do_package" "m4-native.do_unpack" [label="m4-native do_unpack\n1.4.2-r0\n/usr/ohoe-max/meta/packages/m4/m4-native_1.4.2.bb"] "m4-native.do_unpack" -> "m4-native.do_fetch" "m4-native.do_fetch" [label="m4-native do_fetch\n1.4.2-r0\n/usr/ohoe-max/meta/packages/m4/m4-native_1.4.2.bb"] "gnu-config-native.do_compile" [label="gnu-config-native do_compile\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_compile" -> "gnu-config-native.do_configure" "gnu-config-native.do_install" [label="gnu-config-native do_install\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_install" -> "gnu-config-native.do_compile" "gnu-config-native.do_patch" [label="gnu-config-native do_patch\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_patch" -> "gnu-config-native.do_unpack" "gnu-config-native.do_configure" [label="gnu-config-native do_configure\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_configure" -> "gnu-config-native.do_unpack" "gnu-config-native.do_configure" -> "gnu-config-native.do_patch" "gnu-config-native.do_package" [label="gnu-config-native do_package\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_package" -> "gnu-config-native.do_install" "gnu-config-native.do_unpack" [label="gnu-config-native do_unpack\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] "gnu-config-native.do_unpack" -> "gnu-config-native.do_fetch" "gnu-config-native.do_fetch" [label="gnu-config-native do_fetch\n0.1+cvs20050701-r4\n/usr/ohoe-max/meta/packages/gnu-config/gnu-config-native_20050701.bb"] The RFCs: * Do we need DEPENDS/RDEPENDS or does the above replace that? * What should we set label to? * Can we improve the above formatting? * Should -I IGNORED_DOT_DEPS become a more general commandline option to be appended to ASSUME_PROVIDED (which my replacement graph code does internally atm)? Do we want this to support regexps? http://www.rpsys.net/openzaurus/temp/bitbake_depgraph.patch is the patch I have atm. Regards, Richard _______________________________________________ Bitbake-dev mailing list [email protected] https://lists.berlios.de/mailman/listinfo/bitbake-dev
