File indexing completed on 2024-05-12 04:02:06

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>build.ninja</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Ninja) - Theme (Breeze Dark)"/>
0006 </head><body style="background-color:#232629;color:#cfcfc2"><pre>
0007 <span style="color:#7a7c7d"># comment</span>
0008 <span style="font-weight:bold">rule</span> b
0009 <span style="font-weight:bold">rule</span> c
0010 <span style="color:#7a7c7d">#d</span>
0011 <span style="font-weight:bold">rule</span> c
0012 <span style="color:#27aeae">description</span><span style="color:#3f8058">=</span>a
0013 <span style="font-weight:bold">rule</span> d
0014   <span style="color:#7f8c8d">description</span> <span style="color:#3f8058">=</span> ds
0015   <span style="color:#7f8c8d">description</span> <span style="color:#3f8058">=</span> ds
0016   <span style="color:#da4453;text-decoration:underline">rule=ds</span>
0017   <span style="color:#7f8c8d">description</span> <span style="color:#3f8058">=</span> ds
0018 <span style="font-weight:bold">rule</span> b
0019 
0020 <span style="font-weight:bold">rule</span> c
0021 
0022 <span style="font-weight:bold">rule</span> c
0023  <span style="color:#7a7c7d"># ds</span>
0024  <span style="color:#da4453;text-decoration:underline">ds=ds</span>
0025 <span style="color:#27aeae">description</span><span style="color:#3f8058">=</span>a
0026 <span style="font-weight:bold">rule</span> d
0027   <span style="color:#da4453;text-decoration:underline">rule =description = ds</span>
0028 
0029 <span style="font-weight:bold">rule</span> b
0030   <span style="color:#7f8c8d">command</span> <span style="color:#3f8058">=</span> clang -MMD -MF <span style="color:#3f8058">$</span><span style="color:#7f8c8d">out</span>.d -o <span style="color:#3f8058">$</span><span style="color:#7f8c8d">out</span> -c <span style="color:#3f8058">$</span><span style="color:#7f8c8d">in</span>
0031   <span style="color:#7f8c8d">description</span> <span style="color:#3f8058">=</span> building <span style="color:#3f8058">$</span><span style="color:#7f8c8d">out</span>
0032   <span style="color:#da4453;text-decoration:underline">unknown = xyz</span>
0033 
0034 <span style="font-weight:bold">rule</span> dump
0035   <span style="color:#7f8c8d">command</span> <span style="color:#3f8058">=</span> sleep 1<span style="font-weight:bold">;</span> ls -l /proc/self/fd<span style="font-weight:bold">;</span> exit 1
0036   <span style="color:#7f8c8d">pool</span> <span style="color:#3f8058">=</span> link_pool
0037   <span style="color:#7a7c7d"># blah blah</span>
0038   <span style="color:#7f8c8d">pool</span> <span style="color:#3f8058">=</span> <span style="color:#7f8c8d">console</span>
0039   <span style="color:#7f8c8d">pool</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">console</span>
0040 
0041 <span style="font-weight:bold">rule</span> xy-z_
0042 <span style="font-weight:bold">rule</span> --xy-z_
0043 <span style="font-weight:bold">rule</span> _xy-z_
0044 
0045 <span style="color:#7a7c7d"># error</span>
0046 <span style="font-weight:bold">rule</span> with <span style="color:#da4453;text-decoration:underline">error</span>
0047 <span style="font-weight:bold">rule</span> a<span style="color:#da4453;text-decoration:underline">:a</span>
0048 <span style="font-weight:bold">rule</span> a<span style="color:#da4453;text-decoration:underline">|a</span>
0049 <span style="font-weight:bold">rule</span> a<span style="color:#da4453;text-decoration:underline">$</span>
0050 <span style="font-weight:bold">rule</span> 0-<span style="color:#da4453;text-decoration:underline">@#d</span>
0051 
0052 <span style="color:#7a7c7d"># browse_py.h is used to inline browse.py.</span>
0053 <span style="font-weight:bold">rule</span> inline
0054   <span style="color:#7f8c8d">command</span> <span style="color:#3f8058">=</span> <span style="font-weight:bold">"</span><span style="color:#3f8058">$</span><span style="color:#27aeae">root</span>/src/inline.sh<span style="font-weight:bold">"</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">varname</span> <span style="font-weight:bold">&lt;</span> <span style="color:#3f8058">$</span><span style="color:#7f8c8d">in</span> <span style="font-weight:bold">></span> <span style="color:#3f8058">$</span><span style="color:#7f8c8d">out</span>
0055   <span style="color:#7f8c8d">description</span> <span style="color:#3f8058">=</span> INLINE <span style="color:#3f8058">$</span><span style="color:#7f8c8d">out</span>
0056 
0057 <span style="font-weight:bold">default</span> foo bar
0058 <span style="font-weight:bold">default</span> baz
0059 
0060 <span style="font-weight:bold">include</span> ninja1.ninja
0061 
0062 <span style="font-weight:bold">subninja</span> ninja2.ninja
0063 
0064 <span style="font-weight:bold">pool</span> link_pool
0065   <span style="color:#7f8c8d">depth</span> <span style="color:#3f8058">=</span> 4
0066   <span style="color:#da4453;text-decoration:underline">xxx = d</span>
0067 
0068 <span style="font-weight:bold">pool</span> link_pool <span style="color:#da4453;text-decoration:underline">d</span>
0069   <span style="color:#7f8c8d">depth</span> <span style="color:#3f8058">=</span> 4
0070 
0071 <span style="font-weight:bold">build</span> a.o<span style="color:#3f8058">:</span> <span style="color:#8e44ad">b</span> a.c
0072 
0073 <span style="font-weight:bold">build</span> a.o<span style="color:#3f8058">|</span><span style="font-style:italic">c</span><span style="color:#3f8058">:</span> <span style="color:#8e44ad">b</span> a.c <span style="color:#3f8058">||</span><span style="font-style:italic"> a </span><span style="color:#3f8058">|</span><span style="font-style:italic"> b</span>
0074 
0075 <span style="font-weight:bold">build</span> a.o <span style="color:#3f8058">|</span><span style="font-style:italic"> c </span><span style="color:#3f8058">:</span> <span style="color:#8e44ad">b</span> a.c <span style="color:#3f8058">|</span><span style="font-style:italic"> a </span><span style="color:#3f8058">||</span><span style="font-style:italic"> b</span>
0076 
0077 <span style="font-weight:bold">build</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">a</span>.o <span style="color:#3f8058">|</span><span style="font-style:italic"> </span><span style="color:#3f8058">$</span><span style="color:#27aeae">c</span><span style="font-style:italic"> </span><span style="color:#3f8058">:</span> <span style="color:#8e44ad">b</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">a</span>.c <span style="color:#3f8058">|</span><span style="font-style:italic"> </span><span style="color:#3f8058">$</span><span style="color:#27aeae">a</span><span style="font-style:italic"> </span><span style="color:#3f8058">||</span><span style="font-style:italic"> </span><span style="color:#3f8058">$</span><span style="color:#27aeae">b</span>
0078 
0079 <span style="font-weight:bold">build</span> 0<span style="color:#3f8058">:</span> <span style="color:#8e44ad">sleep</span> README
0080 
0081 <span style="font-weight:bold">build</span> 1<span style="color:#3f8058">:</span> <span style="color:#8e44ad">sleep</span> README
0082 
0083 <span style="font-weight:bold">build</span> all<span style="color:#3f8058">:</span> <span style="color:#7f8c8d">phony</span> 0 1
0084 <span style="color:#27aeae">deps</span> <span style="color:#3f8058">=</span> xxx
0085 <span style="color:#27aeae">CMD</span> <span style="color:#3f8058">=</span> cc
0086 <span style="font-weight:bold">build</span> all<span style="color:#3f8058">:</span> <span style="color:#7f8c8d">phony</span> 0 1
0087 
0088 <span style="font-weight:bold">build</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/browse_py.h<span style="color:#3f8058">:</span> <span style="color:#8e44ad">inline</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">root</span>/src/browse.py <span style="color:#3f8058">|</span><span style="font-style:italic"> </span><span style="color:#3f8058">$</span><span style="color:#27aeae">root</span><span style="font-style:italic">/src/inline.sh</span>
0089   <span style="color:#27aeae">varname</span> <span style="color:#3f8058">=</span> kBrowsePy
0090 
0091 <span style="font-weight:bold">build</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/subprocess-posix.o<span style="color:#3f8058">:</span> <span style="color:#8e44ad">cxx</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">root</span>/src/subprocess-posix.cc
0092 <span style="font-weight:bold">build</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/libninja.a<span style="color:#3f8058">:</span> <span style="color:#8e44ad">ar</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/browse.o <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/build.o <span style="color:#3daee9">$</span>
0093 <span style="color:#3daee9">    </span><span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/build_log.o <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/clean.o <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/debug_flags.o <span style="color:#3daee9">$</span>
0094 <span style="color:#3daee9">    </span><span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/depfile_parser.o <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/deps_log.o
0095 
0096 <span style="font-weight:bold">build</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">root</span>/doc/manual.pdf<span style="color:#3f8058">:</span> <span style="color:#8e44ad">dblatex</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>/manual.xml <span style="color:#3f8058">|</span><span style="font-style:italic"> </span><span style="color:#3daee9">$</span>
0097 <span style="color:#3daee9">    </span><span style="color:#3f8058">$</span><span style="color:#27aeae">root</span><span style="font-style:italic">/doc/dblatex.xsl</span>
0098 
0099 <span style="font-weight:bold">build</span> out<span style="color:#3f8058">:</span> <span style="color:#8e44ad">cat</span> in <span style="color:#3f8058">|@</span><span style="font-style:italic"> validate1 validate2 </span><span style="color:#3f8058">|@</span><span style="font-style:italic"> validate1 </span><span style="color:#3f8058">|</span><span style="font-style:italic"> dep</span>
0100 <span style="font-weight:bold">build</span> out<span style="color:#3f8058">:</span> <span style="color:#8e44ad">cat</span> in <span style="color:#3f8058">||</span><span style="font-style:italic"> dep </span><span style="color:#3f8058">|@</span><span style="font-style:italic"> validate</span>
0101 
0102 <span style="color:#7f8c8d">builddir</span><span style="color:#3f8058">=</span>/
0103 <span style="color:#7f8c8d">builddir</span> <span style="color:#3f8058">=</span>/
0104 <span style="color:#7f8c8d">builddir</span><span style="color:#3f8058">=</span> /
0105 <span style="color:#27aeae">ldflags</span> <span style="color:#3f8058">=</span> -L<span style="color:#3f8058">$</span><span style="color:#27aeae">builddir</span>
0106 
0107 <span style="color:#27aeae">xx</span> <span style="color:#da4453;text-decoration:underline">x</span>
0108 
0109 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">a</span>
0110 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">-a_</span>
0111 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">${</span><span style="color:#27aeae">a</span><span style="color:#3f8058">}</span>
0112 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">${</span><span style="color:#27aeae">-a</span><span style="color:#3f8058">}</span>
0113 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">a</span>@
0114 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#da4453;text-decoration:underline">@</span>
0115 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$$</span>
0116 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$:</span>
0117 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$ </span>a
0118 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$</span>
0119 <span style="color:#3daee9">    </span>b
0120 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$</span>
0121 <span style="color:#3daee9">    $</span>
0122 <span style="color:#3daee9">    </span>a
0123 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$</span>
0124 <span style="color:#3daee9">    </span><span style="color:#3f8058">$</span><span style="color:#27aeae">a</span>
0125 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#27aeae">a</span> a
0126 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">${</span><span style="color:#27aeae">a</span><span style="color:#3f8058">}</span> a
0127 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$$</span> a
0128 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3daee9">$:</span> a
0129 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">$</span><span style="color:#da4453;text-decoration:underline">! a</span>
0130 <span style="color:#27aeae">x</span> <span style="color:#3f8058">=</span> <span style="color:#3f8058">${</span><span style="color:#27aeae">a</span><span style="color:#da4453;text-decoration:underline"> b ds</span>
0131  <span style="color:#da4453;text-decoration:underline">x = a</span>
0132 </pre></body></html>