pvalena / rpms / ruby

Forked from rpms/ruby 6 years ago
Clone
6193662
From 23cfbaa371f82d0b4652c9e37189a2be82fa3d4c Mon Sep 17 00:00:00 2001
117278a
From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
117278a
Date: Thu, 25 Aug 2011 14:33:51 +0200
117278a
Subject: [PATCH] Allow to disable versioned paths.
117278a
117278a
---
6193662
 configure.in         | 11 +++++++++++
6193662
 lib/rdoc/ri/paths.rb |  4 ++--
6193662
 tool/mkconfig.rb     |  9 ++++++---
6193662
 tool/rbinstall.rb    |  2 +-
6193662
 version.c            | 10 ++++++++++
6193662
 5 files changed, 30 insertions(+), 6 deletions(-)
117278a
117278a
diff --git a/configure.in b/configure.in
6193662
index f2d22ef..db3641b 100644
117278a
--- a/configure.in
117278a
+++ b/configure.in
3fa8028
@@ -3319,6 +3319,17 @@ else
117278a
 fi
117278a
 AC_SUBST(USE_RUBYGEMS)
117278a
 
117278a
+AC_ARG_ENABLE(versioned-paths,
117278a
+	AS_HELP_STRING([--disable-versioned-paths], [disable paths with version number]),
117278a
+	[enable_versioned_paths="$enableval"], [enable_versioned_paths=yes])
117278a
+if test x"$enable_versioned_paths" = xno; then
117278a
+    AC_DEFINE(DISABLE_VERSIONED_PATHS, 1)
117278a
+    USE_VERSIONED_PATHS=NO
117278a
+else
117278a
+    USE_VERSIONED_PATHS=YES
117278a
+fi
117278a
+AC_SUBST(USE_VERSIONED_PATHS)
117278a
+
117278a
 arch_hdrdir="${EXTOUT}/include/${arch}/ruby"
117278a
 AS_MKDIR_P("${arch_hdrdir}")
117278a
 config_h="${arch_hdrdir}/config.h"
6193662
diff --git a/lib/rdoc/ri/paths.rb b/lib/rdoc/ri/paths.rb
6193662
index a3c65bf..a4e8559 100644
6193662
--- a/lib/rdoc/ri/paths.rb
6193662
+++ b/lib/rdoc/ri/paths.rb
3fa8028
@@ -12,9 +12,9 @@ module RDoc::RI::Paths
6193662
   version = RbConfig::CONFIG['ruby_version']
6193662
 
3fa8028
   BASE    = if RbConfig::CONFIG.key? 'ridir' then
6193662
-              File.join RbConfig::CONFIG['ridir'], version
6193662
+              File.join [RbConfig::CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
6193662
             else
6193662
-              File.join RbConfig::CONFIG['datadir'], 'ri', version
6193662
+              File.join [RbConfig::CONFIG['datadir'], 'ri', RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
6193662
             end
6193662
 
3fa8028
   homedir = begin
117278a
diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb
6193662
index f9d97d3..d9e26c1 100755
117278a
--- a/tool/mkconfig.rb
117278a
+++ b/tool/mkconfig.rb
117278a
@@ -42,6 +42,7 @@ v_others = []
117278a
 vars = {}
117278a
 continued_name = nil
117278a
 continued_line = nil
117278a
+path_version = "/$(ruby_version)"
117278a
 File.foreach "config.status" do |line|
117278a
   next if /^#/ =~ line
117278a
   name = nil
117278a
@@ -138,6 +139,8 @@ File.foreach "config.status" do |line|
117278a
     case name
117278a
     when "ruby_version"
117278a
       version = val[/\A"(.*)"\z/, 1]
117278a
+    when /^USE_VERSIONED_PATHS$/
117278a
+      path_version = nil if /NO/ =~ val
117278a
     end
117278a
   end
117278a
 #  break if /^CEOF/
117278a
@@ -203,15 +206,15 @@ end
117278a
 print(*v_fast)
117278a
 print(*v_others)
117278a
 print <
117278a
-  CONFIG["rubylibdir"] = "$(rubylibprefix)/$(ruby_version)"
117278a
+  CONFIG["rubylibdir"] = "$(rubylibprefix)#{path_version}"
117278a
   CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
117278a
 EOS
117278a
 print <
117278a
-  CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
117278a
+  CONFIG["sitelibdir"] = "$(sitedir)#{path_version}"
117278a
   CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"
117278a
 EOS
117278a
 print <
117278a
-  CONFIG["vendorlibdir"] = "$(vendordir)/$(ruby_version)"
117278a
+  CONFIG["vendorlibdir"] = "$(vendordir)#{path_version}"
117278a
   CONFIG["vendorarchdir"] = "$(vendorlibdir)/$(sitearch)"
117278a
 EOS
117278a
 print <
6193662
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
6193662
index f5facca..17294a2 100755
6193662
--- a/tool/rbinstall.rb
6193662
+++ b/tool/rbinstall.rb
6193662
@@ -392,7 +392,7 @@ end
6193662
 
6193662
 install?(:doc, :rdoc) do
6193662
   if $rdocdir
6193662
-    ridatadir = File.join(CONFIG['ridir'], CONFIG['ruby_version'], "system")
6193662
+    ridatadir = File.join([CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil, "system"].compact)
6193662
     prepare "rdoc", ridatadir
6193662
     install_recursive($rdocdir, ridatadir, :mode => $data_mode)
6193662
   end
117278a
diff --git a/version.c b/version.c
6193662
index 26e275a..05e5069 100644
117278a
--- a/version.c
117278a
+++ b/version.c
ea3cb65
@@ -39,9 +39,15 @@
117278a
 #define RUBY_VENDOR_LIB RUBY_LIB_PREFIX"/vendor_ruby"
117278a
 #endif
117278a
 
117278a
+#ifdef DISABLE_VERSIONED_PATHS
117278a
+#define RUBY_LIB                    RUBY_LIB_PREFIX
117278a
+#define RUBY_SITE_LIB2              RUBY_SITE_LIB
117278a
+#define RUBY_VENDOR_LIB2            RUBY_VENDOR_LIB
117278a
+#else
117278a
 #define RUBY_LIB                    RUBY_LIB_PREFIX  "/"RUBY_LIB_VERSION
117278a
 #define RUBY_SITE_LIB2              RUBY_SITE_LIB    "/"RUBY_LIB_VERSION
117278a
 #define RUBY_VENDOR_LIB2            RUBY_VENDOR_LIB  "/"RUBY_LIB_VERSION
117278a
+#endif
117278a
 #define RUBY_ARCHLIB                RUBY_LIB         "/"RUBY_ARCH
117278a
 #define RUBY_SITE_ARCHLIB           RUBY_SITE_LIB2   "/"RUBY_SITEARCH
117278a
 #define RUBY_VENDOR_ARCHLIB         RUBY_VENDOR_LIB2 "/"RUBY_SITEARCH
ea3cb65
@@ -76,8 +82,10 @@ const char ruby_initial_load_paths[] =
117278a
     RUBY_SITE_THIN_ARCHLIB "\0"
117278a
 #endif
117278a
     RUBY_SITE_ARCHLIB "\0"
117278a
+#ifndef DISABLE_VERSIONED_PATHS
117278a
     RUBY_SITE_LIB "\0"
117278a
 #endif
117278a
+#endif
117278a
 
117278a
 #ifndef NO_RUBY_VENDOR_LIB
117278a
     RUBY_VENDOR_LIB2 "\0"
ea3cb65
@@ -85,8 +93,10 @@ const char ruby_initial_load_paths[] =
117278a
     RUBY_VENDOR_THIN_ARCHLIB "\0"
117278a
 #endif
117278a
     RUBY_VENDOR_ARCHLIB "\0"
117278a
+#ifndef DISABLE_VERSIONED_PATHS
117278a
     RUBY_VENDOR_LIB "\0"
117278a
 #endif
117278a
+#endif
117278a
 
117278a
     RUBY_LIB "\0"
117278a
 #ifdef RUBY_THIN_ARCHLIB
117278a
-- 
6193662
1.8.0
117278a