From nobody Thu Feb 22 12:31:17 2024 X-Original-To: java@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TgXYx58d5z5CX4f for ; Thu, 22 Feb 2024 12:31:17 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TgXYx41qkz51rS for ; Thu, 22 Feb 2024 12:31:17 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708605077; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=y3TCmvQX0GWDtEOsiPGSGQSfZoq10Nt5sRn9pG49rxk=; b=Z3U60QuUApLKfbBnsp5mPx+Fk/4dapbkOtJ+r0z3680XLgHRTVzJAhWZsCaT7R2ZT1yqxO lN/BXjjEuIK0qHOcvlTHVa6Jj37cdl1Zh2vcg7nSwb2aykpOlmFhobsCvJOvjTnm8Pnc9e tiQNeTg8Cf9roJMtQWUc34utLXyWhgrAs5hTU3TC+WJIPXsQSJXp8PhlpnYyvQ3Q9gKMRU 4ubWa/8aigx4t5P902dBBCKeNCrHF+c+zpfzuy4TuBh34QfQ08y6r+r/OjplZ6Xn/TFaPM NeuZT9/bT/Awb6Vchhjih7KII/d4FJHe5lJPMWia4cw3NIoM/d4Hl7/aCGKhXg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1708605077; a=rsa-sha256; cv=none; b=SvrSMoi1q1+22A7t9XM2gOwgUu4O4UAdVIZ3N+VsR6+sJmEwJZG9Dxb46PYBPXWmg7Tg4+ pXVUnKi5h/8ZgmZqaHeBcY2uNl8qyBTP1qB+6Zin0cW2ggH5yrGSNGJuYn6UXh9i8RTUnn pTN71G2OV1HJUuzyRT2MV1A0O6DEtWvfrGBoVjp71r0ldiyWm6f/We1hllQRjJfzTj+mDZ sLxA6Tt0i6KgRy+cr1Yxi2atfCmRoPEkcBjU+xzXPf+NiLjo6uQOaPT1ILC2gT9A+zSUT6 htZyqS9xvhZmiLjJO08lZYjeH6OVPg4PKISWdHlUDJ/eNW9T2lNEzkoauEZIYw== Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TgXYx34nTzXGC for ; Thu, 22 Feb 2024 12:31:17 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 41MCVHaf038577 for ; Thu, 22 Feb 2024 12:31:17 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 41MCVHfx038545 for java@FreeBSD.org; Thu, 22 Feb 2024 12:31:17 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: java@FreeBSD.org Subject: [Bug 277204] *: ports misusing WITH_CCACHE_BUILD and NO_CCACHE Date: Thu, 22 Feb 2024 12:31:17 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: arrowd@FreeBSD.org X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: portmgr@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: Porting Java to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-java List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-java@freebsd.org MIME-Version: 1.0 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D277204 --- Comment #5 from Gleb Popov --- (In reply to Benjamin Takacs from comment #4) There are several concepts interleaved here, let me explain. * Feature is a sort of OPTION but general enough to be applied to **any** p= ort. DEBUG is an example of a Feature, because almost every port can be build in= the "debug" mode. In Ports Framework Features are implemented as .mk files placed in Mk/Featu= res/ subdir, just like Uses are placed into Mk/Uses/. The Mk/bsd.ccache.mk file probably predates introduction of Mk/Features, but serves the same purpose. So, moving just bsd.ccache.mk to Features/ would solve all the issues you outlined, but it is still a step in right direction, as it makes the framew= ork more consistent. * Mk/Features/ also provide a unified interface for both users and port developers. If a Feature is called FOO an user can put WITH_FOO=3Dyes or WITHOUT_FOO=3D= yes into the make.conf or make command line to enable or disable the Feature globall= y. WITH_FOO_PORTS and WITHOUT_FOO_PORTS allows for enabling/disabling a Feature for a given set of ports. With https://reviews.freebsd.org/D43949 landed it will become possible for WITH_FOO_PORTS to cancel WITHOUT_FOO and vice versa. * Features are not expected to be self-contained. Take a look at Mk/Features/lto.mk - it only sets some variables that are later gets consum= ed by Uses and the rest of Framework. In the same way, a Uses may be taught to look for some variables that might be set by an enabled feature. So to fix the "order" problem we first should clearlt understand how enable ccache machinery for Autotools, CMake, Meson, etc. and finally if it is possible to do in a general way. Then just extend corresponding Uses to sup= port a new feature. --=20 You are receiving this mail because: You are on the CC list for the bug.=