make clean failes to cleanup everything
Tijl Coosemans
tijl at FreeBSD.org
Tue Oct 4 12:03:31 UTC 2016
On Tue, 4 Oct 2016 13:36:29 +0200 Gerhard Schmidt <schmidt at ze.tum.de> wrote:
> Am 04.10.2016 um 12:48 schrieb Tijl Coosemans:
>> On Tue, 4 Oct 2016 09:52:23 +0200 Gerhard Schmidt <schmidt at ze.tum.de> wrote:
>>> make clean fails to clean autoconf and automake.
>>>
>>> If a port uses autoconf and autoconf isn't installed on the system, it
>>> will be build and installed.
>>>
>>> if you run make clean after installing the port, every dependency is
>>> cleaned as well but not autoconf.
>>
>> Can you give an example of such a port, because we have two mechanisms
>> that can pull in autoconf.
>
> It's seams to be quite a complex problem.
>
> To find out which ports causes this problem tried to build lang/php56
> which uses autoconf. But when I do a make clean autoconf is cleaned as
> well.
>
> [root at etustar /usr/ports/lang/php56]# make clean
> ===> Cleaning for autoconf-2.69_1
> ===> Cleaning for php56-5.6.25_1
>
> But it also installs help2man, gmake, p5-Locale-gettext-1.06 and
> autoconf-wrapper-20131203 and these are not cleaned.
>
> The transcript is attached as typescript_clean
>
> now do a pkg autoremove which removes autoconf and the missed ports form
> the system.
>
> now try again to compile php56 and it fails
>
> the transcript is attached as typescript_unclean
>
> It seams that dependencies of dependencies are not clean. It seams that
> autoconf was only the most memorable one.
This seems to be intended. Make clean runs make limited-clean-depends
which cleans direct dependencies only. If you want to do full recursive
clean you have to run make clean-depends.
More information about the freebsd-ports
mailing list