1 From fa1a50ad10814f724b8713865dc222724cb955ab Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
3 Date: Thu, 25 Aug 2011 14:33:51 +0200
4 Subject: [PATCH] Allow to disable versioned paths.
7 configure.in | 11 +++++++++++
8 tool/mkconfig.rb | 9 ++++++---
9 version.c | 10 ++++++++++
10 3 files changed, 27 insertions(+), 3 deletions(-)
12 diff --git a/configure.in b/configure.in
13 index e742e74..86cb68f 100644
16 @@ -2963,6 +2963,17 @@ else
18 AC_SUBST(USE_RUBYGEMS)
20 +AC_ARG_ENABLE(versioned-paths,
21 + AS_HELP_STRING([--disable-versioned-paths], [disable paths with version number]),
22 + [enable_versioned_paths="$enableval"], [enable_versioned_paths=yes])
23 +if test x"$enable_versioned_paths" = xno; then
24 + AC_DEFINE(DISABLE_VERSIONED_PATHS, 1)
25 + USE_VERSIONED_PATHS=NO
27 + USE_VERSIONED_PATHS=YES
29 +AC_SUBST(USE_VERSIONED_PATHS)
31 arch_hdrdir="${EXTOUT}/include/${arch}/ruby"
32 AS_MKDIR_P("${arch_hdrdir}")
33 config_h="${arch_hdrdir}/config.h"
34 diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb
35 index a2221f0..47d8c8f 100755
36 --- a/tool/mkconfig.rb
37 +++ b/tool/mkconfig.rb
38 @@ -42,6 +42,7 @@ v_others = []
42 +path_version = "/$(ruby_version)"
43 File.foreach "config.status" do |line|
46 @@ -138,6 +139,8 @@ File.foreach "config.status" do |line|
49 version = val[/\A"(.*)"\z/, 1]
50 + when /^USE_VERSIONED_PATHS$/
51 + path_version = nil if /NO/ =~ val
55 @@ -203,15 +206,15 @@ end
59 - CONFIG["rubylibdir"] = "$(rubylibprefix)/$(ruby_version)"
60 + CONFIG["rubylibdir"] = "$(rubylibprefix)#{path_version}"
61 CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
63 print <<EOS unless v_disabled["sitedir"]
64 - CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
65 + CONFIG["sitelibdir"] = "$(sitedir)#{path_version}"
66 CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"
68 print <<EOS unless v_disabled["vendordir"]
69 - CONFIG["vendorlibdir"] = "$(vendordir)/$(ruby_version)"
70 + CONFIG["vendorlibdir"] = "$(vendordir)#{path_version}"
71 CONFIG["vendorarchdir"] = "$(vendorlibdir)/$(sitearch)"
74 diff --git a/version.c b/version.c
75 index 59d4e5e..641dc33 100644
79 #define RUBY_VENDOR_LIB RUBY_LIB_PREFIX"/vendor_ruby"
82 +#ifdef DISABLE_VERSIONED_PATHS
83 +#define RUBY_LIB RUBY_LIB_PREFIX
84 +#define RUBY_SITE_LIB2 RUBY_SITE_LIB
85 +#define RUBY_VENDOR_LIB2 RUBY_VENDOR_LIB
87 #define RUBY_LIB RUBY_LIB_PREFIX "/"RUBY_LIB_VERSION
88 #define RUBY_SITE_LIB2 RUBY_SITE_LIB "/"RUBY_LIB_VERSION
89 #define RUBY_VENDOR_LIB2 RUBY_VENDOR_LIB "/"RUBY_LIB_VERSION
91 #define RUBY_ARCHLIB RUBY_LIB "/"RUBY_ARCH
92 #define RUBY_SITE_ARCHLIB RUBY_SITE_LIB2 "/"RUBY_SITEARCH
93 #define RUBY_VENDOR_ARCHLIB RUBY_VENDOR_LIB2 "/"RUBY_SITEARCH
94 @@ -75,8 +81,10 @@ const char ruby_initial_load_paths[] =
95 RUBY_SITE_THIN_ARCHLIB "\0"
97 RUBY_SITE_ARCHLIB "\0"
98 +#ifndef DISABLE_VERSIONED_PATHS
103 #ifndef NO_RUBY_VENDOR_LIB
104 RUBY_VENDOR_LIB2 "\0"
105 @@ -84,8 +92,10 @@ const char ruby_initial_load_paths[] =
106 RUBY_VENDOR_THIN_ARCHLIB "\0"
108 RUBY_VENDOR_ARCHLIB "\0"
109 +#ifndef DISABLE_VERSIONED_PATHS
115 #ifdef RUBY_THIN_ARCHLIB
118 diff --git a/lib/rdoc/ri/paths.rb b/lib/rdoc/ri/paths.rb
119 index a3c65bf..0575730 100644
120 --- a/lib/rdoc/ri/paths.rb
121 +++ b/lib/rdoc/ri/paths.rb
122 @@ -11,9 +11,9 @@ module RDoc::RI::Paths
123 version = RbConfig::CONFIG['ruby_version']
125 base = if RbConfig::CONFIG.key? 'ridir' then
126 - File.join RbConfig::CONFIG['ridir'], version
127 + File.join [RbConfig::CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
129 - File.join RbConfig::CONFIG['datadir'], 'ri', version
130 + File.join [RbConfig::CONFIG['datadir'], 'ri', RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? version : nil].compact
133 SYSDIR = File.join base, "system"
134 diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
135 index cec8c9f..fed14d2 100755
136 --- a/tool/rbinstall.rb
137 +++ b/tool/rbinstall.rb
138 @@ -379,7 +379,7 @@ end
140 install?(:doc, :rdoc) do
142 - ridatadir = File.join(CONFIG['ridir'], CONFIG['ruby_version'], "system")
143 + ridatadir = File.join([CONFIG['ridir'], RbConfig::CONFIG['USE_VERSIONED_PATHS'] == 'YES' ? RbConfig::CONFIG['ruby_version'] : nil, "system"].compact)
144 prepare "rdoc", ridatadir
145 install_recursive($rdocdir, ridatadir, :mode => $data_mode)