Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Apr 2024 18:30:06 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 278511] Mk/Scripts/do-depends.sh: `pkg autoremove` removes itself if `pkg` is installed as a result of `cd /usr/ports/security/sudo; make install`
Message-ID:  <bug-278511-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D278511

            Bug ID: 278511
           Summary: Mk/Scripts/do-depends.sh: `pkg autoremove` removes
                    itself if `pkg` is installed as a result of `cd
                    /usr/ports/security/sudo; make install`
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Ports Framework
          Assignee: portmgr@FreeBSD.org
          Reporter: yasu@freebsd.org
                CC: ports-bugs@FreeBSD.org, tijl@FreeBSD.org

At first let me assume conditions as following.

* System is 14.0-RELEASE amd64.
* No package is installed at all.
* Latest main branch of ports repository is checked out under /usr/ports.

Then try following steps

1. cd /usr/ports/security/sudo
2. make install clean
3. pkg autoremove

With latest main branch of ports repository, 'pkg' itself is removed with s=
tep
3. But IIRC it wasn't removed last time when I executed the command under s=
uch
situation.

So I updated ports tree to following commit and tried same step.

----------------------------------------------------------------------
commit 5f5f3d7a8808
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: Mon Nov 20 15:29:31 2023 +0100
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: Mon Nov 20 15:32:05 2023 +0100

    shells/oksh: update to 7.4
----------------------------------------------------------------------

Then 'pkg' isn't removed after step 3 is finished.

I tried bisect, and according to the result of it the issue starts with
following commit.

----------------------------------------------------------------------
commit 830ec3717024
Author:     Tijl Coosemans <tijl@FreeBSD.org>
AuthorDate: Wed Mar 6 20:13:39 2024 +0100
Commit:     Tijl Coosemans <tijl@FreeBSD.org>
CommitDate: Wed Mar 6 21:22:21 2024 +0100

    Mk/Scripts/do-depends.sh: Avoid make -D flag

    Both FreeBSD make and GNU make pass command line flags to sub-makes
    through the MAKEFLAGS environment variable, but the flags aren't
    compatible and GNU make 4.4 exits with an error when it encounters
    flags it doesn't understand, e.g. -D.

    Avoid using the flag for now until ports run gmake with SETENVI.

    This fixes the case where a port is built using make directly and it
    recurses to build a dependency that uses gmake.  Poudriere does not
    use this feature of the ports tree to build dependencies so it's not
    affected.

    PR:             272216, 277492
----------------------------------------------------------------------

As far as I read commit message, the issue seems to be unintended result of
this commit.

CC-ing committer of ports 830ec3717024.

--=20
You are receiving this mail because:
You are on the CC list for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-278511-7788>