fontconfig, bump, fix reference to libpng16/libSDL_*_1.2 (#3884)

* add libVersion(Compat)
* add libintl/libiconv to the requires
* add debugInfoPackage
This commit is contained in:
Schrijvers Luc
2019-06-17 15:22:03 +02:00
committed by Jérôme Duval
parent 4ec482fd0c
commit c477efcdf7
2 changed files with 174 additions and 0 deletions

View File

@@ -0,0 +1,146 @@
SUMMARY="A library for font customization and configuration"
DESCRIPTION="Fontconfig is a library for font customization and configuration."
HOMEPAGE="https://www.freedesktop.org/wiki/Software/fontconfig"
COPYRIGHT="2000-2005, 2006-2007 Keith Packard
2005 Patrick Lam
2009 Roozbeh Pournader
2008-2009 Red Hat, Inc.
2008 Danilo Segan
2012 Google, Inc."
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://www.freedesktop.org/software/fontconfig/release/fontconfig-$portVersion.tar.bz2"
CHECKSUM_SHA256="f655dd2a986d7aa97e052261b36aa67b0a64989496361eca8d604e6414006741"
PATCHES="fontconfig-$portVersion.patchset"
ARCHITECTURES="x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
libVersion="1.12.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
GLOBAL_WRITABLE_FILES="
settings/fonts/conf.d directory keep-old
settings/fonts/fonts.conf auto-merge
"
PROVIDES="
fontconfig$secondaryArchSuffix = $portVersion compat >= 2
cmd:fc_cache$secondaryArchSuffix
cmd:fc_cat$secondaryArchSuffix
cmd:fc_conflist$secondaryArchSuffix
cmd:fc_list$secondaryArchSuffix
cmd:fc_match$secondaryArchSuffix
cmd:fc_pattern$secondaryArchSuffix
cmd:fc_query$secondaryArchSuffix
cmd:fc_scan$secondaryArchSuffix
cmd:fc_validate$secondaryArchSuffix
lib:libfontconfig$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libuuid$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
fontconfig${secondaryArchSuffix}_devel = $portVersion compat >= 2.1
devel:libfontconfig$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
fontconfig$secondaryArchSuffix == $portVersion base
devel:libfreetype$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
"
defineDebugInfoPackage fontconfig$secondaryArchSuffix \
$libDir/libfontconfig.so.$libVersion
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libbz2$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libuuid$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:automake
cmd:autopoint
cmd:awk
cmd:gcc$secondaryArchSuffix
cmd:gperf
cmd:ld$secondaryArchSuffix
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
mkdir -p `finddir B_USER_CACHE_DIRECTORY`
autoreconf -vfi
FONTS_DIR=`finddir B_SYSTEM_FONTS_DIRECTORY`
FONTS_DIR2=`finddir B_SYSTEM_NONPACKAGED_FONTS_DIRECTORY`
FONTS_DIR3=`finddir B_USER_FONTS_DIRECTORY`
FONTS_DIR4=`finddir B_USER_NONPACKAGED_FONTS_DIRECTORY`
CACHE_DIR=`finddir B_USER_CACHE_DIRECTORY`
runConfigure ./configure \
--enable-libxml2 \
--with-default-fonts=${FONTS_DIR} \
--with-add-fonts=${FONTS_DIR2},${FONTS_DIR3},${FONTS_DIR4} \
--with-cache-dir=${CACHE_DIR}
make $jobArgs
}
INSTALL()
{
make install RUN_FC_CACHE_TEST=false
rm $libDir/*.la
prepareInstalledDevelLibs \
libfontconfig
fixPkgconfig
# The pkgconfig file reference other libraries using the wrong paths, which
# creates a lot of confusion. Fix them so correct paths are used.
local develPackageName="${portName}_devel-$portFullVersion"
local packageLinksDir=$(dirname $portPackageLinksDir)
local linksDir="$packageLinksDir/${develPackageName}/devel~libfreetype$secondaryArchSuffix/$relativeDevelopLibDir"
sed -i -e "s,^\(Libs.private.*\)-L.* \(-lfreetype.*\)$,\1-L$linksDir \2," \
$developLibDir/pkgconfig/fontconfig.pc
linksDir="$packageLinksDir/${develPackageName}/devel~libxml2$secondaryArchSuffix/$relativeDevelopLibDir"
sed -i -e "s,^\(Libs.private.*-lfreetype.*\) -L.* \(-lxml2.*\)$,\1-L$linksDir \2," \
$developLibDir/pkgconfig/fontconfig.pc
linksDir="$packageLinksDir/${develPackageName}/devel~libfreetype$secondaryArchSuffix/$relativeIncludeDir"
sed -i -e "s,^\(Cflags.*\)-I/packages.*\(/freetype2.*\)$,\1-I$linksDir\2," \
$developLibDir/pkgconfig/fontconfig.pc
linksDir="$packageLinksDir/${develPackageName}/devel~libxml2$secondaryArchSuffix/$relativeIncludeDir"
sed -i -e "s,^\(Cflags.*freetype2.*\)-I/packages.*\(/libxml2.*\)$,\1-I$linksDir\2," \
$developLibDir/pkgconfig/fontconfig.pc
packageEntries devel \
$developDir \
$manDir \
$docDir
# Make symlinks relative
for i in $settingsDir/fonts/conf.d/*.conf; do
ln -f -r -s "`readlink "$i"`" "$i"
done
}
TEST()
{
make check
}

View File

@@ -0,0 +1,28 @@
From de04b02d209bda49593f2fff2b587991f9da76b8 Mon Sep 17 00:00:00 2001
From: begasus <begasus@gmail.com>
Date: Mon, 10 Jun 2019 19:04:18 +0200
Subject: Fix for gcc2 and test-bz106632
diff --git a/src/fccfg.c b/src/fccfg.c
index d7c48e8..edf238f 100644
--- a/src/fccfg.c
+++ b/src/fccfg.c
@@ -2247,11 +2247,13 @@ FcConfigRealFilename (FcConfig *config,
if (!FcStrIsAbsoluteFilename (buf))
{
FcChar8 *dirname = FcStrDirname (nn);
+ FcChar8 *path;
+
FcStrFree (nn);
if (!dirname)
return NULL;
- FcChar8 *path = FcStrBuildFilename (dirname, buf, NULL);
+ path = FcStrBuildFilename (dirname, buf, NULL);
FcStrFree (dirname);
if (!path)
return NULL;
--
2.21.0