## these variables are automatically generated by make ##
# Do not edit here.  If you wish to override these values
# edit the last section
set tool helloworld
set srcdir .
set objdir /home/paw/test/dejagnu/hello
## All variables above are generated by configure. Do Not Edit ##

puts "DEBUG: lib/site.exp is being loaded"
