Hi Jakub,
> On Fri, Apr 18, 2025 at 01:53:25PM +0200, Rainer Orth wrote:
>> Unless this can be figured out quickly, I suspect the safest solution
>> for now would be to replace the (not filename-related) NAME_MAX by it's
>> Linux <limits.h> definition of 255. Something like this would be
>> required to unbreak Solaris/amd64 --enable-languages=all bootstrap.
>
> I'd think if Solaris/amd64 --enable-languages=all doesn't work out of the
> box, the safest thing for GCC 15 would be to ensure it doesn't include cobol
> in that case (and we can surely change that for 15.2 and definitely should
> for 16).
no argument from me: my primary goal for GCC 15.1 right now is to avoid
breaking the build on Solaris.
> So completely untested:
> --- configure.ac 2025-04-08 14:08:47.450334780 +0200
> +++ configure.ac 2025-04-18 16:49:48.469756364 +0200
> @@ -801,7 +801,7 @@ case ,${enable_languages}, in
> ;;
> *)
> case "${target}" in
> - *-*-darwin*)
> + *-*-darwin*|*-*-solaris*)
> unsupported_languages="$unsupported_languages cobol"
> ;;
> x86_64-*-*|aarch64-*-*)
> @@ -811,6 +811,9 @@ case ,${enable_languages}, in
> ;;
> esac
> case "${host}" in
> + *-*-solaris*)
> + unsupported_languages="$unsupported_languages cobol"
> + ;;
> x86_64-*-*|aarch64-*-*)
> ;;
> *-*-*)
That's one option, but maybe it's better the other way round: instead of
excluding known-bad targets, restrict cobol to known-good ones
(i.e. x86_64-*-linux* and aarch64-*-linux*) instead.
I've been using the following for this (should be retested for safety).
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
2025-03-17 Rainer Orth <[email protected]>
PR cobol/119217
* configure.ac: Restrict cobol to aarch64-*-linux*,
x86_64-*-linux*.
* configure: Regenerate.
# HG changeset patch
# Parent 07c6a0900562d1d9cd3ea087fcd7c2f74cc2f917
cobol: Restrict COBOL to supported Linux arches [PR 119217]
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -3571,31 +3571,28 @@ case ,${enable_languages}, in
*,cobol,*)
case ,${enable_languages}, in
*,c++,*)
- ;;
+ ;;
*)
# We have an explicit cobol, but no c++. We need c++, because cobol
# requires libstdc++
enable_languages="$enable_languages,c++"
- ;;
+ ;;
esac
;;
*)
case "${target}" in
- *-*-darwin*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
- x86_64-*-*|aarch64-*-*)
+ aarch64-*-linux*|x86_64-*-linux*)
;;
*-*-*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
+ unsupported_languages="$unsupported_languages cobol"
+ ;;
esac
case "${host}" in
- x86_64-*-*|aarch64-*-*)
+ aarch64-*-linux*|x86_64-*-linux*)
;;
*-*-*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
+ unsupported_languages="$unsupported_languages cobol"
+ ;;
esac
;;
esac
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -791,31 +791,28 @@ case ,${enable_languages}, in
*,cobol,*)
case ,${enable_languages}, in
*,c++,*)
- ;;
+ ;;
*)
# We have an explicit cobol, but no c++. We need c++, because cobol
# requires libstdc++
enable_languages="$enable_languages,c++"
- ;;
+ ;;
esac
;;
*)
case "${target}" in
- *-*-darwin*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
- x86_64-*-*|aarch64-*-*)
+ aarch64-*-linux*|x86_64-*-linux*)
;;
*-*-*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
+ unsupported_languages="$unsupported_languages cobol"
+ ;;
esac
case "${host}" in
- x86_64-*-*|aarch64-*-*)
+ aarch64-*-linux*|x86_64-*-linux*)
;;
*-*-*)
- unsupported_languages="$unsupported_languages cobol"
- ;;
+ unsupported_languages="$unsupported_languages cobol"
+ ;;
esac
;;
esac