Hi GCC/RTEMS maintainers! 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/RTEMS, libgomp is not enabled by default in GCC 'configure.ac' (needs explicit '--enable-libgomp'), but it appears to be supported: RTEMS is mentioned in 'libgomp/configure.ac', 'libgomp/configure.tgt', and has 'libgomp/config/rtems/' files. Please let me know in case libgomp/RTEMS 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 RTEMS over the next few weeks/months (tentatively); therefore would like to do it myself instead of asking you each time. I need GCC 'configure'd with '--enable-languages=c,c++,fortran', '--enable-libgomp', and then 'make', and 'make check-target-libgomp' if feasible. Ideally, easiest, I'd do native builds, but that may not be applicable for RTEMS? I don't see any RTEMS systems listed on <https://portal.cfarm.net/machines/list/>. Otherwise, cross builds with testing option, or without testing, in case that's not feasible. (I assume that, as for other configurations, also for RTEMS my C -> C++ baseline conversion changes are good to go, once they compile without error.) Per 'libgomp/configure.ac': *-*-rtems*) AC_CHECK_TYPES([struct _Mutex_Control],[],[],[#include <sys/lock.h>]) ..., and 'libgomp/configure.tgt': *-*-rtems*) # Use self-contained synchronization objects if provided by Newlib if test "x$ac_cv_type_struct__Mutex_Control" = xyes ; then config_path="rtems posix" ..., there appear to be two major configuration variants: either only 'libgomp/config/posix/', or 'libgomp/config/rtems/' plus the former. (As far as I can easily tell, there aren't any compile-time conditionals in the 'libgomp/config/rtems/' files, so I assume I don't really care about the specific CPU architecture.) Grüße Thomas
