Update TODO
[bitbake.git] / 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         [x] Use oe.digraph for handling intertask dependency
24         [x] Split task execution from function execution
25         [x] Add a means to add a task which depends on another task's
26             execution, but not on said task's successful completion.
27         [x] Convert to the new parse and data clases ala oemake.
28         [x] Fetch shouldnt use stamps at all.  Hmm, due to the way
29             I implemented override of the check functions, the stamp
30             checker will believe unpack's stamp is always out of date,
31             since its dependency item's stamp doesnt exist.  Need to fix
32             that behavior, then enhance the fetch classes to check for
33             existance.
34         [ ] move set_automatic_vars into either data or parse
35         [ ] default flag set for both oe and task metadata
36
37 [.] oemake
38         [x] Move OEPATH follow into the individual 'handle' functions,
39             whenever the fn path is relative.  Then kill the init call,
40             as it is really extraneous, given handle does it for you.
41         [x] Add oe.conf parsing - abort if OEFILES is not defined
42         [x] Add parsing of the .oe's listed in OEFILES
43         [x] Handle provides in the digraph...
44         [x] Handle dependency on just content/glibc vs content/glibc-2.3.1-r0
45         [x] Proper event handling and failout when we encounter an unsatisfied
46             dependency.
47         [ ] Check for recursive dependency
48         [ ] Deal with multiple provides
49         [x] Pull package name, version, and revision based on package metadata,
50             rather than based on the filename in the build tools.  This belongs
51             in the parser code.  In this way, we can more easily facilitate
52             builds of src.rpms, .dsc's, et cetera.
53                 -aside: pulled set_additional_vars into the new parser code
54
55 [.] oemaked
56         [x] Autobuilder daemon, monitors files and/or directories
57             For changes, and runs oemake when appropriate.
58         [ ] Monitor the stamps for a given .oe file as well, to ensure
59             changes in build state as well as changes to build metadata result
60             in a rebuild.
61
62 [x] Update patcher tool to make use of our ability to use python functions.
63 [x] Write package.oeclass implemented w/ a python function/task
64 [x] Write src.rpm builder .oeclass
65 [x] Write ipkg.oeclass which inherits package.oeclass to produce an ipk from
66     our metadata.
67 [ ] Once we have the per package deployment code, write a staging oeclass
68     that lets you use the FILES blocks for our deployment packages to do the
69     installs into the appropriate staging areas, to save time writing do_stage
70     functions.