summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.in3
-rw-r--r--tool/mjit_archflag.sh30
2 files changed, 18 insertions, 15 deletions
diff --git a/Makefile.in b/Makefile.in
index 75e08cf0b1..cb33d28a05 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -583,7 +583,8 @@ un-runnable:
mjit_config.h:
$(ECHO) making $@
@{ \
- . $(srcdir)/tool/mjit_archflag.sh "$(UNIVERSAL_ARCHNAMES)" $(ARCH_FLAG); \
+ . $(srcdir)/tool/mjit_archflag.sh; \
+ parse_arch_flags "$(UNIVERSAL_ARCHNAMES)" $(ARCH_FLAG); \
test "$(Q)" = @ || set -x; \
echo '#ifndef RUBY_MJIT_CONFIG_H'; \
echo '#define RUBY_MJIT_CONFIG_H 1'; \
diff --git a/tool/mjit_archflag.sh b/tool/mjit_archflag.sh
index 4bb3321aff..fc0285e16d 100644
--- a/tool/mjit_archflag.sh
+++ b/tool/mjit_archflag.sh
@@ -10,21 +10,23 @@ quote() {
archs=""
arch_flag=""
-for arch in $1; do
- archs="${archs:+$archs }${arch%=*}"
-done
+parse_arch_flags() {
+ 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
+ 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:+ }