From f8530342f4faca241b305fb2da3e6dd094e385c6 Mon Sep 17 00:00:00 2001 From: nobu Date: Mon, 18 Feb 2013 01:09:56 +0000 Subject: configure.in: unexpand_shvar * configure.in (unexpand_shvar): regularize a shell variable by unexpanding shell variables in it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 10 ++++++++++ configure.in | 20 ++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/ChangeLog b/ChangeLog index aec1f3c015..d7e549e209 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Mon Feb 18 10:09:54 2013 Nobuyoshi Nakada + + * configure.in (unexpand_shvar): regularize a shell variable by + unexpanding shell variables in it. + +Mon Feb 18 10:08:28 2013 Nobuyoshi Nakada + + * configure.in (unexpand_shvar): regularize a shell variable by + unexpanding shell variables in it. + Sun Feb 17 20:55:44 2013 Nobuyoshi Nakada * 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='""' -- cgit v1.2.3