Subject: Re: CygwinPaltform Identification
From: Brian Inglis <[email-masked]>
To: [email-masked]
Date: Tue, 8 Feb 2022 18:46:07 -0700
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>

On 2022-02-08 15:01, [email-masked] wrote:
> Cygwin doesn't create an environment variable in bash to indicate that the
> platform is Cygwin under Windows.
> This causes compatibility problems when running various tools. Most of my
> issues have been with Python tools running Windows Python.
> I have been addressing this issue by grepping PATH for cygdrive which
> doesn't seem like a very good approach.
> Both msys2 and mingw solve this issue by setting the MSYSTEM environment
> variable which lets tools check that OS=Windows_NT and MSYSTEM=MSYS
> Please add some way of identifying that programs are running under Cygwin.

I have been switching env/OS/arch/triple dependent profile and rc files 
and sections for years with:

64 $ echo $OSTYPE $OS $HOSTTYPE $MACHTYPE
cygwin Windows_NT x86_64 x86_64-unknown-cygwin

32 $ echo $OSTYPE $OS $HOSTTYPE $MACHTYPE
cygwin Windows_NT i686 i686-pc-cygwin

Please note that *only* $OS is exported by default (in the above list), 
so you will have to explicitly export (in profiles) any other shell 
variables you wish to be available to shell subprocesses.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple