genConfig.tcl
上传用户:baixin
上传日期:2008-03-13
资源大小:4795k
文件大小:1k
开发平台:

MultiPlatform

  1. # genConfig.tcl
  2. #
  3. # modification history
  4. # --------------------
  5. # 01a,16oct01,sn   wrote
  6. # DESCRIPTION
  7. # wtxtcl genConfig.tcl <configlette_name> <obj> ... <obj>
  8. # Output a C file that defines __<configlette_name>Init
  9. # and for each specified file.o references the corresponding
  10. # __file_o marker symbol.
  11. set symbolList {}
  12. set arrayName "__[lindex $argv 0]"
  13. set externSymbolName "__[lindex $argv 0]Init"
  14. foreach arg [lrange $argv 1 [expr [llength $argv] - 1]] {
  15.     if [regexp "(.*).o" $arg dummy symbol] {
  16. regsub -all "\-" $symbol "_" symbol
  17. lappend symbolList "__${symbol}_o"
  18.     }
  19. }
  20. foreach symbol $symbolList {
  21.     puts "extern char $symbol;"
  22. }
  23. puts ""
  24. puts "static char * $arrayName [] ="
  25. puts "{"
  26. foreach symbol $symbolList {
  27.     puts "    &$symbol,"
  28. }
  29. puts "    0"
  30. puts "};"
  31. puts ""
  32. puts "char ** $externSymbolName ()"
  33. puts "{"
  34. puts "    return $arrayName;"
  35. puts "}"