On OS/2, all the codes not using kLIBC do not know of symlinks at all. So copy instead of linking.
* lib/m4sugar/m4sh.m4 (_AS_LN_S_PREPARE): Set as_ln_s to 'cp -pR' on OS/2. --- lib/m4sugar/m4sh.m4 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4 index a94999e..8f6d184 100644 --- a/lib/m4sugar/m4sh.m4 +++ b/lib/m4sugar/m4sh.m4 @@ -1189,12 +1189,13 @@ fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' - # ... but there are two gotchas: + # ... but there are three gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' + # 3) On OS/2, any others than kLIBC has no symlinks. + # In three cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe && + test -z "$OS2_SHELL" || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else -- 1.8.5.2