ddbe098f851b02164270f40d5de7a14a66e82f7d
[vuplus_bitbake] / doc / TODO
1 TODO:
2
3 [x] oe package
4         [x] Update .oe and .conf parsers to not strip out all the tabs in our 
5             python function vars..
6         [x] Restructure
7         [.] Remove duplicated implementations, and convert everyone to the new
8             data and parse methods.
9         [ ] API Sanity Audit.
10         [ ] Comment/Docs Audit.
11         [.] Allow user supply of .oeclasses to be inherited in every file that
12             gets parsed via the INHERITS variable.
13                 [.] Add default items to the beginning of INHERITS within
14                     the parsers.  In this way, we can automatically pull in
15                     base.oeclass for oe files, and build_an_srpm.oeclass for
16                     .src.rpm files.
17
18 [ ] oebuild and oemake
19         [ ] Teach the system to support grabbing OEFILES from upstream
20             using our fetch classes.
21
22 [.] oebuild
23         [ ] Implement and test check_md5, taking nostamp into account.
24         [ ] Add '--undo'/'-u' cmdline opt that calls the 'undo' task
25             for the supplied task.
26         [ ] Add '--rebuild'/'-r' cmdline opt that calls the 'undo' task
27             for the entire upward path in the digraph, then builds that task.
28             (same thing done when the md5 changes on an affected var in
29              check_md5)
30         [x] Use oe.digraph for handling intertask dependency
31         [x] Split task execution from function execution
32         [x] Add a means to add a task which depends on another task's
33             execution, but not on said task's successful completion.
34         [x] Convert to the new parse and data clases ala oemake.
35         [x] Fetch shouldnt use stamps at all.  Hmm, due to the way
36             I implemented override of the check functions, the stamp
37             checker will believe unpack's stamp is always out of date,
38             since its dependency item's stamp doesnt exist.  Need to fix
39             that behavior, then enhance the fetch classes to check for
40             existance.
41         [x] move set_automatic_vars into either data or parse
42         [x] default flag set for both oe and task metadata
43         [x] Fix python function implementation, do it the way I did the
44             code for the event handlers. (needed to fix do_fetch)
45         [x] Add clean and mrproper targets to base oeclass.
46
47 [.] oemake
48         [x] Move OEPATH follow into the individual 'handle' functions,
49             whenever the fn path is relative.  Then kill the init call,
50             as it is really extraneous, given handle does it for you.
51         [x] Add oe.conf parsing - abort if OEFILES is not defined
52         [x] Add parsing of the .oe's listed in OEFILES
53         [x] Handle provides in the digraph...
54         [x] Handle dependency on just content/glibc vs content/glibc-2.3.1-r0
55         [x] Proper event handling and failout when we encounter an unsatisfied
56             dependency.
57         [ ] Check for recursive dependency
58         [ ] Deal with multiple provides
59         [x] Pull package name, version, and revision based on package metadata,
60             rather than based on the filename in the build tools.  This belongs
61             in the parser code.  In this way, we can more easily facilitate
62             builds of src.rpms, .dsc's, et cetera.
63                 -aside: pulled set_additional_vars into the new parser code
64
65 [.] oemaked
66         [x] Autobuilder daemon, monitors files and/or directories
67             For changes, and runs oemake when appropriate.
68         [ ] Monitor the stamps for a given .oe file as well, to ensure
69             changes in build state as well as changes to build metadata result
70             in a rebuild.
71
72 [ ] packages
73         [ ] add cross binutils and binutils
74         [ ] add gcc
75         [ ] figure out where to put the glibc install into the toolchain dir,
76             which is only needed by gcc pass 2.
77         [ ] add qtopia 1.6.1
78         [ ] add qt 2.3.6
79         [ ] convert packages from OpenZaurus buildroot
80
81 [ ] Image creation .oe files and/or external tool
82
83 [x] Update patcher tool to make use of our ability to use python functions.
84 [x] Write package.oeclass implemented w/ a python function/task
85 [x] Write src.rpm builder .oeclass
86 [x] Write ipkg.oeclass which inherits package.oeclass to produce an ipk from
87     our metadata.
88 [ ] Once we have the per package deployment code, write a staging oeclass
89     that lets you use the FILES blocks for our deployment packages to do the
90     installs into the appropriate staging areas, to save time writing do_stage
91     functions.