Files
haikuports/gnome-base/librsvg/librsvg-2.50.7.recipe
2022-11-18 17:37:23 +10:00

165 lines
4.8 KiB
Bash

SUMMARY="A library to render SVG files using cairo"
DESCRIPTION="libRSVG is a a high performance SVG rendering library associated \
with the Gnome Project."
HOMEPAGE="https://wiki.gnome.org/Projects/LibRsvg"
COPYRIGHT="2009-2010 Raph Levien"
LICENSE="GNU GPL v2
GNU LGPL v2"
REVISION="2"
SOURCE_URI="https://download.gnome.org/sources/librsvg/2.50/librsvg-$portVersion.tar.xz"
CHECKSUM_SHA256="fffb61b08cd5282aaae147a02b305166a7426fad22a8b9427708f0f2fc426ebc"
PATCHES="librsvg-$portVersion.patchset"
ADDITIONAL_FILES="
update_loaders_cache.sh
"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
POST_INSTALL_SCRIPTS="
$relativePostInstallDir/update_loaders_cache.sh
"
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
libVersion="2.47.0"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
librsvg$secondaryArchSuffix = $portVersion
cmd:rsvg_convert$commandSuffix = $portVersion
lib:librsvg_2$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libcairo$secondaryArchSuffix
lib:libcroco_0.6$secondaryArchSuffix
lib:libfontconfig$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libfribidi$secondaryArchSuffix
lib:libgdk_pixbuf_2.0$secondaryArchSuffix
lib:libgio_2.0$secondaryArchSuffix
# lib:libgirepository_1.0$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libharfbuzz$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libpango_1.0$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libuuid$secondaryArchSuffix >= 1.3
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
librsvg${secondaryArchSuffix}_devel = $portVersion
devel:librsvg_2$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
librsvg$secondaryArchSuffix == $portVersion base
devel:libcairo$secondaryArchSuffix
devel:libffi$secondaryArchSuffix
devel:libfontconfig$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libgdk_pixbuf_2.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgraphite2$secondaryArchSuffix
devel:libharfbuzz$secondaryArchSuffix
devel:libpcre$secondaryArchSuffix
devel:libpixman_1$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# shared_mime_info$secondaryArchSuffix
devel:libcairo$secondaryArchSuffix
devel:libcroco_0.6$secondaryArchSuffix
devel:libfontconfig$secondaryArchSuffix
devel:libfreetype$secondaryArchSuffix
devel:libfribidi$secondaryArchSuffix
devel:libgdk_pixbuf_2.0$secondaryArchSuffix
devel:libgio_2.0$secondaryArchSuffix
# devel:libgirepository_1.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libpango_1.0$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libuuid$secondaryArchSuffix >= 1.3
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoreconf
cmd:awk
cmd:cargo$secondaryArchSuffix >= 0.64
cmd:gcc$secondaryArchSuffix
cmd:gtkdocize
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:sed
"
defineDebugInfoPackage librsvg$secondaryArchSuffix \
$commandBinDir/rsvg-convert \
$libDir/librsvg-2.so.$libVersion
BUILD()
{
autoreconf -vfi
runConfigure --omit-dirs binDir ./configure \
--bindir=$commandBinDir \
--disable-introspection
make $jobArgs
}
INSTALL()
{
# fix path for gdk-pixbuf loaders
mkdir -p $settingsDir/gdk-pixbuf-2.0
touch $settingsDir/gdk-pixbuf-2.0/loaders.cache
local gdk_pixbuf_version="`pkg-config --variable=gdk_pixbuf_binary_version gdk-pixbuf-2.0`"
sed -i -e "s|gdk_pixbuf_binarydir = .*|gdk_pixbuf_binarydir = \"$libDir/gdk-pixbuf-2.0/$gdk_pixbuf_version\"/|" \
$sourceDir/gdk-pixbuf-loader/Makefile
sed -i -e "s|gdk_pixbuf_cache_file = .*|gdk_pixbuf_cache_file = \"$settingsDir/gdk-pixbuf-2.0/loaders.cache\"|" \
$sourceDir/gdk-pixbuf-loader/Makefile
sed -i -e "s|gdk_pixbuf_moduledir = .*|gdk_pixbuf_moduledir = \"$libDir/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders\"|" \
$sourceDir/gdk-pixbuf-loader/Makefile
sed -i -e "s|libdir=.*|libdir='$libDir/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders\'|" \
$sourceDir/gdk-pixbuf-loader/libpixbufloader-svg.la
make install
rm $libDir/*.la \
$libDir/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders/*.a \
$libDir/gdk-pixbuf-2.0/$gdk_pixbuf_version/loaders/*.la
rm -rf $dataDir/pixmaps \
$settingsDir/gdk-pixbuf-2.0
# postinstall script for rebuild loaders.cache
mkdir -p $postInstallDir
cp $portDir/additional-files/update_loaders_cache.sh $postInstallDir
chmod +x $postInstallDir/update_loaders_cache.sh
prepareInstalledDevelLib librsvg-2
fixPkgconfig
packageEntries devel \
$developDir
}
TEST()
{
make check
}