summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorNobuyoshi Nakada <[email protected]>2025-02-17 13:19:08 +0900
committerNobuyoshi Nakada <[email protected]>2025-02-17 13:19:08 +0900
commit7032e2d6bc8ff3a046ff17e7a676a1ab8e4070f2 ()
treeba21ffdd41a204786b263269dd29d5728c4161e0 /configure.ac
parentc1c7934b63d7682216fed9dd7c9ddff5b72fea89 (diff)
Check programs for CC in the same path
When the path of `CC` contains the target program name, e.g., clang, the replaced program names were unexpected. Replace basename part only.
Notes: Merged: https://.com/ruby/ruby/pull/12762
-rw-r--r--configure.ac36
1 files changed, 18 insertions, 18 deletions
@@ -208,7 +208,7 @@ AC_ARG_VAR([STRIP], [Strip command])
set rb_dummy ${CC}
rb_CC=$2
AC_DEFUN([RUBY_CHECK_PROG_FOR_CC], [
- rb_prog=`echo "${rb_CC}" | sed "$2"`
AC_CHECK_PROG([$1], [$rb_prog], [$rb_prog])
])
AS_CASE(["/${rb_CC} "],
@@ -219,17 +219,17 @@ AS_CASE(["/${rb_CC} "],
[*icc*], [
# Intel C++ has interprocedural optimizations. It tends to come with its
# own linker etc.
- RUBY_CHECK_PROG_FOR_CC([AR], [s/icc/xiar/])
- RUBY_CHECK_PROG_FOR_CC([CXX], [s/icc/icpc/])
- RUBY_CHECK_PROG_FOR_CC([LD], [s/icc/xild/])
],
[*gcc*], [
# Ditto for GCC.
- RUBY_CHECK_PROG_FOR_CC([LD], [s/gcc/ld/])
- RUBY_CHECK_PROG_FOR_CC([AR], [s/gcc/gcc-ar/])
- RUBY_CHECK_PROG_FOR_CC([CXX], [s/gcc/g++/])
- RUBY_CHECK_PROG_FOR_CC([NM], [s/gcc/gcc-nm/])
- RUBY_CHECK_PROG_FOR_CC([RANLIB], [s/gcc/gcc-ranlib/])
],
[*clang*], [
# Ditto for LLVM. Note however that llvm-as is a LLVM-IR to LLVM bitcode
@@ -242,15 +242,15 @@ AS_CASE(["/${rb_CC} "],
[llvm_prefix=], [llvm_prefix=llvm-])
# AC_PREPROC_IFELSE cannot be used before AC_USE_SYSTEM_EXTENSIONS
- RUBY_CHECK_PROG_FOR_CC([LD], [s/clang/ld/]) # ... maybe try lld ?
- RUBY_CHECK_PROG_FOR_CC([AR], [s/clang/${llvm_prefix}ar/])
-# RUBY_CHECK_PROG_FOR_CC([AS], [s/clang/${llvm_prefix}as/])
- RUBY_CHECK_PROG_FOR_CC([CXX], [s/clang/clang++/])
- RUBY_CHECK_PROG_FOR_CC([NM], [s/clang/${llvm_prefix}nm/])
- RUBY_CHECK_PROG_FOR_CC([OBJCOPY], [s/clang/${llvm_prefix}objcopy/])
- RUBY_CHECK_PROG_FOR_CC([OBJDUMP], [s/clang/${llvm_prefix}objdump/])
- RUBY_CHECK_PROG_FOR_CC([RANLIB], [s/clang/${llvm_prefix}ranlib/])
- RUBY_CHECK_PROG_FOR_CC([STRIP], [s/clang/${llvm_prefix}strip/])
])
AS_UNSET(rb_CC)
AS_UNSET(rb_dummy)