Summary: | devel/ccache: make_index: Circular dependency loop found: ccache-3.7.1 depends upon itself. | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Trond Endrestøl <Trond.Endrestol> | ||||||||
Component: | Individual Port(s) | Assignee: | Bryan Drewery <bdrewery> | ||||||||
Status: | Closed FIXED | ||||||||||
Severity: | Affects Some People | CC: | adamw, leres, r00t, tcberner, thomas-freebsd | ||||||||
Priority: | --- | Keywords: | regression | ||||||||
Version: | Latest | Flags: | bugzilla:
maintainer-feedback?
(bdrewery) |
||||||||
Hardware: | Any | ||||||||||
OS: | Any | ||||||||||
See Also: | https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=238045 | ||||||||||
Attachments: |
|
Description
Trond Endrestøl
2019-05-19 10:43:47 UTC
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 |