You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by rb...@covalent.net on 2000/12/17 04:56:43 UTC

install directory layout


Here is what I propose for the new layout:

$prefix/
	bin/
	    ab
	    apachectl
 	    apxs
            htdigest
            htpasswd
            httpd
            logresolve
            rotatelogs
            httpd.exp
	cgi-bin/
	        printenv
                test-cgi
	conf/
	     httpd-std.conf
	     httpd.conf
             mime.types
             magic
	icons/
	      *.gif
	      small/
		    *.gif
	include/
		*.h
	logs/
	     error-log
	     access-log
	     httpd.pid
	modules/
	        lib_*.so    (I would use mod_, but libtool seems to want
			     to use lib_ as the prefix.)
	libraries/
		  libapr.so
		  libaprutil.so
	 	  lib*.so

	htdocs/
	       manual/
	       *.html.*

That should be it.  Any thoughts/complaints?  If not I will implement this
for Unix on Monday.

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------




Re: install directory layout

Posted by Tony Finch <do...@dotat.at>.
"William A. Rowe, Jr." <wr...@rowe-clan.net> wrote:
>
>All things considered, the actual libs are independent of the administrator
>themselves, they should mostly be transparent.  I'd argue they can go anywhere
>we choose (libexec on unix, bin on win32) with no adverse affects, confusion
>or other side effects.

No, libraries go in lib on Unix; libexec is for programs that are only
run by other programs, e.g. cc1 or telnetd.

Tony.
-- 
f.a.n.finch    fanf@covalent.net    dot@dotat.at
"Because all you of Earth are idiots!"

RE: install directory layout

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
> From: Tony Finch [mailto:dot@dotat.at]
> Sent: Monday, December 18, 2000 5:26 PM
> 
> rbb@covalent.net wrote:
> >
> >I agree, I really like making programs look correct on all platforms, so
> >that a Unix program looks like a Unix program, and a Windows program looks
> >like a Windows program.  However, we have to balance that with the idea
> >that if I, as an admin, have to switch between Windows and Unix, then I
> >don't want to have to remember where each file is on each platform.
> 
> I think we should assume that admins are at least competent enough to
> be able to deal with the differences between different platforms. I am
> -1 putting libraries in a bin directory on Unix.

All things considered, the actual libs are independent of the administrator
themselves, they should mostly be transparent.  I'd argue they can go anywhere
we choose (libexec on unix, bin on win32) with no adverse affects, confusion
or other side effects.

When linking to libraries in libexec, win32 will behave as unix, and that's
maybe the least transparent detail.  The binding libs are in libexec on win32,
the actual dll's are in bin where they are easily found.


Re: install directory layout

Posted by Tony Finch <do...@dotat.at>.
rbb@covalent.net wrote:
>
>I agree, I really like making programs look correct on all platforms, so
>that a Unix program looks like a Unix program, and a Windows program looks
>like a Windows program.  However, we have to balance that with the idea
>that if I, as an admin, have to switch between Windows and Unix, then I
>don't want to have to remember where each file is on each platform.

I think we should assume that admins are at least competent enough to
be able to deal with the differences between different platforms. I am
-1 putting libraries in a bin directory on Unix.

Tony.
-- 
f.a.n.finch    fanf@covalent.net    dot@dotat.at
"There are flying saucers. There's no doubt they are
in our skies. They've been there for some time."

Re: install directory layout

Posted by rb...@covalent.net.
> > However, I
> > want Windows and Unix to look the same,
> 
> They're different OSes with different conventions. Making them the same
> isn't necessarily a Good Thing.

I agree, I really like making programs look correct on all platforms, so
that a Unix program looks like a Unix program, and a Windows program looks
like a Windows program.  However, we have to balance that with the idea
that if I, as an admin, have to switch between Windows and Unix, then I
don't want to have to remember where each file is on each platform.  Based
on something OtherBill said, I believe we can use lib/ for most libraries,
and just put some libraries in the bin/ directory.  The libraries in the
bin/ directory will only be required for Windows.

> Note that I'm speaking about the defaults here. We still have the "layout"
> scheme that can place them however you want in your installs.
> 
> [ hmm. actually, config.layout is missing from apache-2.0 and httpd-2.0, and
>   the layout code in acinclude.m4 probably needs some tweaking. ]

Config.layout is missing, but it supposedly works.  It is on my list of
things to take care of.  I am trying to port the NameVirtualHost * patch
from 1.3 to 2.0 right now.

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------



Re: install directory layout

Posted by Greg Stein <gs...@lyra.org>.
On Sun, Dec 17, 2000 at 08:13:53AM -0800, rbb@covalent.net wrote:
> 
> > > Here is what I propose for the new layout:
> > >...
> > > That should be it.  Any thoughts/complaints?  If not I will implement this
> > > for Unix on Monday.
> > 
> > This seems fine, and it actually looks a lot like what we have today. So --
> > I'm unclear on what is *different* about your proposal. Could you clarify
> > what you're suggesting that we change?
> 
> This would completely remove all of the subdirectories from the include
> dir.

+1

> It would also remove the libexec directory, and split it into two
> different directories, one for modules and one for libraries.

Seems fine. +1

> However, I
> want Windows and Unix to look the same,

They're different OSes with different conventions. Making them the same
isn't necessarily a Good Thing.

> so that may not be possible.  We
> may have to use bin/ for libraries and modules/ for modules.

The libraries really ought to stay in lib/, rather than bin/. I've never
seen a library in a bin/ directory on Unix boxes.

Note that I'm speaking about the defaults here. We still have the "layout"
scheme that can place them however you want in your installs.

[ hmm. actually, config.layout is missing from apache-2.0 and httpd-2.0, and
  the layout code in acinclude.m4 probably needs some tweaking. ]

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

RE: install directory layout

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Oh... /libraries is perfectly appropriate for any static libraries
we want to advertise

> -----Original Message-----
> From: rbb@covalent.net [mailto:rbb@covalent.net]
> Sent: Sunday, December 17, 2000 10:14 AM
> To: new-httpd@apache.org
> Subject: Re: install directory layout
> 
> 
> 
> > > Here is what I propose for the new layout:
> > >...
> > > That should be it.  Any thoughts/complaints?  If not I 
> will implement this
> > > for Unix on Monday.
> > 
> > This seems fine, and it actually looks a lot like what we 
> have today. So --
> > I'm unclear on what is *different* about your proposal. 
> Could you clarify
> > what you're suggesting that we change?
> 
> This would completely remove all of the subdirectories from 
> the include
> dir.  It would also remove the libexec directory, and split 
> it into two
> different directories, one for modules and one for libraries. 
>  However, I
> want Windows and Unix to look the same, so that may not be 
> possible.  We
> may have to use bin/ for libraries and modules/ for modules.
> 
> Ryan
> 
> ______________________________________________________________
> _________________
> Ryan Bloom                        	rbb@apache.org
> 406 29th St.
> San Francisco, CA 94131
> --------------------------------------------------------------
> -----------------
> 
> 

Re: install directory layout

Posted by rb...@covalent.net.
> > Here is what I propose for the new layout:
> >...
> > That should be it.  Any thoughts/complaints?  If not I will implement this
> > for Unix on Monday.
> 
> This seems fine, and it actually looks a lot like what we have today. So --
> I'm unclear on what is *different* about your proposal. Could you clarify
> what you're suggesting that we change?

This would completely remove all of the subdirectories from the include
dir.  It would also remove the libexec directory, and split it into two
different directories, one for modules and one for libraries.  However, I
want Windows and Unix to look the same, so that may not be possible.  We
may have to use bin/ for libraries and modules/ for modules.

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------


RE: install directory layout

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
> From: Greg Stein [mailto:gstein@lyra.org]
> Sent: Sunday, December 17, 2000 6:59 AM
> 
> On Sat, Dec 16, 2000 at 07:56:43PM -0800, rbb@covalent.net wrote:
> > 
> > 
> > Here is what I propose for the new layout:
> >...
> > That should be it.  Any thoughts/complaints?  If not I will 
> implement this
> > for Unix on Monday.
> 
> This seems fine, and it actually looks a lot like what we have today. So --
> I'm unclear on what is *different* about your proposal. Could you clarify
> what you're suggesting that we change?

I think that was the point ... new server, new definition?  Even if it
is (or nearly is) identical to 1.3.

Re: install directory layout

Posted by Greg Stein <gs...@lyra.org>.
On Sat, Dec 16, 2000 at 07:56:43PM -0800, rbb@covalent.net wrote:
> 
> 
> Here is what I propose for the new layout:
>...
> That should be it.  Any thoughts/complaints?  If not I will implement this
> for Unix on Monday.

This seems fine, and it actually looks a lot like what we have today. So --
I'm unclear on what is *different* about your proposal. Could you clarify
what you're suggesting that we change?

thx!
-g

-- 
Greg Stein, http://www.lyra.org/

RE: install directory layout

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Note ... that's only bound libraries, e.g. libhttpd.dll/.so

In the case of dynamic loaded modules, we don't care, we can
path those :-)

Bill

> -----Original Message-----
> From: rbb@covalent.net [mailto:rbb@covalent.net]
> Sent: Sunday, December 17, 2000 10:27 AM
> To: new-httpd@apache.org
> Subject: RE: install directory layout
> 
> 
> On Sat, 16 Dec 2000, William A. Rowe, Jr. wrote:
> 
> > Ack.  What about expat, is that statically bound?
> > 
> > Also, note win32 won't have any .dll files in library, they
> > will all sit in bin/ (no choice here, not for discussion.)
> 
> In that case, then Unix should do the same.  all .so or .dll 
> files will
> live in bin/.  One of the goals of this, is to allow people to easily
> switch between Unix and Windows.  That requires that all 
> files are in the
> same locations on all OSes.
> 
> Ryan
> 
> ______________________________________________________________
> _________________
> Ryan Bloom                        	rbb@apache.org
> 406 29th St.
> San Francisco, CA 94131
> --------------------------------------------------------------
> -----------------
> 
> 

RE: install directory layout

Posted by rb...@covalent.net.
On Sat, 16 Dec 2000, William A. Rowe, Jr. wrote:

> Ack.  What about expat, is that statically bound?
> 
> Also, note win32 won't have any .dll files in library, they
> will all sit in bin/ (no choice here, not for discussion.)

In that case, then Unix should do the same.  all .so or .dll files will
live in bin/.  One of the goals of this, is to allow people to easily
switch between Unix and Windows.  That requires that all files are in the
same locations on all OSes.

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------


RE: install directory layout

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Ack.  What about expat, is that statically bound?

Also, note win32 won't have any .dll files in library, they
will all sit in bin/ (no choice here, not for discussion.)

> -----Original Message-----
> From: rbb@covalent.net [mailto:rbb@covalent.net]
> Sent: Saturday, December 16, 2000 9:57 PM
> To: new-httpd@apache.org
> Subject: install directory layout
> 
> 
> 
> 
> Here is what I propose for the new layout:
> 
> $prefix/
> 	bin/
> 	    ab
> 	    apachectl
>  	    apxs
>             htdigest
>             htpasswd
>             httpd
>             logresolve
>             rotatelogs
>             httpd.exp
> 	cgi-bin/
> 	        printenv
>                 test-cgi
> 	conf/
> 	     httpd-std.conf
> 	     httpd.conf
>              mime.types
>              magic
> 	icons/
> 	      *.gif
> 	      small/
> 		    *.gif
> 	include/
> 		*.h
> 	logs/
> 	     error-log
> 	     access-log
> 	     httpd.pid
> 	modules/
> 	        lib_*.so    (I would use mod_, but libtool seems to want
> 			     to use lib_ as the prefix.)
> 	libraries/
> 		  libapr.so
> 		  libaprutil.so
> 	 	  lib*.so
> 
> 	htdocs/
> 	       manual/
> 	       *.html.*
> 
> That should be it.  Any thoughts/complaints?  If not I will 
> implement this
> for Unix on Monday.
> 
> Ryan
> 
> ______________________________________________________________
> _________________
> Ryan Bloom                        	rbb@apache.org
> 406 29th St.
> San Francisco, CA 94131
> --------------------------------------------------------------
> -----------------
> 
> 
> 
> 

Re: install directory layout

Posted by rb...@covalent.net.
>    It needs to remain at least possible to use OS conventions.  I don't
> I think making the layout on different OS's look the same is really
> the right thing to do.  you are thinking about the guy who maintains
> apache on multiple platforms, and while i appreciate that, let's not
> forget the guy who maintains multiple services on one platform, which
> I think is as common.

I think we always plan to include the config.layout option, we are just
trying to make the default layout look as similar as possible on platforms
when config.layout is not used.

>    Now I've done both, and I prefer to have BSD systems behave 100%
> like BSD systems and SysV systems to behave like SysV system, and I
> really dislike when one system tries to be both (ick, AIX).
> 
>    So I don't like this idea of trying to make the Unix and Windows
> layouts look the same.

I was probably too sweeping in what I said.  I definately want Windows to
look like Windows and Unix to look like Unix, but I also want as much
common as possible.  That way, we aren't purposefully confusing
people.  :-)

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------


Re: install directory layout

Posted by Wilfredo Sanchez <ws...@apple.com>.
   It needs to remain at least possible to use OS conventions.  I don't
I think making the layout on different OS's look the same is really
the right thing to do.  you are thinking about the guy who maintains
apache on multiple platforms, and while i appreciate that, let's not
forget the guy who maintains multiple services on one platform, which
I think is as common.

   It really sucks when some software package refuses to follow the
rules for the system it is running on.  Especially when you are the
OS vendor.  :)

   Now I've done both, and I prefer to have BSD systems behave 100%
like BSD systems and SysV systems to behave like SysV system, and I
really dislike when one system tries to be both (ick, AIX).

   So I don't like this idea of trying to make the Unix and Windows
layouts look the same.

	-Fred