public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Re: directory structure
@ 1999-06-29  7:53 Earnie Boyd
  1999-06-30 22:10 ` Earnie Boyd
  0 siblings, 1 reply; 12+ messages in thread
From: Earnie Boyd @ 1999-06-29  7:53 UTC (permalink / raw)
  To: Michael Diers; +Cc: cygwin users

--- Michael Diers <mdiers@logware.de> wrote:
-8<-
> I used Earnie's setup guide as a starting point. (Thanks, Earnie!)
> 
> The setup I ended up with is akin to a "chroot jail". It is
> basically a symlink farm and looks approximately like this:
> 
>   D:/cygnus/cygwin-b20/...
> 
>         -- B20.1 structure as per full.exe
> 
>   D:/cygwin                                     -- mount D:\\cygwin /
> 
>         /cygnus -> //d/cygnus/cygwin-b20
> 
>                 -- this is the clever bit, a link to *some* Cygwin
>                    release; re-symlinking here allows to quickly try
>                    out different release
> 
>         -- The rest we make look UNIXish.
> 
>         /bin
>                 sh.exe -> /usr/bin/sh.exe
>                 echo.exe -> /usr/bin/echo.exe
>                 ...
> 
>         /etc
>                 group
>                 passwd
>                 termcap -> /cygnus/etc/termcap
>                 ...
> 
>         /lib
>                 libiberty.a -> /cygnus/lib/libiberty.a
> 
>         /mnt
>                 c -> //c/       -- trailing slash is significant!
>                 d -> //d/
>                 ...
> 
>         /opt
>                 mypackage       -- local^2 stuff
> 
>         /tmp -> //c/temp        -- shared scratch area
> 
>         /usr
>                 H-i586-cygwin32 -> /cygnus/H-i586-cygwin32
>                 bin -> H-i586-cygwin32/bin
>                 i586-cygwin32 -> i586-pc-cygwin32
>                 i586-pc-cygwin32 -> H-i586-cygwin32/i586-pc-cygwin32
>                 include -> /cygnus/include
>                 lib -> H-i586-cygwin32/lib
> 
>                 /local
>                         -- Andy Piper's local tree
>                         -- Sergey Okhapine's remote tools
> 
>                         mypackage -> /opt/mypackage
> 
>                 share -> /cygnus/share
> 
> Advantages:
> 
>   * Nothing is changed in the installed Cygnus tree. The desired
>     UNIXish structure is made up in the jail.
> 
>   * All local config in one place, independent of Cygnus release.
> 
>   * Only need root mountpoint to bootstrap.
> 
>   * All config represented in file system, so can be tarballed and
>     distributed.
> 
> Problem:
> 
>   * People hate symlink farms...
  * Doesn't support the proposed distribution of B21.

> 
> Comments?

The proposed distribution will be more in line with a standard UNIX directory
tree.  Something like:

/cygwin/b21
       +   /bin
       +   /etc
       +   /home
       +   /tmp
       +   /usr
           +   /bin
           +   /include
           +   /lib
           +   /local
               +     /bin
               +     /include
               +     /lib
               |     /share
           |   /share
       |   /var

Note: The above tree is a supposition and NOT fact.
===
Earnie Boyd < mailto:earnie_boyd@yahoo.com >

Newbies, please visit
< http://www.freeyellow.com/members5/gw32/index.html >

(If you respond to the list, then please don't cc me)
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-29  7:53 directory structure Earnie Boyd
@ 1999-06-30 22:10 ` Earnie Boyd
  0 siblings, 0 replies; 12+ messages in thread
From: Earnie Boyd @ 1999-06-30 22:10 UTC (permalink / raw)
  To: Michael Diers; +Cc: cygwin users

--- Michael Diers <mdiers@logware.de> wrote:
-8<-
> I used Earnie's setup guide as a starting point. (Thanks, Earnie!)
> 
> The setup I ended up with is akin to a "chroot jail". It is
> basically a symlink farm and looks approximately like this:
> 
>   D:/cygnus/cygwin-b20/...
> 
>         -- B20.1 structure as per full.exe
> 
>   D:/cygwin                                     -- mount D:\\cygwin /
> 
>         /cygnus -> //d/cygnus/cygwin-b20
> 
>                 -- this is the clever bit, a link to *some* Cygwin
>                    release; re-symlinking here allows to quickly try
>                    out different release
> 
>         -- The rest we make look UNIXish.
> 
>         /bin
>                 sh.exe -> /usr/bin/sh.exe
>                 echo.exe -> /usr/bin/echo.exe
>                 ...
> 
>         /etc
>                 group
>                 passwd
>                 termcap -> /cygnus/etc/termcap
>                 ...
> 
>         /lib
>                 libiberty.a -> /cygnus/lib/libiberty.a
> 
>         /mnt
>                 c -> //c/       -- trailing slash is significant!
>                 d -> //d/
>                 ...
> 
>         /opt
>                 mypackage       -- local^2 stuff
> 
>         /tmp -> //c/temp        -- shared scratch area
> 
>         /usr
>                 H-i586-cygwin32 -> /cygnus/H-i586-cygwin32
>                 bin -> H-i586-cygwin32/bin
>                 i586-cygwin32 -> i586-pc-cygwin32
>                 i586-pc-cygwin32 -> H-i586-cygwin32/i586-pc-cygwin32
>                 include -> /cygnus/include
>                 lib -> H-i586-cygwin32/lib
> 
>                 /local
>                         -- Andy Piper's local tree
>                         -- Sergey Okhapine's remote tools
> 
>                         mypackage -> /opt/mypackage
> 
>                 share -> /cygnus/share
> 
> Advantages:
> 
>   * Nothing is changed in the installed Cygnus tree. The desired
>     UNIXish structure is made up in the jail.
> 
>   * All local config in one place, independent of Cygnus release.
> 
>   * Only need root mountpoint to bootstrap.
> 
>   * All config represented in file system, so can be tarballed and
>     distributed.
> 
> Problem:
> 
>   * People hate symlink farms...
  * Doesn't support the proposed distribution of B21.

> 
> Comments?

The proposed distribution will be more in line with a standard UNIX directory
tree.  Something like:

/cygwin/b21
       +   /bin
       +   /etc
       +   /home
       +   /tmp
       +   /usr
           +   /bin
           +   /include
           +   /lib
           +   /local
               +     /bin
               +     /include
               +     /lib
               |     /share
           |   /share
       |   /var

Note: The above tree is a supposition and NOT fact.
===
Earnie Boyd < mailto:earnie_boyd@yahoo.com >

Newbies, please visit
< http://www.freeyellow.com/members5/gw32/index.html >

(If you respond to the list, then please don't cc me)
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* directory structure
  1999-06-21 10:03 itz
@ 1999-06-30 22:10 ` itz
  0 siblings, 0 replies; 12+ messages in thread
From: itz @ 1999-06-30 22:10 UTC (permalink / raw)
  To: cygwin

In recent threads almost everybody seems to enthusiastically agree
that the directory cygwin-b20/H-i[3456]86-cygwin32 is in analogy with
/usr under Unix and that linking or mounting it accordingly will
enhance the Unix look & feel.  This was slightly surprising to me
because I have from the start had a link /usr -> /cygwin-b20.

I remember that my main reason was the existence of
/cygwin-b20/include with the readline and g++ directories underneath.
How could these be picked up with the more popular scheme, other than
explicitly telling gcc about them?  

-- 
Ian Zimmerman
Lightbinders, Inc.
2325 3rd Street #324
San Francisco, California 94107
U.S.A.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-29  6:51 ` Michael Diers
@ 1999-06-30 22:10   ` Michael Diers
  0 siblings, 0 replies; 12+ messages in thread
From: Michael Diers @ 1999-06-30 22:10 UTC (permalink / raw)
  To: earnie_boyd; +Cc: cygwin users

Earnie Boyd <earnie_boyd@yahoo.com> writes:

> I mv the "important" programs to /bin, I.E.: cygwin1.dll, sh.exe, bash.exe,
> mount.exe, umount.exe, cygcheck.exe and cygpath.exe.
> 
> Also, I don't mount the cygwin H-* director(y|ies) to /usr, etc. but create the
> /bin /etc /var/... /usr/... and /usr/local/... directories and mv things to the
> appropriate directories.  This has the advantage of fewer mount entries in the
> registry, I can support more than one version of cygwin and a time, and I can
> segregate the mingw32 versions into a separate directory.  This is accomplished
> by simply executing from dos `sh -c "cd /bin && ./umount / && ./mount
> C:\\newroot /"'.  I use the prompt to remind me which root I'm in.

I used Earnie's setup guide as a starting point. (Thanks, Earnie!)

The setup I ended up with is akin to a "chroot jail". It is
basically a symlink farm and looks approximately like this:

  D:/cygnus/cygwin-b20/...

        -- B20.1 structure as per full.exe

  D:/cygwin                                     -- mount D:\\cygwin /

        /cygnus -> //d/cygnus/cygwin-b20

                -- this is the clever bit, a link to *some* Cygwin
                   release; re-symlinking here allows to quickly try
                   out different release

        -- The rest we make look UNIXish.

        /bin
                sh.exe -> /usr/bin/sh.exe
                echo.exe -> /usr/bin/echo.exe
                ...

        /etc
                group
                passwd
                termcap -> /cygnus/etc/termcap
                ...

        /lib
                libiberty.a -> /cygnus/lib/libiberty.a

        /mnt
                c -> //c/       -- trailing slash is significant!
                d -> //d/
                ...

        /opt
                mypackage       -- local^2 stuff

        /tmp -> //c/temp        -- shared scratch area

        /usr
                H-i586-cygwin32 -> /cygnus/H-i586-cygwin32
                bin -> H-i586-cygwin32/bin
                i586-cygwin32 -> i586-pc-cygwin32
                i586-pc-cygwin32 -> H-i586-cygwin32/i586-pc-cygwin32
                include -> /cygnus/include
                lib -> H-i586-cygwin32/lib

                /local
                        -- Andy Piper's local tree
                        -- Sergey Okhapine's remote tools

                        mypackage -> /opt/mypackage

                share -> /cygnus/share

Advantages:

  * Nothing is changed in the installed Cygnus tree. The desired
    UNIXish structure is made up in the jail.

  * All local config in one place, independent of Cygnus release.

  * Only need root mountpoint to bootstrap.

  * All config represented in file system, so can be tarballed and
    distributed.

Problem:

  * People hate symlink farms...

Comments?

-- 
Michael Diers                            mailto:mdiers@logware.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-21 15:45 Earnie Boyd
  1999-06-29  6:51 ` Michael Diers
@ 1999-06-30 22:10 ` Earnie Boyd
  1 sibling, 0 replies; 12+ messages in thread
From: Earnie Boyd @ 1999-06-30 22:10 UTC (permalink / raw)
  To: cygwin users

--- itz@lbin.com wrote:
-8<-
> My opinion is that /usr/local in general IS useful both for Linux and
> for Cygwin.  The distinction is not one of native vs. GNU tools as you
> point out, but one of distribution vs. local additions.  So the Cygwin
> full.exe should unpack to (an equivalent of) /usr, while packages from
> the Franken acrhive unpack correctly to /usr/local.  If a locally
> installed package "shadows" a distributed one that's OK too.

I agree with Ian.  I put the cygwin dist in /usr and anything I build in
/usr/local.  Actually that isn't exactly true but effectively true.  What I
really do is to install in /install/package-#.##/... and ln -s the files to the
/usr/local directory.

> 
> The exceptions are programs and files which are part of the system and
> cannot be "shadowed", i.e. /bin, /sbin, /etc, /lib, /dev.

I mv the "important" programs to /bin, I.E.: cygwin1.dll, sh.exe, bash.exe,
mount.exe, umount.exe, cygcheck.exe and cygpath.exe.

Also, I don't mount the cygwin H-* director(y|ies) to /usr, etc. but create the
/bin /etc /var/... /usr/... and /usr/local/... directories and mv things to the
appropriate directories.  This has the advantage of fewer mount entries in the
registry, I can support more than one version of cygwin and a time, and I can
segregate the mingw32 versions into a separate directory.  This is accomplished
by simply executing from dos `sh -c "cd /bin && ./umount / && ./mount
C:\\newroot /"'.  I use the prompt to remind me which root I'm in.
===
Earnie Boyd < mailto:earnie_boyd@yahoo.com >

Newbies, please visit
< http://www.freeyellow.com/members5/gw32/index.html >

(If you respond to the list, then please don't cc me)
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-21 13:38 Phil Edwards
  1999-06-21 14:38 ` itz
@ 1999-06-30 22:10 ` Phil Edwards
  1 sibling, 0 replies; 12+ messages in thread
From: Phil Edwards @ 1999-06-30 22:10 UTC (permalink / raw)
  To: cygwin

> In recent threads almost everybody seems to enthusiastically agree
> that the directory cygwin-b20/H-i[3456]86-cygwin32 is in analogy with
> /usr under Unix and that linking or mounting it accordingly will
> enhance the Unix look & feel.  This was slightly surprising to me
> because I have from the start had a link /usr -> /cygwin-b20.

It isn't to "enhance" the Unix look and feel.  It's to get the whole
damn thing working like other Unixes in the first place.  :-)

Part of the issue is that (for the compiler and libraries at least)
there is still this subsconscious "everything is in /usr/local and the
stuff in /usr are native tools" tendency.  It makes for real headaches
under Linux (where the native tools ARE the GNU tools), and complete
migraines under WinNT (where the native tools are useless and can't
even be used as a fallback).

Some people mount them as /usr.  I got mail from one guy who mounts
them as /usr AND as /usr/local (which had not occurred to me).

I don't know what gets changed under the next release.  I haven't been
able to use the development sources due to the "ix86-cygwin32" rename
to "ix86-pc-cygwin32" (too many things keep looking in the wrong place),
so I can't give you any exact predictions or assurances.


> I remember that my main reason was the existence of
> /cygwin-b20/include with the readline and g++ directories underneath.
> How could these be picked up with the more popular scheme, other than
> explicitly telling gcc about them?  

True, looking in the typical /usr/include is now completely useless
under this scheme.  I haven't found this to a problem with gcc, but rather
at the human level:  "What?  Redeclaration of foo in blah.h?  Let me just
pop open the system blah.h- CRAP!  It's buried fifteen levels down now!"

I suspect all of these are just growing pains.  Cygwin is still a maturing
and growing product.  Apparently the B21 release will allow a much more
relocatable directory structure, and hopefully a lot of these issues will
become simply a matter of personal preference and style, rather than "it
either has to look like this, or you have to patch the source".  Just give
it some time to grow, and have a text editor and some Advil handy in the
meanwhile.


(If you reply to the list, please don't cc another copy to me.  Thanks!)
Phil


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-21 14:38 ` itz
@ 1999-06-30 22:10   ` itz
  0 siblings, 0 replies; 12+ messages in thread
From: itz @ 1999-06-30 22:10 UTC (permalink / raw)
  To: cygwin

   Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm
   Precedence: bulk
   Sender: cygwin-owner@sourceware.cygnus.com
   Delivered-To: mailing list cygwin@sourceware.cygnus.com
   Date: Mon, 21 Jun 1999 16:47:47 -0400
   From: Phil Edwards <pedwards@jaj.com>


   > In recent threads almost everybody seems to enthusiastically
   > agree that the directory cygwin-b20/H-i[3456]86-cygwin32 is in
   > analogy with /usr under Unix and that linking or mounting it
   > accordingly will enhance the Unix look & feel.  This was slightly
   > surprising to me because I have from the start had a link /usr ->
   > /cygwin-b20.

   It isn't to "enhance" the Unix look and feel.  It's to get the
   whole damn thing working like other Unixes in the first place.  :-)

   Part of the issue is that (for the compiler and libraries at least)
   there is still this subsconscious "everything is in /usr/local and
   the stuff in /usr are native tools" tendency.  It makes for real
   headaches under Linux (where the native tools ARE the GNU tools),

Try to tell this to Rich Pieri.  I tried to argue merely that there
are some EXCEPTIONS to the GNU directory scheme under Linux, and I got
the "you don't know what you're talking about" treatment.

My opinion is that /usr/local in general IS useful both for Linux and
for Cygwin.  The distinction is not one of native vs. GNU tools as you
point out, but one of distribution vs. local additions.  So the Cygwin
full.exe should unpack to (an equivalent of) /usr, while packages from
the Franken acrhive unpack correctly to /usr/local.  If a locally
installed package "shadows" a distributed one that's OK too.

The exceptions are programs and files which are part of the system and
cannot be "shadowed", i.e. /bin, /sbin, /etc, /lib, /dev.

-- 
Ian Zimmerman
Lightbinders, Inc.
2325 3rd Street #324
San Francisco, California 94107
U.S.A.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-21 15:45 Earnie Boyd
@ 1999-06-29  6:51 ` Michael Diers
  1999-06-30 22:10   ` Michael Diers
  1999-06-30 22:10 ` Earnie Boyd
  1 sibling, 1 reply; 12+ messages in thread
From: Michael Diers @ 1999-06-29  6:51 UTC (permalink / raw)
  To: earnie_boyd; +Cc: cygwin users

Earnie Boyd <earnie_boyd@yahoo.com> writes:

> I mv the "important" programs to /bin, I.E.: cygwin1.dll, sh.exe, bash.exe,
> mount.exe, umount.exe, cygcheck.exe and cygpath.exe.
> 
> Also, I don't mount the cygwin H-* director(y|ies) to /usr, etc. but create the
> /bin /etc /var/... /usr/... and /usr/local/... directories and mv things to the
> appropriate directories.  This has the advantage of fewer mount entries in the
> registry, I can support more than one version of cygwin and a time, and I can
> segregate the mingw32 versions into a separate directory.  This is accomplished
> by simply executing from dos `sh -c "cd /bin && ./umount / && ./mount
> C:\\newroot /"'.  I use the prompt to remind me which root I'm in.

I used Earnie's setup guide as a starting point. (Thanks, Earnie!)

The setup I ended up with is akin to a "chroot jail". It is
basically a symlink farm and looks approximately like this:

  D:/cygnus/cygwin-b20/...

        -- B20.1 structure as per full.exe

  D:/cygwin                                     -- mount D:\\cygwin /

        /cygnus -> //d/cygnus/cygwin-b20

                -- this is the clever bit, a link to *some* Cygwin
                   release; re-symlinking here allows to quickly try
                   out different release

        -- The rest we make look UNIXish.

        /bin
                sh.exe -> /usr/bin/sh.exe
                echo.exe -> /usr/bin/echo.exe
                ...

        /etc
                group
                passwd
                termcap -> /cygnus/etc/termcap
                ...

        /lib
                libiberty.a -> /cygnus/lib/libiberty.a

        /mnt
                c -> //c/       -- trailing slash is significant!
                d -> //d/
                ...

        /opt
                mypackage       -- local^2 stuff

        /tmp -> //c/temp        -- shared scratch area

        /usr
                H-i586-cygwin32 -> /cygnus/H-i586-cygwin32
                bin -> H-i586-cygwin32/bin
                i586-cygwin32 -> i586-pc-cygwin32
                i586-pc-cygwin32 -> H-i586-cygwin32/i586-pc-cygwin32
                include -> /cygnus/include
                lib -> H-i586-cygwin32/lib

                /local
                        -- Andy Piper's local tree
                        -- Sergey Okhapine's remote tools

                        mypackage -> /opt/mypackage

                share -> /cygnus/share

Advantages:

  * Nothing is changed in the installed Cygnus tree. The desired
    UNIXish structure is made up in the jail.

  * All local config in one place, independent of Cygnus release.

  * Only need root mountpoint to bootstrap.

  * All config represented in file system, so can be tarballed and
    distributed.

Problem:

  * People hate symlink farms...

Comments?

-- 
Michael Diers                            mailto:mdiers@logware.de

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
@ 1999-06-21 15:45 Earnie Boyd
  1999-06-29  6:51 ` Michael Diers
  1999-06-30 22:10 ` Earnie Boyd
  0 siblings, 2 replies; 12+ messages in thread
From: Earnie Boyd @ 1999-06-21 15:45 UTC (permalink / raw)
  To: cygwin users

--- itz@lbin.com wrote:
-8<-
> My opinion is that /usr/local in general IS useful both for Linux and
> for Cygwin.  The distinction is not one of native vs. GNU tools as you
> point out, but one of distribution vs. local additions.  So the Cygwin
> full.exe should unpack to (an equivalent of) /usr, while packages from
> the Franken acrhive unpack correctly to /usr/local.  If a locally
> installed package "shadows" a distributed one that's OK too.

I agree with Ian.  I put the cygwin dist in /usr and anything I build in
/usr/local.  Actually that isn't exactly true but effectively true.  What I
really do is to install in /install/package-#.##/... and ln -s the files to the
/usr/local directory.

> 
> The exceptions are programs and files which are part of the system and
> cannot be "shadowed", i.e. /bin, /sbin, /etc, /lib, /dev.

I mv the "important" programs to /bin, I.E.: cygwin1.dll, sh.exe, bash.exe,
mount.exe, umount.exe, cygcheck.exe and cygpath.exe.

Also, I don't mount the cygwin H-* director(y|ies) to /usr, etc. but create the
/bin /etc /var/... /usr/... and /usr/local/... directories and mv things to the
appropriate directories.  This has the advantage of fewer mount entries in the
registry, I can support more than one version of cygwin and a time, and I can
segregate the mingw32 versions into a separate directory.  This is accomplished
by simply executing from dos `sh -c "cd /bin && ./umount / && ./mount
C:\\newroot /"'.  I use the prompt to remind me which root I'm in.
===
Earnie Boyd < mailto:earnie_boyd@yahoo.com >

Newbies, please visit
< http://www.freeyellow.com/members5/gw32/index.html >

(If you respond to the list, then please don't cc me)
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
  1999-06-21 13:38 Phil Edwards
@ 1999-06-21 14:38 ` itz
  1999-06-30 22:10   ` itz
  1999-06-30 22:10 ` Phil Edwards
  1 sibling, 1 reply; 12+ messages in thread
From: itz @ 1999-06-21 14:38 UTC (permalink / raw)
  To: cygwin

   Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm
   Precedence: bulk
   Sender: cygwin-owner@sourceware.cygnus.com
   Delivered-To: mailing list cygwin@sourceware.cygnus.com
   Date: Mon, 21 Jun 1999 16:47:47 -0400
   From: Phil Edwards <pedwards@jaj.com>


   > In recent threads almost everybody seems to enthusiastically
   > agree that the directory cygwin-b20/H-i[3456]86-cygwin32 is in
   > analogy with /usr under Unix and that linking or mounting it
   > accordingly will enhance the Unix look & feel.  This was slightly
   > surprising to me because I have from the start had a link /usr ->
   > /cygwin-b20.

   It isn't to "enhance" the Unix look and feel.  It's to get the
   whole damn thing working like other Unixes in the first place.  :-)

   Part of the issue is that (for the compiler and libraries at least)
   there is still this subsconscious "everything is in /usr/local and
   the stuff in /usr are native tools" tendency.  It makes for real
   headaches under Linux (where the native tools ARE the GNU tools),

Try to tell this to Rich Pieri.  I tried to argue merely that there
are some EXCEPTIONS to the GNU directory scheme under Linux, and I got
the "you don't know what you're talking about" treatment.

My opinion is that /usr/local in general IS useful both for Linux and
for Cygwin.  The distinction is not one of native vs. GNU tools as you
point out, but one of distribution vs. local additions.  So the Cygwin
full.exe should unpack to (an equivalent of) /usr, while packages from
the Franken acrhive unpack correctly to /usr/local.  If a locally
installed package "shadows" a distributed one that's OK too.

The exceptions are programs and files which are part of the system and
cannot be "shadowed", i.e. /bin, /sbin, /etc, /lib, /dev.

-- 
Ian Zimmerman
Lightbinders, Inc.
2325 3rd Street #324
San Francisco, California 94107
U.S.A.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: directory structure
@ 1999-06-21 13:38 Phil Edwards
  1999-06-21 14:38 ` itz
  1999-06-30 22:10 ` Phil Edwards
  0 siblings, 2 replies; 12+ messages in thread
From: Phil Edwards @ 1999-06-21 13:38 UTC (permalink / raw)
  To: cygwin

> In recent threads almost everybody seems to enthusiastically agree
> that the directory cygwin-b20/H-i[3456]86-cygwin32 is in analogy with
> /usr under Unix and that linking or mounting it accordingly will
> enhance the Unix look & feel.  This was slightly surprising to me
> because I have from the start had a link /usr -> /cygwin-b20.

It isn't to "enhance" the Unix look and feel.  It's to get the whole
damn thing working like other Unixes in the first place.  :-)

Part of the issue is that (for the compiler and libraries at least)
there is still this subsconscious "everything is in /usr/local and the
stuff in /usr are native tools" tendency.  It makes for real headaches
under Linux (where the native tools ARE the GNU tools), and complete
migraines under WinNT (where the native tools are useless and can't
even be used as a fallback).

Some people mount them as /usr.  I got mail from one guy who mounts
them as /usr AND as /usr/local (which had not occurred to me).

I don't know what gets changed under the next release.  I haven't been
able to use the development sources due to the "ix86-cygwin32" rename
to "ix86-pc-cygwin32" (too many things keep looking in the wrong place),
so I can't give you any exact predictions or assurances.


> I remember that my main reason was the existence of
> /cygwin-b20/include with the readline and g++ directories underneath.
> How could these be picked up with the more popular scheme, other than
> explicitly telling gcc about them?  

True, looking in the typical /usr/include is now completely useless
under this scheme.  I haven't found this to a problem with gcc, but rather
at the human level:  "What?  Redeclaration of foo in blah.h?  Let me just
pop open the system blah.h- CRAP!  It's buried fifteen levels down now!"

I suspect all of these are just growing pains.  Cygwin is still a maturing
and growing product.  Apparently the B21 release will allow a much more
relocatable directory structure, and hopefully a lot of these issues will
become simply a matter of personal preference and style, rather than "it
either has to look like this, or you have to patch the source".  Just give
it some time to grow, and have a text editor and some Advil handy in the
meanwhile.


(If you reply to the list, please don't cc another copy to me.  Thanks!)
Phil


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* directory structure
@ 1999-06-21 10:03 itz
  1999-06-30 22:10 ` itz
  0 siblings, 1 reply; 12+ messages in thread
From: itz @ 1999-06-21 10:03 UTC (permalink / raw)
  To: cygwin

In recent threads almost everybody seems to enthusiastically agree
that the directory cygwin-b20/H-i[3456]86-cygwin32 is in analogy with
/usr under Unix and that linking or mounting it accordingly will
enhance the Unix look & feel.  This was slightly surprising to me
because I have from the start had a link /usr -> /cygwin-b20.

I remember that my main reason was the existence of
/cygwin-b20/include with the readline and g++ directories underneath.
How could these be picked up with the more popular scheme, other than
explicitly telling gcc about them?  

-- 
Ian Zimmerman
Lightbinders, Inc.
2325 3rd Street #324
San Francisco, California 94107
U.S.A.

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~1999-06-30 22:10 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-06-29  7:53 directory structure Earnie Boyd
1999-06-30 22:10 ` Earnie Boyd
  -- strict thread matches above, loose matches on Subject: below --
1999-06-21 15:45 Earnie Boyd
1999-06-29  6:51 ` Michael Diers
1999-06-30 22:10   ` Michael Diers
1999-06-30 22:10 ` Earnie Boyd
1999-06-21 13:38 Phil Edwards
1999-06-21 14:38 ` itz
1999-06-30 22:10   ` itz
1999-06-30 22:10 ` Phil Edwards
1999-06-21 10:03 itz
1999-06-30 22:10 ` itz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).