Unique file names for FreeBSD ports

Revision 339436 of the ports tree introduces the uniquefiles USES, which allows ports and parts of the ports tree framework to move files around automatically, giving them a specific prefix or suffix.

This feature is necessary to create different (logical) packages from a single physical port without creating repocopies or hacking around in the port Makefile. Python ports will make use of that feature in the near future to build packages for different python versions (e.g. for 3.2, 3.3, 2.7, ...) without causing file conflicts.

I created a patch for bsd.python.mk, which enables that kind of packages for distutils-aware ports. Ports, which do not use distutils, can use the UNIQUE_PYTHON_FILES variable instead. Once the patch was tested, received an exp-run and all the USE_DISTUTILS=easy_install leftovers were cleaned up, it can be committed.

Unfortunately the pkg_* tools and pkg do not support the installation of multiple logical packages from the same physical port yet (since they check the ORIGIN), but may should change soon after pkg fully replaces the pkg_* tools.

Posted: 2014-01-11 in category freebsd