[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`
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 21 Apr 2024 18:30:06 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278511 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 step 3. But IIRC it wasn't removed last time when I executed the command under such 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. -- You are receiving this mail because: You are on the CC list for the bug.