A proposal for extending X_*_PORT

Ade Lovett ade at FreeBSD.org
Fri Jul 15 21:29:35 GMT 2005


Hi all,

Having had a quick conversation with lesi@ on IRC, I'm wondering about
extending the existing mechanisms for the X_*_PORT variables.

Currently, each port Makefile has to make a choice as to which actual
file to use to depend on to bring in the dependency, eg:

${X11BASE}/lib/X11/fonts/cyrillic/crox1c.pcf.gz:${X_FONTS_CYRILLIC_PORT}

The left hand side of this has two drawbacks, first that it requires an
awful lot of typing, and second, there is no consistency across port
Makefiles, which may make things fail rather badly if, in this case,
crox1c.pcf.gz disappeared from the plist of X_FONTS_CYRLLIC_PORT.

The proposed solution:

1.  For each X_*_PORT variable, there is an associated X_*_DEPENDS
variable, in this case it would be:

X_FONTS_CYRILLIC_DEPENDS= ${X11BASE}/lib/X11/fonts/cyrillic/crox1c.pcf.gz

All port Makefiles would then look like:

${X_FONTS_CYRILLIC_DEPENDS}:${X_FONTS_CYRILLIC_PORT}

and either of these variables would only have to be changed in one place
to update every single port in the tree that uses them.

2.  An extension of (1) above:

X_FONTS_CYRILLIC_DEPENDS=
${X11BASE}/lib/X11/fonts/cyrillic/crox1c.pcf.gz:${X_FONTS_CYRILLIC_PORT}

The port Makefile would then simply change to, eg:

RUN_DEPENDS= ${X_FONTS_CYRILLIC_DEPENDS}

The advantages here are less bits to type in the port Makefile, but it's
possible that portlint and friends would have to be updated to handle
this type of system (though it does already handle the common usage of
RUN_DEPENDS= ${BUILD_DEPENDS}

Thoughts?  Please do cc me on any followups, I have to try and keep my
subscriptions down to a fairly sane level, and this is more of an
infrastructal thing than an actual X11 issue.

Cheers,
	-aDe


More information about the freebsd-x11 mailing list