You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by rb...@locus.apache.org on 2000/04/28 02:02:31 UTC

cvs commit: apache-2.0/src/build rules.mk

rbb         00/04/27 17:02:30

  Modified:    src/build rules.mk
  Log:
  This stops Apache 2.0 from trying to compile the server when we run
  make install.  We never used to build the server when installing in
  the 1.3 tree, so I'm going back to that behavior.
  
  Revision  Changes    Path
  1.9       +2 -2      apache-2.0/src/build/rules.mk
  
  Index: rules.mk
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/build/rules.mk,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- rules.mk	2000/03/31 07:02:31	1.8
  +++ rules.mk	2000/04/28 00:02:30	1.9
  @@ -110,7 +110,7 @@
   
   
   all: all-recursive
  -install: install-recursive
  +install: install-p
   
   distclean-recursive depend-recursive clean-recursive all-recursive install-recursive:
   	@otarget=`echo $@|sed s/-recursive//`; \
  @@ -130,7 +130,7 @@
   	fi
   
   all-p: $(targets)
  -install-p: $(targets) $(install_targets)
  +install-p: $(install_targets)
   	@if test -n '$(PROGRAMS)'; then \
   		test -d $(bindir) || $(mkinstalldirs) $(bindir); \
   		for i in "$(PROGRAMS)"; do \
  
  
  

Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Greg Marr <gr...@alum.wpi.edu>.
At 07:24 AM 04/28/2000, rbb@covalent.net wrote:
> > What's wrong with trying to build the server when you do a make
> > install? Installation depends on having built the server, so the
> > makefiles should respect that.
>
>Because I ALWAYS build the server myself, and then do an installation.
>[...]
>This wouldn't be an issue, except that we ALWAYS do some 
>compilation, even if it is just buildmark.c and modules.c.

Instead of changing the behavior of "make install", why not add "make 
install-only" which does all the actual work, and have "make install" 
chain to "make all" and "make install-only"?

--
Greg Marr
gregm@alum.wpi.edu
"We thought you were dead."
"I was, but I'm better now." - Sheridan, "The Summoning"


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Manoj Kasichainula <ma...@io.com>.
On Fri, Apr 28, 2000 at 02:40:05PM -0400, rbb@covalent.net wrote:
> Because I don't always WANT to install the binary.  I have three or four
> projects on my machine currently, I have a common config file for all of
> them, so I always use the same prefix.  I also keep on "good" binary in
> the installed directory so I can compare to what it outputs.  Installing
> everytime I build is not the answer.
> 
> Why are we re-building ANYTHING if nothing has changed since the last time
> we built?

I set it up that way to try to maintain the existing behavior I saw
with the configure system, where any make at all would cause
buildmark.c to get rebuilt. I guess that as long as there's no reason
to build httpd, we might as well not rebuild buildmark.c. I can
understand the intent of recording when the last make command was run,
though. If someone likes the current behavior, please speak up.

With automake, I knew how to fix this. I don't know how to fix it in
the current build system, though. 


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Manoj Kasichainula <ma...@io.com>.
On Sat, Apr 29, 2000 at 11:22:58AM +0100, Ben Laurie wrote:
> Manoj Kasichainula wrote:
> > Why not just use make install all the time? If the build fails, the
> > install shouldn't run.
> 
> I never install!

This was meant for Ryan. If you never install, the presence of the
dependency on building won't affect you very much.


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Ben Laurie <be...@algroup.co.uk>.
Manoj Kasichainula wrote:
> 
> On Fri, Apr 28, 2000 at 12:44:11PM -0400, rbb@covalent.net wrote:
> > Exactly, the build is happening EVERY time we run make install.  If we
> > checked properly, I wouldn't be concerned with this, but as it is now,
> > because modules.c and buildmark.c are ALWAYS re-compiled, this is a
> > real PITA.
> 
> buildmark.c is rebuilt on purpose. modules.c ought to be avoidable,
> though. I'm not quite sure why it's being built everytime.
> 
> Why not just use make install all the time? If the build fails, the
> install shouldn't run.

I never install!

Cheers,

Ben.

--
http://www.apache-ssl.org/ben.html

Re: cvs commit: apache-2.0/src/build rules.mk

Posted by rb...@covalent.net.
On Fri, 28 Apr 2000, Manoj Kasichainula wrote:

> On Fri, Apr 28, 2000 at 12:44:11PM -0400, rbb@covalent.net wrote:
> > Exactly, the build is happening EVERY time we run make install.  If we
> > checked properly, I wouldn't be concerned with this, but as it is now,
> > because modules.c and buildmark.c are ALWAYS re-compiled, this is a
> > real PITA.
> 
> buildmark.c is rebuilt on purpose. modules.c ought to be avoidable,
> though. I'm not quite sure why it's being built everytime.
> 
> Why not just use make install all the time? If the build fails, the
> install shouldn't run.

Because I don't always WANT to install the binary.  I have three or four
projects on my machine currently, I have a common config file for all of
them, so I always use the same prefix.  I also keep on "good" binary in
the installed directory so I can compare to what it outputs.  Installing
everytime I build is not the answer.

Why are we re-building ANYTHING if nothing has changed since the last time
we built?

Ryan


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


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Manoj Kasichainula <ma...@io.com>.
On Fri, Apr 28, 2000 at 12:44:11PM -0400, rbb@covalent.net wrote:
> Exactly, the build is happening EVERY time we run make install.  If we
> checked properly, I wouldn't be concerned with this, but as it is now,
> because modules.c and buildmark.c are ALWAYS re-compiled, this is a
> real PITA.

buildmark.c is rebuilt on purpose. modules.c ought to be avoidable,
though. I'm not quite sure why it's being built everytime.

Why not just use make install all the time? If the build fails, the
install shouldn't run.

Re: cvs commit: apache-2.0/src/build rules.mk

Posted by rb...@covalent.net.
On Fri, 28 Apr 2000, Chuck Murcko wrote:

> Manoj Kasichainula wrote:
> > 
> > On Fri, Apr 28, 2000 at 12:02:31AM -0000, rbb@locus.apache.org wrote:
> > >   This stops Apache 2.0 from trying to compile the server when we run
> > >   make install.  We never used to build the server when installing in
> > >   the 1.3 tree, so I'm going back to that behavior.
> > 
> > What's wrong with trying to build the server when you do a make
> > install? Installation depends on having built the server, so the
> > makefiles should respect that.
> 
> Yep. Can't install with nothing built. That is correct behavior, having
> build as a dependency for install, even for binary distrib. If it
> doesn't work, the binary distrib is broken.
> 
> OTOH, if the build happens every time, then the make hierarchy is
> broken.

Exactly, the build is happening EVERY time we run make install.  If we
checked properly, I wouldn't be concerned with this, but as it is now,
because modules.c and buildmark.c are ALWAYS re-compiled, this is a
real PITA.

Ryan




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


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Chuck Murcko <ch...@topsail.org>.
Manoj Kasichainula wrote:
> 
> On Fri, Apr 28, 2000 at 12:02:31AM -0000, rbb@locus.apache.org wrote:
> >   This stops Apache 2.0 from trying to compile the server when we run
> >   make install.  We never used to build the server when installing in
> >   the 1.3 tree, so I'm going back to that behavior.
> 
> What's wrong with trying to build the server when you do a make
> install? Installation depends on having built the server, so the
> makefiles should respect that.

Yep. Can't install with nothing built. That is correct behavior, having
build as a dependency for install, even for binary distrib. If it
doesn't work, the binary distrib is broken.

OTOH, if the build happens every time, then the make hierarchy is
broken.
-- 
Chuck
Chuck Murcko
Topsail Group
chuck@topsail.org

Re: cvs commit: apache-2.0/src/build rules.mk

Posted by rb...@covalent.net.
On Thu, 27 Apr 2000, Manoj Kasichainula wrote:

> On Fri, Apr 28, 2000 at 12:02:31AM -0000, rbb@locus.apache.org wrote:
> >   This stops Apache 2.0 from trying to compile the server when we run
> >   make install.  We never used to build the server when installing in
> >   the 1.3 tree, so I'm going back to that behavior.
> 
> What's wrong with trying to build the server when you do a make
> install? Installation depends on having built the server, so the
> makefiles should respect that.

Because I ALWAYS build the server myself, and then do an installation.  I
do this because sometimes I don't want to install the server.  Without
this change, I have to sit through a couple of screens of messages just to
install the server.  While I am doing development, I may install the
server five or six times in an hour.  This wouldn't be an issue, except
that we ALWAYS do some compilation, even if it is just buildmark.c and
modules.c.  And, I have watching what I was doing scroll off the screen
because I tried to install a new version of the server.  Especially when I
am working on the install problems.

Ryan

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


Re: cvs commit: apache-2.0/src/build rules.mk

Posted by Manoj Kasichainula <ma...@collab.net>.
On Fri, Apr 28, 2000 at 12:02:31AM -0000, rbb@locus.apache.org wrote:
>   This stops Apache 2.0 from trying to compile the server when we run
>   make install.  We never used to build the server when installing in
>   the 1.3 tree, so I'm going back to that behavior.

What's wrong with trying to build the server when you do a make
install? Installation depends on having built the server, so the
makefiles should respect that.