diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | configure.in | 20 |
2 files changed, 30 insertions, 0 deletions
@@ -1,3 +1,13 @@ +Mon Feb 18 10:09:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (unexpand_shvar): regularize a shell variable by + unexpanding shell variables in it. + +Mon Feb 18 10:08:28 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * configure.in (unexpand_shvar): regularize a shell variable by + unexpanding shell variables in it. + Sun Feb 17 20:55:44 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> * compar.c (rb_invcmp): compare by inversed comarison, with preventing diff --git a/configure.in b/configure.in index f86e22b5b0..586bfc2a19 100644 --- a/configure.in +++ b/configure.in @@ -3227,6 +3227,23 @@ shvar_to_cpp() { eval $var='"$val"' } +unexpand_shvar() { + local var=$1 val n v expr quote + shift + test "$#" == 0 && return + quote=['s/${[^${}"]*}/"&"/g'] + for n do + eval v='"$'$n'"' + v="`echo \"$v\" | sed -e \"$quote\" -e ['s/[][$|.\\?*]/\\\\&/g']`" + if test -n "$v"; then + expr=["${expr};s|"'\("[^$"]*\)'"$v|\\1\${$n}\"|g"] + AS_CASE(["$v"], [*'${'*'}'*], [expr=["$expr;s|$v|\"\${$n}\"|g"]]) + fi + done + expr=["${quote}${expr};"'s/"\(\${[^${}"]*}\)"/\1/g'] + eval $var='"`echo \"\\\"${'$var'}\\\"\" | sed \"$expr;s/\\\"\\\"//g;s/^\\\"//;s/\\\"\\\$//\"`"' +} + rubylibprefix='${libdir}/${RUBY_BASE_NAME}' AC_ARG_WITH(rubylibprefix, AS_HELP_STRING([--with-rubylibprefix=DIR], [prefix for ruby libraries [[LIBDIR/RUBY_BASE_NAME]]]), @@ -3311,6 +3328,9 @@ AC_ARG_WITH(vendorarchdir, [vendorarchdir=$withval], [vendorarchdir=${multiarch+'${rubysitearchprefix}/vendor_ruby/${ruby_version}'}${multiarch-'${vendorlibdir}/${sitearch}'}]) +unexpand_shvar rubylibprefix exec_prefix libdir RUBY_BASE_NAME +unexpand_shvar rubyarchprefix exec_prefix libdir arch RUBY_BASE_NAME archlibdir rubylibprefix +unexpand_shvar rubysitearchprefix exec_prefix libdir sitearch arch RUBY_BASE_NAME archlibdir sitearchlibdir rubylibprefix if test "${LOAD_RELATIVE+set}"; then AC_DEFINE_UNQUOTED(LOAD_RELATIVE, $LOAD_RELATIVE) RUBY_EXEC_PREFIX='""' |