pvalena / rpms / ruby

Forked from rpms/ruby 6 years ago
Clone
117278a
From fa1a50ad10814f724b8713865dc222724cb955ab 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
---
117278a
 configure.in     |   11 +++++++++++
117278a
 tool/mkconfig.rb |    9 ++++++---
117278a
 version.c        |   10 ++++++++++
117278a
 3 files changed, 27 insertions(+), 3 deletions(-)
117278a
117278a
diff --git a/configure.in b/configure.in
117278a
index e742e74..86cb68f 100644
117278a
--- a/configure.in
117278a
+++ b/configure.in
ef4f0ea
@@ -2963,6 +2963,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"
117278a
diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb
117278a
index a2221f0..47d8c8f 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 <
117278a
diff --git a/version.c b/version.c
117278a
index 59d4e5e..641dc33 100644
117278a
--- a/version.c
117278a
+++ b/version.c
117278a
@@ -38,9 +38,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
117278a
@@ -75,8 +81,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"
117278a
@@ -84,8 +92,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
-- 
117278a
1.7.7.3
117278a
diff --git a/lib/rdoc/ri/paths.rb b/lib/rdoc/ri/paths.rb
117278a
index a3c65bf..0575730 100644
117278a
--- a/lib/rdoc/ri/paths.rb
117278a
+++ b/lib/rdoc/ri/paths.rb
117278a
@@ -11,9 +11,9 @@ module RDoc::RI::Paths
117278a
   version = RbConfig::CONFIG['ruby_version']
117278a
 
117278a
   base    = if RbConfig::CONFIG.key? 'ridir' then
117278a
-              File.join RbConfig::CONFIG['ridir'], version
117278a
+              File.join [RbConfig::CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
117278a
             else
117278a
-              File.join RbConfig::CONFIG['datadir'], 'ri', version
117278a
+              File.join [RbConfig::CONFIG['datadir'], 'ri', RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
117278a
             end
117278a
 
117278a
   SYSDIR  = File.join base, "system"
117278a
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
117278a
index cec8c9f..fed14d2 100755
117278a
--- a/tool/rbinstall.rb
117278a
+++ b/tool/rbinstall.rb
117278a
@@ -379,7 +379,7 @@ end
117278a
 
117278a
 install?(:doc, :rdoc) do
117278a
   if $rdocdir
117278a
-    ridatadir = File.join(CONFIG['ridir'], CONFIG['ruby_version'], "system")
117278a
+    ridatadir = File.join([CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil, "system"].compact)
117278a
     prepare "rdoc", ridatadir
117278a
     install_recursive($rdocdir, ridatadir, :mode => $data_mode)
117278a
   end
117278a
-- 
117278a
1.7.6
117278a