The freetype include structure changed recently to remove a layer of the directory hierarchy: http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/include/internal?id=fae382076409db198dfbff36ac4cbb97b05b30a1 As a result, the freetype ebuild now tries to copy the fontforge-required headers from an invalid directory, and so fontforge is unable to compile with the truetype debugger enabled. This can be fixed by editing the freetype ebuild to copy header files from "include/internal" rather than "include/freetype/internal" in multilib_src_install_all(). Reproducible: Always Steps to Reproduce: 1. Emerge freetype with the fontforge USE flag enabled 2. Emerge fontforge with the truetype-debugger USE flag enabled Actual Results: fontforge compilation fails with the error message: cvdebug.c:62:33: fatal error: internal/internal.h: No such file or directory # include <internal/internal.h> Expected Results: fontforge should compile properly Portage 2.2.12 (python 2.7.8-final-0, default/linux/amd64/13.0/desktop, gcc-4.8.3, glibc-2.19-r1, 3.15.0-gentoo x86_64) ================================================================= System uname: Linux-3.15.0-gentoo-x86_64-AMD_FX-tm-8320_Eight-Core_Processor-with-gentoo-2.2 KiB Mem: 16400956 total, 8612500 free KiB Swap: 0 total, 0 free Timestamp of tree: Wed, 13 Aug 2014 22:45:01 +0000 ld GNU ld (GNU Binutils) 2.24 app-shells/bash: 4.2_p47 dev-java/java-config: 2.2.0 dev-lang/python: 2.7.8, 3.3.5-r1, 3.4.1 dev-util/cmake: 2.8.12.2-r1 dev-util/pkgconfig: 0.28-r2 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.12.4 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.11.6, 1.14.1 sys-devel/binutils: 2.24-r3 sys-devel/gcc: 4.8.3 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2-r1 sys-devel/make: 4.0-r1 sys-kernel/linux-headers: 3.16 (virtual/os-headers) sys-libs/glibc: 2.19-r1 Repositories: gentoo roslin x-portage ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA PUEL AdobeFlash-11.x skype-4.0.0.7-copyright googleearth Google-TOS google-chrome" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native -ftracer -ggdb" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -march=native -ftracer -ggdb" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://mirror.lug.udel.edu/pub/gentoo/ http://mirror.datapipe.net/gentoo http://gentoo.osuosl.org/ http://mirrors.rit.edu/gentoo/" LANG="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9 -l8" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/roslin /usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 avx berkdb bluetooth branding bs2b bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr ecdsa emboss encode exif faac fam ffmpeg firefox flac fma3 fma4 fontforge fortran gdbm gif gimp gpm gtk iconv icu infinality ipv6 jit jpeg lcms ldap ldns libass libnotify lzma lzo mad minizip mmx mmxext mng modules mp3 mp4 mpeg multilib ncurses nls nptl nsplugin ogg opencl opengl openmp openvg pam pango pcre pdf png policykit ppds python qt3support qt4 readline scanner sdl session spell sqlite sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssse3 startup-notification svg tcpd theora threads tiff truetype udev udisks unicode upnp upower usb vaapi vdpau vim-syntax vorbis wxwidgets x264 xcb xcomposite xinerama xml xrandr xscreensaver xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev void" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="net epson epson2" USERLAND="GNU" VIDEO_CARDS="fglrx radeon r600" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Created attachment 382904 [details] freetype-2.5.3-r1.ebuild Working ebuild for freetype.
Please attach the entire build log to this bug report.
Comment on attachment 382904 [details] freetype-2.5.3-r1.ebuild --- freetype-2.5.3-r1.ebuild 2014-08-04 12:19:42.407871052 +0200 +++ - 2014-08-15 10:09:52.524834398 +0200 @@ -148,7 +148,7 @@ # Probably fontforge needs less but this way makes things simplier... einfo "Installing internal headers required for fontforge" local header - find src/truetype include/freetype/internal -name '*.h' | \ + find src/truetype include/internal -name '*.h' | \ while read header; do mkdir -p "${ED}/usr/include/freetype2/internal4fontforge/$(dirname ${header})" || die cp ${header} "${ED}/usr/include/freetype2/internal4fontforge/$(dirname ${header})" || die
As a developer for the FontForge fork Sorts Mill Tools, I am encountering the same problem in my development work. (I do not employ USE=fontforge in other ebuilds, myself.)
This is still an issue. Attaching build logs for freetype and fontforge.
Created attachment 396102 [details] freetype-2.5.5 build log
Created attachment 396104 [details] fontforge-20120731-r1 build log
Created attachment 396106 [details, diff] Patch to freetype-2.5.5.ebuild to fix issue
I am still seeing this error with media-gfx/fontforge-20150430.
The freetype upstream, not being able to make up their minds, have changed the include structure to restore the freetype/ layer of the include hierarchy: http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/include/freetype/internal?id=392cf22f8a5a281b8ebc56bf932e66da78f66410 As a result, our recent freetype ebuilds are failing again in exactly the same way as before. The fix is to revert the change from attachment 396106 [details, diff].
Created attachment 423396 [details, diff] Patch to freetype-2.6.2.ebuild to fix issue again
What if you just did find src/truetype include/internal include/freetype/internal -name '*.h' and it should be safe at least for a while?
(In reply to Mikael Magnusson from comment #12) > What if you just did > find src/truetype include/internal include/freetype/internal -name '*.h' > and it should be safe at least for a while? Unless they make a habit of switching their sourcetree around a lot, I think that's probably overengineering for a problem that doesn't exist.
what is the state of this with 2.6.3-r1?
(In reply to Pacho Ramos from comment #14) > what is the state of this with 2.6.3-r1? Needs the same patch as 2.6.2, from comment #11.
commit 5b6d98096fe22f5fe9cec1eb6194fcb9147b650b Author: Lars Wendler <polynomial-c@gentoo.org> Date: Mon May 30 09:07:49 2016 media-libs/freetype: Fixed header installation for fontforge (#519934) Package-Manager: portage-2.2.28 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> Fixed in =media-libs/freetype-2.6.3-r1. Sorry for the long wait.