From nobody Fri Jun 10 08:10:15 2022 X-Original-To: ports-bugs@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 3CF6A83CFB2 for ; Fri, 10 Jun 2022 08:10:16 +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 4LKDCq6bw0z4p72 for ; Fri, 10 Jun 2022 08:10:15 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) 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 BFD7F14DA3 for ; Fri, 10 Jun 2022 08:10:15 +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 25A8AFp8055047 for ; Fri, 10 Jun 2022 08:10:15 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 25A8AFCS055046 for ports-bugs@FreeBSD.org; Fri, 10 Jun 2022 08:10:15 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: ports-bugs@FreeBSD.org Subject: [Bug 264454] Do not build TEST_DEPENDS in case NO_TEST is set and do not run tests Date: Fri, 10 Jun 2022 08:10:15 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Ports Framework X-Bugzilla-Version: Latest X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: se@FreeBSD.org X-Bugzilla-Status: Open X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: portmgr@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_status 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: Ports bug reports List-Archive: https://lists.freebsd.org/archives/freebsd-ports-bugs List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-ports-bugs@freebsd.org X-BeenThere: freebsd-ports-bugs@freebsd.org MIME-Version: 1.0 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1654848616; 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=gLDhh+9oL+FtYLDdwhNCl/v2ODq7bKtqybbC8KH85M0=; b=JxJjvEnm5UXme+6Oe6VetGpeGvznakU+TUlkhc66U79NoUepp4jXJJ5eUDNyG0bXE2RI67 uxlZEsZEGJOt+n6rjYzL5bV9Ol/2khGqHGBF3XQQLLcAK0gB5DaKGxEwyFEJAFdFy+6BSp owG+WsKNetB35rgZtWQ6QmyCazmm/0QFugYfxOJTiRIVdkJX1126zRbbeV+MW+j7mHt3jN N1+j77XBgDIHIzgT4Ja8/7YUdrtOi4oWhxVeCStHZeQ0weIo/h0hD6YRq8S+a8EcnrMhYT 1uQ16qf2rLWHAxaoPWnZ5rBZMZe+IzGVtRz1fzyW6r/pBigPyzw5Ora+PMlEHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1654848616; a=rsa-sha256; cv=none; b=wIhTWL3WiON5aqepGXzDXoX3n6/TCnlrpgelM/L0H2DGUDPPgD5aeQ4FN91YzXLx8G/SmJ rKGNRHLUfMxrhkvQrtExsKITPXWvmicJjhW/9Ak0uI6O/eVwQ8sbsvt28F4dKjnw+Ww4YU sPsRz9u01oqoz/7AbiG57KI6rfX3vww7i46+UrJQPeO0L+jLF+24epZmEuYoxjn2fXt1ML Q0BXwrtUwJ9fZB8p6gZLEjMw17Hs2KhygT3UAszJPLZdyKOq9QwjuuKsDuQ99t0zI7CmeH oGG8+u4uvB8Nmw51+e7MdBrgknNZEnuTNcbJl7OtRz1YWZAqrPTtdQ2dl4p+bA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D264454 Stefan E=C3=9Fer changed: What |Removed |Added ---------------------------------------------------------------------------- Status|New |Open --- Comment #11 from Stefan E=C3=9Fer --- (In reply to Bjoern A. Zeeb from comment #9) > You go by assumptions of what people are doing. Yes, given no further information I do have to make assumptions. > I do not do port upgrades; in fact I most often never do apart from sele= ct=20 > individual bits which I do not handle this way. > I build coherent image (tailored distribution) after FreeBSD version bump= s=20 > on main at times (I am not even doing every one of them). You cannot expect bsd.port.mk to provide the high level functionality for e= very use case. I have managed the port management tools: they do exactly that - provide user oriented and configurable functionality. But you do not have to use a tool like portmaster. Something as simple as t= he following script should be sufficient to build packages for a specified set= of ports without fetching or building anything not required: ---------------------------- #!/bin/sh -e WANTED=3D" shells/bash www/py-arxiv " make_wanted () { echo "$WANTED" | while read dir; do if [ -n "$dir" ]; then make -C $dir "$@" fi done } cd /usr/ports make_wanted clean REQUIRED=3D$(make_wanted run-depends-list | sort -u) for dir in $REQUIRED; do make -C $dir package done ---------------------------- This will create a consistent set of packages including all run dependencie= s.=20 One possible issue with such a simple approach is that it expects all ports= to be built for just the default flavor. FLAVOR support has been implemented in the ports system a way that is very unfriendly to any tool except poudriere. The port management tools provide the above shown functionality (and a lot more) in a way that optimizes the procedure and that can deal with non-defa= ult flavors. Trying to get all functionality for all possible non-standard use-cases into bsd.port.mk is the completely wrong approach. This Makefile provides a set = of primitive functions that can be used in scripts like the example above to implement any special case. It is much easier to deal with such use-cases in shell scripts (or other sc= ript languages) than in a Makefile. Makefiles implements target driven functionality, scripts implement procedures. The *-recursive function in bsd.port.mk have been implemented at a time when there were no port management tools (and not even the pkg command and PKGDB= ). They do not serve your use case well and probably never will. I have shown other examples where functionality at that level is not provided by bsd.por= t.mk in a way that is useful for tasks like those you want it to achieve. What you are doing is a typical use-case for poudriere. It builds packages = in a way that guarantees their consistency and always in a clean environment, not influenced by any ports already present on the base system. --=20 You are receiving this mail because: You are on the CC list for the bug.=