I'm looking at some documentation within poudriere(), to try to find a way to avoid running into circular dependencies while building ports. While reading that documentation, I come across a specific concept which isn't explained clearly in the mandoc: flavors. Searching the forums here didn't turn up anything obvious. The results that were returned led me to suspect that flavors probably correspond to the architecture the port was built for.
However, using an external search engine with the expression
Has anyone used flavors in a manner to avoid situations like these?
However, using an external search engine with the expression
flavors site:freebsd.org
did pop up a nice piece from the Porter's Handbook: https://docs.freebsd.org/en/books/porters-handbook/flavors/7.1. An Introduction to Flavors
Flavors are a way to have multiple variations of a port. The port is built multiple times, with variations.
For example, a port can have a normal version with many features and quite a few dependencies, and a light "lite" version with only basic features and minimal dependencies.
Another example could be, a port can have a GTK flavor and a QT flavor, depending on which toolkit it uses.
Has anyone used flavors in a manner to avoid situations like these?
[00:00:10] Error: Dependency loop detected:
These packages depend on each other: libgd-2.3.3_1,1 libheif-1.12.0.62_1 aom-3.3.0_1 libjxl-0.6.1_5 openexr-3.1.5 py38-breathe-4.33.1 doxygen-1.9.3_1,2 texlive-base-20210325_3
These packages depend on each other: libgd-2.3.3_1,1 libheif-1.12.0.62_1 aom-3.3.0_1 libjxl-0.6.1_5 openexr-3.1.5 py38-breathe-4.33.1 doxygen-1.9.3_1,2 graphviz-2.50.0_2
These packages depend on each other: texlive-base-20210325_3 libgd-2.3.3_1,1 libheif-1.12.0.62_1 aom-3.3.0_1 libjxl-0.6.1_5 openexr-3.1.5 py38-breathe-4.33.1 doxygen-1.9.3_1,2 tex-formats-20210325_1 texlive-texmf-20210325