This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Portable shell code between Cygwin and Linux


> * Eliot Moss (Tue, 02 Aug 2011 11:40:44 -0400)
> > On 8/2/2011 8:24 AM, Sebastien Vauban wrote:
> > > Thorsten Kampe wrote:
> > >> * Sebastien Vauban (Mon, 01 Aug 2011 08:46:52 +0200)
> > >>> My goal is to have just 1 alias that would work both under Win32
> > >>> (Cygwin) and Ubuntu
> > >>
> > >> Why don't have simply put your alias definitions in if [[ $OSTYPE =
> > >> cygwin ]]; then else"?
> > >
> > > Because I really want one single definition which could work on
> > > every system I'm using.
> [...]
> > The suggestion to use a few conditionals that look at the which OS
> > you're on does not involve continued tweaking. Once you have the right
> > file, it works everywhere (for which you have provided suitable cases)
> > using the exact same file. It's just that different parts get executed
> > on different platforms. It's not as elegant as achieving an
> > arrangement with no conditionals, but it's practical and flexible.
> 
> Couldn't have said it better. Cygwin is not Linux and you just can't
> ignore the differences. For example I have different aliases for netstat
> and ps on Linux and on Windows. They just don't have the same options.
> 
> Thorsten
> 
I second this.  I have used that same technique since the late 80s to build
scripts that run on multiple platforms including Cygwin, Linux, Solaris,
HP-UX and AIX.  You can cover up all sorts of differences that way.  Its
about the only clean way of dealing with platform specific differences.  And
sadly, you may even have to stick with /bin/sh if you really want to be
portable.

Andy Hall


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]