aboutsummaryrefslogtreecommitdiffhomepage
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/sisu18
1 files changed, 6 insertions, 12 deletions
diff --git a/bin/sisu b/bin/sisu
index 6b18e592..011c1f4f 100755
--- a/bin/sisu
+++ b/bin/sisu
@@ -20,7 +20,7 @@ class Orient
:full_path_to_sisu_bin_in_sisu_dir_tree
elsif processing.sisu_runtime_path =~/\/gems\// \
and processing.sisu_runtime_path \
- =~ /\/sisu-(?:\d+|[a-z])\.(?:\d+|[a-z])\.(?:\d+|[a-z])\//
+ =~ processing.gem_regex
:gem_install
else
:system_install
@@ -43,7 +43,7 @@ class Orient
%r{\bsisu$}
end
def gem_regex
- %r{\/sisu-(?:\d+|[a-z])\.(?:\d+|[a-z])\.(?:\d+|[a-z])\/}
+ %r{\/sisu-[0-9]+\.[0-9]+\.[0-9]+(?:\.r[0-9]+\.g[0-9a-f]{7})?\/}
end
self
end
@@ -114,13 +114,7 @@ class Orient
end
end
def sisu_this_lib
- if processing.sisu_runtime_path =~/\/gems\// \
- and processing.sisu_runtime_path \
- =~ /\/sisu-(?:\d+|[a-z])\.(?:\d+|[a-z])\.(?:\d+|[a-z])\//
- # gem sought
- processing.sisu_runtime_path.
- gsub(/\/bin\/sisu[a-z0-7_-]*$/,'/lib/sisu')
- elsif (processing.called_as \
+ if (processing.called_as \
!~ /^#{RbConfig::CONFIG['bindir']}\/sisu$/)
# called off file system, project directory tree
File.expand_path(processing.called_as).
@@ -128,12 +122,12 @@ class Orient
else
# distro installation
sisulib={
- vendorlib: RbConfig::CONFIG['vendordir'] + '/sisu',
+ vendorlib: RbConfig::CONFIG['vendorlibdir'] + '/sisu',
sitelib: RbConfig::CONFIG['sitelibdir'] + '/sisu',
}
- if FileTest.directory?(sisulib[:sitelib]) # Arch Linux; Debian local
+ if FileTest.directory?(sisulib[:sitelib]) # local install
sisulib[:sitelib]
- elsif FileTest.directory?(sisulib[:vendorlib]) # Debian GNU Linux system
+ elsif FileTest.directory?(sisulib[:vendorlib]) # system install
sisulib[:vendorlib]
else 'sisu' # assume lib paths work
end