Subject: Re: [PATCH] config.mak.uname: update settings for Solaris 11

From: Jonathan Nieder <[email-masked]>
Date: Sat, 7 Jun 2025 10:42:58 +0200

Brad Smith wrote:

> Solaris 11.0 and newer have mkdtemp(), memmem(), strcasestr()
> and strtoumax().
>
> Signed-off-by: Brad Smith <[email-masked]>
> ---
>  config.mak.uname | 28 +++++++++++++++++++++++++---
>  1 file changed, 25 insertions(+), 3 deletions(-)

Thanks!  That's from more than 10 years ago, so seems very reasonable
to rely on.  I assume this is tested :), so lgtm.

Reviewed-by: Jonathan Nieder <[email-masked]>

[...]
> --- a/config.mak.uname
> +++ b/config.mak.uname
> @@ -190,9 +190,6 @@ ifeq ($(uname_S),SunOS)
>  	SHELL_PATH = /bin/bash
>  	SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin
>  	HAVE_ALLOCA_H = YesPlease
> -	NO_STRCASESTR = YesPlease
> -	NO_MEMMEM = YesPlease
> -	NO_MKDTEMP = YesPlease
>  	NO_REGEX = YesPlease
>  	NO_MSGFMT_EXTENDED_OPTIONS = YesPlease
>  	HAVE_DEV_TTY = YesPlease
> @@ -202,7 +199,10 @@ ifeq ($(uname_S),SunOS)
>  		NO_IPV6 = YesPlease
>  		NO_SOCKADDR_STORAGE = YesPlease
>  		NO_UNSETENV = YesPlease
> +		NO_MKDTEMP = YesPlease
> +		NO_MEMMEM = YesPlease
>  		NO_SETENV = YesPlease
> +		NO_STRCASESTR = YesPlease
>  		NO_STRLCPY = YesPlease
>  		NO_STRTOUMAX = YesPlease
>  		GIT_TEST_CMP = cmp
> @@ -212,23 +212,45 @@ ifeq ($(uname_S),SunOS)
>  		NO_IPV6 = YesPlease
>  		NO_SOCKADDR_STORAGE = YesPlease
>  		NO_UNSETENV = YesPlease
> +		NO_MKDTEMP = YesPlease
> +		NO_MEMMEM = YesPlease
>  		NO_SETENV = YesPlease
> +		NO_STRCASESTR = YesPlease
>  		NO_STRLCPY = YesPlease
>  		NO_STRTOUMAX = YesPlease
>  		GIT_TEST_CMP = cmp
>          endif
>          ifeq ($(uname_R),5.8)
>  		NO_UNSETENV = YesPlease
> +		NO_MKDTEMP = YesPlease
> +		NO_MEMMEM = YesPlease
>  		NO_SETENV = YesPlease
> +		NO_STRCASESTR = YesPlease
>  		NO_STRTOUMAX = YesPlease
>  		GIT_TEST_CMP = cmp
>          endif
>          ifeq ($(uname_R),5.9)
>  		NO_UNSETENV = YesPlease
> +		NO_MKDTEMP = YesPlease
> +		NO_MEMMEM = YesPlease
>  		NO_SETENV = YesPlease
> +		NO_STRCASESTR = YesPlease
>  		NO_STRTOUMAX = YesPlease
>  		GIT_TEST_CMP = cmp
>          endif
> +        ifeq ($(uname_R),5.10)
> +		NO_UNSETENV = YesPlease
> +		NO_MKDTEMP = YesPlease
> +		NO_MEMMEM = YesPlease
> +		NO_SETENV = YesPlease
> +		NO_STRCASESTR = YesPlease
> +		GIT_TEST_CMP = cmp
> +        endif
> +        ifeq ($(uname_R),5.11)
> +		NO_UNSETENV = YesPlease
> +		NO_SETENV = YesPlease
> +		GIT_TEST_CMP = cmp
> +        endif

Not about this change: do we want to retire some of the cases for old
versions at some point, or to collapse them so they can share more?
Seems nice for maintainability.

Sincerely,
Jonathan