1cook_bom(1) General Commands Manual cook_bom(1)
2
3
4
6 cook_bom - bill of materials
7
9 cook_bom [ option... ] dirname [ outfile ]
10 cook_bom -Help
11 cook_bom -VERSion
12
14 The cook_bom program is used to scan a directory and generate a cook‐
15 book fragment containing a bill of materials for that directory. It
16 also includes a recursive reference, via an ``#include-cooked'' direc‐
17 tive, to the bills of materials for nested directories.
18
19 Output is sent to the standard output unless an output filename is
20 specified.
21
23 The following options are understood:
24
25 -DIRectory pathname
26 This option may be used to specify a directory search path,
27 similar to cook(1) [search_list] functionality.
28
29 -Help
30 Provide some help with using the cook_bom program.
31
32 -IGnore string
33 This option may be used to specify filename patterns to be
34 ignored. It may be given as many times as required.
35
36 -PREfix string
37 This option may be manipulate the name of the manifest files.
38 Defaults to the empty string if not set.
39
40 -SUFfix string
41 This option may be manipulate the name of the manifest files.
42 Defaults to ``/manifest.cook if not set.
43
44 -VERSion
45 Print the version of the cook_bom program being executed.
46
47 All other options will produce a diagnostic error.
48
50 The intended use of this command is to automatically generate a project
51 file manifest in an efficient way. If you have a cookbook of the form
52 all_files_in_. = ;
53 #include manifest.cook
54 manifest = [all_files_in_.];
55
56 set fingerprint mkdir unlink;
57
58 %0manifest.cook: ["if" [in "%0" ""] "then" "." "else" "%0"]
59 {
60 cook_bom
61 [addprefix '--dir=' [search_list]]
62 "--ignore='*~'"
63 [need]
64 [target]
65 ;
66 }
67 At the end of this fragment, the manifest variable contains a complete
68 list of all files in the directory tree. This variable may then be
69 taken apart with the match_mask function to build ingredients lists.
70
71 The constructed manifest.cook files work for both whole-project and
72 recursive (not recommended) builds.
73
74
75
76Reference Manual Cook cook_bom(1)