all: units.rb
units.rb: units.racc
racc -E -l units.racc -o tmp.rb
(ruby -n -e 'if /^class Units/; print("module NumRu\n",$$_); elsif /end\s*#\s*class\s*Units/; print($$_,"end # module NumRu\n"); else print $$_; end' tmp.rb > units.rb)
(( echo ; echo '####################' ; echo 'if $$0 == __FILE__' ; tail +2 test.rb | ruby -p -e 'print " "' ; echo 'end' ) >> units.rb)
@rm tmp.rb
test: units.rb
ruby test.rb
backup: units.shar
scp units.shar toyoda@www.gfd-dennou.org:tmp/
scp units.shar toyoda@pandora0.sytes.net:tmp/
RSRCS = rules.rb node.rb namenode.rb utab.rb numbernode.rb timenode.rb \
pownode.rb mulnode.rb shiftnode.rb lex.rb
utab.rb: makeutab.rb dcunits.txt
ruby makeutab.rb dcunits.txt > $@.tmp
mv $@.tmp $@
units.racc: $(RSRCS)
cat $(RSRCS) > $@.tmp
mv $@.tmp $@
edit:
$${EDITOR:-vi} $(RSRCS)
SRCS = Makefile units.rb dcunits.txt makeutab.rb $(RSRCS) test.rb units.rd
shar: units.shar
units.shar: $(SRCS)
shar $(SRCS) > units.shar
syntax highlighted by Code2HTML, v. 0.9.1