Greetings, On 04/05/25 00:06, Camm Maguire wrote: > Greetings! > > "Chun Tian (binghe)" <binghe.l...@gmail.com> writes: > >> Hi, >> >> I confirm the following patch (according to your hints) makes GCL 2.7 >> successfully built on macOS 15 x86 using Apple clang compiler: >> > > Great! Which clang version is this?
This is clang 17.0.0: $ gcc -v Apple clang version 17.0.0 (clang-1700.0.13.3) Target: x86_64-apple-darwin24.4.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin I didn't try GCC 14 before (I was focusing on GCC-13). Under GCC 14, it's immediate showing that the "(fixnum) conversion" patch will be required, beside the "--disable-libboot" patch. I believe it will be a success (building not finished yet). I will also try more recent clang versions (18 - 20) because Apple will soon adopt them in the next year. > >> --- a/gcl/h/386-macosx.h >> +++ b/gcl/h/386-macosx.h >> @@ -132,7 +132,7 @@ if (realpath (buf, fub) == 0) { >> \ >> #define UC(a_) ((ucontext_t *)a_) >> #define SF(a_) ((siginfo_t *)a_) >> >> -#define FPE_CODE(i_,v_) make_fixnum(FFN(fSfpe_code)(*(fixnum >> *)&UC(v_)->uc_mcontext->__fs.__fpu_fsw,UC(v_)->uc_mcontext->__fs.__fpu_mxcsr)) >> +#define FPE_CODE(i_,v_) make_fixnum((fixnum)FFN(fSfpe_code)(*(fixnum >> *)&UC(v_)->uc_mcontext->__fs.__fpu_fsw,UC(v_)->uc_mcontext->__fs.__fpu_mxcsr)) >> #define FPE_ADDR(i_,v_) make_fixnum(UC(v_)->uc_mcontext->__fs.__fpu_fop ? >> UC(v_)->uc_mcontext->__fs.__fpu_ip : (fixnum)SF(i_)->si_addr) >> #define FPE_CTXT(v_) >> list(3,make_fixnum((fixnum)&UC(v_)->uc_mcontext->__ss), \ >> >> make_fixnum((fixnum)&UC(v_)->uc_mcontext->__fs.__fpu_stmm0), \ >> >> * * * >> >> Having GCL 2.7 buildable by default Apple compiler will ease the users who >> wants >> to build GCL from sources with customized options. For the MacPorts package, >> I >> still think MacPorts GCC 13 is a good option, because so far I can use it to >> build GCL even in macOS 10.10 (perhaps 10.9 also works). >> > > Agreed, gcl should build with both. But the above implies there remains > some x86 combos which don't work. If you could summarize these I'd be > most appreciative! > I cannot give a precise summary on the building status of GCL 2.7 on both Apple compiler and GCC-14 at this moment. A partial result is that 1) macOS 10.15 - 15 with Apple clang compiler, all work. 2) macOS 10.11 - 15 with GCC-13, all work. (Now I'm changing to GCC-14). In earlier macOS versions (10.6 - 10.10), the blocking issue is that the system call "readlinkat()" doesn't exist. If you can change configure.in to detect it and fix the code when it's not available, then I believe GCL 2.7 can support these older macOS versions too. I will keep testing on different OS/compiler combinations and report any new breakage. But overall speaking the situation on macOS x64 is very good now. Thanks! --Chun
signature.asc
Description: OpenPGP digital signature