Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread R. David Murray
On Mon, 01 Jul 2013 08:33:38 +0200, Georg Brandl  wrote:
> Am 26.06.2013 16:24, schrieb Victor Stinner:
> > 2013/6/26 Eric V. Smith :
> >> I think that's exactly what's happening.
> >>
> >> From the bug report:
> >>
> >> find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
> >>-o -name '[@,#]*' -o -name '*.old' \
> >>-o -name '*.orig' -o -name '*.rej' \
> >>-o -name '*.bak' ')' \
> >>-exec rm -f {} ';'
> >>
> >> Will find files beginning with '@' inside subdirectories of $(srcdir)/.hg.
> > 
> > In my opinion, make distclean should only remove files generated by
> > configure and a build. It should not remove random files.
> > 
> > *~, .orig, .rej, .back should be kept. They are not generated by
> > configure nor make.
> 
> I think you want "make clean" then.

That's a good point.  If the find were dropped, the target would have to
be renamed.  "make configureclean", maybe.  But I think it is easier and
less confusing just to leave things as they will be after Eric applies
the fix proposed in http://bugs.python.org/issue18312.

--David
___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread Gregory P. Smith
If we disallowed builds *from in source tree* requiring all output to go
into a separate build output directory instead (like any sane person does*)
we wouldn't need a crazy find in the source tree to mess things up. ;)

this can be done today:

$ mkdir foo && cd foo && ../my-hg/2.7/configure --srcdir=../my-hg/2.7 &&
make -j12

I think all we'd need to do is disallow the cwd when configuring or
building from being within srcdir.

-gps

* note: the author is normally too lazy to be sane because it involves
slightly more typing.


On Mon, Jul 1, 2013 at 4:19 AM, R. David Murray wrote:

> On Mon, 01 Jul 2013 08:33:38 +0200, Georg Brandl  wrote:
> > Am 26.06.2013 16:24, schrieb Victor Stinner:
> > > 2013/6/26 Eric V. Smith :
> > >> I think that's exactly what's happening.
> > >>
> > >> From the bug report:
> > >>
> > >> find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
> > >>-o -name '[@,#]*' -o -name '*.old' \
> > >>-o -name '*.orig' -o -name '*.rej' \
> > >>-o -name '*.bak' ')' \
> > >>-exec rm -f {} ';'
> > >>
> > >> Will find files beginning with '@' inside subdirectories of
> $(srcdir)/.hg.
> > >
> > > In my opinion, make distclean should only remove files generated by
> > > configure and a build. It should not remove random files.
> > >
> > > *~, .orig, .rej, .back should be kept. They are not generated by
> > > configure nor make.
> >
> > I think you want "make clean" then.
>
> That's a good point.  If the find were dropped, the target would have to
> be renamed.  "make configureclean", maybe.  But I think it is easier and
> less confusing just to leave things as they will be after Eric applies
> the fix proposed in http://bugs.python.org/issue18312.
>
> --David
> ___
> Python-Dev mailing list
> [email protected]
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> http://mail.python.org/mailman/options/python-dev/greg%40krypto.org
>
___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread Victor Stinner
Hi Georg,

2013/7/1 Georg Brandl :
> Am 26.06.2013 16:24, schrieb Victor Stinner:
>> 2013/6/26 Eric V. Smith :
>>> I think that's exactly what's happening.
>>>
>>> From the bug report:
>>>
>>> find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
>>>-o -name '[@,#]*' -o -name '*.old' \
>>>-o -name '*.orig' -o -name '*.rej' \
>>>-o -name '*.bak' ')' \
>>>-exec rm -f {} ';'
>>>
>>> Will find files beginning with '@' inside subdirectories of $(srcdir)/.hg.
>>
>> In my opinion, make distclean should only remove files generated by
>> configure and a build. It should not remove random files.
>>
>> *~, .orig, .rej, .back should be kept. They are not generated by
>> configure nor make.
>
> I think you want "make clean" then.

I don't understand why you are suggesting me to use "make clean". I
would like to start a fresh build, so remove configure and Makefile,
but I also want to keep my local changes and local files not tracked
by Mercurial. I need this when the build does not work because a new
file was added or a build script was modified. "make clean" does not
change anything for this use case.

For example, I don't understand why "make distclean" removes the
"tags" file. Generating this file takes 20 to 30 seconds on my slow
laptop, and it is not generated by Python build system, but by the
external ctags program.

Don't you think that we need two different "distclean" commands? One
GNU-style "distclean" which only removes configure and Makefile, and
another "distclean" which is the GNU "distclean" + the extra find
removing temporary files.

Victor
___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread R. David Murray
On Mon, 01 Jul 2013 23:05:56 +0200, Victor Stinner  
wrote:
> Hi Georg,
> 
> 2013/7/1 Georg Brandl :
> > Am 26.06.2013 16:24, schrieb Victor Stinner:
> >> 2013/6/26 Eric V. Smith :
> >>> I think that's exactly what's happening.
> >>>
> >>> From the bug report:
> >>>
> >>> find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
> >>>-o -name '[@,#]*' -o -name '*.old' \
> >>>-o -name '*.orig' -o -name '*.rej' \
> >>>-o -name '*.bak' ')' \
> >>>-exec rm -f {} ';'
> >>>
> >>> Will find files beginning with '@' inside subdirectories of $(srcdir)/.hg.
> >>
> >> In my opinion, make distclean should only remove files generated by
> >> configure and a build. It should not remove random files.
> >>
> >> *~, .orig, .rej, .back should be kept. They are not generated by
> >> configure nor make.
> >
> > I think you want "make clean" then.
> 
> I don't understand why you are suggesting me to use "make clean". I
> would like to start a fresh build, so remove configure and Makefile,
> but I also want to keep my local changes and local files not tracked
> by Mercurial. I need this when the build does not work because a new
> file was added or a build script was modified. "make clean" does not
> change anything for this use case.
> 
> For example, I don't understand why "make distclean" removes the
> "tags" file. Generating this file takes 20 to 30 seconds on my slow
> laptop, and it is not generated by Python build system, but by the
> external ctags program.
> 
> Don't you think that we need two different "distclean" commands? One
> GNU-style "distclean" which only removes configure and Makefile, and
> another "distclean" which is the GNU "distclean" + the extra find
> removing temporary files.

The command that does not remove the extra files is *not* a 'distclean'
command.  'buildclean' or 'configclean', but not 'distclean'.

distclean still needs to be fixed, so please open a new issue for
adding buildclean or whatever you want to call it, as Eric requested
in the existing issue.

--David
___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread Eric V. Smith
On 7/1/2013 5:13 PM, R. David Murray wrote:
> distclean still needs to be fixed, so please open a new issue for
> adding buildclean or whatever you want to call it, as Eric requested
> in the existing issue.

I finally got around to testing it today, so I'm going to check in my
change to 18312 sometime shortly.

-- 
Eric.
___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] End of the mystery "@README.txt Mercurial bug"

2013-07-01 Thread Georg Brandl
Am 01.07.2013 23:05, schrieb Victor Stinner:
> Hi Georg,
> 
> 2013/7/1 Georg Brandl :
>> Am 26.06.2013 16:24, schrieb Victor Stinner:
>>> 2013/6/26 Eric V. Smith :
 I think that's exactly what's happening.

 From the bug report:

 find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
-o -name '[@,#]*' -o -name '*.old' \
-o -name '*.orig' -o -name '*.rej' \
-o -name '*.bak' ')' \
-exec rm -f {} ';'

 Will find files beginning with '@' inside subdirectories of $(srcdir)/.hg.
>>>
>>> In my opinion, make distclean should only remove files generated by
>>> configure and a build. It should not remove random files.
>>>
>>> *~, .orig, .rej, .back should be kept. They are not generated by
>>> configure nor make.
>>
>> I think you want "make clean" then.
> 
> I don't understand why you are suggesting me to use "make clean". I
> would like to start a fresh build, so remove configure and Makefile,
> but I also want to keep my local changes and local files not tracked
> by Mercurial. I need this when the build does not work because a new
> file was added or a build script was modified. "make clean" does not
> change anything for this use case.

Right, I had wrongly remembered that "clean" also removed the Makefile.

Note that to add to the confusion, there's an additional target
named "clobber" (which is called by distclean).  Both "clobber" and
"distclean" remove Python generated and potentially user generated files.

IMO things could be rearranged without too much effort so that "distclean"
only removes Python-build-generated files, whereas "clobber" removes also
user generated files.  But please don't introduce yet another target.

Georg

___
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com