README.rdoc in rubu-0.0.2 vs README.rdoc in rubu-0.0.3

- old
+ new

@@ -53,11 +53,36 @@ cat example/bin/rubu_example There are comments which highlight purpose of the build program content. +Sometimes it is useful to run {Rubu} automatically whenever a file +changes. Linux provides a facility called *inotify*, which can be used +in Ruby through "rb-inotify" gem. Automatic update example program is +in: + example/up-to-date + +This program runs {Rubu} each time there is a change in "src" or in +"bin" directory. It compiles and generates C files if necessary. If +there are new compilation requirements coming, before all previous +have been completed, it will continue compilation. When all +compilations are done (i.e. none pending), it will call {Rubu} to +perform linking. "up-to-date" displays status messages in red and +green on the screen. If it is started with "-v" option the compile +commands are visible, and if it is started with "-d" option, there is +extra delay in compilation command. + + cd example + up-to-date -v -d + +This is useful if you want to play around with the pending compilation +processes when new changes are coming in. You can make (dummy) changes +to "hello_world.c" (for example), and follow the updates in the +terminal where you started "up-to-date". + + == Concepts {Rubu} Build Program, RBP, is a Ruby program that uses the {Rubu} library. Typically command line options are accepted to give options for the build process. @@ -212,10 +237,10 @@ def step shrun "rm -f #{Var[ :build_dir ]}/*.o" end If there are multiple commands, then the commands can be grouped for -sequential ("walk") or parallel execution ("fork"). +sequential ("walk") or parallel execution ("fork"). def step fork do shuse "rm -f #{Info[ :gen_files ].rpath}" shuse "rm -f #{Var[ :build_dir ]}/*.o"