[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1011049: freetype: breaks architecture bootstrap by depending on librsvg2-dev



Source: freetype
Version: 2.12.1+dfsg-1
Severity: important
User: helmutg@debian.org
Usertags: rebootstrap
X-Debbugs-Cc: debian-cross@lists.debian.org

freetype participates in architecture bootstrap. As such, it must be
careful about its Build-Depends. It now added librsvg2-dev, which is
built from librsvg, which Build-Depends on rustc, which pulls llvm. This
totally breaks architecture cross bootstrap.

Beyond breaking practical architecture bootstrap, it also breaks
theoretical architecture bootstrap, because librsvg Build-Depends on
libfreetype-dev. This poses a cycle that cannot be solved.

As such, I request that you temporarily revert the librsvg2-dev
dependency. Given that this breaks bootstrap ci, I ask for urgency here.
If you lack time, I can offer NMUing it.  As the udeb package is already
built without rsvg, the same should be applicable to the main package.

Then, we should cooperatively figure out a way to meet freetype's need.
It is a bit unclear to me why freetype needs rsvg. Can you shed some
light on that part?

Depending on the answer to that question, multiple options are
available:
 * If it is only used for testing, it can be annotated <!nocheck> and is
   thus removed from any bootstrap issues.
 * Judging the changlog, it could be demos that need rsvg without having
   the main library actually use rsvg. In that case, it would be easy to
   hide freetype2-demos behind a build profile (say
   pkg.freetype.nodemos) and conditionalize the dependency to that
   profile.
 * Possibly, the need is more unconditional and we need to solve the
   loop in some other package.

At this time, a quick, temporary revert and coordination is needed.

Helmut


Reply to: