From owner-freebsd-ports@freebsd.org Sat Dec 15 13:38:20 2018 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0DF0C1315162 for ; Sat, 15 Dec 2018 13:38:20 +0000 (UTC) (envelope-from adamw@adamw.org) Received: from mail-yb1-xb2d.google.com (mail-yb1-xb2d.google.com [IPv6:2607:f8b0:4864:20::b2d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46A707081B for ; Sat, 15 Dec 2018 13:38:19 +0000 (UTC) (envelope-from adamw@adamw.org) Received: by mail-yb1-xb2d.google.com with SMTP id a10so22940ybl.7 for ; Sat, 15 Dec 2018 05:38:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adamw-org.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=bpgoDtJYxURZx0ZxtGPxiqV5+vCTa6KAkIXhDW3H9sM=; b=vltJz2My0Igm3cK9TGtmjHf5oDI1NABMKQHxtyuEJitszRPc2rwKkQ0HfPBfrCoapi kMtSU5LQNfxnF+CKFqH0yJiHuSDh99ZML6IFwwK6ag+3wFXf8Freu49ztLJ6PW9/3RWn FBhPf79Q2xS9qLqOH8SJ8v2JNnL6x1rfyi33E2/C0kxLrInXWexFrsykWX5Ztn53LR5c BFYUkkfkndW67r0jVhidhSWpz6AJ3vSykljkoZeN9Kof2dGwjj5EqYbPo1ju+0X65Q9U NMQSddc/UGlglXScVu2oR1hekrHqJf/fZ9P9QjLnwnJ+SPIv8DLHh5A7y5YEOQI/Zsan H9NQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=bpgoDtJYxURZx0ZxtGPxiqV5+vCTa6KAkIXhDW3H9sM=; b=APsZcFdQuowC+i2eRBqi3aSLtT+QljF/tozr3jrnTbrrJdDF7w2Cis2b2wjUxfjrgS fMg2lpRzYZQ/idWS0mHDjVbsFJiy+2u9OdmLZg7ex5GCyKXcdM2A2tGzcAGr1ppBb6CU fB3pX5bk8/hVACBl9elVjCSn+ichs1OHT47hODKrECiAZWVfL3ewx9OQuqim2woEZIty rH8bToRiWzh3K4gXgbW95EhjsV2dwvtsuB9vNnYRzXaJDJonAQxY1k492/KJ5HmjOtck bhlIVN6rph5889R+F6dIyMNaISnqJpgVmJ+/1t3p5CA7OA+kw7Sll7mV5z014eC1uK4d nJGw== X-Gm-Message-State: AA+aEWbqhZtmh/5yPWm5Iumqq1cm819+FHfTV35eK9gYOqjsJN33+YB5 OJYJ8s0vep+CEsjHi+ohbg/UtOiQLcM/VKL8lWB+7UYkVwY= X-Google-Smtp-Source: AFSGD/W/49lgfTC+4RuRnIKCR0uCkI4DmYkcZ969ccQxIPDU1Tj38jhUCXfEQpW/+hi5xOdWpKDzJI5Dbxvy6vCJNXc= X-Received: by 2002:a25:34c7:: with SMTP id b190mr6662845yba.197.1544881098550; Sat, 15 Dec 2018 05:38:18 -0800 (PST) MIME-Version: 1.0 References: <201812150917.wBF9H66V019974@sdf.org> In-Reply-To: <201812150917.wBF9H66V019974@sdf.org> From: Adam Weinberger Date: Sat, 15 Dec 2018 06:38:02 -0700 Message-ID: Subject: Re: dependency loop in editors/vim with GTK3 option To: bennett@sdf.org Cc: freebsd-ports@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 46A707081B X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=adamw-org.20150623.gappssmtp.com header.s=20150623 header.b=vltJz2My; spf=pass (mx1.freebsd.org: domain of adamw@adamw.org designates 2607:f8b0:4864:20::b2d as permitted sender) smtp.mailfrom=adamw@adamw.org X-Spamd-Result: default: False [-5.96 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; R_DKIM_ALLOW(-0.20)[adamw-org.20150623.gappssmtp.com:s=20150623]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; NEURAL_HAM_LONG(-1.00)[-0.999,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-ports@freebsd.org]; TO_DN_NONE(0.00)[]; DMARC_NA(0.00)[adamw.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[adamw-org.20150623.gappssmtp.com:+]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[d.2.b.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; MX_GOOD(-0.01)[alt1.aspmx.l.google.com,aspmx.l.google.com,alt3.aspmx.l.google.com,alt2.aspmx.l.google.com,alt4.aspmx.l.google.com]; IP_SCORE(-2.55)[ip: (-9.75), ipnet: 2607:f8b0::/32(-1.61), asn: 15169(-1.33), country: US(-0.08)]; NEURAL_HAM_SHORT(-0.90)[-0.899,0]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Dec 2018 13:38:20 -0000 On Sat, Dec 15, 2018 at 2:24 AM Scott Bennett wrote: > > There is a dependency recursion loop in the build process for editors/vim > if one selects the GTK3 config menu option. The only way I've found so far to > get around this is to choose the GTK2 option instead. > With GTK3 selected, graphics/librsvg2 becomes a dependency, which, in > turn, is dependent upon lang/vala. lang/vala depends upon devel/dconf, which > depends upon devel/gconf2. devel/gconf2 depends upon graphics/graphviz, which > depends upon lang/vala! The recursion occurs there and was found by following > the instructions in UPDATING for the upgrade to perl5.28 when using portmaster. > The command shown in the instructions is "portmaster -f", so the -f forces all > dependencies and dependent ports to be rebuilt. > As nearly as I can see, this dependency recursion loop breaks any port > involving lang/vala when portmaster -f is used. In the case of editors/vim, > a usable workaround is to choose gtk2 instead of gtk3, but for many other > ports, the perl upgrade's admonition to rebuilt ports that depend upon the > perl library to omit -f when using portmaster while providing portmaster a > *complete list* of all ports to be built. Provided an acceptable version > of lang/vala is already installed, it will be used, and the dependency loop > gets skipped over because there is no need to build lang/vala. Of course, > if one does that, there is no guarantee that the resulting binaries installed > for any of the ports in the recursion loop will function properly, given that > they may be based upon obsolete versions of the other ports in the loop. Hi Scott, Thanks for the report. A dependency loop is certainly a distressing appearance! It can occur when non-default OPTIONS are set, but should never occur with default OPTIONS. So, first question: do you have non-default OPTIONS for those ports? That said---your dependency chain doesn't look right. For example, lang/vala depends directly on graphviz, and there is no graphviz configuration that could depend directly on vala. lang/vala does not depend on dconf, and dconf does not depend on gconf2. Some of the dependencies you listed are backwards (gconf2 depends on dconf, and dconf depends on vala), but others don't look possible. If you are able to re-trigger the dependency loop, a log would be extremely helpful. # Adam -- Adam Weinberger adamw@adamw.org https://www.adamw.org