[Bug 271994] make PORTREVISION optionally dependent on the architecture to prevent unnecessary rebuilds

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 14 Jun 2023 16:16:21 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271994

            Bug ID: 271994
           Summary: make PORTREVISION optionally dependent on the
                    architecture to prevent unnecessary rebuilds
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: office@FreeBSD.org
          Reporter: d8zNeCFG@aon.at
          Assignee: office@FreeBSD.org
             Flags: maintainer-feedback?(office@FreeBSD.org)

Created attachment 242776
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=242776&action=edit
example Makefile demonstrating multi-architecture PORTREVISION

Scenario:
- FreeBSD ports framework
- A fix is supplied for a port which is necessary for only one or a few
architecture(s) (see for example the latest change to editors/libreoffice,
19a93ee6d9218bcc2e4a1506e20015d84a84ee21)

Result:
- The port maintainer applies the fix and increases the PORTREVISION
- The port is recompiled for all architectures although this would be necessary
only for the affected one(s)

Expected result:
- It should be necessary to only recompile the port for the affected
architecture(s) and therefore to not increase the PORTREVISION for all others.

Proposed solution:
- Make the PORTREVISION architecture-dependent
- If only a few architectures need to be rebuilt, the maintainer increases the
PORTREVISION only for these.
- If a port needs to be rebuilt for all architectures, its PORTREVISION is
increased to one higher than the maximum of all previous PORTREVISIONs.

Proposed syntax:
    PORTREVISION=   1,aarch64:2,amd64:3,i386:4
(next full rebuild)
    PORTREVISION=   5

A stub Makefile demonstrating the solution is attached. The solution is
backwards-compatible with the current usage of PORTREVISION.

-- Martin

-- 
You are receiving this mail because:
You are the assignee for the bug.