ALT Linux repos
Group :: Development/Ruby
RPM: ruby
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Patch: ruby-1.8-fhs-vendor-alt.patch
Download
Download
diff -ur ruby.orig/configure.in ruby/configure.in
--- ruby.orig/configure.in 2002-11-14 15:51:18 +0200
+++ ruby/configure.in 2002-11-19 13:16:32 +0200
@@ -1213,15 +1213,17 @@
RUBY_LIB_PREFIX="/lib/ruby"
;;
*)
- RUBY_LIB_PREFIX="${prefix}/lib/ruby"
+ RUBY_LIB_PREFIX="${prefix}/share/ruby"
+ RUBY_LIB_PREFIX2="${prefix}/lib/ruby"
;;
esac
RUBY_LIB_PATH="${RUBY_LIB_PREFIX}/${MAJOR}.${MINOR}"
+RUBY_LIB_PATH2="${RUBY_LIB_PREFIX2}/${MAJOR}.${MINOR}"
AC_ARG_WITH(sitedir,
- [ --with-sitedir=DIR site libraries in DIR [PREFIX/lib/ruby/site_ruby]],
+ [ --with-sitedir=DIR site libraries in DIR [PREFIX/share/ruby/site_ruby]],
[sitedir=$withval],
- [sitedir='${prefix}/lib/ruby/site_ruby'])
+ [sitedir='${prefix}/share/ruby/site_ruby'])
SITE_DIR="`eval \"echo ${sitedir}\"`"
case "$target_os" in
cygwin*|mingw*|*djgpp*|os2_emx*)
@@ -1231,14 +1233,34 @@
RUBY_SITE_LIB_PATH="$SITE_DIR";;
esac
RUBY_SITE_LIB_PATH2="${RUBY_SITE_LIB_PATH}/${MAJOR}.${MINOR}"
+RUBY_SITE_LIB_PATH3="`echo ${RUBY_SITE_LIB_PATH2}|sed -e 's@/share/@/lib/@;'`"
AC_DEFINE_UNQUOTED(RUBY_LIB, "${RUBY_LIB_PATH}")
AC_DEFINE_UNQUOTED(RUBY_SITE_LIB, "${RUBY_SITE_LIB_PATH}")
AC_DEFINE_UNQUOTED(RUBY_SITE_LIB2, "${RUBY_SITE_LIB_PATH2}")
+AC_ARG_WITH(vendordir,
+ [ --with-vendordir=DIR vendor libraries in DIR [PREFIX/share/ruby/vendor_ruby]],
+ [vendordir=$withval],
+ [vendordir='${prefix}/share/ruby/vendor_ruby'])
+VENDOR_DIR="`eval \"echo ${vendordir}\"`"
+case "$target_os" in
+ cygwin*|mingw*|*djgpp*|os2_emx*)
+ RUBY_VENDOR_LIB_PATH="`expr "$VENDOR_DIR" : "$prefix\(/.*\)"`" ||
+ RUBY_VENDOR_LIB_PATH="$VENDOR_DIR";;
+ *)
+ RUBY_VENDOR_LIB_PATH="$VENDOR_DIR";;
+esac
+RUBY_VENDOR_LIB_PATH2="${RUBY_VENDOR_LIB_PATH}/${MAJOR}.${MINOR}"
+RUBY_VENDOR_LIB_PATH3="`echo ${RUBY_VENDOR_LIB_PATH2}|sed -e 's@/share/@/lib/@;'`"
+
+AC_DEFINE_UNQUOTED(RUBY_VENDOR_LIB, "${RUBY_VENDOR_LIB_PATH}")
+AC_DEFINE_UNQUOTED(RUBY_VENDOR_LIB2, "${RUBY_VENDOR_LIB_PATH2}")
+
AC_SUBST(arch)dnl
AC_SUBST(sitearch)dnl
AC_SUBST(sitedir)dnl
+AC_SUBST(vendordir)dnl
configure_args=$ac_configure_args
AC_SUBST(configure_args)dnl
@@ -1262,8 +1284,16 @@
*) sitearch="${arch}" ;;
esac
-AC_DEFINE_UNQUOTED(RUBY_ARCHLIB, "${RUBY_LIB_PATH}/${arch}")
-AC_DEFINE_UNQUOTED(RUBY_SITE_ARCHLIB, "${RUBY_SITE_LIB_PATH2}/${sitearch}")
+archdir="${RUBY_LIB_PATH2}/${arch}"
+sitearchdir="${RUBY_SITE_LIB_PATH3}/${sitearch}"
+vendorarchdir="${RUBY_VENDOR_LIB_PATH3}/${sitearch}"
+
+AC_DEFINE_UNQUOTED(RUBY_ARCHLIB, "${archdir}")
+AC_DEFINE_UNQUOTED(RUBY_SITE_ARCHLIB, "${sitearchdir}")
+AC_DEFINE_UNQUOTED(RUBY_VENDOR_ARCHLIB, "${vendorarchdir}")
+AC_SUBST(archdir)dnl
+AC_SUBST(sitearchdir)dnl
+AC_SUBST(vendorarchdir)dnl
AC_ARG_WITH(search-path,
[ --with-search-path=DIR specify the additional search path],
diff -ur ruby.orig/lib/mkmf.rb ruby/lib/mkmf.rb
--- ruby.orig/lib/mkmf.rb 2002-11-14 15:51:19 +0200
+++ ruby/lib/mkmf.rb 2002-11-19 15:25:15 +0200
@@ -211,7 +211,7 @@
'LDFLAGS' => "#$LDFLAGS #{ldflags}",
'LIBPATH' => libpathflag(libpath),
'LOCAL_LIBS' => "#$LOCAL_LIBS #$libs",
- 'LIBS' => "#$LIBRUBYARG_STATIC #{opt} #$LIBS")
+ 'LIBS' => "#$LIBRUBYARG #{opt} #$LIBS")
end
def cc_command(opt="")
diff -ur ruby.orig/mkconfig.rb ruby/mkconfig.rb
--- ruby.orig/mkconfig.rb.fhs 2003-08-05 12:27:20 +0300
+++ ruby.orig/mkconfig.rb 2005-02-25 14:02:55 +0200
@@ -75,7 +75,7 @@
prefix = Regexp.quote('/lib/ruby/' + RUBY_VERSION.sub(/\.\d+$/, '') + '/' + RUBY_PLATFORM)
print " TOPDIR = File.dirname(__FILE__).sub!(%r'#{prefix}\\Z', '')\n"
-print " DESTDIR = ", (drive ? "TOPDIR && TOPDIR[/\\A[a-z]:/i] || " : ""), "'' unless defined? DESTDIR\n"
+print " DESTDIR = ", (drive ? "TOPDIR && TOPDIR[/\\A[a-z]:/i] || " : ""), "ENV['DESTDIR'].to_s unless defined? DESTDIR\n"
print " CONFIG = {}\n"
print " CONFIG[\"DESTDIR\"] = DESTDIR\n"
@@ -107,10 +107,13 @@
print v_fast, v_others
print <<EOS
CONFIG["ruby_version"] = "$(MAJOR).$(MINOR)"
- CONFIG["rubylibdir"] = "$(libdir)/ruby/$(ruby_version)"
- CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
+ CONFIG["rubylibdir"] = "$(datadir)/ruby/$(ruby_version)"
CONFIG["sitelibdir"] = "$(sitedir)/$(ruby_version)"
- CONFIG["sitearchdir"] = "$(sitelibdir)/$(sitearch)"
+ if defined?(VENDOR_SPECIFIC) && VENDOR_SPECIFIC
+ CONFIG["sitedir"] = "$(vendordir)"
+ CONFIG["sitelibdir"] = "$(vendordir)/$(ruby_version)"
+ CONFIG["sitearchdir"] = CONFIG["vendorarchdir"]
+ end
CONFIG["compile_dir"] = "#{Dir.pwd}"
MAKEFILE_CONFIG = {}
CONFIG.each{|k,v| MAKEFILE_CONFIG[k] = v.dup}
diff -ur ruby.orig/ruby.c ruby/ruby.c
--- ruby.orig/ruby.c 2002-10-29 23:35:28 +0200
+++ ruby/ruby.c 2002-11-19 13:08:15 +0200
@@ -283,11 +283,14 @@
#endif
ruby_incpush(RUBY_RELATIVE(RUBY_SITE_LIB2));
+ ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB2));
#ifdef RUBY_SITE_THIN_ARCHLIB
ruby_incpush(RUBY_RELATIVE(RUBY_SITE_THIN_ARCHLIB));
#endif
ruby_incpush(RUBY_RELATIVE(RUBY_SITE_ARCHLIB));
ruby_incpush(RUBY_RELATIVE(RUBY_SITE_LIB));
+ ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_ARCHLIB));
+ ruby_incpush(RUBY_RELATIVE(RUBY_VENDOR_LIB));
ruby_incpush(RUBY_RELATIVE(RUBY_LIB));
#ifdef RUBY_THIN_ARCHLIB
diff -ur ruby.orig/instruby.rb ruby/instruby.rb
--- ruby.orig/instruby.rb 2005-02-25 14:37:17 +0200
+++ ruby/instruby.rb 2005-02-25 16:17:46 +0200
@@ -17,7 +17,6 @@
'mantype:doc')
$dryrun = $OPT['n']
- $destdir = $OPT['dest-dir'] || ''
$make = $OPT['make'] || $make || 'make'
$mantype = $OPT['mantype']
mflags = ($OPT['make-flags'] || '').strip
@@ -42,8 +41,6 @@
$mflags << '-n' if $dryrun
end
- $mflags << "DESTDIR=#{$destdir}"
-
$continue = $mflags.set?(?k)
end
@@ -71,25 +68,19 @@
super(dirs, :mode => 0755, :verbose => true) unless dirs.empty?
end
-def with_destdir(dir)
- return dir if $destdir.empty?
- dir = dir.sub(/\A\w:/, '') if File::PATH_SEPARATOR == ';'
- $destdir + dir
-end
-
exeext = CONFIG["EXEEXT"]
ruby_install_name = CONFIG["ruby_install_name"]
rubyw_install_name = CONFIG["rubyw_install_name"]
version = CONFIG["ruby_version"]
-bindir = with_destdir(CONFIG["bindir"])
-libdir = with_destdir(CONFIG["libdir"])
-rubylibdir = with_destdir(CONFIG["rubylibdir"])
-archlibdir = with_destdir(CONFIG["archdir"])
-sitelibdir = with_destdir(CONFIG["sitelibdir"])
-sitearchlibdir = with_destdir(CONFIG["sitearchdir"])
-mandir = with_destdir(File.join(CONFIG["mandir"], "man"))
+bindir = CONFIG["bindir"]
+libdir = CONFIG["libdir"]
+rubylibdir = CONFIG["rubylibdir"]
+archlibdir = CONFIG["archdir"]
+sitelibdir = CONFIG["sitelibdir"]
+sitearchlibdir = CONFIG["sitearchdir"]
+mandir = File.join(CONFIG["mandir"], "man")
configure_args = Shellwords.shellwords(CONFIG["configure_args"])
enable_shared = CONFIG["ENABLE_SHARED"] == 'yes'
dll = CONFIG["LIBRUBY_SO"]
@@ -123,7 +114,7 @@
Dir.chdir CONFIG["srcdir"]
-ruby_shebang = File.join(CONFIG["bindir"], ruby_install_name)
+ruby_shebang = File.join(CONFIG["bindir"], ruby_install_name).sub(/^#{DESTDIR}/,'')
if File::ALT_SEPARATOR
ruby_bin_dosish = ruby_shebang.tr(File::SEPARATOR, File::ALT_SEPARATOR)
end
@@ -153,7 +144,7 @@
if ruby_bin_dosish
batfile = File.join(CONFIG["bindir"], name + ".bat")
- open(with_destdir(batfile), "w") { |b|
+ open(batfile, "w") { |b|
b.print <<EOH, shebang, body, <<EOF
@echo off
if not "%~d0" == "~d0" goto WinNT
diff -ur ruby.orig/ruby/lib/rdoc/ri/ri_paths.rb ruby/ruby/lib/rdoc/ri/ri_paths.rb
--- ruby.orig/lib/rdoc/ri/ri_paths.rb 2005-02-02 10:37:03 +0200
+++ ruby/lib/rdoc/ri/ri_paths.rb 2005-02-25 18:20:30 +0200
@@ -30,13 +30,9 @@
base = File.join(Config::CONFIG['datadir'], "ri", version)
- if ENV["DESTDIR"]
- SYSDIR = File.join(ENV["DESTDIR"], base, "system")
- else
- SYSDIR = File.join(base, "system")
- end
-
+ SYSDIR = File.join(base, "system")
SITEDIR = File.join(base, "site")
+
homedir = ENV['HOME'] || ENV['USERPROFILE'] || ENV['HOMEPATH']
if homedir