JackOfAll wrote: > he'd have added Bin/i386-linux to the bin path on x86_64 platform for > backward compatibility, so if an x86_64 binary isn't available it "falls > back" to trying for an i386 binary
Would the following change work for you? I don't have a 64-bit Linux here, can't test, will do tomorrow: Code: -------------------- diff --git a/Slim/Utils/OS.pm b/Slim/Utils/OS.pm index fbebd91..67ab323 100644 --- a/Slim/Utils/OS.pm +++ b/Slim/Utils/OS.pm @@ -71,10 +71,9 @@ # Initialise search path for findbin - called later in initialisation than init above # Reduce all the x86 architectures down to i386, including x86_64, so we only need one directory per *nix OS. - $class->{osDetails}->{'binArch'} = $Config::Config{'archname'}; - $class->{osDetails}->{'binArch'} =~ s/^x86_64-([^-]+).*/x86_64-$1/; - $class->{osDetails}->{'binArch'} =~ s/^i[3456]86-([^-]+).*/i386-$1/; - + my $binArch = $class->{osDetails}->{'binArch'} = $Config::Config{'archname'}; + $class->{osDetails}->{'binArch'} =~ s/^(?:i[3456]86|x86_64)-([^-]+).*/i386-$1/; + # Reduce ARM to arm-linux if ( $class->{osDetails}->{'binArch'} =~ /^arm.*linux/ ) { $class->{osDetails}->{'binArch'} = 'arm-linux'; @@ -86,6 +85,11 @@ } my @paths = ( catdir($class->dirsFor('Bin'), $class->{osDetails}->{'binArch'}), catdir($class->dirsFor('Bin'), $^O), $class->dirsFor('Bin') ); + + # Linux x86_64 should check its native folder first + if ( $binArch =~ s/^x86_64-([^-]+).*/x86_64-$1/ ) { + unshift @paths, $binArch; + } Slim::Utils::Misc::addFindBinPaths(@paths); diff --git a/Slim/Utils/PluginManager.pm b/Slim/Utils/PluginManager.pm index 908deb3..a91b50a 100644 --- a/Slim/Utils/PluginManager.pm +++ b/Slim/Utils/PluginManager.pm @@ -334,7 +334,17 @@ main::DEBUGLOG && $log->debug("Adding Bin directory: [$binDir]"); - Slim::Utils::Misc::addFindBinPaths( catdir($binDir, Slim::Utils::OSDetect::details()->{'binArch'}), $binDir ); + my @paths = ( catdir($binDir, Slim::Utils::OSDetect::details()->{'binArch'}), $binDir ); + + if ( Slim::Utils::OSDetect::details()->{'binArch'} =~ /i386-linux/i ) { + my $arch = $Config::Config{'archname'}; + + if ( $arch && $arch =~ s/^x86_64-([^-]+).*/x86_64-$1/ ) { + unshift @paths, $arch; + } + } + + Slim::Utils::Misc::addFindBinPaths( @paths ); } # add skin folders even in noweb mode: we'll need them for the icons -------------------- Michael http://www.herger.net/slim-plugins - MusicArtistInfo, MusicInfoSCR, Smart Mix ------------------------------------------------------------------------ mherger's Profile: http://forums.slimdevices.com/member.php?userid=50 View this thread: http://forums.slimdevices.com/showthread.php?t=99395 _______________________________________________ unix mailing list unix@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/unix