Mercurial > hg > Game > Cerium
comparison bin/cerium @ 330:786d0bc9766a draft
change bin/cerium not work
author | aaa |
---|---|
date | Fri, 12 Jun 2009 16:01:14 +0900 |
parents | d3ea1d049230 |
children | 4f2423ed1c86 |
comparison
equal
deleted
inserted
replaced
329:d3ea1d049230 | 330:786d0bc9766a |
---|---|
5 use XML::LibXML; | 5 use XML::LibXML; |
6 | 6 |
7 my $command = shift; | 7 my $command = shift; |
8 my $main = "main.cc"; | 8 my $main = "main.cc"; |
9 my $task_config = "tasks.xml"; | 9 my $task_config = "tasks.xml"; |
10 my $cerium_path = "/Users/e065746/Works/lab/hg/Cerium"; | |
10 | 11 |
11 if ($command =~ /init/) { | 12 if ($command =~ /init/) { |
12 &init; | 13 &init; |
13 } elsif ($command =~ /make/) { | 14 } elsif ($command =~ /make/) { |
14 &make; | 15 &make; |
24 } | 25 } |
25 | 26 |
26 sub init { | 27 sub init { |
27 # setup initial cerium configuration | 28 # setup initial cerium configuration |
28 mkdir "Task"; | 29 mkdir "Task"; |
29 if (! -e $main ) &make_main; | 30 if (! -e $main ) { &make_main; } |
30 if (! -e $task_config ) &make_task_config; | 31 if (! -e $task_config ) { &make_task_config; } |
31 } | 32 } |
32 | 33 |
33 sub make_main { | 34 sub make_main { |
34 open(F,">$main") or die("Can't write $main\n"); | 35 open(F,">$main") or die("Can't write $main\n"); |
35 print F <<"EOFEOF"; | 36 print F <<'EOFEOF'; |
36 #include <stdio.h> | 37 #include <stdio.h> |
37 #include <stdlib.h> | 38 #include <stdlib.h> |
38 #include <string.h> | 39 #include <string.h> |
39 #include "TaskManager.h" | 40 #include "TaskManager.h" |
40 #include "Func.h" | 41 #include "Func.h" |
41 | 42 |
42 extern void task_init(void); | 43 extern void task_init(void); |
43 | 44 |
44 const char *usr_help_str = "Usage: ./main [-cpu spe_num] [-count N]\n\ | 45 const char *usr_help_str = "Usage: ./main [-cpu spe_num] [-count N]\n\ |
45 -cpu Number of SPE (default 1) \n\"; | 46 -cpu Number of SPE (default 1) \n\""; |
46 | 47 |
47 int | 48 int |
48 init(int argc, char **argv) | 49 init(int argc, char **argv) |
49 { | 50 { |
50 for (int i = 1; argv[i]; ++i) { | 51 for (int i = 1; argv[i]; ++i) { |
115 if (! -e $task_config ) &make_task_config; | 116 if (! -e $task_config ) &make_task_config; |
116 } | 117 } |
117 | 118 |
118 sub make_main { | 119 sub make_main { |
119 open(F,">$main") or die("Can't write $main\n"); | 120 open(F,">$main") or die("Can't write $main\n"); |
120 print F <<"EOFEOF"; | 121 print F <<'EOFEOF'; |
121 #include <stdio.h> | 122 #include <stdio.h> |
122 #include <stdlib.h> | 123 #include <stdlib.h> |
123 #include <string.h> | 124 #include <string.h> |
124 #include "TaskManager.h" | 125 #include "TaskManager.h" |
125 #include "Func.h" | 126 #include "Func.h" |
186 } | 187 } |
187 | 188 |
188 sub make { | 189 sub make { |
189 | 190 |
190 return if ( ! -e $task_config ); | 191 return if ( ! -e $task_config ); |
192 | |
191 my $xml = XML::LibXML->new(); | 193 my $xml = XML::LibXML->new(); |
192 my @nodes = $doc->findnodes('//surface'); | 194 my $doc = $parser->parse_file("$cerium_path/lib/tasks.xml"); |
195 my $root = $doc->documentElement(); | |
196 for my $e ($root->childNodes) { | |
197 print $e->nodeName, "\n"; | |
198 } | |
193 } | 199 } |
194 | 200 |
195 __END__ | 201 __END__ |
196 | 202 |
197 =head1 NAME | 203 =head1 NAME |