diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2018-05-03 10:12:05 +0200 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2018-05-03 10:17:32 +0200 |
commit | dca8820fcc35c85196b9681f7011d80e98bd8a21 (patch) | |
tree | a545c4f20e39fa7f014e820f3d0733cecb70b012 /media-libs/freetype | |
parent | app-crypt/dehydrated: remove old versions (diff) | |
download | gentoo-dca8820fcc35c85196b9681f7011d80e98bd8a21.tar.gz gentoo-dca8820fcc35c85196b9681f7011d80e98bd8a21.tar.bz2 gentoo-dca8820fcc35c85196b9681f7011d80e98bd8a21.zip |
media-libs/freetype: Security bump to version 2.9.1 (CVE-2018-6942)
Package-Manager: Portage-2.3.31, Repoman-2.3.9
Diffstat (limited to 'media-libs/freetype')
-rw-r--r-- | media-libs/freetype/Manifest | 3 | ||||
-rw-r--r-- | media-libs/freetype/freetype-2.9.1.ebuild | 226 |
2 files changed, 229 insertions, 0 deletions
diff --git a/media-libs/freetype/Manifest b/media-libs/freetype/Manifest index f5e5d1b54cf2..712657bee2ac 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 000000000000..b5c2fb86deac --- /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 +} |