[mpich-devel] [mpich-discuss] MPICH make clean requires sudo and mucks with DESTDIR
Dave Goodell (dgoodell)
dgoodell at cisco.com
Fri Aug 22 16:12:40 CDT 2014
Right, the "rm -f" should have been added back to a (new) "uninstall-local" target instead of the "clean-local" target. Obviously someone should verify my claims and test the actual fix. For obvious reasons, I'm not really in a position to spend any time writing and testing general MPICH patches.
-Dave
On Aug 22, 2014, at 3:53 PM, "Balaji, Pavan" <balaji at anl.gov> wrote:
>
> Thanks. The “uninstall-local” target is where the “rm -f” should have been?
>
> — Pavan
>
> On Aug 22, 2014, at 1:14 PM, Dave Goodell (dgoodell) <dgoodell at cisco.com> wrote:
>
>> For whoever fixes this, this is the relevant bit of the Automake manual that talks about the "-local" targets:
>>
>> http://www.gnu.org/software/automake/manual/automake.html#Extending
>>
>> -Dave
>>
>> Begin forwarded message:
>>
>>> From: "Dave Goodell (dgoodell)" <dgoodell at cisco.com>
>>> Subject: Re: [mpich-discuss] MPICH make clean requires sudo and mucks with DESTDIR
>>> Date: August 22, 2014 1:11:18 PM CDT
>>> To: "<discuss at mpich.org>" <discuss at mpich.org>
>>> Cc: Jed Brown <jed at jedbrown.org>, Satish Balay <balay at mcs.anl.gov>
>>>
>>> On Aug 21, 2014, at 8:16 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>>>
>>>>
>>>> In the root Makefile is
>>>>
>>>> # we can only have one clean-local, so we hook into it via conditionally
>>>> # defined variables in the dependencies section
>>>> clean-local: $(CLEAN_LOCAL_TARGETS)
>>>> rm -f ${DESTDIR}${bindir}/mpic++
>>>
>>> I was curious if that was my fault as part of the build system rewrite, so I took a peek at his. It looks like a bug from Pavan's commit in June 2012: http://git.mpich.org/mpich.git/commitdiff/cd88cf96
>>>
>>> The commit he references in his commit was the build system overhaul: http://git.mpich.org/mpich.git/commit/4153c8f8680eeb09a80424f2cc787e799e8040a5
>>>
>>> This is the relevant Makefile.sm that was present at the time of the overhaul: http://git.mpich.org/mpich.git/blob/5283393cd41ab38548477ef967f4205539d8e533:/src/env/Makefile.sm
>>>
>>> It has this "rm -f" in a (simplemake-specific) "uninstall-postamble" target, which is rather different from a "clean-local" target. This logic should probably be moved to an "uninstall-local" target instead. I'm in favor adding an UNINSTALL_LOCAL_TARGETS parallel to the CLEAN_LOCAL_TARGETS pattern already in use, but that's a decision for the MPICH guys to make.
>>>
>>>> I do not see how this could be correct, since
>>>>
>>>> 1) mucking with DESTDIR would require sudo for some configurations and make clean shouldn’t require sudo
>>>>
>>>> 2) should make clean muck with DESTDIR anyways?
>>>>
>>>> When I run make clean after a make install I do get an permissions error in trying to remove that link.
>>>
>>> I agree, it is not correct.
>>>
>>> -Dave
>>>
>>
>> _______________________________________________
>> To manage subscription options or unsubscribe:
>> https://lists.mpich.org/mailman/listinfo/devel
>
> --
> Pavan Balaji ✉️
> http://www.mcs.anl.gov/~balaji
>
> _______________________________________________
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/devel
More information about the devel
mailing list