@@ -291,15 +291,31 @@ jobs:
291
291
echo "CC=gcc-${vers}" >> $GITHUB_ENV
292
292
echo "CXX=g++-${vers}" >> $GITHUB_ENV
293
293
else
294
- echo "SDKROOT =$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV
294
+ export ARCHITECHURE =$(uname -m)
295
295
if [[ "$ARCHITECHURE" == "arm64" ]]; then
296
- echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV
297
- echo "CXX=$(brew --prefix llvm@18)/bin/clang++" >> $GITHUB_ENV
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
298
313
else
299
314
echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV
300
315
echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV
301
316
fi
302
317
fi
318
+ echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV
303
319
env :
304
320
compiler : ${{ matrix.compiler }}
305
321
@@ -764,9 +780,25 @@ jobs:
764
780
echo "CXX=g++-${vers}" >> $GITHUB_ENV
765
781
else
766
782
echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV
783
+ export ARCHITECHURE=$(uname -m)
767
784
if [[ "$ARCHITECHURE" == "arm64" ]]; then
768
- echo "CC=$(brew --prefix llvm@18)/bin/clang" >> $GITHUB_ENV
769
- echo "CXX=$(brew --prefix llvm@18)/bin/clang++" >> $GITHUB_ENV
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
770
802
else
771
803
echo "CC=$(brew --prefix llvm@15)/bin/clang" >> $GITHUB_ENV
772
804
echo "CXX=$(brew --prefix llvm@15)/bin/clang++" >> $GITHUB_ENV
0 commit comments