[Buildroot] [PATCH] package/gcc: fortran support now requires MMU

Thomas Petazzoni via buildroot <[email protected]>
Newsgroups net.busybox.buildroot
Message-ID <[email protected]>
Since upstream commit
c66d1ba685b0d03b28967d2f7a48f6c64687efa2 ("Fortran: Add a shared
memory multi process coarray implementation [PR88076]"), libgfortran
now unconditionally uses fork(), which makes it impossible to build
Fortran support on noMMU architectures.

In follow-up commit efb497c23a6f4109bf8794342617cbc161c08301, it was
made even more clear: if you don't have fork() and you're not on
WIN32:

+#else
+#error "no way known to start child processes."
+#endif

There are apparently no autobuilder failures for this issue, but the
simple defconfig below allows to trigger the build failure:

BR2_arm=y
BR2_cortex_m7=y
BR2_GCC_VERSION_16_X=y
BR2_TOOLCHAIN_BUILDROOT_FORTRAN=y

Even though this issue is only starting from GCC 16.x, we make Fortran
unavailable on noMMU configurations regardless of the GCC version,
with the reasoning that:

1. Fortran on noMMU is unlikely to be in use

2. Moving forward, all future versions of GCC will have this
   restriction

Cc: Romain Naour <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
---
 package/gcc/Config.in.host | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index d8b89d942c..bc3223eb59 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -98,6 +98,8 @@ config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
 	# on architecture building libquadmath, wchar is required
 	depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
 		(BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
+	# requires fork() since gcc 16.x
+	depends on BR2_USE_MMU
 	select BR2_TOOLCHAIN_HAS_FORTRAN
 	help
 	  Enable this option if you want your toolchain to support the
-- 
2.55.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.