From: Miguel Landaeta <nomadium@debian.org>
Date: Wed, 27 May 2015 16:56:49 -0300
Subject: Add /usr/lib/ruby/vendor_ruby to default LOAD_PATH
Bug: https://bugs.debian.org/663342
Forwarded: no

diff --git a/core/src/main/java/org/jruby/ext/rbconfig/RbConfigLibrary.java b/core/src/main/java/org/jruby/ext/rbconfig/RbConfigLibrary.java
index e2a4dca..7642404 100644
--- a/core/src/main/java/org/jruby/ext/rbconfig/RbConfigLibrary.java
+++ b/core/src/main/java/org/jruby/ext/rbconfig/RbConfigLibrary.java
@@ -63,6 +63,8 @@ public class RbConfigLibrary implements Library {
     private static final String RUBY_FREEBSD = "freebsd";
     private static final String RUBY_AIX = "aix";
    
+    private static final String MRI_VENDOR_DIR = "/usr/lib/ruby/vendor_ruby";
+
     private static String normalizedHome;
     
     /** This is a map from Java's "friendly" OS names to those used by Ruby */
@@ -186,6 +188,10 @@ public class RbConfigLibrary implements Library {
         return new NormalizedFile(getRubyLibDir(runtime), "vendor_ruby").getPath();
     }
 
+    public static String getMRIVendorDir(Ruby runtime) {
+        return SafePropertyAccessor.getProperty("vendor.mri.dir", MRI_VENDOR_DIR);
+    }
+
     public static String getVendorLibDir(Ruby runtime) {
         return getVendorDir(runtime);
     }
@@ -297,6 +303,7 @@ public class RbConfigLibrary implements Library {
         String rubyLibDir = getRubyLibDir(runtime);
         String archDir = getArchDir(runtime);
         String vendorDir = getVendorDir(runtime);
+        String vendorMRIDir = getMRIVendorDir(runtime);
         String vendorLibDir = getVendorLibDir(runtime);
         String vendorArchDir = getVendorArchDir(runtime);
         String siteDir = getSiteDir(runtime);
@@ -313,6 +320,7 @@ public class RbConfigLibrary implements Library {
         setConfig(configHash, "vendorlibdir",   vendorLibDir);
         setConfig(configHash, "vendorarchdir",    vendorArchDir);
         }
+        setConfig(configHash, "vendor_mri_dir", vendorMRIDir);
         setConfig(configHash, "sitedir",        siteDir);
         setConfig(configHash, "sitelibdir",     siteLibDir);
         setConfig(configHash, "sitearchdir",    siteArchDir);
diff --git a/core/src/main/java/org/jruby/runtime/load/LoadService.java b/core/src/main/java/org/jruby/runtime/load/LoadService.java
index 9d5ef00..80b05a9 100644
--- a/core/src/main/java/org/jruby/runtime/load/LoadService.java
+++ b/core/src/main/java/org/jruby/runtime/load/LoadService.java
@@ -279,6 +279,9 @@ public class LoadService {
                 addPath(RbConfigLibrary.getRubyLibDir(runtime));
             }
 
+            // Allow jruby to load libraries installed in the system
+            addPath(RbConfigLibrary.getMRIVendorDir(runtime));
+
         } catch(SecurityException ignore) {}
 
         // "." dir is used for relative path loads from a given file, as in require '../foo/bar'
