Discussion:
[m-dev.] prepare.sh tests for the wrong thing
Zoltan Somogyi
2015-10-03 04:09:36 UTC
Permalink
After doing a "git pull" of the recent changes to boehm_gc,
my workspace's boehm_gc directory still contained a bunch of files
and directories. The prepare.sh script checks whether it needs to
set up submodules, but gets the test wrong: it tests for the presence
of a directory that is present whether or not the submodule has already
been set up. As a result, prepare.sh does not set up the submodule
even though it needs to.

Attached is a file that lists the contents of my workspace's boehm_gc
directory immediately after the git pull. An "mmake realclean" immediately
afterward left the boehm_gc directory unchanged.

Zoltan.
Paul Bone
2015-10-03 04:51:18 UTC
Permalink
Post by Zoltan Somogyi
After doing a "git pull" of the recent changes to boehm_gc,
my workspace's boehm_gc directory still contained a bunch of files
and directories. The prepare.sh script checks whether it needs to
set up submodules, but gets the test wrong: it tests for the presence
of a directory that is present whether or not the submodule has already
been set up. As a result, prepare.sh does not set up the submodule
even though it needs to.
Attached is a file that lists the contents of my workspace's boehm_gc
directory immediately after the git pull. An "mmake realclean" immediately
afterward left the boehm_gc directory unchanged.
These are almost certainly all intermediate files, and a quick glance at
your file supports that. git didn't delete or move them because they're
unversioned. It's probably easiest to remove the boehm_gc directory
completely and then run ./prepare.
--
Paul Bone
Zoltan Somogyi
2015-10-03 05:55:58 UTC
Permalink
Post by Paul Bone
These are almost certainly all intermediate files, and a quick glance at
your file supports that. git didn't delete or move them because they're
unversioned.
Yes, I know.
Post by Paul Bone
It's probably easiest to remove the boehm_gc directory
completely and then run ./prepare.
And I did that, before I sent my previous email.

The point of my mail was to request that you should change prepare.sh
to test for the presence/absence of some file that ISN'T left over like this.

Zoltan.
Paul Bone
2015-10-03 10:51:17 UTC
Permalink
Post by Zoltan Somogyi
Post by Paul Bone
These are almost certainly all intermediate files, and a quick glance at
your file supports that. git didn't delete or move them because they're
unversioned.
Yes, I know.
Post by Paul Bone
It's probably easiest to remove the boehm_gc directory
completely and then run ./prepare.
And I did that, before I sent my previous email.
The point of my mail was to request that you should change prepare.sh
to test for the presence/absence of some file that ISN'T left over like this.
Sorry, I misunderstood.

I propose that prepare.sh test for boehm_gc/.git for this purpose.
Optionally it could be more helpful and do something like:

If not boehm_gc/.git exists then
if boehm_gc/* exists then
Tell user that they need to manually remove boehm_gc/* and re-run
./prepare.sh
exit 1
else
setup git submodules.
end if
end if
setup autotools.

However that may be unnecessary because once everyone transitions this
shouldn't be a problem again.
--
Paul Bone
Loading...