Web lists-archives.com

Mass bug filing for the removal of freetype-config and freetype.m4




Hi everyone,

I intend to do a mass bug filing against all packages that use freetype-config and/or freetype.m4, 
as these APIs will be removed from libfreetype6-dev in the next maintainer release. This is a 
Debian-specific change.

Freetype-config has been considered deprecated for several years [1]. Although it is suitable 
for compiling for the native architecture (i.e. host = build), it cannot handle cross-compiling.
See, for example [1], [2] and [3].

Freetype-config also acts as a wrapper for pkg-config, if that package is installed. However, 
as explained in [2] and [3], this does not help with cross-compiling, because "pkg-config 
must be qualified with the GNU triplet of the package architecture" in order to output 
the correct library paths.

I asked for freetype-config to be removed in [4] to allow libfreetype6-dev to become 
Multi-Arch: same. Five months later, I compromised and patched freetype-config to 
remove the hard-coded libdir paths causing the multi-arch file conflict.

A separate change (build-depending on pkg-config) fixed [5], but caused additional 
bugs when libfreetype6-dev is installed for foreign architectures only (see [2] and [3]).
In these bugs, freetype-config was calling pkg-config for the native architecture.

Following discussions in [3] and further investigation, the decision was made to 
remove freetype-config and freetype.m4 to better support multi-arch usage.

With this in mind, I removed freetype-config and built all reverse 
build-dependencies. I have also searched codesearch.debian.net for use of 
AC_CHECK_FT2 in configure.ac and configure.in. (Thanks to Simon McVittie 
for the suggestion.)

A list of affected source packages is attached. 36 packages FTBFS without 
freetype-config. Another 25 compile, but warn that freetype was not detected.

26 of the 61 packages already use pkg-config to detect other libraries, 
so updating those packages to detect freetype2 using pkg-config is straightforward. 

The proposed wording for the bug reports reads:
--------
Dear Maintainer,

The next release of libfreetype6-dev will *not* ship freetype-config or 
or freetype2.m4. This is a Debian-specific change.

Please use pkg-config to detect the freetype2 headers and libraries.

If this bug is not resolved prior to the release of the next version of 
libfreetype6-dev, your package may FTBFS.

Thank you
--------

I realise removing freetype-config may not be popular. However, 
the long-term benefits will outweigh any short-term inconvenience.

--
Hugh McMaster

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=642354
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=871470
[3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=886461
[4] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870618
[5] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=885324
List of packages affected by the removal of freetype-config:

D Haley <mycae@xxxxxxx>
   3depict (U)

Debian Science Maintainers <debian-science-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   3depict

Barry deFreese <bdefreese@xxxxxxxxxx>
   adonthell (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   adonthell

Robert Luberda <robert@xxxxxxxxxx>
   afterstep

Barry deFreese <bdefreese@xxxxxxxxxx>
   asc (U)

Bartosz Fenski <fenio@xxxxxxxxxx>
   asc (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   asc

Markus Koschany <apo@xxxxxxxxxx>
   asc (U)

Sam Hocevar <sho@xxxxxxxxxx>
   asc (U)

Barry deFreese <bddebian@xxxxxxxxxxx>
   brutalchess (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   brutalchess

Vincent Legout <vlegout@xxxxxxxxxx>
   brutalchess (U)

Debian OCaml Maintainers <debian-ocaml-maint@xxxxxxxxxxxxxxxx>
   camlimages

Mehdi Dogguy <mehdi@xxxxxxxxxx>
   camlimages (U)

Ralf Treinen <treinen@xxxxxxxxxx>
   camlimages (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   cube2font

Martin Erik Werner <martinerikwerner@xxxxxxxxx>
   cube2font (U)

Debian QA Group <packages@xxxxxxxxxxxxx>
   dia

Marc Leeman <marc.leeman@xxxxxxxxx>
   dvdauthor

OHURA Makoto <ohura@xxxxxxxxxx>
   dvi2ps

Varun Hiremath <varun@xxxxxxxxxx>
   dvipng

Barry deFreese <bdefreese@xxxxxxxxxx>
   fenix-plugins (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   fenix-plugins

Miriam Ruiz <little_miry@xxxxxxxx>
   fenix-plugins (U)

Peter Pentchev <roam@xxxxxxxxxxx>
   fenix-plugins (U)

Michele Martone <michelemartone@xxxxxxxxxxxxxxxxxxxxx>
   fim

Rafael Laboissiere <rafael@xxxxxxxxxx>
   fim (U)

Aaron M. Ucko <ucko@xxxxxxxxxx>
   fltk1.1

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   foobillardplus

Markus Koschany <apo@xxxxxxxxxx>
   foobillardplus (U)

Sam Hocevar <sho@xxxxxxxxxx>
   ftgl

Jaimos Skriletz <jaimosskriletz@xxxxxxxxx>
   fvwm

Giacomo Catenazzi <cate@xxxxxxxxxx>
   g15composer

Ari Pollak <ari@xxxxxxxxxx>
   gimp

Jordi Mallach <jordi@xxxxxxxxxx>
   gimp (U)

Debian GNUstep maintainers <pkg-gnustep-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   gnustep-back

Eric Heintzmann <heintzmann.eric@xxxxxxx>
   gnustep-back (U)

Gürkan Myczko <gurkan@xxxxxxxxxxxx>
   gnustep-back (U)

Yavor Doganov <yavor@xxxxxxx>
   gnustep-back (U)

Laszlo Boszormenyi (GCS) <gcs@xxxxxxxxxx>
   graphicsmagick

Colin Watson <cjwatson@xxxxxxxxxx>
   grub2 (U)

Felix Zielcke <fzielcke@xxxxxxx>
   grub2 (U)

GRUB Maintainers <pkg-grub-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   grub2

Ian Campbell <ijc@xxxxxxxxxx>
   grub2 (U)

Jordi Mallach <jordi@xxxxxxxxxx>
   grub2 (U)

Debian Multimedia Maintainers <pkg-multimedia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   inkscape

Matteo F. Vescovi <mfv@xxxxxxxxxx>
   inkscape (U)

Mattia Rizzolo <mattia@xxxxxxxxxx>
   inkscape (U)

Dominique Dumont <dod@xxxxxxxxxx>
   lcdproc

Giacomo Catenazzi <cate@xxxxxxxxxx>
   libg15render

Harshula Jayasuriya <harshula@xxxxxxxxxx>
   libotf

Debian SDL packages maintainers <pkg-sdl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   libsdl-sge

Manuel A. Fernandez Montecelo <mafm@xxxxxxxxxx>
   libsdl-sge (U)

Debian SDL packages maintainers <pkg-sdl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   libsdl2-ttf

Manuel A. Fernandez Montecelo <mafm@xxxxxxxxxx>
   libsdl2-ttf (U)

Debian QA Group <packages@xxxxxxxxxxxxx>
   libwmf

Debian freesmartphone.org Team <pkg-fso-maint@xxxxxxxxxxxxxxxxxxxxxxx>
   literki

Timo Jyrinki <timo@xxxxxxxxxx>
   literki (U)

Harshula Jayasuriya <harshula@xxxxxxxxxx>
   m17n-lib

Bas Couwenberg <sebastic@xxxxxxxxxx>
   mapnik (U)

David Paleino <dapal@xxxxxxxxxx>
   mapnik (U)

Debian GIS Project <pkg-grass-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   mapnik

Francesco Paolo Lovergine <frankie@xxxxxxxxxx>
   mapnik (U)

Jérémy Lal <kapouer@xxxxxxxxx>
   mapnik (U)

Debian GNUstep maintainers <pkg-gnustep-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   mknfonts.tool

Yavor Doganov <yavor@xxxxxxx>
   mknfonts.tool (U)

Graham Inggs <ginggs@xxxxxxxxxx>
   motif

Paul Gevers <elbrus@xxxxxxxxxx>
   motif (U)

A Mennucc1 <mennucc1@xxxxxxxxxx>
   mplayer (U)

Debian Multimedia Maintainers <pkg-multimedia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   mplayer

Miguel A. Colón Vélez <debian.micove@xxxxxxxxx>
   mplayer (U)

Reinhard Tartler <siretart@xxxxxxxxxx>
   mplayer (U)

Aaron M. Ucko <ucko@xxxxxxxxxx>
   ncbi-blast+ (U)

Andreas Tille <tille@xxxxxxxxxx>
   ncbi-blast+ (U)

Debian Med Packaging Team <debian-med-packaging@xxxxxxxxxxxxxxxxxxxxxxx>
   ncbi-blast+

Olivier Sallou <osallou@xxxxxxxxxx>
   ncbi-blast+ (U)

Bas Wijnen <wijnen@xxxxxxxxxx>
   openmsx

Alberto Luaces Fernández <aluaces@xxxxxx>
   openscenegraph (U)

Loic Dachary (OuoU) <loic@xxxxxxxxxx>
   openscenegraph

Manuel A. Fernandez Montecelo <mafm@xxxxxxxxxx>
   openscenegraph (U)

Ola Lundqvist <opal@xxxxxxxxxx>
   openscenegraph (U)

Miriam Ruiz <miriam@xxxxxxxxxx>
   otf2bdf

Emfox Zhou <emfox@xxxxxxxxxx>
   pcmanx-gtk2

Debian PHP Maintainers <pkg-php-maint@xxxxxxxxxxxxxxxxxxxxxxx>
   php7.0

Lior Kaplan <kaplan@xxxxxxxxxx>
   php7.0 (U)

OndÅ?ej Surý <ondrej@xxxxxxxxxx>
   php7.0 (U)

Debian PHP Maintainers <pkg-php-maint@xxxxxxxxxxxxxxxxxxxxxxx>
   php7.1

Lior Kaplan <kaplan@xxxxxxxxxx>
   php7.1 (U)

OndÅ?ej Surý <ondrej@xxxxxxxxxx>
   php7.1 (U)

A Mennucc1 <mennucc1@xxxxxxxxxx>
   pygame (U)

Debian Python Modules Team <python-modules-team@xxxxxxxxxxxxxxxxxxxxxxx>
   pygame

Dominik George <nik@xxxxxxxxxxxxx>
   pygame (U)

Ed Boraas <ed@xxxxxxxxxx>
   pygame (U)

Vincent Cheng <vcheng@xxxxxxxxxx>
   pygame (U)

Dirk Eddelbuettel <edd@xxxxxxxxxx>
   rgl

Ying-Chun Liu (PaulLiu) <paulliu@xxxxxxxxxx>
   rlvm

Debian Science Team <debian-science-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   sagemath

Jerome Benoit <calculus@xxxxxxxxxxx>
   sagemath (U)

Julien Puydt <julien.puydt@xxxxxxxxxxx>
   sagemath (U)

Tobias Hansen <thansen@xxxxxxxxxx>
   sagemath (U)

Ximin Luo <infinity0@xxxxxxxxxx>
   sagemath (U)

Bruno "Fuddl" Kleinert <fuddl@xxxxxxxxxx>
   scorched3d (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   scorched3d

Phil Morrell <debian@xxxxxxxxxxxx>
   scorched3d (U)

Reinhard Tartler <siretart@xxxxxxxxxx>
   scorched3d (U)

Stephen M. Webb <stephen.webb@xxxxxxxxxxxxx>
   scorched3d (U)

David Weinehall <tao@xxxxxxxxxx>
   scummvm (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   scummvm

Dmitry Smirnov <onlyjob@xxxxxxxxxx>
   scummvm (U)

Moritz Muehlenhoff <jmm@xxxxxxxxxx>
   scummvm (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   scummvm-tools

Stephen Kitt <skitt@xxxxxxxxxx>
   scummvm-tools (U)

Debian SDL packages maintainers <pkg-sdl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
   sdl-ttf2.0

Manuel A. Fernandez Montecelo <mafm@xxxxxxxxxx>
   sdl-ttf2.0 (U)

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   teeworlds

Felix Geyer <fgeyer@xxxxxxxxxx>
   teeworlds (U)

Jack Coulter <jscinoz@xxxxxxxxx>
   teeworlds (U)

Debian TeX Maintainers <debian-tex-maint@xxxxxxxxxxxxxxxx>
   texlive-bin

Norbert Preining <preining@xxxxxxxxxx>
   texlive-bin (U)

Olly Betts <olly@xxxxxxxxxx>
   therion (U)

Wookey <wookey@xxxxxxxxxx>
   therion

Debian Fonts Task Force <pkg-fonts-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   ttfautohint (U)

Gürkan Myczko <gurkan@xxxxxxxxxxxx>
   ttfautohint

Debian Games Team <pkg-games-devel@xxxxxxxxxxxxxxxxxxxxxxx>
   tuxpuck

Markus Koschany <apo@xxxxxxxxxx>
   tuxpuck (U)

Debian QA Group <packages@xxxxxxxxxxxxx>
   tvtime

Youhei SASAKI <uwabami@xxxxxxxxxxxxxx>
   xdvik-ja

Joachim Wiedorn <joodebian@xxxxxxxxx>
   xfe

Daniel Leidert (dale) <daniel.leidert@xxxxxxx>
   xmlroff (U)

Debian XML/SGML Group <debian-xml-sgml-pkgs@xxxxxxxxxxxxxxxxxxxxxxx>
   xmlroff

W. Martin Borgert <debacle@xxxxxxxxxx>
   xmlroff (U)

Steve McIntyre <93sam@xxxxxxxxxx>
   xplanet

Ying-Chun Liu (PaulLiu) <paulliu@xxxxxxxxxx>
   xsystem35