commit:     dca8820fcc35c85196b9681f7011d80e98bd8a21
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu May  3 08:12:05 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu May  3 08:17:32 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dca8820f

media-libs/freetype: Security bump to version 2.9.1 (CVE-2018-6942)

Package-Manager: Portage-2.3.31, Repoman-2.3.9

 media-libs/freetype/Manifest              |   3 +
 media-libs/freetype/freetype-2.9.1.ebuild | 226 ++++++++++++++++++++++++++++++
 2 files changed, 229 insertions(+)

diff --git a/media-libs/freetype/Manifest b/media-libs/freetype/Manifest
index f5e5d1b54cf..712657bee2a 100644
--- a/media-libs/freetype/Manifest
+++ b/media-libs/freetype/Manifest
@@ -1,9 +1,12 @@
 DIST freetype-2.8.1.tar.bz2 1886443 BLAKE2B 
d53aa77ae9cdc9ca404187e1fdc66be0a766f3f91a591bbbada0a374dd1862c4a8ebfc4be0bb0e823fb45df1e79941c1dd037734b87212a5a5fd97d9a1ca285f
 SHA512 
ca59e47f0fceeeb9b8032be2671072604d0c79094675df24187829c05e99757d0a48a0f8062d4d688e056f783aa8f6090d732ad116562e94784fccf1339eb823
 DIST freetype-2.8.tar.bz2 1873526 BLAKE2B 
c2336a3774cee0334bd342f4323524063a982c8a46dc5623a420be1a0ccb76ed5adc710673ea2401b0013f80a5c22bbc07e2adb4e842a0763ee1b0afc3cedb82
 SHA512 
3842c34bf6100a8c9b78258146b2ff35e9bb4c993937d3ef09982c1e2552dfd15f8849ddd8a1e84edf08b5a5fb918b68cf7b1584545c5900e22a00bfa1c89ff5
+DIST freetype-2.9.1.tar.bz2 1926385 BLAKE2B 
f165d638e0f49749a2640aabba96aca20441c76028cc18bb2482fd620a29dd368bc55ea020c1e74fa6effe9fed3c59a53c7fdf2dd6021f445032b7007201948e
 SHA512 
856766e1f3f4c7dc8afb2b5ee991138c8b642c6a6e5e007cd2bc04ae58bde827f082557cf41bf541d97e8485f7fd064d10390d1ee597f19d1daed6c152e27708
 DIST freetype-2.9.tar.bz2 1915013 BLAKE2B 
6474230507a0bcf9408846cf45d8e0c69314783e38ed71de6ce69031da9b418fe513056068768e4b350a93dd13dadfe8363d72b1d20d5347d5ce1d30d9d9fe08
 SHA512 
28465f3453baf9a187529432118389de8f1b85273c9fb787d2c8f0feee8ab64b387ddd936b4e67ec58dcf71e33884e7e25f01169b737824221ab143839a9161a
 DIST freetype-doc-2.8.1.tar.bz2 2128376 BLAKE2B 
b552010341c359666974c4208fe436b4414e73b59d17b2adedb9bc747ff857788bffddc98e53a5f5212ab70792211c754a5a80093bc1e6a7ae894d499a7b3da9
 SHA512 
386f3e2f123e60e697eb446d667bdcdf184d354a7a9a7bcc42767ea7964cd5a89e5ef42a234838c03e7ce926d3e92d763acb84983afdaf9f6977c028d55f2806
 DIST freetype-doc-2.8.tar.bz2 2127740 BLAKE2B 
891b43a7a6b0eae4a0f91110367b47c1c0ebd05a2d1a309669415f98fa08736738504b243d315a100a385074888382c6767f0741dd79814f5783cd215a716ca5
 SHA512 
3a970a7dd6f0ba580c9f8084b271c11e6e87111ab9a5b6a3148eb1087e45ee18e998aa7e36a4311067a3b674cb784b1e827cf8c3a853e380078219be3eccce06
+DIST freetype-doc-2.9.1.tar.bz2 2130292 BLAKE2B 
667032fa447fbc28c0f753df3ade7a07a4f8d4d26cdd00fed2fa0e8098e9d6a083572608b7d06446ea91baa932e3c6d18beb1f86f6b549a8cd2c07a2df567da0
 SHA512 
1668f02f67e6e047df04e5e2fccb564cd9af780ec9b3c4878109868302a83eaec7b627390ff82c3e875122400e6f20fc690936a1e4964dfa65143e5309fa22d4
 DIST freetype-doc-2.9.tar.bz2 2128135 BLAKE2B 
a192237e9f2cd0b14cf081ba09d58d6e42793d7c8034815d9d8a11a7abf5775bc9181f960405c7f2b12c6994329f8caee3c3ae62cc8b08fbbc3fd285f76922b8
 SHA512 
0ffd38541f8fd0ae6efb97025bb585209580b964d632e15c66944bc2549e2b0e6c375a141df5061621e8c32eeaed017834530169addc4daa2e83399f88efde2f
 DIST ft2demos-2.8.1.tar.bz2 228934 BLAKE2B 
a8ff102ec9e526791a83bed42eb5fc289b96f030ebcdbe5bdb4508676d81074ff16120664adeaf95e9d04004e2aba5c86a2b3f5410133344d1ebaf5d4c33cb46
 SHA512 
f3a3216448df7b9bebb875a69587f31d0548f4b7e1b1bd70b0f06b3c4a43b3f5ca99ac2fcfecb32909b16b32a466fff24d1a6407e5fd6c2145fd64d2a156429a
 DIST ft2demos-2.8.tar.bz2 225274 BLAKE2B 
b8b02b8b03b84709b7d274d1c8dff323051051ceb3f77762f2fad51ec7a21d34cdbc35a6e828d1755b374d05801d11b0f9968361a34efbb6a6239769b8cd730a
 SHA512 
dffdf6a493e8145c6513be34b57734a9a99c61f758a0e1ea691ef4284cee4c274ad7c3a8120a8ec425d86e33a70cd879d9db258e9c67b6a4db79c3243d4c9fb3
+DIST ft2demos-2.9.1.tar.bz2 233462 BLAKE2B 
c689942b222b2c600b5ec3963791621ae87acefb9b01caa5dc35af52525d03e3a1094e48c0789d5eaabbce787bddd7c3055e12454e54ea3c7fae92bca47614de
 SHA512 
38bee59184b20c2eb983deaa5c1f241e31c1b4793e47dc06b1b419601489cfece3b11fde4cf4fb6c5af12254ad0c1ce9a1547885c208e8e715655e9c48f22a46
 DIST ft2demos-2.9.tar.bz2 230926 BLAKE2B 
8c8e02101243468d52953aeeee7ad985a5aa3fabc82c19a3404ce301348fd32e5f89aa56798613658d5d29a8c3a6c7d4a70eae038ef6095005f8c10354b3f288
 SHA512 
3dfaf97619d585d6e4db20002c69f9c46cb8991c4faf86d9d92884a80001235ef01010148156cb4879d7869e6121fc27ef03c13288af011df26fe85c3fb7e6a1

diff --git a/media-libs/freetype/freetype-2.9.1.ebuild 
b/media-libs/freetype/freetype-2.9.1.ebuild
new file mode 100644
index 00000000000..b5c2fb86dea
--- /dev/null
+++ b/media-libs/freetype/freetype-2.9.1.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic libtool multilib multilib-build multilib-minimal 
toolchain-funcs
+
+DESCRIPTION="A high-quality and portable font engine"
+HOMEPAGE="https://www.freetype.org/";
+IUSE="X +adobe-cff bindist bzip2 +cleartype_hinting debug fontforge harfbuzz 
infinality png static-libs utils"
+
+if [[ "${PV}" != 9999 ]] ; then
+       SRC_URI="mirror://sourceforge/freetype/${P/_/}.tar.bz2
+               mirror://nongnu/freetype/${P/_/}.tar.bz2
+               utils?  ( mirror://sourceforge/freetype/ft2demos-${PV}.tar.bz2
+                       mirror://nongnu/freetype/ft2demos-${PV}.tar.bz2 )
+               doc?    ( mirror://sourceforge/freetype/${PN}-doc-${PV}.tar.bz2
+                       mirror://nongnu/freetype/${PN}-doc-${PV}.tar.bz2 )"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 
~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux 
~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris 
~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+       IUSE+=" doc"
+else
+       inherit autotools git-r3
+fi
+
+LICENSE="|| ( FTL GPL-2+ )"
+SLOT="2"
+RESTRICT="!bindist? ( bindist )" # bug 541408
+
+RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+       bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
+       harfbuzz? ( >=media-libs/harfbuzz-1.3.0[truetype,${MULTILIB_USEDEP}] )
+       png? ( >=media-libs/libpng-1.2.51:0=[${MULTILIB_USEDEP}] )
+       utils? (
+               X? (
+                       >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+                       >=x11-libs/libXau-1.0.7-r1[${MULTILIB_USEDEP}]
+                       >=x11-libs/libXdmcp-1.1.1-r1[${MULTILIB_USEDEP}]
+               )
+       )"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig"
+PDEPEND="infinality? ( media-libs/fontconfig-infinality )"
+
+PATCHES=(
+       # This is the same as the 01 patch from infinality
+       "${FILESDIR}"/${PN}-2.7-enable-valid.patch
+
+       "${FILESDIR}"/${PN}-2.4.11-sizeof-types.patch # 459966
+)
+
+_egit_repo_handler() {
+       if [[ "${PV}" == 9999 ]] ; then
+               local phase="${1}"
+               case ${phase} in
+                       fetch|unpack)
+                               :;
+                       ;;
+                       *)
+                               die "Please use this function with either 
\"fetch\" or \"unpack\""
+                       ;;
+               esac
+
+               local EGIT_REPO_URI
+               
EGIT_REPO_URI="https://git.savannah.gnu.org/r/freetype/freetype2.git";
+               git-r3_src_${phase}
+               if use utils ; then
+                       
EGIT_REPO_URI="https://git.savannah.gnu.org/r/freetype/freetype2-demos.git";
+                       local EGIT_CHECKOUT_DIR="${WORKDIR}/ft2demos-${PV}"
+                       git-r3_src_${phase}
+               fi
+       else
+               default
+       fi
+}
+
+src_fetch() {
+       _egit_repo_handler fetch
+}
+
+src_unpack() {
+       _egit_repo_handler unpack
+}
+
+src_prepare() {
+       if [[ "${PV}" == 9999 ]] ; then
+               # inspired by shipped autogen.sh script
+               eval $(sed -nf version.sed include/freetype/freetype.h)
+               pushd builds/unix &>/dev/null || die
+               sed -e 
"s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
+                       < configure.raw > configure.ac || die
+               # eautoheader produces broken ftconfig.in
+               eautoheader() { return 0 ; }
+               AT_M4DIR="." eautoreconf
+               unset freetype_major freetype_minor freetype_patch
+               popd &>/dev/null || die
+       fi
+
+       default
+
+       enable_option() {
+               sed -i -e "/#define $1/ { s:/\* ::; s: \*/:: }" \
+                       include/${PN}/config/ftoption.h \
+                       || die "unable to enable option $1"
+       }
+
+       disable_option() {
+               sed -i -e "/#define $1/ { s:^:/* :; s:$: */: }" \
+                       include/${PN}/config/ftoption.h \
+                       || die "unable to disable option $1"
+       }
+
+       # Will be the new default for >=freetype-2.7.0
+       disable_option "TT_CONFIG_OPTION_SUBPIXEL_HINTING  2"
+
+       if use infinality && use cleartype_hinting; then
+               enable_option "TT_CONFIG_OPTION_SUBPIXEL_HINTING  ( 1 | 2 )"
+       elif use infinality; then
+               enable_option "TT_CONFIG_OPTION_SUBPIXEL_HINTING  1"
+       elif use cleartype_hinting; then
+               enable_option "TT_CONFIG_OPTION_SUBPIXEL_HINTING  2"
+       fi
+
+       # Can be disabled with FREETYPE_PROPERTIES="pcf:no-long-family-names=1"
+       # via environment (new since v2.8)
+       enable_option PCF_CONFIG_OPTION_LONG_FAMILY_NAMES
+
+       if ! use bindist; then
+               # See http://freetype.org/patents.html
+               # ClearType is covered by several Microsoft patents in the US
+               enable_option FT_CONFIG_OPTION_SUBPIXEL_RENDERING
+       fi
+
+       if ! use adobe-cff; then
+               enable_option CFF_CONFIG_OPTION_OLD_ENGINE
+       fi
+
+       if use debug; then
+               enable_option FT_DEBUG_LEVEL_TRACE
+               enable_option FT_DEBUG_MEMORY
+       fi
+
+       if use utils; then
+               cd "${WORKDIR}/ft2demos-${PV}" || die
+               # Disable tests needing X11 when USE="-X". (bug #177597)
+               if ! use X; then
+                       sed -i -e "/EXES\ +=\ ftdiff/ s:^:#:" Makefile || die
+               fi
+               cd "${S}" || die
+       fi
+
+       # we need non-/bin/sh to run configure
+       if [[ -n ${CONFIG_SHELL} ]] ; then
+               sed -i -e "1s:^#![[:space:]]*/bin/sh:#!$CONFIG_SHELL:" \
+                       "${S}"/builds/unix/configure || die
+       fi
+
+       elibtoolize --patch-only
+}
+
+multilib_src_configure() {
+       append-flags -fno-strict-aliasing
+       type -P gmake &> /dev/null && export GNUMAKE=gmake
+
+       local myeconfargs=(
+               --disable-freetype-config
+               --enable-biarch-config
+               --enable-shared
+               $(use_with bzip2)
+               $(use_with harfbuzz)
+               $(use_with png)
+               $(use_enable static-libs static)
+
+               # avoid using libpng-config
+               LIBPNG_CFLAGS="$($(tc-getPKG_CONFIG) --cflags libpng)"
+               LIBPNG_LDFLAGS="$($(tc-getPKG_CONFIG) --libs libpng)"
+       )
+
+       ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+       default
+
+       if multilib_is_native_abi && use utils; then
+               einfo "Building utils"
+               # fix for Prefix, bug #339334
+               emake \
+                       X11_PATH="${EPREFIX}/usr/$(get_libdir)" \
+                       FT2DEMOS=1 TOP_DIR_2="${WORKDIR}/ft2demos-${PV}"
+       fi
+}
+
+multilib_src_install() {
+       default
+
+       if multilib_is_native_abi && use utils; then
+               einfo "Installing utils"
+               rm "${WORKDIR}"/ft2demos-${PV}/bin/README || die
+               local ft2demo
+               for ft2demo in ../ft2demos-${PV}/bin/*; do
+                       ./libtool --mode=install $(type -P install) -m 755 
"$ft2demo" \
+                               "${ED%/}"/usr/bin || die
+               done
+       fi
+}
+
+multilib_src_install_all() {
+       if use fontforge; then
+               # 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' | \
+               while read header; do
+                       mkdir -p 
"${ED%/}/usr/include/freetype2/internal4fontforge/$(dirname ${header})" || die
+                       cp ${header} 
"${ED%/}/usr/include/freetype2/internal4fontforge/$(dirname ${header})" || die
+               done
+       fi
+
+       dodoc docs/{CHANGES,CUSTOMIZE,DEBUG,INSTALL.UNIX,*.txt,PROBLEMS,TODO}
+       if [[ "${PV}" != 9999 ]] && use doc ; then
+               docinto html
+               dodoc -r docs/*
+       fi
+
+       find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die
+}

Reply via email to