From 89688b2c029709000c7212bebae068cabf2fd6ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 11:40:59 -0400 Subject: [PATCH 01/56] CI(macOS): Set up compilation for ASAN (Address Sanitizer) --- .github/workflows/macos.yml | 16 +++++++++++++++- .github/workflows/macos_install.sh | 12 ++++++++++-- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index e9e693e57c3..00a48a3195d 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,21 @@ jobs: run: mkdir $HOME/install - name: Build and install shell: micromamba-shell {0} - run: source ./.github/workflows/macos_install.sh $HOME/install + run: source ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND + env: + G_CFLAGS_APPEND: |- + -g \ + -fno-omit-frame-pointer \ + -fsanitize=address \ + -fsanitize-recover=address \ + -fsanitize-recover=all + G_LDFLAGS_APPEND: |- + -g \ + -fno-omit-frame-pointer \ + -fsanitize=address \ + -fsanitize-recover=address \ + -fsanitize-recover=all + ASAN_OPTIONS: detect_leaks=0 - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH - name: Check installed version diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 4f340c73f9e..f296dbc0498 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -66,7 +66,15 @@ export CPPFLAGS="-isystem${CONDA_PREFIX}/include" ./configure $CONFIGURE_FLAGS EXEMPT="" -make -j$(sysctl -n hw.ncpu) CFLAGS="$CFLAGS -Werror $EXEMPT" \ - CXXFLAGS="$CXXFLAGS -Werror $EXEMPT" +# Adding -Werror to make's CFLAGS is a workaround for configuring with +# an old version of configure, which issues compiler warnings and +# errors out. This may be removed with upgraded configure.in file. +makecmd="make" +if [[ "$#" -ge 2 ]]; then + ARGS=("$@") + makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" +fi + +eval $makecmd make install From 17f0feb2f854e21e6d2dd6d1372528bb03bad342 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 14:06:03 -0400 Subject: [PATCH 02/56] Use folded and block chomping for multiline env var --- .github/workflows/macos.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 00a48a3195d..9bf420d4162 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -84,17 +84,17 @@ jobs: shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: - G_CFLAGS_APPEND: |- - -g \ - -fno-omit-frame-pointer \ - -fsanitize=address \ - -fsanitize-recover=address \ + G_CFLAGS_APPEND: >- + -g + -fno-omit-frame-pointer + -fsanitize=address + -fsanitize-recover=address -fsanitize-recover=all - G_LDFLAGS_APPEND: |- - -g \ - -fno-omit-frame-pointer \ - -fsanitize=address \ - -fsanitize-recover=address \ + G_LDFLAGS_APPEND: >- + -g + -fno-omit-frame-pointer + -fsanitize=address + -fsanitize-recover=address -fsanitize-recover=all ASAN_OPTIONS: detect_leaks=0 - name: Add the bin directory to PATH From 74681c4cb3b0399820bb531c77ca0e81a86e1de6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 15:47:52 -0400 Subject: [PATCH 03/56] Update macos_install.sh --- .github/workflows/macos_install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index f296dbc0498..8d4e02c077f 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -73,6 +73,7 @@ EXEMPT="" makecmd="make" if [[ "$#" -ge 2 ]]; then ARGS=("$@") + echo "in extra args" makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" fi From 324028146aa4df7e34d478e7e2d767b01c404e3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 15:54:50 -0400 Subject: [PATCH 04/56] CI(macOS): Run script directly, without sourcing it --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 9bf420d4162..f417bdb33a0 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,7 @@ jobs: run: mkdir $HOME/install - name: Build and install shell: micromamba-shell {0} - run: source ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND + run: ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- -g From ebc2d6e7f80dedf92ff0c7eb2be89ce457109960 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 15:59:10 -0400 Subject: [PATCH 05/56] Update macos_install.sh to use bash shebang --- .github/workflows/macos_install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 8d4e02c077f..8496ac762d4 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash set -e From 579f126c2d0e779da29a91feaab219309dc6d06c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:02:38 -0400 Subject: [PATCH 06/56] Call bash --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index f417bdb33a0..065a9ac5eb0 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,7 @@ jobs: run: mkdir $HOME/install - name: Build and install shell: micromamba-shell {0} - run: ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND + run: bash ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- -g From 2b6cb01771b6467c22634bdc45e643bfaede1d4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:06:38 -0400 Subject: [PATCH 07/56] Update macos_install.sh debug makecmd --- .github/workflows/macos_install.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 8496ac762d4..a4311839938 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -71,11 +71,13 @@ EXEMPT="" # an old version of configure, which issues compiler warnings and # errors out. This may be removed with upgraded configure.in file. makecmd="make" +echo "before extra argd" if [[ "$#" -ge 2 ]]; then ARGS=("$@") echo "in extra args" makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" fi +echo "The make command is: $makecmd" eval $makecmd make install From ff63e5d6043c0ba89235027ffcc21c268f3a5fb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:16:56 -0400 Subject: [PATCH 08/56] Update macos.yml remove deprecated-declarations error --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 065a9ac5eb0..bb491d73035 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -90,6 +90,7 @@ jobs: -fsanitize=address -fsanitize-recover=address -fsanitize-recover=all + -Werror=no-deprecated-declaration G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer From 1c0e6ea7d8e978c50019541e2e1746bfbef3cf96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:20:52 -0400 Subject: [PATCH 09/56] Update macos.yml --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index bb491d73035..b9c605632a0 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -90,7 +90,7 @@ jobs: -fsanitize=address -fsanitize-recover=address -fsanitize-recover=all - -Werror=no-deprecated-declaration + -Werror=no-deprecated-declarations G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer From aadb4c41052d5bacd62d47d0794df27ebd5e136a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:25:42 -0400 Subject: [PATCH 10/56] Update macos.yml -Wno-error=deprecated-declarations --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index b9c605632a0..ff31d93d80d 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -90,7 +90,7 @@ jobs: -fsanitize=address -fsanitize-recover=address -fsanitize-recover=all - -Werror=no-deprecated-declarations + -Wno-error=deprecated-declarations G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer From f64154a45846163b4ce5f2fa7d5482974d77e190 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:29:09 -0400 Subject: [PATCH 11/56] Update macos.yml -Wdeprecated-declarations --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index ff31d93d80d..c4cc3a63d72 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -91,6 +91,7 @@ jobs: -fsanitize-recover=address -fsanitize-recover=all -Wno-error=deprecated-declarations + -Wdeprecated-declarations G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer From 77a8fd17adba6568058c80e6ba6ab31d1008582e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:48:37 -0400 Subject: [PATCH 12/56] Update macos.yml --no-keep-going --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index c4cc3a63d72..5ab9e276ba1 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -99,6 +99,7 @@ jobs: -fsanitize-recover=address -fsanitize-recover=all ASAN_OPTIONS: detect_leaks=0 + MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH - name: Check installed version From 437e1b660e86d85505fd09efc400d65777bc58eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 16:52:20 -0400 Subject: [PATCH 13/56] Update macos.yml use -static-libasan for linker --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 5ab9e276ba1..e02e265f39f 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -98,6 +98,7 @@ jobs: -fsanitize=address -fsanitize-recover=address -fsanitize-recover=all + -static-libasan ASAN_OPTIONS: detect_leaks=0 MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From 79210b04d2a181381e5c89462f8f547d1068cc69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:05:14 -0400 Subject: [PATCH 14/56] =?UTF-8?q?Update=20macos.yml=20-shared-libsan,=20as?= =?UTF-8?q?=20-static-libasan=20isn=E2=80=99t=20available=20on=20macOS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/macos.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index e02e265f39f..70360937031 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -92,13 +92,14 @@ jobs: -fsanitize-recover=all -Wno-error=deprecated-declarations -Wdeprecated-declarations + -shared-libsan G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=address -fsanitize-recover=all - -static-libasan + -shared-libsan ASAN_OPTIONS: detect_leaks=0 MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From cdabb4832c5a28f96a792badf5969d4bd2f07ec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:14:48 -0400 Subject: [PATCH 15/56] Update macos.yml remove shared libsan linker flag Combine -fsanitize-recover modes --- .github/workflows/macos.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 70360937031..d835b8d8eb4 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -88,18 +88,15 @@ jobs: -g -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=address + -fsanitize-recover=address,all -fsanitize-recover=all -Wno-error=deprecated-declarations -Wdeprecated-declarations - -shared-libsan G_LDFLAGS_APPEND: >- -g -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=address -fsanitize-recover=all - -shared-libsan ASAN_OPTIONS: detect_leaks=0 MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From db21a673351cae450f3d92facb2c51a6a8a1524c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:46:40 -0400 Subject: [PATCH 16/56] Update macos.yml add color with -fcolor-diagnostics --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index d835b8d8eb4..e87140c800c 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -86,6 +86,7 @@ jobs: env: G_CFLAGS_APPEND: >- -g + -fcolor-diagnostics -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=address,all From ab72462f1e581f0d12fda5fa8c21f12ccdb3f51e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:53:22 -0400 Subject: [PATCH 17/56] Update macos_install.sh typo --- .github/workflows/macos_install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index a4311839938..40f24b43afb 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -71,7 +71,7 @@ EXEMPT="" # an old version of configure, which issues compiler warnings and # errors out. This may be removed with upgraded configure.in file. makecmd="make" -echo "before extra argd" +echo "before extra args" if [[ "$#" -ge 2 ]]; then ARGS=("$@") echo "in extra args" From ecc8e3995130f62851e36e5b63edb98212607a40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Mon, 23 Jun 2025 17:54:01 -0400 Subject: [PATCH 18/56] Update macos.yml verbose linker flags --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index e87140c800c..c8fa547ba89 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -95,6 +95,7 @@ jobs: -Wdeprecated-declarations G_LDFLAGS_APPEND: >- -g + -v -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=all From d12084abe4296220798a6cdc18b8ed4f820cb3b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 08:55:59 -0400 Subject: [PATCH 19/56] Comment out most added flags --- .github/workflows/macos.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index c8fa547ba89..b47fdbf2fc2 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -85,20 +85,20 @@ jobs: run: bash ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- - -g +# -g -fcolor-diagnostics - -fno-omit-frame-pointer - -fsanitize=address - -fsanitize-recover=address,all - -fsanitize-recover=all - -Wno-error=deprecated-declarations - -Wdeprecated-declarations +# -fno-omit-frame-pointer +# -fsanitize=address +# -fsanitize-recover=address,all +# -fsanitize-recover=all +# -Wno-error=deprecated-declarations +# -Wdeprecated-declarations G_LDFLAGS_APPEND: >- - -g +# -g -v -fno-omit-frame-pointer - -fsanitize=address - -fsanitize-recover=all +# -fsanitize=address +# -fsanitize-recover=all ASAN_OPTIONS: detect_leaks=0 MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From 4104599f24309b6a01bd2ce3b1fa47517b506e60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 08:58:16 -0400 Subject: [PATCH 20/56] Add debug flag -g --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index b47fdbf2fc2..04639e6f607 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -85,7 +85,7 @@ jobs: run: bash ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- -# -g + -g -fcolor-diagnostics # -fno-omit-frame-pointer # -fsanitize=address From 7312a0f9573aad3f60f769077ccd3025092b9d8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:02:01 -0400 Subject: [PATCH 21/56] Update macos.yml --- .github/workflows/macos.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 04639e6f607..a6297e8fc63 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -87,6 +87,7 @@ jobs: G_CFLAGS_APPEND: >- -g -fcolor-diagnostics + # -fno-omit-frame-pointer # -fsanitize=address # -fsanitize-recover=address,all @@ -94,9 +95,8 @@ jobs: # -Wno-error=deprecated-declarations # -Wdeprecated-declarations G_LDFLAGS_APPEND: >- -# -g -v - -fno-omit-frame-pointer +# -fno-omit-frame-pointer # -fsanitize=address # -fsanitize-recover=all ASAN_OPTIONS: detect_leaks=0 From c83b0ddc38ad8f15416f173ee3d8424e9cd49152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:06:03 -0400 Subject: [PATCH 22/56] Remove debug flag --- .github/workflows/macos.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index a6297e8fc63..276ea8f379a 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -85,7 +85,6 @@ jobs: run: bash ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- - -g -fcolor-diagnostics # -fno-omit-frame-pointer From 98c3152459a3a44d7578eab2ad1a8e1f324d4769 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:13:26 -0400 Subject: [PATCH 23/56] Remove bash call --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 276ea8f379a..63d1829427f 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,7 @@ jobs: run: mkdir $HOME/install - name: Build and install shell: micromamba-shell {0} - run: bash ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND + run: ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- -fcolor-diagnostics From 03049e8377ed4fef1eb573969f1b72c7936e369b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:20:22 -0400 Subject: [PATCH 24/56] Update macos_install.sh add env vars to flags --- .github/workflows/macos_install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 40f24b43afb..a3e50d90370 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -71,6 +71,7 @@ EXEMPT="" # an old version of configure, which issues compiler warnings and # errors out. This may be removed with upgraded configure.in file. makecmd="make" +makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" echo "before extra args" if [[ "$#" -ge 2 ]]; then ARGS=("$@") From 09ed305000f9993131dbaec41de45e54fa8f48fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:21:06 -0400 Subject: [PATCH 25/56] Update macos.yml --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 63d1829427f..5e80ee382d3 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,7 @@ jobs: run: mkdir $HOME/install - name: Build and install shell: micromamba-shell {0} - run: ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND + run: source ./.github/workflows/macos_install.sh $HOME/install env: G_CFLAGS_APPEND: >- -fcolor-diagnostics From 955f90cc0d4f9c0a5134c0202a803648a5e580ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:28:06 -0400 Subject: [PATCH 26/56] Update macos_install.sh shebang /bin/sh --- .github/workflows/macos_install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index a3e50d90370..170ef8b2ad6 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh set -e From fb1b3dbaebd394055e54549d96b3eefca3b5e003 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 09:58:03 -0400 Subject: [PATCH 27/56] Update macos.yml comment out make flags --- .github/workflows/macos.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 5e80ee382d3..c68e06108ff 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -86,7 +86,6 @@ jobs: env: G_CFLAGS_APPEND: >- -fcolor-diagnostics - # -fno-omit-frame-pointer # -fsanitize=address # -fsanitize-recover=address,all @@ -98,8 +97,8 @@ jobs: # -fno-omit-frame-pointer # -fsanitize=address # -fsanitize-recover=all - ASAN_OPTIONS: detect_leaks=0 - MAKEFLAGS: --no-keep-going +# ASAN_OPTIONS: detect_leaks=0 +# MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH - name: Check installed version From 30b04b2ee50a5e316e5f0589c912b38ec4947889 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 10:06:21 -0400 Subject: [PATCH 28/56] set -x, run normal make, with flags --- .github/workflows/macos_install.sh | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 170ef8b2ad6..ef4dfb5727c 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -1,6 +1,7 @@ #!/bin/sh set -e +set -x if [ -z "$1" ]; then echo "Usage: $0 PREFIX" @@ -70,15 +71,18 @@ EXEMPT="" # Adding -Werror to make's CFLAGS is a workaround for configuring with # an old version of configure, which issues compiler warnings and # errors out. This may be removed with upgraded configure.in file. -makecmd="make" -makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" +#makecmd="make" +#makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" +echo "Running normal make, with flags" +make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND' + echo "before extra args" -if [[ "$#" -ge 2 ]]; then - ARGS=("$@") - echo "in extra args" - makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" -fi +#if [[ "$#" -ge 2 ]]; then +# ARGS=("$@") +# echo "in extra args" +# makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" +#fi -echo "The make command is: $makecmd" -eval $makecmd +#echo "The make command is: $makecmd" +#eval $makecmd make install From 4780fb280c527aed79cc6656cd18eaf192099ba5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 10:40:11 -0400 Subject: [PATCH 29/56] Update macos_install.sh G_LDFLAGS_APPEND at configure --- .github/workflows/macos_install.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index ef4dfb5727c..9e1f6512fc6 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -64,7 +64,7 @@ export CFLAGS="-O2 -pipe -ffp-contract=off -arch ${CONDA_ARCH} -DGL_SILENCE_DEPR export CXXFLAGS="-O2 -pipe -ffp-contract=off -stdlib=libc++ -arch ${CONDA_ARCH} -Wall -Wextra -Wpedantic" export CPPFLAGS="-isystem${CONDA_PREFIX}/include" -./configure $CONFIGURE_FLAGS +LDFLAGS="$LDFLAGS $G_LDFLAGS_APPEND" ./configure $CONFIGURE_FLAGS EXEMPT="" @@ -74,7 +74,7 @@ EXEMPT="" #makecmd="make" #makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" echo "Running normal make, with flags" -make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND' +make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' echo "before extra args" #if [[ "$#" -ge 2 ]]; then From 6842193eb47070d93f65f99a5cb5921b82411b06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 10:48:42 -0400 Subject: [PATCH 30/56] Update macos_install.sh make args double quoted --- .github/workflows/macos_install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 9e1f6512fc6..3fbd062f0a6 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -74,7 +74,7 @@ EXEMPT="" #makecmd="make" #makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" echo "Running normal make, with flags" -make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' +make -j$(sysctl -n hw.ncpu) CFLAGS="$CFLAGS -Werror $EXEMPT" CXXFLAGS="$CXXFLAGS -Werror $EXEMPT" echo "before extra args" #if [[ "$#" -ge 2 ]]; then From 6a1199bb805be373e32f67f9b39549006754c96e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 11:23:48 -0400 Subject: [PATCH 31/56] Update macos_install.sh use makecmd --- .github/workflows/macos_install.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 3fbd062f0a6..1d6946ec3a1 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -73,8 +73,10 @@ EXEMPT="" # errors out. This may be removed with upgraded configure.in file. #makecmd="make" #makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" -echo "Running normal make, with flags" -make -j$(sysctl -n hw.ncpu) CFLAGS="$CFLAGS -Werror $EXEMPT" CXXFLAGS="$CXXFLAGS -Werror $EXEMPT" +makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror $EXEMPT'" + +#echo "Running normal make, with flags" +#make -j$(sysctl -n hw.ncpu) CFLAGS="$CFLAGS -Werror $EXEMPT" CXXFLAGS="$CXXFLAGS -Werror $EXEMPT" echo "before extra args" #if [[ "$#" -ge 2 ]]; then @@ -83,6 +85,6 @@ echo "before extra args" # makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" #fi -#echo "The make command is: $makecmd" -#eval $makecmd +echo "The make command is: $makecmd" +eval $makecmd make install From cabed6c713b1a999ad2ff4fe03b451b77d531379 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 11:39:03 -0400 Subject: [PATCH 32/56] Update macos.yml enable flags --- .github/workflows/macos.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index c68e06108ff..6a1564fad2a 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -85,19 +85,20 @@ jobs: run: source ./.github/workflows/macos_install.sh $HOME/install env: G_CFLAGS_APPEND: >- + -g -fcolor-diagnostics -# -fno-omit-frame-pointer -# -fsanitize=address -# -fsanitize-recover=address,all -# -fsanitize-recover=all -# -Wno-error=deprecated-declarations -# -Wdeprecated-declarations + -fno-omit-frame-pointer + -fsanitize=address + -fsanitize-recover=address,all + -fsanitize-recover=all + -Wno-error=deprecated-declarations + -Wdeprecated-declarations G_LDFLAGS_APPEND: >- -v -# -fno-omit-frame-pointer -# -fsanitize=address -# -fsanitize-recover=all -# ASAN_OPTIONS: detect_leaks=0 + -fno-omit-frame-pointer + -fsanitize=address + -fsanitize-recover=all + ASAN_OPTIONS: detect_leaks=0 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH From d7dea53a93c7a25dfd43b79044220e9b0ecf459b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 12:11:22 -0400 Subject: [PATCH 33/56] Update macos_install.sh use makecmd without LDFLAGS, but LDFLAGS on configure --- .github/workflows/macos_install.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index 1d6946ec3a1..ab9449f711a 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -79,11 +79,11 @@ makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror $EXEMPT' CXXFLAGS= #make -j$(sysctl -n hw.ncpu) CFLAGS="$CFLAGS -Werror $EXEMPT" CXXFLAGS="$CXXFLAGS -Werror $EXEMPT" echo "before extra args" -#if [[ "$#" -ge 2 ]]; then -# ARGS=("$@") -# echo "in extra args" -# makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT' LDFLAGS='$LDFLAGS $G_LDFLAGS_APPEND'" -#fi +if [[ "$#" -ge 2 ]]; then + ARGS=("$@") + echo "in extra args" + makecmd="make -j$(sysctl -n hw.ncpu) CFLAGS='$CFLAGS -Werror ${ARGS[@]:1} $EXEMPT' CXXFLAGS='$CXXFLAGS -Werror ${ARGS[@]:1} $EXEMPT'" +fi echo "The make command is: $makecmd" eval $makecmd From 11ff56d79220627d0809c755de87b8fc4557f4f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:04:00 -0400 Subject: [PATCH 34/56] Update macos.yml remove verbose linker flag --- .github/workflows/macos.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 6a1564fad2a..fe2d588ce8c 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -94,7 +94,6 @@ jobs: -Wno-error=deprecated-declarations -Wdeprecated-declarations G_LDFLAGS_APPEND: >- - -v -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=all From 6c2ec4ecfcb54865c5d4e9b048709292bc370ab4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:05:18 -0400 Subject: [PATCH 35/56] Update macos.yml comment recover all --- .github/workflows/macos.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index fe2d588ce8c..b70913e24de 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -89,14 +89,14 @@ jobs: -fcolor-diagnostics -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=address,all - -fsanitize-recover=all + -fsanitize-recover=address +# -fsanitize-recover=all -Wno-error=deprecated-declarations -Wdeprecated-declarations G_LDFLAGS_APPEND: >- -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=all + -fsanitize-recover=address ASAN_OPTIONS: detect_leaks=0 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From 31d555adce875baaa15083804db6fd6442a63586 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:06:12 -0400 Subject: [PATCH 36/56] Update macos.yml move comment --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index b70913e24de..3066efc576e 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -90,9 +90,9 @@ jobs: -fno-omit-frame-pointer -fsanitize=address -fsanitize-recover=address -# -fsanitize-recover=all -Wno-error=deprecated-declarations -Wdeprecated-declarations +# -fsanitize-recover=all G_LDFLAGS_APPEND: >- -fno-omit-frame-pointer -fsanitize=address From db10ef6d33bc7efb25b3e36baaaaeff17d04beff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:17:53 -0400 Subject: [PATCH 37/56] Update macos.yml comment out recover --- .github/workflows/macos.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 3066efc576e..1193e3eb9c1 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -89,14 +89,14 @@ jobs: -fcolor-diagnostics -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=address -Wno-error=deprecated-declarations -Wdeprecated-declarations +# -fsanitize-recover=address # -fsanitize-recover=all G_LDFLAGS_APPEND: >- -fno-omit-frame-pointer -fsanitize=address - -fsanitize-recover=address +# -fsanitize-recover=address ASAN_OPTIONS: detect_leaks=0 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH From db649b5a5d6ec6e21e41b2c9bb7ab2601652b93a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:43:38 -0400 Subject: [PATCH 38/56] Update macos.yml show llvm-symbolizer --- .github/workflows/macos.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 1193e3eb9c1..365f1d4af49 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -80,6 +80,9 @@ jobs: $CC --version - name: Create installation directory run: mkdir $HOME/install + - name: Show llvm-symbolizer path + shell: micromamba-shell {0} + run: which llvm-symboliser - name: Build and install shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install @@ -97,7 +100,7 @@ jobs: -fno-omit-frame-pointer -fsanitize=address # -fsanitize-recover=address - ASAN_OPTIONS: detect_leaks=0 + ASAN_OPTIONS: detect_leaks=0,detect_odr_violation=1 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH From 1037692ef24564876e0bb67dd7e16e1a06dabb22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:45:33 -0400 Subject: [PATCH 39/56] Update macos.yml llvm-symbolizer-20 --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 365f1d4af49..942a9ab5ae9 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -82,7 +82,7 @@ jobs: run: mkdir $HOME/install - name: Show llvm-symbolizer path shell: micromamba-shell {0} - run: which llvm-symboliser + run: which llvm-symboliser-20 - name: Build and install shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install From 7d6cdaabbd60b74f483b5eee26f0da06939921e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:49:54 -0400 Subject: [PATCH 40/56] Update conda-requirements-dev-arm64.txt add llvm-tools --- macos/files/conda-requirements-dev-arm64.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/macos/files/conda-requirements-dev-arm64.txt b/macos/files/conda-requirements-dev-arm64.txt index c94d484e0dd..59b1cc9f56a 100644 --- a/macos/files/conda-requirements-dev-arm64.txt +++ b/macos/files/conda-requirements-dev-arm64.txt @@ -30,6 +30,7 @@ libsvm libtiff lld llvm-openmp +llvm-tools matplotlib numpy<2 openblas From ffcc4eb322a78c183c9d65cf1623219c0845c6c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:53:41 -0400 Subject: [PATCH 41/56] Update macos.yml --- .github/workflows/macos.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 942a9ab5ae9..444890a8db3 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -80,9 +80,11 @@ jobs: $CC --version - name: Create installation directory run: mkdir $HOME/install - - name: Show llvm-symbolizer path + - run: show clang shell: micromamba-shell {0} - run: which llvm-symboliser-20 + - name: Show llvm-symbolizer + shell: micromamba-shell {0} + run: which llvm-symboliser - name: Build and install shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install From b85889194cf2d834fa180e49497d5a4685a3a599 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:56:10 -0400 Subject: [PATCH 42/56] Update macos.yml --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 444890a8db3..37306d42325 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -80,7 +80,7 @@ jobs: $CC --version - name: Create installation directory run: mkdir $HOME/install - - run: show clang + - run: which clang shell: micromamba-shell {0} - name: Show llvm-symbolizer shell: micromamba-shell {0} From 28e9235661403b173aa770bd68fcb10b9d5e4939 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 14:05:41 -0400 Subject: [PATCH 43/56] Update conda-requirements-dev-arm64.txt add llvm --- macos/files/conda-requirements-dev-arm64.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/macos/files/conda-requirements-dev-arm64.txt b/macos/files/conda-requirements-dev-arm64.txt index 59b1cc9f56a..cfad3c7b4ff 100644 --- a/macos/files/conda-requirements-dev-arm64.txt +++ b/macos/files/conda-requirements-dev-arm64.txt @@ -29,6 +29,7 @@ libpng libsvm libtiff lld +llvm llvm-openmp llvm-tools matplotlib From b23d047f0bc2828236521c5e03b7bf5814960333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 14:09:39 -0400 Subject: [PATCH 44/56] Update macos.yml typo llvm-symbolizer --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 37306d42325..6a0a5d6317d 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -84,7 +84,7 @@ jobs: shell: micromamba-shell {0} - name: Show llvm-symbolizer shell: micromamba-shell {0} - run: which llvm-symboliser + run: which llvm-symbolizer - name: Build and install shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install From 8573a57e8107f4d3b1b5b23db6f2c0a64964f9b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 14:11:40 -0400 Subject: [PATCH 45/56] Update macos_install.sh remove set -x that showed the commands that ran --- .github/workflows/macos_install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/macos_install.sh b/.github/workflows/macos_install.sh index ab9449f711a..3e66af6c053 100755 --- a/.github/workflows/macos_install.sh +++ b/.github/workflows/macos_install.sh @@ -1,7 +1,6 @@ #!/bin/sh set -e -set -x if [ -z "$1" ]; then echo "Usage: $0 PREFIX" From f5fb94bd79b3ffa4aac2e0df853d31c6b1d37847 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 14:12:03 -0400 Subject: [PATCH 46/56] Update conda-requirements-dev-arm64.txt remove llvm --- macos/files/conda-requirements-dev-arm64.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/macos/files/conda-requirements-dev-arm64.txt b/macos/files/conda-requirements-dev-arm64.txt index cfad3c7b4ff..59b1cc9f56a 100644 --- a/macos/files/conda-requirements-dev-arm64.txt +++ b/macos/files/conda-requirements-dev-arm64.txt @@ -29,7 +29,6 @@ libpng libsvm libtiff lld -llvm llvm-openmp llvm-tools matplotlib From 0ceb0e27680b8a5b6586648871110a8804e6f18a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 15:16:30 -0400 Subject: [PATCH 47/56] Update macos.yml detect leaks and odr --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 6a0a5d6317d..7817faa20b3 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -23,6 +23,7 @@ jobs: runs-on: macos-14 env: PYTHONWARNINGS: always + ASAN_OPTIONS: detect_leaks=1,detect_odr_violation=1 steps: - name: Info run: | From 86d278db24dbfa90bc0b06c087dd46b2c1cb6481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 15:59:54 -0400 Subject: [PATCH 48/56] Update macos.yml detect leaks on compilation --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 7817faa20b3..5c8efade64d 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -103,7 +103,7 @@ jobs: -fno-omit-frame-pointer -fsanitize=address # -fsanitize-recover=address - ASAN_OPTIONS: detect_leaks=0,detect_odr_violation=1 + ASAN_OPTIONS: detect_leaks=1,detect_odr_violation=1 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH From ed3236343dddb3aa274d26eb22609e6961a19f65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Wed, 25 Jun 2025 16:07:24 -0400 Subject: [PATCH 49/56] Update macos.yml --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 5c8efade64d..7817faa20b3 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -103,7 +103,7 @@ jobs: -fno-omit-frame-pointer -fsanitize=address # -fsanitize-recover=address - ASAN_OPTIONS: detect_leaks=1,detect_odr_violation=1 + ASAN_OPTIONS: detect_leaks=0,detect_odr_violation=1 # MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH From 6e5683daad32c5f5763362278cc4c6f6e61593f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 08:12:23 -0400 Subject: [PATCH 50/56] Update conda-requirements-dev-arm64.txt comment out llvm-tools --- macos/files/conda-requirements-dev-arm64.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/macos/files/conda-requirements-dev-arm64.txt b/macos/files/conda-requirements-dev-arm64.txt index 59b1cc9f56a..f9e76b5331d 100644 --- a/macos/files/conda-requirements-dev-arm64.txt +++ b/macos/files/conda-requirements-dev-arm64.txt @@ -30,7 +30,7 @@ libsvm libtiff lld llvm-openmp -llvm-tools +# llvm-tools matplotlib numpy<2 openblas From 30fd77b4047ddb54b7dedc27180088e9a64d1d18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 08:24:43 -0400 Subject: [PATCH 51/56] Update conda-requirements-dev-arm64.txt remove llvm-tools --- macos/files/conda-requirements-dev-arm64.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/macos/files/conda-requirements-dev-arm64.txt b/macos/files/conda-requirements-dev-arm64.txt index f9e76b5331d..c94d484e0dd 100644 --- a/macos/files/conda-requirements-dev-arm64.txt +++ b/macos/files/conda-requirements-dev-arm64.txt @@ -30,7 +30,6 @@ libsvm libtiff lld llvm-openmp -# llvm-tools matplotlib numpy<2 openblas From 17f52f831053ea3934b7da5ebc200cc95c8d170d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 09:15:07 -0400 Subject: [PATCH 52/56] Clean up macos.yml --- .github/workflows/macos.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 7817faa20b3..bb8eb6022a4 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -81,11 +81,13 @@ jobs: $CC --version - name: Create installation directory run: mkdir $HOME/install - - run: which clang + - name: Show clang path shell: micromamba-shell {0} + run: which clang - name: Show llvm-symbolizer shell: micromamba-shell {0} run: which llvm-symbolizer + # Commented below are some possible flags to pass to not exit on failures - name: Build and install shell: micromamba-shell {0} run: source ./.github/workflows/macos_install.sh $HOME/install @@ -104,7 +106,6 @@ jobs: -fsanitize=address # -fsanitize-recover=address ASAN_OPTIONS: detect_leaks=0,detect_odr_violation=1 -# MAKEFLAGS: --no-keep-going - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH - name: Check installed version From 0d0be0aa549716b62f409619a2a88c83d677b9a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 09:33:06 -0400 Subject: [PATCH 53/56] Update macos.yml add comment on llvm-symbolizer --- .github/workflows/macos.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index bb8eb6022a4..fc61f9ef969 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -84,6 +84,8 @@ jobs: - name: Show clang path shell: micromamba-shell {0} run: which clang + # llvm-symbolizer, if on path or specified with ASAN_SYMBOLIZER_PATH, + # enhances tracebacks with line numbers instead of addresses - name: Show llvm-symbolizer shell: micromamba-shell {0} run: which llvm-symbolizer From 791c4a1108591d22882faf200a1843a1c0d4a690 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 09:37:12 -0400 Subject: [PATCH 54/56] Update macos.yml add $G_CFLAGS_APPEND to source command --- .github/workflows/macos.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index fc61f9ef969..3f35ef5ef2c 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -92,7 +92,7 @@ jobs: # Commented below are some possible flags to pass to not exit on failures - name: Build and install shell: micromamba-shell {0} - run: source ./.github/workflows/macos_install.sh $HOME/install + run: source ./.github/workflows/macos_install.sh $HOME/install $G_CFLAGS_APPEND env: G_CFLAGS_APPEND: >- -g From 9b63f6e55bcc6ccb3d0c884157b62b1d9f331c93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 10:48:58 -0400 Subject: [PATCH 55/56] Update ctypesgen Makefile to add libclang_rt for interceptors to work --- python/libgrass_interface_generator/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/libgrass_interface_generator/Makefile b/python/libgrass_interface_generator/Makefile index c2aa362db56..4db0c00b978 100644 --- a/python/libgrass_interface_generator/Makefile +++ b/python/libgrass_interface_generator/Makefile @@ -60,7 +60,7 @@ ifneq ($(MINGW),) INTLLIB = -lintl-8 endif -CTYPESGEN = ./run.py +CTYPESGEN = DYLD_INSERT_LIBRARIES=/Users/runner/micromamba/envs/grass-env/lib/clang/20/lib/darwin/libclang_rt.asan_osx_dynamic.dylib ./run.py CTYPESFLAGS = --no-embed-preamble --strip-build-path "$(ARCH_DISTDIR)" \ --cpp "$(CC) -E $(CPPFLAGS) $(LFS_CFLAGS) $(EXTRA_CFLAGS) $(NLS_CFLAGS) $(DEFS) $(EXTRA_INC) $(INC) -D__GLIBC_HAVE_LONG_LONG" EXTRA_CLEAN_FILES := $(wildcard ctypesgen/*.pyc) $(wildcard ctypesgen/*/*.pyc) From 43de0fe8832ec3b350390549544129c1f36e8914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edouard=20Choini=C3=A8re?= <27212526+echoix@users.noreply.github.com> Date: Thu, 26 Jun 2025 11:42:57 -0400 Subject: [PATCH 56/56] Update macos.yml compile with env DYLD_INSERT_LIBRARIES=/Users/runner/micromamba/envs/grass-env/lib/clang/20/lib/darwin/libclang_rt.asan_osx_dynamic.dylib --- .github/workflows/macos.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 3f35ef5ef2c..ac3ed0ad0b1 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -108,6 +108,7 @@ jobs: -fsanitize=address # -fsanitize-recover=address ASAN_OPTIONS: detect_leaks=0,detect_odr_violation=1 + DYLD_INSERT_LIBRARIES: /Users/runner/micromamba/envs/grass-env/lib/clang/20/lib/darwin/libclang_rt.asan_osx_dynamic.dylib - name: Add the bin directory to PATH run: echo "$HOME/install/bin" >> $GITHUB_PATH - name: Check installed version