[bug #67750] removal of special prefix chars under .ONESHELL breaks multi-line strings
anonymous <[email protected]> Mon, 1 Dec 2025 08:13:09 -0500 (EST)
| Newsgroups | gmane.comp.gnu.make.bugs |
|---|---|
| Message-ID | <[email protected]> |
Follow-up Comment #1, bug #67750 (group make):
Relatedly, make determines whether $(SHELL) is POSIX by comparing it with this
static list:
/* List of known POSIX (or POSIX-ish) shells. */
static const char *unix_shells[] = {
"sh",
"bash",
"dash",
"ksh",
"rksh",
"zsh",
"ash",
NULL
};
I've suggested in the past that this list become makefile-overridable. My
situation is a little different from yours; I have a shell "mdsh" which *is*
POSIX-compatible but isn't recognized as such so I've been reduced to making a
symlink rksh -> mdsh and invoking it under that name in .ONESHELL
environments. This kind-of works because hardly anyone ever wants to use the
real rksh but it's pretty ugly and non-obvious.
I think both your problem and mine could be at least partially alleviated by
allowing the makefile to say what it considers a POSIX shell.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?67750>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
(application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQk97aszIMMAvLLwm6qLAuaBUf3TgUCaS2UZQAKCRCqLAuaBUf3 TlHWAP9GODccO2vKGksF9HIGZIl61LgWBSWCpy8UziMc5xjnsQEAqxnRL6oS/PF3 BpyEB5l+XU/lmUt5M2w3nVx6RpemQQ4= =qRaV -----END PGP SIGNATURE-----