You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by gs...@locus.apache.org on 2000/12/05 21:32:51 UTC

cvs commit: apr-util Makefile.in

gstein      00/12/05 12:32:51

  Modified:    .        Makefile.in
  Log:
  aprutil in the "distribution" form does not want to remove configure or
    aprutils.exports (these two files are part of the distribution and users
    cannot typically regenerate them). But the developers' "extraclean" target
    will do it.
  
  Revision  Changes    Path
  1.3       +3 -2      apr-util/Makefile.in
  
  Index: Makefile.in
  ===================================================================
  RCS file: /home/cvs/apr-util/Makefile.in,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -u -r1.2 -r1.3
  --- Makefile.in	2000/12/05 18:29:06	1.2
  +++ Makefile.in	2000/12/05 20:32:51	1.3
  @@ -9,8 +9,9 @@
   
   SUBDIRS = src . test build
   DISTCLEAN_TARGETS = config.cache config.log config.status config.sub \
  -	include/apu_config.h aprutils.exports configure
  -EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in
  +	include/apu_config.h
  +EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in \
  +	aprutils.exports
   
   ### fix this up at some point (install location)
   libdir = /usr/local/lib
  
  
  

Re: cvs commit: apr-util Makefile.in

Posted by rb...@covalent.net.
> No, distclean means "clean the directories in preparation of a release."
> For example, the one for rsync does
> 
>    distclean: clean
>         rm -f config.h config.cache config.status Makefile
> 
> I have seen "reallyclean" used as a target to remove all generated
> files, but it isn't a standard either.  extraclean seems fine.

Okay.

Ryan

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


Re: cvs commit: apr-util Makefile.in

Posted by "Roy T. Fielding" <fi...@ebuilt.com>.
> WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
> did a "cvs checkout".  If you just want to clean your directory use make
> clean, not make distclean.  This is the exact same syntax and rules that
> Apache and APR have always used.  AFAIK, this is basically a standard and
> we shouldn't be re-inventing things.
> 
> -1

No, distclean means "clean the directories in preparation of a release."
For example, the one for rsync does

   distclean: clean
        rm -f config.h config.cache config.status Makefile

I have seen "reallyclean" used as a target to remove all generated
files, but it isn't a standard either.  extraclean seems fine.

....Roy

Re: cvs commit: apr-util Makefile.in

Posted by rb...@covalent.net.
> > > 1) clean out the .o files [before rebuilding]
> > > 2) clean out the results of running ./configure (restore everything to the
> > >    same point that you unpacked apache.org/dist/aprutil-1.0.tar.gz)
> > > 3) return to the point right after a CVS checkout
> > 
> > Step 2 does not exist in Apache as it now stands, and nobody has been
> > clamoring for it so far.  It has never existed AFAICS.
>
> And I *do* see that Apache has (2) and it is called "distclean". :-)

Here are the files cleaned by Apache's distclean:

DISTCLEANFILES  = include/config_auto.h modules.c aclocal.m4 buildmk.stamp \
        configure generated_lists include/ap_config_auto.h \
        include/ap_config_auto.h.in include/ap_config_path.h install-sh

That includes configure at least, which is not a part of step 2.

> We only have about six files in the whole tree to deal with (3). I went for
> the simple, straightforward approach.

Then please make it common in all of the Makefiles, Apache, apr, apr-util,
pcre, sdbm, expat-lite, etc.

> I presume that your note implies your veto is lifted?

Yes.

Ryan

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


Re: cvs commit: apr-util Makefile.in

Posted by Greg Stein <gs...@lyra.org>.
On Tue, Dec 05, 2000 at 04:38:27PM -0800, rbb@covalent.net wrote:
> 
> > We have three levels of cleaning that need to be expressed:
> > 
> > 1) clean out the .o files [before rebuilding]
> > 2) clean out the results of running ./configure (restore everything to the
> >    same point that you unpacked apache.org/dist/aprutil-1.0.tar.gz)
> > 3) return to the point right after a CVS checkout
> 
> Step 2 does not exist in Apache as it now stands, and nobody has been
> clamoring for it so far.  It has never existed AFAICS.

As a few people have mentioned, "distclean" (type (2)) is pretty common (Roy
mentioned rsync, I'll chime in with Python, Neon, Berkeley DB, PHP, Python's
MySQL interface, and all automake-based projects such as Subversion).

And I *do* see that Apache has (2) and it is called "distclean". :-)

> As for step 3, I would be much happier with an external program like
> cvsclean.

We only have about six files in the whole tree to deal with (3). I went for
the simple, straightforward approach.

> > I believe that we *do* need these three types of cleaning. Does this make
> > sense to you?
> 
> Sure.  I am still not convinced that we need all three, and regardless, we
> shouldn't be duplicating files, so pleast fix that.

As I mentioned in my previous reply... we are not duplicating any files in
those lists.

I presume that your note implies your veto is lifted?

Thanks,
-g

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

Re: cvs commit: apr-util Makefile.in

Posted by "Roy T. Fielding" <fi...@ebuilt.com>.
> > We have three levels of cleaning that need to be expressed:
> > 
> > 1) clean out the .o files [before rebuilding]
> > 2) clean out the results of running ./configure (restore everything to the
> >    same point that you unpacked apache.org/dist/aprutil-1.0.tar.gz)
> > 3) return to the point right after a CVS checkout
> 
> Step 2 does not exist in Apache as it now stands, and nobody has been
> clamoring for it so far.  It has never existed AFAICS.

distclean is a GNU standard.  Automake defines mostlyclean, clean,
distclean, and maintainer-clean.  Apache 1.x has used that definition
since March of 1998.  I have no idea what the state is now, but if
it doesn't match the GNU definition then it most certainly is a bug.
The reason we are using configure is to be consistent with all of
the other open source projects using configure, making it easy to
write install scripts and RPMs.

....Roy

Re: cvs commit: apr-util Makefile.in

Posted by rb...@covalent.net.
> We have three levels of cleaning that need to be expressed:
> 
> 1) clean out the .o files [before rebuilding]
> 2) clean out the results of running ./configure (restore everything to the
>    same point that you unpacked apache.org/dist/aprutil-1.0.tar.gz)
> 3) return to the point right after a CVS checkout

Step 2 does not exist in Apache as it now stands, and nobody has been
clamoring for it so far.  It has never existed AFAICS.

As for step 3, I would be much happier with an external program like
cvsclean.

> I believe that we *do* need these three types of cleaning. Does this make
> sense to you?

Sure.  I am still not convinced that we need all three, and regardless, we
shouldn't be duplicating files, so pleast fix that.

Ryan

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






Re: cvs commit: apr-util Makefile.in

Posted by Greg Stein <gs...@lyra.org>.
We have three levels of cleaning that need to be expressed:

1) clean out the .o files [before rebuilding]
2) clean out the results of running ./configure (restore everything to the
   same point that you unpacked apache.org/dist/aprutil-1.0.tar.gz)
3) return to the point right after a CVS checkout

Everybody would use (1). People downloading and using aprutil will use (2).
As developers with autoconf and libtool installed on our systems, we will
sometimes use (3); end users are not expected to ever use (3).

"make clean" corresponds to (1) and is the typical cleaning.
"make distclean" is the "return to a clean distribution"
"make extraclean" clears out that extra bit of stuff from running the
   buildconf.sh script.

Note that "distclean" implies "clean" and that "extraclean" implies all of
them. You won't have to duplicate file names. (the diff below is a bit
confusing, but there are no duplicate files listed)

I believe that we *do* need these three types of cleaning. Does this make
sense to you?

[ I will also volunteer myself to add docco in docs/ about the different
  build targets and variables; so that (hopefully) we won't have to go over
  this again in a year :-) ]

Cheers,
-g

On Tue, Dec 05, 2000 at 01:31:14PM -0800, rbb@covalent.net wrote:
> 
> >   Modified:    .        Makefile.in
> >   Log:
> >   aprutil in the "distribution" form does not want to remove configure or
> >     aprutils.exports (these two files are part of the distribution and users
> >     cannot typically regenerate them). But the developers' "extraclean" target
> >     will do it.
> 
> WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
> did a "cvs checkout".  If you just want to clean your directory use make
> clean, not make distclean.  This is the exact same syntax and rules that
> Apache and APR have always used.  AFAIK, this is basically a standard and
> we shouldn't be re-inventing things.
> 
> -1
> 
> Oh, and if we were to keep EXTRACLEAN, which I have just vetoed, it should
> really use the DISTCLEAN_TARGETS variable so that we don't have to
> duplicate file names.
> 
> Ryan
> 
> >    SUBDIRS = src . test build
> >    DISTCLEAN_TARGETS = config.cache config.log config.status config.sub \
> >   -	include/apu_config.h aprutils.exports configure
> >   -EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in
> >   +	include/apu_config.h
> >   +EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in \
> >   +	aprutils.exports
> >    
> >    ### fix this up at some point (install location)
> >    libdir = /usr/local/lib
> >   
> >   
> >   
> > 
> > 
> 
> 
> _______________________________________________________________________________
> Ryan Bloom                        	rbb@apache.org
> 406 29th St.
> San Francisco, CA 94131
> -------------------------------------------------------------------------------

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

Re: cvs commit: apr-util Makefile.in

Posted by Greg Stein <gs...@lyra.org>.
On Wed, Dec 06, 2000 at 12:22:02AM +0100, Sascha Schumann wrote:
> On Tue, 5 Dec 2000 rbb@covalent.net wrote:
> >
> > >   Modified:    .        Makefile.in
> > >   Log:
> > >   aprutil in the "distribution" form does not want to remove configure or
> > >     aprutils.exports (these two files are part of the distribution and users
> > >     cannot typically regenerate them). But the developers' "extraclean" target
> > >     will do it.
> >
> > WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
> > did a "cvs checkout".
> 
>     Actually, you'd use cvsclean for that (dunno where it is
>     today, before the move it was in src/helpers).
> 
>     Since this has come up several times in the past, here is the
>     definition of distclean, as commonly agreed upon:
> 
>         The target distclean is intended to remove all files
>         which were created by configuring or building the
>         program.

Right... that is how distclean was implemented in aprutil.

"extraclean" is the "return to the bare originals (e.g. cvs checkout)". I
made the extra deletions explicit rather than relying on cvsclean and the
.cvsignore files. Going the explicit route was quite fine (and much more
understandable) since there are only about a half-dozen files produced by
"buildconf.sh" that needed to be removed.

Cheers,
-g

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

Re: cvs commit: apr-util Makefile.in

Posted by Sascha Schumann <sa...@schumann.cx>.
On Tue, 5 Dec 2000 rbb@covalent.net wrote:

>
> >   Modified:    .        Makefile.in
> >   Log:
> >   aprutil in the "distribution" form does not want to remove configure or
> >     aprutils.exports (these two files are part of the distribution and users
> >     cannot typically regenerate them). But the developers' "extraclean" target
> >     will do it.
>
> WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
> did a "cvs checkout".

    Actually, you'd use cvsclean for that (dunno where it is
    today, before the move it was in src/helpers).

    Since this has come up several times in the past, here is the
    definition of distclean, as commonly agreed upon:

        The target distclean is intended to remove all files
        which were created by configuring or building the
        program.

    - Sascha


Re: cvs commit: apr-util Makefile.in

Posted by Sascha Schumann <sa...@schumann.cx>.
On Tue, 5 Dec 2000 rbb@covalent.net wrote:

>
> >   Modified:    .        Makefile.in
> >   Log:
> >   aprutil in the "distribution" form does not want to remove configure or
> >     aprutils.exports (these two files are part of the distribution and users
> >     cannot typically regenerate them). But the developers' "extraclean" target
> >     will do it.
>
> WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
> did a "cvs checkout".

    Actually, you'd use cvsclean for that (dunno where it is
    today, before the move it was in src/helpers).

    Since this has come up several times in the past, here is the
    definition of distclean, as commonly agreed upon:

        The target distclean is intended to remove all files
        which were created by configuring or building the
        program.

    - Sascha


Re: cvs commit: apr-util Makefile.in

Posted by rb...@covalent.net.
>   Modified:    .        Makefile.in
>   Log:
>   aprutil in the "distribution" form does not want to remove configure or
>     aprutils.exports (these two files are part of the distribution and users
>     cannot typically regenerate them). But the developers' "extraclean" target
>     will do it.

WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
did a "cvs checkout".  If you just want to clean your directory use make
clean, not make distclean.  This is the exact same syntax and rules that
Apache and APR have always used.  AFAIK, this is basically a standard and
we shouldn't be re-inventing things.

-1

Oh, and if we were to keep EXTRACLEAN, which I have just vetoed, it should
really use the DISTCLEAN_TARGETS variable so that we don't have to
duplicate file names.

Ryan

>    SUBDIRS = src . test build
>    DISTCLEAN_TARGETS = config.cache config.log config.status config.sub \
>   -	include/apu_config.h aprutils.exports configure
>   -EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in
>   +	include/apu_config.h
>   +EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in \
>   +	aprutils.exports
>    
>    ### fix this up at some point (install location)
>    libdir = /usr/local/lib
>   
>   
>   
> 
> 


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


Re: cvs commit: apr-util Makefile.in

Posted by rb...@covalent.net.
>   Modified:    .        Makefile.in
>   Log:
>   aprutil in the "distribution" form does not want to remove configure or
>     aprutils.exports (these two files are part of the distribution and users
>     cannot typically regenerate them). But the developers' "extraclean" target
>     will do it.

WHAT!?!?!?!  Distclean is meant to bring us back to what we had when we
did a "cvs checkout".  If you just want to clean your directory use make
clean, not make distclean.  This is the exact same syntax and rules that
Apache and APR have always used.  AFAIK, this is basically a standard and
we shouldn't be re-inventing things.

-1

Oh, and if we were to keep EXTRACLEAN, which I have just vetoed, it should
really use the DISTCLEAN_TARGETS variable so that we don't have to
duplicate file names.

Ryan

>    SUBDIRS = src . test build
>    DISTCLEAN_TARGETS = config.cache config.log config.status config.sub \
>   -	include/apu_config.h aprutils.exports configure
>   -EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in
>   +	include/apu_config.h
>   +EXTRACLEAN_TARGETS = configure libtool aclocal.m4 include/apu_config.h.in \
>   +	aprutils.exports
>    
>    ### fix this up at some point (install location)
>    libdir = /usr/local/lib
>   
>   
>   
> 
> 


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