@@ -86,40 +86,40 @@ jobs:
8686            cppyy : Off 
8787            llvm_enable_projects : " clang" 
8888            llvm_targets_to_build : " host;NVPTX" 
89-           - name : osx14 -arm-clang-clang-repl-19
90-             os : macos-14  
89+           - name : osx15 -arm-clang-clang-repl-19
90+             os : macos-15  
9191            compiler : clang 
9292            clang-runtime : ' 19' 
9393            cling : Off 
9494            cppyy : On 
9595            llvm_enable_projects : " clang;lld" 
9696            llvm_targets_to_build : " WebAssembly;host;NVPTX" 
97-           - name : osx14 -arm-clang-clang-repl-18
98-             os : macos-14  
97+           - name : osx15 -arm-clang-clang-repl-18
98+             os : macos-15  
9999            compiler : clang 
100100            clang-runtime : ' 18' 
101101            cling : Off 
102102            cppyy : On 
103103            llvm_enable_projects : " clang" 
104104            llvm_targets_to_build : " host;NVPTX" 
105-           - name : osx14 -arm-clang-clang-repl-17
106-             os : macos-14  
105+           - name : osx15 -arm-clang-clang-repl-17
106+             os : macos-15  
107107            compiler : clang 
108108            clang-runtime : ' 17' 
109109            cling : Off 
110110            cppyy : On 
111111            llvm_enable_projects : " clang" 
112112            llvm_targets_to_build : " host;NVPTX" 
113-           - name : osx14 -arm-clang-clang-repl-16
114-             os : macos-14  
113+           - name : osx15 -arm-clang-clang-repl-16
114+             os : macos-15  
115115            compiler : clang 
116116            clang-runtime : ' 16' 
117117            cling : Off 
118118            cppyy : On 
119119            llvm_enable_projects : " clang" 
120120            llvm_targets_to_build : " host;NVPTX" 
121-           - name : osx14 -arm-clang-clang13-cling
122-             os : macos-14  
121+           - name : osx15 -arm-clang-clang13-cling
122+             os : macos-15  
123123            compiler : clang 
124124            clang-runtime : ' 13' 
125125            cling : On 
@@ -291,13 +291,31 @@ jobs:
291291          echo "CC=gcc-${vers}" >> $GITHUB_ENV 
292292          echo "CXX=g++-${vers}" >> $GITHUB_ENV 
293293        else 
294-           echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV 
295-           #Use clang-15 and clang++-15 compiler that is installed on runner, instead of one 
296-           #provided by MacOS (could brew install clang-16/17 to use consistent version 
297-           #of clang) 
298-           echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
299-           echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
294+           export ARCHITECHURE=$(uname -m) 
295+           if [[ "$ARCHITECHURE" == "arm64" ]]; then 
296+             cling_on=$(echo "${{ matrix.cling }}" | tr '[:lower:]' '[:upper:]') 
297+             if [[ "${cling_on}" == "ON" ]]; then   
298+                 brew install llvm@15 
299+                 brew remove llvm@18 
300+                 brew cleanup 
301+                 #FIXME: Do not believe setting all these environment variables are necessary 
302+                 #       They were set to avoid using Xcodes libc++ and to stop CppInterOp using llvm@18 in tests 
303+                 echo 'LDFLAGS="-L/opt/homebrew/opt/llvm@15/lib/ -L/opt/homebrew/opt/llvm@15/c++/"' >> $GITHUB_ENV 
304+                 echo 'CPPFLAGS="-I/opt/homebrew/opt/llvm@15/include"' >> $GITHUB_ENV 
305+                 echo 'CPATH="/opt/homebrew/include/"' >> $GITHUB_ENV 
306+                 echo 'LIBRARY_PATH="/opt/homebrew/lib/"' >> $GITHUB_ENV 
307+                 echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
308+                 echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
309+             else 
310+               echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV 
311+               echo "CXX=$(brew --prefix llvm@18)/bin/clang++" >> $GITHUB_ENV 
312+             fi 
313+           else 
314+             echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
315+             echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
316+           fi 
300317        fi 
318+         echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV 
301319       env :
302320        compiler : ${{ matrix.compiler }} 
303321
@@ -345,10 +363,11 @@ jobs:
345363      if : ${{ runner.os == 'macOS' && steps.cache.outputs.cache-hit != 'true' }} 
346364      run : | 
347365        brew update 
348- 349366        export ARCHITECHURE=$(uname -m) 
350367        if [[ "$ARCHITECHURE" != "x86_64" ]]; then 
351368          brew remove unxip 
369+         else 
370+ 352371        fi 
353372        # workaround for https://github.com/actions/setup-python/issues/577 
354373        for pkg in $(brew list | grep '^python@'); do 
@@ -585,32 +604,32 @@ jobs:
585604          #   clang-runtime: '17'
586605          #   cling: Off
587606          #   cppyy: On
588-           - name : osx14 -arm-clang-clang-repl-19-cppyy
589-             os : macos-14  
607+           - name : osx15 -arm-clang-clang-repl-19-cppyy
608+             os : macos-15  
590609            compiler : clang 
591610            clang-runtime : ' 19' 
592611            cling : Off 
593612            cppyy : On 
594-           - name : osx14 -arm-clang-clang-repl-18-cppyy
595-             os : macos-14  
613+           - name : osx15 -arm-clang-clang-repl-18-cppyy
614+             os : macos-15  
596615            compiler : clang 
597616            clang-runtime : ' 18' 
598617            cling : Off 
599618            cppyy : On 
600-           - name : osx14 -arm-clang-clang-repl-17-cppyy
601-             os : macos-14  
619+           - name : osx15 -arm-clang-clang-repl-17-cppyy
620+             os : macos-15  
602621            compiler : clang 
603622            clang-runtime : ' 17' 
604623            cling : Off 
605624            cppyy : On 
606-           - name : osx14 -arm-clang-clang-repl-16
607-             os : macos-14  
625+           - name : osx15 -arm-clang-clang-repl-16
626+             os : macos-15  
608627            compiler : clang 
609628            clang-runtime : ' 16' 
610629            cling : Off 
611630            cppyy : Off 
612-           - name : osx14 -arm-clang-clang13-cling-cppyy
613-             os : macos-14  
631+           - name : osx15 -arm-clang-clang13-cling-cppyy
632+             os : macos-15  
614633            compiler : clang 
615634            clang-runtime : ' 13' 
616635            cling : On 
@@ -761,11 +780,29 @@ jobs:
761780          echo "CXX=g++-${vers}" >> $GITHUB_ENV 
762781        else 
763782          echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV 
764-           #Use clang-15 and clang++-15 compiler that is installed on runner, instead of one 
765-           #provided by MacOS (could brew install clang-16/17 to use consistent version 
766-           #of clang) 
767-           echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
768-           echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
783+           export ARCHITECHURE=$(uname -m) 
784+           if [[ "$ARCHITECHURE" == "arm64" ]]; then 
785+             cling_on=$(echo "${{ matrix.cling }}" | tr '[:lower:]' '[:upper:]') 
786+             if [[ "${cling_on}" == "ON" ]]; then   
787+                 brew install llvm@15 
788+                 brew remove llvm@18 
789+                 brew cleanup 
790+                 #FIXME: Do not believe setting all these environment variables are necessary 
791+                 #       They were set to avoid using Xcodes libc++ and to stop CppInterOp using llvm@18 in tests 
792+                 echo 'LDFLAGS="-L/opt/homebrew/opt/llvm@15/lib/ -L/opt/homebrew/opt/llvm@15/c++/"' >> $GITHUB_ENV 
793+                 echo 'CPPFLAGS="-I/opt/homebrew/opt/llvm@15/include"' >> $GITHUB_ENV 
794+                 echo 'CPATH="/opt/homebrew/include/"' >> $GITHUB_ENV 
795+                 echo 'LIBRARY_PATH="/opt/homebrew/lib/"' >> $GITHUB_ENV 
796+                 echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
797+                 echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
798+             else 
799+               echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV 
800+               echo "CXX=$(brew --prefix llvm@18)/bin/clang++" >> $GITHUB_ENV 
801+             fi 
802+           else 
803+             echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV 
804+             echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV 
805+           fi 
769806        fi 
770807       env :
771808        compiler : ${{ matrix.compiler }} 
@@ -813,9 +850,9 @@ jobs:
813850      if : runner.os == 'macOS' 
814851      run : | 
815852        brew update --force  
816- 817853        export ARCHITECHURE=$(uname -m) 
818854        if [[ "$ARCHITECHURE" == "x86_64" ]]; then 
855+ 819856          brew remove swiftlint 
820857        else 
821858          brew remove unxip 
@@ -1149,8 +1186,8 @@ jobs:
11491186            cling : Off 
11501187            micromamba_shell_init : bash 
11511188            emsdk_ver : " 3.1.45" 
1152-           - name : osx14 -arm-clang-clang-repl-19-emscripten_wasm
1153-             os : macos-14  
1189+           - name : osx15 -arm-clang-clang-repl-19-emscripten_wasm
1190+             os : macos-15  
11541191            compiler : clang 
11551192            clang-runtime : ' 19' 
11561193            cling : Off 
0 commit comments