summaryrefslogtreecommitdiffstats
path: root/src/ninja.cc
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2012-03-01 20:07:40 (GMT)
committerEvan Martin <martine@danga.com>2012-03-01 20:07:40 (GMT)
commit866b992459820aa3f6378f26df5b8d3135be98b1 (patch)
tree1de976519a63b7bf9f60326608f56c07c2dd47ef /src/ninja.cc
parent3bfbb4ed0a8643a68fa7394303eaf2b3a5f2ca38 (diff)
downloadNinja-866b992459820aa3f6378f26df5b8d3135be98b1.zip
Ninja-866b992459820aa3f6378f26df5b8d3135be98b1.tar.gz
Ninja-866b992459820aa3f6378f26df5b8d3135be98b1.tar.bz2
add an "urtle" tool
Diffstat (limited to 'src/ninja.cc')
-rw-r--r--src/ninja.cc28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/ninja.cc b/src/ninja.cc
index 7f07053..0b3ffe5 100644
--- a/src/ninja.cc
+++ b/src/ninja.cc
@@ -478,6 +478,31 @@ int ToolClean(Globals* globals, int argc, char* argv[]) {
}
}
+void ToolUrtle() {
+ // RLE encoded.
+ const char* urtle =
+" 13 ,3;2!2;\n8 ,;<11!;\n5 `'<10!(2`'2!\n11 ,6;, `\\. `\\9 .,c13$ec,.\n6 "
+",2;11!>; `. ,;!2> .e8$2\".2 \"?7$e.\n <:<8!'` 2.3,.2` ,3!' ;,(?7\";2!2'<"
+"; `?6$PF ,;,\n2 `'4!8;<!3'`2 3! ;,`'2`2'3!;4!`2.`!;2 3,2 .<!2'`).\n5 3`5"
+"'2`9 `!2 `4!><3;5! J2$b,`!>;2!:2!`,d?b`!>\n26 `'-;,(<9!> $F3 )3.:!.2 d\""
+"2 ) !>\n30 7`2'<3!- \"=-='5 .2 `2-=\",!>\n25 .ze9$er2 .,cd16$bc.'\n22 .e"
+"14$,26$.\n21 z45$c .\n20 J50$c\n20 14$P\"`?34$b\n20 14$ dbc `2\"?22$?7$c"
+"\n20 ?18$c.6 4\"8?4\" c8$P\n9 .2,.8 \"20$c.3 ._14 J9$\n .2,2c9$bec,.2 `?"
+"21$c.3`4%,3%,3 c8$P\"\n22$c2 2\"?21$bc2,.2` .2,c7$P2\",cb\n23$b bc,.2\"2"
+"?14$2F2\"5?2\",J5$P\" ,zd3$\n24$ ?$3?%3 `2\"2?12$bcucd3$P3\"2 2=7$\n23$P"
+"\" ,3;<5!>2;,. `4\"6?2\"2 ,9;, `\"?2$\n19$P2\",;23!6;17!;2 \"\n";
+ int count = 0;
+ for (const char* p = urtle; *p; p++) {
+ if ('0' <= *p && *p <= '9') {
+ count = count*10 + *p - '0';
+ } else {
+ for (int i = 0; i < std::max(count, 1); ++i)
+ printf("%c", *p);
+ count = 0;
+ }
+ }
+}
+
int RunTool(const string& tool, Globals* globals, int argc, char** argv) {
typedef int (*ToolFunc)(Globals*, int, char**);
struct Tool {
@@ -510,6 +535,9 @@ int RunTool(const string& tool, Globals* globals, int argc, char** argv) {
printf("%10s %s\n", tools[i].name, tools[i].desc);
}
return 0;
+ } else if (tool == "urtle") {
+ ToolUrtle();
+ return 0;
}
for (int i = 0; tools[i].name; ++i) {