⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 01zinc.tcl

📁 windriver_VxWorks.zinc60t22 zin6.0 for tornado 2.2 patch
💻 TCL
📖 第 1 页 / 共 3 页
字号:
    set zincHome $env(WIND_BASE)    set zincDBDir $zincHome/host/resource/ugl    set zincConfigDir $zincHome/target/h/zinc/configTool    # validate presence of data base    if {![file exists $zincDBDir/uglDB.cfg]} {       noticePost error "Data Base files not found - Make sure WindML support is installed"       return    }    # make sure the configuration directory is present    file mkdir $zincConfigDir#    set zDebugFd [open $zincConfigDir/debug w]        # Read the data base    zincReadUglDB    # Fill in controls    zincSetFileList        dialogSetValue "Zinc Configuration" "Processor"  $zincArchList    dialogSetValue "Zinc Configuration" "Configuration Item"  $zincConfigItemList       # Post the dialog    dialogPost "Zinc Configuration"    zincConfigClear    set zincConfigChange 0}###################################################################### zincAddNewTool - add slot for a new build tool in data base#proc zincAddNewTool  {zToolName} {    global zincToolDB    global zincToolAllList    if { [lsearch $zincToolAllList $zToolName] == -1 } {        lappend zincToolAllList $zToolName         set zincToolDB($zToolName,ARCH) {}        set zincToolDB($zToolName,TOOL) ""     }}###################################################################### zincAddTool - add a WindML build tool #proc zincAddTool  {line fd} {    global zincToolDB    global zincToolAllList    global zincConfigMisc    set zToolName ""    set line [gets $fd]    while {![eof $fd]} {        set arg [lrange $line 1 end]        switch [lindex $line 0] {            "NAME"     { set zToolName $arg; zincAddNewTool  $zToolName }            "ARCH"     { lappend zincToolDB($zToolName,ARCH)   $arg }            "TOOL"     { set zincToolDB($zToolName,TOOL) $arg }            "END"      { set zincConfigMisc(BUILD_TOOL) [lindex $zincToolAllList 0]; return }        }        set line [gets $fd]    }}###################################################################### zincReadUglDB - read the UGL data base files#proc zincReadUglDB {} {    global zincDBDir    global zincArchList    global zincToolAllList    set zincToolAllList             {}    # Only read data base if not already read    set listLength [expr [llength $zincArchList]]    if {$listLength != 0} {        return    }    # Get the list of fonts in the font directory    set tmpFileList [glob -nocomplain $zincDBDir/*.cfg]    foreach file $tmpFileList {        set fd [open $file r]        set zincDBstate 0        set line [gets $fd]        while {![eof $fd]} {            switch [lrange $line 0 1] {                "## ARCHITECTURE" { set zincDBstate 1; set line [gets $fd] }                "## TOOLS"        { set zincDBstate 2; set line [gets $fd] }                "## GRAPHICS"     { set zincDBstate 0; set line [gets $fd]; continue }                "## OUTPUT"       { set zincDBstate 0; set line [gets $fd]; continue }                "## KMAP"         { set zincDBstate 0; set line [gets $fd]; continue }                "## POINTER"      { set zincDBstate 0; set line [gets $fd]; continue }                "## KEYBOARD"     { set zincDBstate 0; set line [gets $fd]; continue }                "## FONTS"        { set zincDBstate 0; set line [gets $fd]; continue }                "## AUDIO"        { set zincDBstate 0; set line [gets $fd]; continue }                "## AGFA"         { set zincDBstate 0; set line [gets $fd]; continue }                ""                { set line [gets $fd]; continue }            }            set comment [lrange $line 0 1]            if {[string index $comment 0] == "#" || $zincDBstate == 0} {               set line [gets $fd]               continue            }                        if {$zincDBstate == 1} {               set archType [split $line - ]               set bspCnt [llength $archType]               if {$bspCnt == 1} {                  lappend zincArchList $line               }            } else {                zincAddTool $line $fd             }                        set line [gets $fd]        }        close $fd    }}###################################################################### zincConfigClear - clear out any configuration#proc zincConfigClear {} {   global zincArchType   global zincArchList   global zincConfigMisc   global zincConfigCompile   # Initialize Configuration Options         set zincConfigCompile(ZINC_UNICODE)      "0"      set zincConfigCompile(ZINC_CODE_SET)     "1"      set zincConfigCompile(ZINC_ERROR_SYS)    "1"        set zincConfigCompile(ZINC_HELP_TIPS)    "1"     set zincConfigCompile(ZINC_KEYBOARD)     "1"     set zincConfigCompile(ZINC_MOUSE)        "1"        set zincConfigCompile(ZINC_SEARCH_PATH)  "1"   set zincConfigCompile(ZINC_PERSIST)      "1"      set zincConfigCompile(ZINC_READ)         "1"      set zincConfigCompile(ZINC_WRITE)        "1"                                                    # Initialize miscellaneous configuration      set zincConfigMisc(DEBUG_BUILD)  "0"   set zincConfigMisc(BUILD_TOOL)  "gnu"   set zincArchType               [lindex $zincArchList 0]   listSelectionChange "Zinc Configuration" "Processor" $zincArchType}###################################################################### zincConfigSelect - process the configuration select action#proc zincConfigSelect {configuration} {    global zincConfigDir    global zincConfigChange     global zincConfigName    global zincArchType    global zincConfigMisc    global zincConfigCompile    if {$zincConfigChange == 1} {        set answer [noticePost question "Your Configuration has changed.\nDo you want to save your previous configuration?" Yes No]        if {$answer == 1} {           set newConfigName $configuration           listSelectionChange "Zinc Configuration" "Configuration" $zincConfigName           zincConfigSave           set configuration $newConfigName           listSelectionChange "Zinc Configuration" "Configuration" $newConfigName        }    }    if {$configuration == "New configuration..."} {       dialogPost "New Config. File"       return    }    set zincConfigName $configuration    # Read in configuration values    set fd [open $zincConfigDir/$configuration.cfg r]    set line [gets $fd]    while {![eof $fd]} {        set index [lsearch $line :]        if {$index >= 0} {            set field [lrange $line 0 [expr $index - 1]]            set arg [lrange $line [expr $index + 1] end]            switch $field {                "ARCHITECTURE"   {set zincArchType                 $arg }                "BUILD_DEBUG"    {set zincConfigMisc(DEBUG_BUILD)  $arg }                "BUILD_TOOL"     {set zincConfigMisc(BUILD_TOOL)   $arg }                "ZINC_UNICODE"     {set zincConfigCompile(ZINC_UNICODE)     $arg }                "ZINC_CODE_SET"    {set zincConfigCompile(ZINC_CODE_SET)    $arg }                "ZINC_ERROR_SYS"   {set zincConfigCompile(ZINC_ERROR_SYS)   $arg }                "ZINC_HELP_TIPS"   {set zincConfigCompile(ZINC_HELP_TIPS)   $arg }                "ZINC_KEYBOARD"    {set zincConfigCompile(ZINC_KEYBOARD)    $arg }                "ZINC_MOUSE"       {set zincConfigCompile(ZINC_MOUSE)       $arg }                "ZINC_SEARCH_PATH" {set zincConfigCompile(ZINC_SEARCH_PATH) $arg }                "ZINC_PERSIST"     {set zincConfigCompile(ZINC_PERSIST)     $arg }                "ZINC_READ"        {set zincConfigCompile(ZINC_READ)        $arg }                "ZINC_WRITE"       {set zincConfigCompile(ZINC_WRITE)       $arg }            }        }        set line [gets $fd]    }    close $fd    zincUnpostAll    listSelectionChange "Zinc Configuration" "Processor" $zincArchType    set zincConfigChange 0} ########################################################### zincConfigArch - process the architecture select action#proc zincConfigArch {archType} {    global zincArchType    global zincConfigChange    set zincArchType $archType    set zincConfigChange 1}######################################################################  zincSetConfigItem - launch the selected configuration definition window#proc zincSetConfigItem {page} {            set configname [dialogGetValue "Zinc Configuration" "Configuration"]    if {$configname == ""} {        noticePost warning "Need to specify a configuration file"        return    }    set archType [dialogGetValue "Zinc Configuration" "Processor"]    if {$archType == ""} {        noticePost warning "Need to specify a processor type"        return    }        if { $page == "Configuration Options" } {       dialogPost "Configuration Options"       zincCompileConfig    }    if { $page == "Build Options" } {       dialogPost "Build Options"       zincMiscConfig    }}######################################################################  zincCompileConfig - build the miscellaneous definition window#proc zincCompileConfig {} {    global zincConfigCompile    dialogSetValue "Configuration Options" "Unicode"          $zincConfigCompile(ZINC_UNICODE)         dialogSetValue "Configuration Options" "Code Set Data (required for Unicode)"  $zincConfigCompile(ZINC_CODE_SET)        dialogSetValue "Configuration Options" "Error System"     $zincConfigCompile(ZINC_ERROR_SYS)       dialogSetValue "Configuration Options" "Help Tips"        $zincConfigCompile(ZINC_HELP_TIPS)       dialogSetValue "Configuration Options" "Keyboard"         $zincConfigCompile(ZINC_KEYBOARD)        dialogSetValue "Configuration Options" "Mouse"            $zincConfigCompile(ZINC_MOUSE)           dialogSetValue "Configuration Options" "Search Path"      $zincConfigCompile(ZINC_SEARCH_PATH)     dialogSetValue "Configuration Options" "Persistence"      $zincConfigCompile(ZINC_PERSIST)         dialogSetValue "Configuration Options" "Read"             $zincConfigCompile(ZINC_READ)            dialogSetValue "Configuration Options" "Write"            $zincConfigCompile(ZINC_WRITE)       }######################################################################  zincToolSelect - process the tool select list entry#proc zincToolSelect {tool} {    global zincToolDB    global zincConfigMisc    global zincConfigChange    if { [ string compare $tool $zincConfigMisc(BUILD_TOOL) ] } {        set zincConfigMisc(BUILD_TOOL) $tool        set zincConfigChange 1    }}######################################################################  zincMiscConfig - build the miscellaneous definition window#proc zincMiscConfig {} {   global zincConfigMisc   global zincToolDB   global zincArchType   global zincConfigChange   global zincToolAllList   dialogSetValue "Build Options" "Build with debug" $zincConfigMisc(DEBUG_BUILD)      # Set up tool list for architecture   set toolList {}   foreach tool $zincToolAllList {       foreach arch $zincToolDB($tool,ARCH) {           if {$arch == $zincArchType} {                lappend toolList $tool           }       }   }   if { [lsearch $toolList $zincConfigMisc(BUILD_TOOL)] == -1 } {       set zincConfigMisc(BUILD_TOOL) [lindex $toolList 0]       set zincConfigChange 1   }   dialogSetValue "Build Options" "Build Tool" $toolList   listSelectionChange  "Build Options" "Build Tool" $zincConfigMisc(BUILD_TOOL)}###################################################################### zincWriteConfigH - generate the configuration header file#proc zincWriteConfigH {configname dateInfo} {    global zincFileWarningMsg    global zincArchType    global zincConfigDir    global zincConfigCompile    global zincConfigMisc

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -