Hi GCC/Darwin maintainers (Iain, Mike), cfarm104 administrator (Zach)!

Short version: once cfarm104 is back online
(<https://lists.tetaneutral.net/pipermail/cfarm-users/2026-June/001637.html>
"cfarm104 updates and likely downtime"), can I assume that something to
the effect of:

    $ [GCC]/configure --enable-languages=c,c++,fortran
    $ make
    $ make check-target-libgomp

... just works on cfarm104?  <https://portal.cfarm.net/machines/list/>
lists it as a "Mac mini (2020), arm64 Apple M1, MacOSX" system; the only
"Darwin" system that we've got available for public access?

In more detail:

On 2026-05-07T13:16:59+0200, I wrote:
> [...]
>
> The idea of transitioning libgomp from C to C++ implementation has come
> up a number of times, [...]
>
> I'm now working on this.
>
> For a start, I've assessed that all GCC configurations that support
> libgomp also are able to build the GCC/C++ front end, as far as I can
> easily tell.
>
> I'll try to be mindful about handling all of libgomp's implementation
> files, but may reach out to individual GCC target maintainers for
> 'libgomp/config/' files, for example, that I can't easily test myself.
>
> [...]

Per my understanding, for GCC/Darwin, libgomp is enabled by default in
GCC 'configure.ac', and I see Darwin mentioned in 'libgomp/configure.ac',
'libgomp/configure.tgt', and there are 'libgomp/config/darwin/' files.
Please let me know if libgomp/Darwin is in fact not supported (anymore).

Assuming it is supported, I shall try to not break it.

During ongoing development, I'll need to run a number of GCC/libgomp
builds for Darwin over the next few weeks/months (tentatively); therefore
would like to do it myself instead of asking you each time.

As I said above, I need GCC 'configure'd with
'--enable-languages=c,c++,fortran', '--enable-libgomp' (should be
default), and then 'make', and 'make check-target-libgomp' if feasible.

Ideally, easiest, I'd do native builds.  Otherwise, cross builds with
testing option, or without testing, in case that's not feasible.  (I
assume that, as for other configurations, my C -> C++ baseline conversion
changes are good to go also for Darwin, once they compile without error.)

In particular, I'd like to test the following libgomp configuration
variants, which are specific to Darwin:

Per 'libgomp/configure.ac':

    # Check for broken semaphore implementation on darwin.
    # sem_init returns: sem_init error: Function not implemented.
    case "$host" in
      *-darwin*)
        AC_DEFINE(HAVE_BROKEN_POSIX_SEMAPHORES, 1,
            Define if the POSIX Semaphores do not work on your system.)
        ;;
    esac

..., that is, libgomp code conditional to 'HAVE_BROKEN_POSIX_SEMAPHORES'.

..., and 'libgomp/configure.tgt':

    *-*-darwin*)
          config_path="bsd darwin posix"

..., that is 'libgomp/config/bsd/', 'libgomp/config/darwin/' files.  (Not
too much in there, but still...)

As far as I can easily tell, there aren't any architecture-specific
compile-time conditionals in these files, so I assume I don't really care
about the specific CPU architecture.

('libgomp/config/posix/' files are also execised by other configurations,
unsurprisingly.)


Grüße
 Thomas

Reply via email to