]> git.pld-linux.org Git - packages/ruby.git/blob - arch-specific-dir.patch
new files
[packages/ruby.git] / arch-specific-dir.patch
1 From df4253a5b79b63f16f215f2c19f1b9666c4ca01e Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
3 Date: Thu, 8 Sep 2011 15:30:05 +0200
4 Subject: [PATCH] Add configuration arch specific dir flag.
5
6 ---
7  Makefile.in      |    1 +
8  configure.in     |   20 ++++++++++++++++++++
9  tool/mkconfig.rb |    4 +++-
10  version.c        |    2 ++
11  4 files changed, 26 insertions(+), 1 deletions(-)
12
13 diff --git a/Makefile.in b/Makefile.in
14 index bcdaf5f..d61b2ee 100644
15 --- a/Makefile.in
16 +++ b/Makefile.in
17 @@ -31,6 +31,7 @@ libexecdir = @libexecdir@
18  datarootdir = @datarootdir@
19  datadir = @datadir@
20  arch = @arch@
21 +archdir = @archdir@
22  sitearch = @sitearch@
23  sitedir = @sitedir@
24  ruby_version = @ruby_version@
25 diff --git a/configure.in b/configure.in
26 index 83e5d76..e6dc38c 100644
27 --- a/configure.in
28 +++ b/configure.in
29 @@ -2793,6 +2793,15 @@ else
30      RUBY_LIB_VERSION="\"${ruby_version}\""
31  fi
32  
33 +AC_ARG_WITH(archdir,
34 +           AS_HELP_STRING([--with-archdir=DIR], [architecture specific ruby libraries [[LIBDIR/RUBY_BASE_NAME/ARCH]]]),
35 +            [archdir=$withval],
36 +            [archdir='${rubylibprefix}/${arch}'])
37 +dir="${archdir}"
38 +until ARCH_DIR=`eval echo \\"${dir}\\"`; test "x${dir}" = "x${ARCH_DIR}"; do
39 +    dir="${ARCH_DIR}"
40 +done
41 +
42  AC_ARG_WITH(sitedir,
43             AS_HELP_STRING([--with-sitedir=DIR], [site libraries in DIR [[RUBY_LIB_PREFIX/site_ruby]]]),
44              [sitedir=$withval],
45 @@ -2815,16 +2824,25 @@ if test "${LOAD_RELATIVE+set}"; then
46      AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE)
47      RUBY_EXEC_PREFIX=""
48      RUBY_LIB_PREFIX="`eval echo "$RUBY_LIB_PREFIX" | sed 's|^NONE/|/|;s|^'"$prefix"'/|/|'`"
49 +    RUBY_ARCH_LIB_PATH="`eval echo "$ARCH_DIR" | sed 's|^NONE/|/|;s|^'"$prefix"'/|/|'`"
50      RUBY_SITE_LIB_PATH="`eval echo "$SITE_DIR" | sed 's|^NONE/|/|;s|^'"$prefix"'/|/|'`"
51      RUBY_VENDOR_LIB_PATH="`eval echo "$VENDOR_DIR" | sed 's|^NONE/|/|;s|^'"$prefix"'/|/|'`"
52  else
53      RUBY_EXEC_PREFIX="`eval echo \\"$exec_prefix/\\" | sed 's|^NONE/|'"$prefix"'/|;s|/$||'`"
54      RUBY_LIB_PREFIX="`eval echo \\"$RUBY_LIB_PREFIX\\" | sed 's|^NONE/|'"$prefix"'/|'`"
55 +    RUBY_ARCH_LIB_PATH="`eval echo \\"$ARCH_DIR\\" | sed 's|^NONE/|'"$prefix"'/|'`"
56      RUBY_SITE_LIB_PATH="`eval echo \\"$SITE_DIR\\" | sed 's|^NONE/|'"$prefix"'/|'`"
57      RUBY_VENDOR_LIB_PATH="`eval echo \\"$VENDOR_DIR\\" | sed 's|^NONE/|'"$prefix"'/|'`"
58  fi
59  
60  pat=`echo "$RUBY_LIB_PREFIX/" | tr -c '\012' .`'\(.*\)'
61 +AS_CASE(["$RUBY_ARCH_LIB_PATH"],
62 +  ["$RUBY_LIB_PREFIX/"*], [
63 +    RUBY_ARCH_LIB_PATH='RUBY_LIB_PREFIX"/'"`expr \"$RUBY_ARCH_LIB_PATH\" : \"$pat\"`"'"'
64 +    ],
65 +  [
66 +    RUBY_ARCH_LIB_PATH="\"${RUBY_ARCH_LIB_PATH}\""
67 +    ])
68  AS_CASE(["$RUBY_SITE_LIB_PATH"],
69    ["$RUBY_LIB_PREFIX/"*], [
70      RUBY_SITE_LIB_PATH='RUBY_LIB_PREFIX"/'"`expr \"$RUBY_SITE_LIB_PATH\" : \"$pat\"`"'"'
71 @@ -2855,6 +2873,7 @@ else
72  fi
73  AC_DEFINE_UNQUOTED(RUBY_EXEC_PREFIX, "${RUBY_EXEC_PREFIX}")
74  AC_DEFINE_UNQUOTED(RUBY_LIB_PREFIX, ${RUBY_LIB_PREFIX})
75 +AC_DEFINE_UNQUOTED(RUBY_ARCHLIB, ${RUBY_ARCH_LIB_PATH})
76  if test "x$SITE_DIR" = xno; then
77      AC_DEFINE(NO_RUBY_SITE_LIB)
78  else
79 @@ -2869,6 +2888,7 @@ fi
80  AC_SUBST(arch)dnl
81  AC_SUBST(sitearch)dnl
82  AC_SUBST(ruby_version)dnl
83 +AC_SUBST(archdir)dnl
84  AC_SUBST(sitedir)dnl
85  AC_SUBST(vendordir)dnl
86  
87 diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb
88 index b707c4b..9780ef2 100755
89 --- a/tool/mkconfig.rb
90 +++ b/tool/mkconfig.rb
91 @@ -43,6 +43,7 @@ v_others = []
92  continued_name = nil
93  continued_line = nil
94  path_version = "/$(ruby_version)"
95 +archdir_override = "$(vendorlibdir)/$(sitearch)"
96  File.foreach "config.status" do |line|
97    next if /^#/ =~ line
98    name = nil
99 @@ -77,6 +78,7 @@ File.foreach "config.status" do |line|
100      when /^RUBY_INSTALL_NAME$/; next if $install_name
101      when /^RUBY_SO_NAME$/; next if $so_name
102      when /^arch$/; if val.empty? then val = arch else arch = val end
103 +    when /^archdir$/; archdir_override = val; next
104      when /^sitearch/; val = '$(arch)' if val.empty?
105      end
106      case val
107 @@ -207,7 +209,7 @@ print(*v_fast)
108  print(*v_others)
109  print <<EOS
110    CONFIG["rubylibdir"] = "$(rubylibprefix)#{path_version}"
111 -  CONFIG["archdir"] = "$(rubylibdir)/$(arch)"
112 +  CONFIG["archdir"] = "#{archdir_override}"
113  EOS
114  print <<EOS unless v_disabled["sitedir"]
115    CONFIG["sitelibdir"] = "$(sitedir)#{path_version}"
116 diff --git a/version.c b/version.c
117 index 59d4e5e..915a0a2 100644
118 --- a/version.c
119 +++ b/version.c
120 @@ -47,7 +47,9 @@
121  #define RUBY_SITE_LIB2              RUBY_SITE_LIB    "/"RUBY_LIB_VERSION
122  #define RUBY_VENDOR_LIB2            RUBY_VENDOR_LIB  "/"RUBY_LIB_VERSION
123  #endif
124 +#ifndef RUBY_ARCHLIB
125  #define RUBY_ARCHLIB                RUBY_LIB         "/"RUBY_ARCH
126 +#endif
127  #define RUBY_SITE_ARCHLIB           RUBY_SITE_LIB2   "/"RUBY_SITEARCH
128  #define RUBY_VENDOR_ARCHLIB         RUBY_VENDOR_LIB2 "/"RUBY_SITEARCH
129  #ifdef  RUBY_THINARCH
130 -- 
131 1.7.6.1
132
This page took 0.168352 seconds and 3 git commands to generate.