This is something I added in 2011 (I think) to bsd.port.subdir.mk

if FULLPATH=Yes, a FULLPKGPATH like
SUBDIR=cat/location
will give you the EMPTY flavor for that location instead of the DEFAULT flavor.

I'm now questionning whether this actually makes senses considering the changes
I was making at the time.

Specifically: after setting up everything for a dependency, I started calling
"make _print-metadata" on each dependency, which yields the triplet:
"FULLPKGNAME PKGSPEC FULLPKGPATH"
(where FULLPKGPATH is normalized, so there are no "default flavors" whatsoever
but everything is fully spelled out everytime instead)

I'm now thinking that this is a useless remnant of a former age: most stuff
(if not all) that asks for dependencies is going to get through this.

The main entry point to look for this is "print-package-args" in bsd.port.mk
whiche yields the run-depends-args dependency, and "lib-depends-args" +
"wantlib-args"

(both go through variables for various reasons, the main one being that
lib-depends-args trims stuff to actually needed libs, whereas check-lib-depends
needs a "fuller" gamut just in case).

The following patch will completely neuter FULLPATH.

There are a few uses of this in the ports tree. The main one being pkg_create.
If this actually breaks, register-plist will be very unhappy in a bulk build.

It's also used in update-plist (FULLPATH=No, lol) and in check-lib-depends
and pkg_outdated, so it might be that some usage will break.

I do remember changing all this over a short period of time, but I can't
seem to recall any reason FULLPATH should still be relevant.

So, if possible I would very much like to get rid of it along with some of
the added complexity.


If I don't get any negative reports under (say) a week, I will consider
committing this and waiting for the shit to hit the fan.


Index: bsd.port.subdir.mk
===================================================================
RCS file: /cvs/ports/infrastructure/mk/bsd.port.subdir.mk,v
retrieving revision 1.111
diff -u -p -r1.111 bsd.port.subdir.mk
--- bsd.port.subdir.mk  17 Dec 2018 18:06:05 -0000      1.111
+++ bsd.port.subdir.mk  5 Jul 2022 14:10:09 -0000
@@ -56,13 +56,6 @@ ARCH ?!= uname -m
 
 ECHO_MSG ?= echo
 
-FULLPATH ?= No
-.if ${FULLPATH:L} == "yes"
-_FULLPATH = true
-.else
-_FULLPATH = false
-.endif
-
 # create a full list of SUBDIRS...
 .if empty(PKGPATH)
 _FULLSUBDIR := ${SUBDIR}
@@ -113,7 +106,7 @@ _subdir_fragment = \
                        esac; \
                fi; \
                ${_SKIP_STUFF}; \
-               sawflavor=${_FULLPATH}; \
+               sawflavor=false; \
                if ${_pflavor_fragment}; then \
                        eval $${echo_msg} "===\> $$subdir"; \
                        if ! (eval $$toset exec ${MAKE} $$target); then \

Reply via email to