Diff
Not logged in

Differences From Artifact [1a7871d8e0]:

To Artifact [0aa315b515]:


988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002








1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017


1018
1019
1020
1021
1022
1023
1024
988
989
990
991
992
993
994








995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016

1017
1018
1019
1020
1021
1022
1023
1024
1025







-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+














-
+
+







    }
  }

  #
  # NOTE: This procedure verifies the combination of language and version
  #       specified by the caller.  The language argument must be one of the
  #       literal strings "eagle", "tcl", or "client".  The version argument
  #       must be one of the literal strings "8.4", "8.5", or "8.6" when the
  #       language is "tcl" -OR- the literal string "1.0" when the language
  #       is "eagle".  When the language is "client", the version match the
  #       major and minor portions of "1.0" and any remaining portions must
  #       be numeric.  The varName argument is the name of a scalar variable
  #       in the context of the immediate caller that will receive a boolean
  #       value indicating if the specified language is actually a reference
  #       to the package downloader client itself.
  #       must be one of the literal strings "8.4", "8.5", "8.6", or "8.7"
  #       when the language is "tcl" -OR- the literal string "1.0" when the
  #       language is "eagle".  When the language is "client", the version
  #       match the major and minor portions of "1.0" and any remaining
  #       portions must be numeric.  The varName argument is the name of a
  #       scalar variable in the context of the immediate caller that will
  #       receive a boolean value indicating if the specified language is
  #       actually a reference to the package downloader client itself.
  #
  # <internal>
  proc verifyLanguageAndVersion { language version varName } {
    if {[string length $varName] > 0} then {
      upvar 1 $varName isClient
    }

    set isClient false

    if {[string length $language] == 0 || $language eq "eagle"} then {
      if {$version ne "1.0"} then {
        error "unsupported Eagle version"
      }
    } elseif {$language eq "tcl"} then {
      if {$version ne "8.4" && $version ne "8.5" && $version ne "8.6"} then {
      if {$version ne "8.4" && $version ne "8.5" && \
          $version ne "8.6" && $version ne "8.7"} then {
        error "unsupported Tcl version"
      }
    } elseif {$language eq "client"} then {
      if {![regexp -- {^1\.0(?:\.\d+){0,2}$} $version]} then {
        error "unsupported client version"
      }

2249
2250
2251
2252
2253
2254
2255
2256

2257
2258
2250
2251
2252
2253
2254
2255
2256

2257
2258
2259







-
+



  maybeAddToAutoPath [expr {[isEagle] ? "eagle" : "tcl"}] \
      $persistentRootDirectory

  #
  # NOTE: Provide the package to the interpreter.
  #
  package provide Eagle.Package.Downloader 1.0.9
  package provide Eagle.Package.Downloader 1.0.10
}