Index: lib/System.Data.SQLite/common.eagle ================================================================== --- lib/System.Data.SQLite/common.eagle +++ lib/System.Data.SQLite/common.eagle @@ -511,10 +511,15 @@ # if {$native} then { return true } + # + # NOTE: What is the architecture for this machine? + # + set architecture [machineToPlatform $::tcl_platform(machine) true] + # # NOTE: What is the platform for this machine? # set platform [machineToPlatform $::tcl_platform(machine)] @@ -521,10 +526,17 @@ # # NOTE: Build the fully qualified file name for the interop assembly # containing the System.Data.SQLite native components. If this # file exists, we should have everything we need. # + set fileName [file nativename [file join $directory \ + $architecture SQLite.Interop.dll]] + + if {[file exists $fileName]} then { + return true + } + set fileName [file nativename [file join $directory \ $platform SQLite.Interop.dll]] if {[file exists $fileName]} then { return true @@ -540,10 +552,17 @@ # # NOTE: Build the fully qualified file name for the SQLite core # library. If this file exists, we should have everything we # need. # + set fileName [file nativename [file join $directory \ + $architecture sqlite3.dll]] + + if {[file exists $fileName]} then { + return true + } + set fileName [file nativename [file join $directory \ $platform sqlite3.dll]] if {[file exists $fileName]} then { return true @@ -1199,11 +1218,11 @@ return [expr { [haveConstraint System.Data.SQLite] && [haveConstraint SQLite] }] } - proc matchMachine { platform } { + proc matchPlatform { platform } { # # NOTE: An empty string for the platform means that the build is not # [primarily] a native build; therefore, it always matches. # if {[string length $platform] == 0} then { @@ -1327,11 +1346,11 @@ # # NOTE: When in "select" mode, automatically select the first # available build of System.Data.SQLite and then return # immediately. # - if {$select && [matchMachine $platform]} then { + if {$select && [matchPlatform $platform]} then { # # NOTE: Manually override all the build directory selection # related test settings in order to force this build # of System.Data.SQLite to be used. # @@ -1388,11 +1407,11 @@ if {[isReleaseAvailable $directory platform]} then { if {[string length $platform] == 0} then { set platform unknown } - if {$select && [matchMachine $platform]} then { + if {$select && [matchPlatform $platform]} then { set ::build_directory $directory tputs $channel [appendArgs "yes, selected (" $platform ")\n"] return true @@ -1411,11 +1430,11 @@ if {[isReleaseAvailable $path platform]} then { if {[string length $platform] == 0} then { set platform unknown } - if {$select && [matchMachine $platform]} then { + if {$select && [matchPlatform $platform]} then { set ::build_directory $path tputs $channel [appendArgs "yes, selected (" $platform ")\n"] return true