Overview
Comment: | First pass at auto-detection support for the ability to run CLR-based packages using the .NET Framework or Mono. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
51260e7f881cf26ecef3d40e1bcae2f0 |
User & Date: | mistachkin on 2017-07-01 20:25:09 |
Other Links: | manifest | tags |
Context
2017-07-01
| ||
20:40 | Add 'HelloWorld' MSIL-based package. check-in: d79f52abb9 user: mistachkin tags: trunk | |
20:25 | First pass at auto-detection support for the ability to run CLR-based packages using the .NET Framework or Mono. check-in: 51260e7f88 user: mistachkin tags: trunk | |
03:46 | Add support for more native platforms. Add support for the 'msil' meta-platform. check-in: 5f7af1c898 user: mistachkin tags: trunk | |
Changes
Modified client/1.0/neutral/pkgd.eagle from [b29a9ebd4f] to [1436a2a861].
︙ | ︙ | |||
276 277 278 279 280 281 282 283 284 285 286 287 288 289 | # library path. # variable viaInstall; # DEFAULT: false if {![info exists viaInstall]} then { set viaInstall false } } # # NOTE: This procedure modifies the URN variables used by the package # downloader client so that one or more alternative (private?) # backend file servers may be used. The serverId argument must # consist only of alphanumeric characters and it must begin with | > > > > > > > > > > > > > > > > > > > > > > | 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 | # library path. # variable viaInstall; # DEFAULT: false if {![info exists viaInstall]} then { set viaInstall false } # # NOTE: The command to use when attempting to verify that Mono and its # associated runtimes are installed locally. Generally, this is # not needed on Windows machines. # variable monoInstalledCommand; # DEFAULT: mono --version if {![info exists monoInstalledCommand]} then { set monoInstalledCommand {mono --version} } # # NOTE: The regular expression pattern used when attempting to verify # that Mono and its associated runtimes are installed locally. # Generally, this is not needed on Windows machines. # variable monoInstalledPattern; # DEFAULT: ^Mono JIT compiler version \d+\. if {![info exists monoInstalledPattern]} then { set monoInstalledPattern {^Mono JIT compiler version \d+\.} } } # # NOTE: This procedure modifies the URN variables used by the package # downloader client so that one or more alternative (private?) # backend file servers may be used. The serverId argument must # consist only of alphanumeric characters and it must begin with |
︙ | ︙ | |||
763 764 765 766 767 768 769 770 771 772 773 774 775 776 | # within the auto-path. # addToAutoPath $language $directory return true } # # 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 either "eagle" or "client". The varName argument is the name | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 | # within the auto-path. # addToAutoPath $language $directory return true } # # NOTE: This procedure attempts to verify that an instance of Mono and its # associated runtimes are installed locally. There are no arguments. # The return value is non-zero if Mono appears to be installed and # available for use; otherwise, the return value is zero. # proc isMonoInstalled {} { variable monoInstalledCommand variable monoInstalledPattern if {[isEagle]} then { if {[catch { eval exec -success Success $monoInstalledCommand } result]} then { return false } } else { if {[catch { eval exec $monoInstalledCommand } result]} then { return false } } if {![info exists result] || \ ![regexp -- $monoInstalledPattern $result]} then { return false } return true } # # NOTE: This procedure attempts to verify that some runtime is available to # run CLR applications locally (e.g. the .NET Framework or Mono JIT). # There are no arguments. The return value is non-zero if it appears # that CLR applications should be runnable locally; otherwise, the # return value is zero. # proc canUseMsilPlatform {} { if {[isWindows]} then { # # HACK: Assume that all Windows operating systems have a compatible # version of the .NET Framework is installed -AND- that it can # be used to run any CLR application. # return true } else { # # HACK: On all other platforms, assume that Mono can be used to run # any CLR application. # return [isMonoInstalled] } } # # 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 either "eagle" or "client". The varName argument is the name |
︙ | ︙ | |||
967 968 969 970 971 972 973 | $language $version $localPackageName $localFileNames $localUsePgp] if {[string length $varName] > 0} then { upvar 1 $varName newPlatform } # | | | > > > | > > > > > > > > > > > > > | | > > > > > > > | 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 | $language $version $localPackageName $localFileNames $localUsePgp] if {[string length $varName] > 0} then { upvar 1 $varName newPlatform } # # NOTE: First, check the current platform and the neutral platform, # in that order, to see if that platform is supported by the # package being saught. # set thesePlatforms [list [getPlatform] neutral] # # NOTE: Next, optionally, allow the "msil" platform to be checked. # Currently, this is always applicable on Windows; however, # on all other platforms this depends on having Mono and its # associated runtimes installed locally. # if {[canUseMsilPlatform]} then { lappend thesePlatforms msil } # # NOTE: Check each applicable platform, in order, stopping when a # supported platform is found for the package being saught. # foreach thisPlatform $thesePlatforms { if {[lsearch -exact $platforms $thisPlatform] != -1} then { set newPlatform $thisPlatform return } } # # NOTE: If this point is reached, there are no supported platforms # that are compatible with the current one for the specified # package. # error "could not automatically detect platform" } msil { # # NOTE: Forbid the "msil" platform if it is not available for use. # if {![canUseMsilPlatform]} then { error "platform \"msil\" does not appear to be supported" } } neutral - win32-arm - win32-x86 - win64-arm64 - win64-ia64 - win64-x64 { # |
︙ | ︙ |
Modified client/1.0/neutral/pkgd.eagle.asc from [53daed0b60] to [052c5a500c].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJZWATvAAoJEFAslq9JXcLZmO8QAIsDwUkYGbRhIWh0igBLrjDk RjiaWFdb96iHGcIftId6r9N+WTBLgqHk52eNa72HbAXIBL/cJ9qx4dj3k4QduP7r h9La3yyzYsODrVWDODvd/v4OP9nSsizQUml10cE2j4B7Y52czYGm5NrvUi9bjUkX AEkCowLjdVQmSOW/3sNqyU7TjbwdP/qRrKRvLwr6emxWb58f79BdEd7cXk4M2eT8 adSfI05qMwgw8h/0RIoSrluEHebrii/d/Q1Vp4Pm1gEBQ4v0m8Q4jqtMZpBX1KNw umDdeCtjE1yihVxJdsR7HdaxpB9yZkqlFfSJpr5d2Dxx202f4QuYzL6Cy3LLxRuK dMwhDOc2wltYyprD4Op0yInu0DcUg7nK2PlZ7LAIdoX11EcZLo2JCMVDtOVcQE9e IqVEPlm62ejrtdJ2nbjBWBvsZU8tfjlaA202OLJfpZ9Xu9QIYEjNa1rPqARwUY4G 7LPGHZV4G8euE8mMMCR5XMeUl4wvE5OKdMDjPTatq5s1cei83JM9qvZi2xvpVN1d KpF0C8GUbv4Z+lNcFEp5eEtf4/38p49CLU9gFFcgj0Ms1yHFBYqCm7TrN9lG527y Txu+yArv22IdDrfWduVaw8c/tRCuyP7zl3hPb8PKAhvbwBXKXggiRocCT0bWlGjg SVkO4hsVMeXzY7LatZ1R =Oki/ -----END PGP SIGNATURE----- |
Modified client/1.0/neutral/pkgd.eagle.harpy from [37450dd0a8] to [27a068b050].
︙ | ︙ | |||
17 18 19 20 21 22 23 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> <Id>dd78003f-f517-41af-b923-bb517e62b42a</Id> <HashAlgorithm>SHA512</HashAlgorithm> <EntityType>Script</EntityType> <TimeStamp>2017-07-01T20:23:53.1237500Z</TimeStamp> <Duration>-1.00:00:00</Duration> <Key>0x9559f6017247e3e2</Key> <Signature> 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 </Signature> </Certificate> |
Modified client/1.0/neutral/pkgd.eagle.harpy.asc from [b85c14a06f] to [5ad4ccd236].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJZWATxAAoJEFAslq9JXcLZ4JcP/Aulat5GGiww8yUwlMmK6Yus b8da/X31mGpYffqNdYGgLgjbK2/SU/kcbl3X5r3rxjlSmsKmoL+AfjQP2W0a97xP Wy4t52l3quybL5Cb+luztBLoqR4TaSgKuRtDW85GKFIpBRAmRvJtzQ8oauy8nhva QQlJVwF+SKUpj5Sr0ntxDYrtYni0ByoWV2eprdB276xsYsSkZGMzKlOakhVJVJIs zQ6tcPE+x50zqw8D1hoT3o9Vc4itTeIU6/IhAST2tBUrulq443XRo25kxXTw9xeS R91VvuyfeMRXy6HguoNmE+rtihBSwZepNRjbAMWz+QmXByyM1bWefffr0N7TMROu jOXLW1vmF3ckEERKfcKcHhqC88UFxBrnhTJegCZPu+CV9PFb1GOCzS3Uy1oA9nBA pgiBT9TwETplH4WRD+8nX6uU+oXJ/3Wxud8pXM22DmFcQ3aeajwA8Me4GEomH4k+ KZMFBRZKU1EgwURqi6XWnXyO20r4OMXZgakaritXX9Ryp8ZJ91Ku37yZKnonN68A vEm2PpRpWOxXyMFThT58upfY0QcgTHFESrytuRPhhLWD5N+3AqJyg7aRnksAx+DP sNBCuDzkFT5B71nqk9SWebmkIvdey/uZJTaI8zS/Rr8hZ0BqsV2Qav0qg5S0QeEj 1cvKa5DDkdKJWLzgO9MF =GowX -----END PGP SIGNATURE----- |