Files
haikuports/net-libs/libproxy/libproxy-0.5.9.recipe
Schrijvers Luc 699edb2664 libproxy, new recipe (#12517)
requirement for newer glib-networking
2025-06-23 05:48:43 +00:00

121 lines
2.9 KiB
Bash

SUMMARY="Library for automatic proxy configuration management"
DESCRIPTION="libproxy is a library that provides automatic proxy configuration management.
Features:
* support for all major platforms: Windows, Mac and Linux/UNIX
* extremely small core footprint
* minimal dependencies within libproxy core
* only 4 functions in the stable-ish external API
* dynamic adjustment to changing network topology
* a standard way of dealing with proxy settings across all scenarios
* a sublime sense of joy and accomplishment"
HOMEPAGE="https://github.com/libproxy/libproxy"
COPYRIGHT="2022-2023 The Libproxy Team
Jan-Michael Brummer"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="https://github.com/libproxy/libproxy/archive/refs/tags/$portVersion.tar.gz"
CHECKSUM_SHA256="a1976c3ac4affedc17e6d40cf78c9d8eca6751520ea3cbbec1a8850f7ded1565"
SOURCE_FILENAME="libproxy-$portVersion.tar.gz"
ARCHITECTURES="?all ?x86_gcc2"
SECONDARY_ARCHITECTURES="?x86"
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
libproxy$secondaryArchSuffix = $portVersion
lib:libproxy$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
gsettings_desktop_schemas$secondaryArchSuffix
lib:libcurl$secondaryArchSuffix
lib:libgio_2.0$secondaryArchSuffix
lib:libgirepository_1.0$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgobject_2.0$secondaryArchSuffix
"
PROVIDES_devel="
libproxy${secondaryArchSuffix}_devel = $portVersion
devel:libproxy$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
libproxy$secondaryArchSuffix == $portVersion base
"
PROVIDES_tools="
libproxy${secondaryArchSuffix}_tools = $portVersion
cmd:proxy$commandSuffix = $portVersion
"
REQUIRES_tools="
libproxy$secondaryArchSuffix == $portVersion base
haiku$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
gsettings_desktop_schemas$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
devel:libgio_2.0$secondaryArchSuffix
devel:libgirepository_1.0$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:meson
cmd:ninja
cmd:pkg_config$secondaryArchSuffix
cmd:vapigen
"
BUILD()
{
LDFLAGS="-lbsd -lgnu -lnetwork" meson build \
--buildtype=release \
--prefix=$prefix \
--bindir=$commandBinDir \
--libdir=$libDir \
--datadir=$dataDir \
--localedir=$dataDir/locale \
--includedir=$includeDir \
-Ddocs=false \
-Dconfig-windows=false \
-Dconfig-osx=false \
-Dconfig-xdp=false \
-Dpacrunner-duktape=false
ninja -C build
}
INSTALL()
{
ninja -C build install
prepareInstalledDevelLib \
libproxy
fixPkgconfig
packageEntries devel \
"$developDir"
packageEntries tools \
$commandBinDir \
$manDir
}
TEST()
{
meson test -C build --print-errorlogs
}