After r501985 it's impossible to get something sensible out of make index: make_index: Circular dependency loop found: ccache-3.7.1 depends upon itself. And ports-mgmt/synth refuse to run: # synth status local/fsi-localbase Scanning existing packages. progress: 97.25% local/fsi-localbase scan aborted because a circular dependency on devel/ccache was detected. ... backtrace print/indexinfo ... backtrace devel/gmake ... backtrace devel/ccache ... backtrace ports-mgmt/portmaster ... backtrace local/fsi-localbase
I have the same problem. Short term workaround is to disable ccache support in synth. # Minimal reproduce example with Directory_ccache enabled: [root@stairway:~]# synth force devel/ccache devel/ccache scan aborted because a circular dependency on devel/ccache was detected. ... backtrace print/indexinfo ... backtrace devel/gmake ... backtrace devel/ccache # Workaround: /usr/local/etc/synth/synth.ini: Directory_ccache= disabled Seems to be an injected dependency, as this should have broken the loop. Unless it is a buildtime dependency that does not show up: [root@stairway:~]# pkg info -r ccache-3.7.1 ccache-3.7.1: [root@stairway:~]# pkg info -d ccache-3.7.1 ccache-3.7.1: Also tried to force reinstall the dependency chain for print/indexinfo and for ccache. Messing around with my make.conf does not seem to help: .if ${.CURDIR:M*/devel/ccache*} NOCCACHE=yes WITHOUT_CCACHE_BUILD=yes .endif
(In reply to thomas-freebsd from comment #1) Think i found a more "proper" workaround with ccache still enabled in Synth. /etc/make.conf disable ccache for entire ccache build dependency tree: .if ${.CURDIR:M*/devel/ccache*} || ${.CURDIR:M*/print/indexinfo*} || ${.CURDIR:M*/devel/gmake*} NOCCACHE=yes WITHOUT_CCACHE_BUILD=yes .endif Note that I have symlinked LiveSystem-make.conf -> /etc/make.conf, and that i have other ccache customization stuff in my make.conf, YMMV.
Created attachment 204475 [details] Mark ccache dependencies NO_CCACHE Hi Attached is another workaround until it is fixed properly. mfg Tobias
Created attachment 204482 [details] Fix the need for gmake I'm attaching a patch that removes the part of the Makefile that needed gmake. It doesn't appear to me to be doing anything useful anyway. With this patch, you can remove USES=gmake.
I added NO_CCACHE in ports r502103, it should be reverted once this is fixed.
Created attachment 204483 [details] Fix ccache and restore tree Thanks @mat. I'm attaching a complete patch that removes the gmake syntax from ccache, removes USES=gmake, and removes the NO_CCACHE from the ports in question.
Sorry about that. Thanks everyone!
A commit references this bug: Author: bdrewery Date: Mon May 20 17:06:35 UTC 2019 New revision: 502126 URL: https://svnweb.freebsd.org/changeset/ports/502126 Log: Fix recursive dependency issue with gmake. Add a hard .error so I don't miss this again. PR: 237979 Submitted by: tcberner, adamw (based on) Pointyhat to: bdrewery Changes: head/devel/ccache/Makefile head/devel/ccache/files/extra-patch-Makefile.in head/devel/gettext-runtime/Makefile head/devel/gmake/Makefile head/print/indexinfo/Makefile