[m-dev.] test server

Julien Fischer jfischer at opturion.com
Thu Apr 3 13:16:59 AEDT 2025


On Thu, 3 Apr 2025 at 12:52, Peter Wang <novalazy at gmail.com> wrote:

...

> We build boehm_gc using boehm_gc/Makefile.direct, which currently
> includes atomic_ops_sysdeps.o in the OBJS list unconditionally.
>
> I see a few options:
>
>  1. Filter out the warning from ld in our test setup. The warning will
>     go away eventually. I've checked that Mercury binaries produced on
>     various Linux distributions are not requiring executable stacks,
>     so I don't think that's actually an issue.
>
>  2. Delete atomic_ops_sysdeps.o from OBJS in our fork of bdwgc.
>     This might break builds for Solaris/SPARC with non-GCC compilers,
>     if they were working at all. I expect we will hear zero complaints
>     about it.
>
>  3. Introduce a variable in Makefile.direct in our fork of bdwgc
>     that controls whether to include atomic_ops_sysdeps.o in OBJS,
>     then make Mercury's configure script set that variable as required.
>
> Option 3 shouldn't be much harder than 2, but we won't be able to test
> it properly.

I guess a fourth option here is for Mercury to require a C compiler
that supports C11
atomics which should obviate the need for libatomic_ops entirely.  MSVC is a bit
of a problem here since it doesn't support C11 atomics by default, but
we could keep
libatomics_ops around for it and just remove the Solaris/SPARC stuff
that is causing
trouble.

Julien.


More information about the developers mailing list