summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/freetype/Manifest3
-rw-r--r--media-libs/freetype/freetype-2.9.1.ebuild226
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
+}