From 3dac8eda4127a3c9442848dd4e547f4c8d5cb577 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 15 Nov 2018 05:22:44 +0000 Subject: tool/mjit_archflag.sh: separated, too many escapes git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- tool/mjit_archflag.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 tool/mjit_archflag.sh (limited to 'tool/mjit_archflag.sh') diff --git a/tool/mjit_archflag.sh b/tool/mjit_archflag.sh new file mode 100644 index 0000000000..4bb3321aff --- /dev/null +++ b/tool/mjit_archflag.sh @@ -0,0 +1,39 @@ +# -*- sh -*- + +quote() { + printf "#${indent}define $1" + shift + ${1+printf} ${1+' "%s"'$sep} ${1+"$@"} + echo +} + +archs="" +arch_flag="" + +for arch in $1; do + archs="${archs:+$archs }${arch%=*}" +done + +while shift && [ "$#" -gt 0 ]; do + case "$1" in + -arch) + shift + archs="${archs:+$archs }$1" + ;; + *) + arch_flag="${arch_flag:+${arch_flag} }$1" + ;; + esac +done + +define_arch_flags() { + local indent=${archs:+ } + ${archs:+echo} ${archs:+'#if 0'} + for arch in $archs; do + echo "#elif defined __${arch}__" + quote "MJIT_ARCHFLAG " -arch "${arch}" + done + ${archs:+echo} ${archs:+'#else'} + quote "MJIT_ARCHFLAG ${arch_flag:- /* no flag */}" ${arch_flag} + ${archs:+echo} ${archs:+'#endif'} +} -- cgit v1.2.3