mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-09 05:10:05 +02:00
152 lines
4.5 KiB
Bash
152 lines
4.5 KiB
Bash
SUMMARY="Portable, lightweight framework for the Objective-C language"
|
|
DESCRIPTION="ObjFW is a portable, lightweight framework for the Objective-C \
|
|
language. It enables you to write an application in Objective-C that will run \
|
|
on any platform supported by ObjFW without having to worry about differences \
|
|
between operating systems or various frameworks you would otherwise need if \
|
|
you want to be portable."
|
|
HOMEPAGE="https://objfw.nil.im/"
|
|
COPYRIGHT="2008-2024 Jonathan Schleifer"
|
|
LICENSE="GNU LGPL v3"
|
|
REVISION="1"
|
|
SOURCE_URI="https://objfw.nil.im/downloads/objfw-$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="f1d92b64f524a1aaf8e8b572a0edf5817d589c3d3c60cab9bb182ccbac3ee405"
|
|
PATCHES="objfw-1.2.patchset"
|
|
|
|
ARCHITECTURES="all !x86_gcc2"
|
|
SECONDARY_ARCHITECTURES="x86"
|
|
|
|
libobjfwVersion="1.2.0"
|
|
libobjfwVersionCompat="$libobjfwVersion compat >= 1.0"
|
|
libobjfwrtVersion="1.2.0"
|
|
libobjfwrtVersionCompat="$libobjfwrtVersion compat >= 1.0"
|
|
libobjfwtlsVersion="1.0.2"
|
|
libobjfwtlsVersionCompat="$libobjfwrtVersion compat >= 1.0"
|
|
libobjfwhidVersion="1.0.2"
|
|
libobjfwhidVersionCompat="$libobjfwrtVersion compat >= 1.0"
|
|
|
|
PROVIDES="objfw$secondaryArchSuffix = $portVersion"
|
|
REQUIRES="
|
|
objfw${secondaryArchSuffix}_hid == $portVersion
|
|
objfw${secondaryArchSuffix}_libs == $portVersion
|
|
objfw${secondaryArchSuffix}_tls == $portVersion
|
|
objfw${secondaryArchSuffix}_utils == $portVersion
|
|
objfw${secondaryArchSuffix}_devel == $portVersion
|
|
"
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
devel:libssl$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:awk
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:make
|
|
"
|
|
|
|
PROVIDES_libs="
|
|
objfw${secondaryArchSuffix}_libs = $portVersion
|
|
lib:libobjfw$secondaryArchSuffix = $libobjfwVersionCompat
|
|
lib:libobjfwrt$secondaryArchSuffix = $libobjfwrtVersionCompat
|
|
"
|
|
REQUIRES_libs="
|
|
haiku$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_tls="
|
|
objfw${secondaryArchSuffix}_tls = $portVersion
|
|
lib:libobjfwtls$secondaryArchSuffix = $libobjfwtlsVersionCompat
|
|
"
|
|
REQUIRES_tls="
|
|
haiku$secondaryArchSuffix
|
|
lib:libobjfw$secondaryArchSuffix == $libobjfwVersionCompat
|
|
lib:libobjfwrt$secondaryArchSuffix == $libobjfwrtVersionCompat
|
|
lib:libcrypto$secondaryArchSuffix
|
|
lib:libssl$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_hid="
|
|
objfw${secondaryArchSuffix}_hid = $portVersion
|
|
lib:libobjfwhid$secondaryArchSuffix = $libobjfwhidVersionCompat
|
|
"
|
|
REQUIRES_hid="
|
|
haiku$secondaryArchSuffix
|
|
lib:libobjfw$secondaryArchSuffix == $libobjfwVersionCompat
|
|
lib:libobjfwrt$secondaryArchSuffix == $libobjfwrtVersionCompat
|
|
"
|
|
|
|
PROVIDES_utils="
|
|
objfw${secondaryArchSuffix}_utils = $portVersion
|
|
cmd:ofarc = $portVersion compat >= 1.0
|
|
cmd:ofdns = $portVersion compat >= 1.0
|
|
cmd:ofhash = $portVersion compat >= 1.0
|
|
cmd:ofhttp = $portVersion compat >= 1.0
|
|
"
|
|
REQUIRES_utils="
|
|
haiku$secondaryArchSuffix
|
|
lib:libobjfw$secondaryArchSuffix == $libobjfwVersionCompat
|
|
lib:libobjfwrt$secondaryArchSuffix == $libobjfwrtVersionCompat
|
|
lib:libobjfwtls$secondaryArchSuffix == $libobjfwtlsVersionCompat
|
|
lib:libcrypto$secondaryArchSuffix
|
|
lib:libssl$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
objfw${secondaryArchSuffix}_devel = $portVersion
|
|
cmd:objfw_compile = $portVersion compat >= 1.0
|
|
cmd:objfw_config = $portVersion compat >= 1.0
|
|
cmd:objfw_embed = $portVersion compat >= 1.0
|
|
cmd:objfw_new = $portVersion compat >= 1.0
|
|
devel:libobjfw$secondaryArchSuffix = $libobjfwVersionCompat
|
|
devel:libobjfwhid$secondaryArchSuffix = $libobjfwVersionCompat
|
|
devel:libobjfwrt$secondaryArchSuffix = $libobjfwrtVersionCompat
|
|
devel:libobjfwtls$secondaryArchSuffix = $libobjfwtlsVersionCompat
|
|
"
|
|
REQUIRES_devel="
|
|
haiku$secondaryArchSuffix
|
|
lib:libobjfw$secondaryArchSuffix == $libobjfwVersionCompat
|
|
lib:libobjfwhid$secondaryArchSuffix == $libobjfwVersionCompat
|
|
lib:libobjfwrt$secondaryArchSuffix == $libobjfwrtVersionCompat
|
|
lib:libobjfwtls$secondaryArchSuffix == $libobjfwtlsVersionCompat
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
# Force GCC, as Clang is currently broken on Haiku.
|
|
runConfigure ./configure OBJC=gcc
|
|
make $jobArgs
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
make install
|
|
|
|
if [ -n "$secondaryArchSuffix" ]; then
|
|
mv $binDir/* $prefix/bin/
|
|
binDir=$prefix/bin
|
|
fi
|
|
|
|
prepareInstalledDevelLibs libobjfw libobjfwrt libobjfwtls
|
|
|
|
packageEntries libs \
|
|
$libDir/libobjfw.so.* \
|
|
$libDir/libobjfwrt.so.*
|
|
packageEntries tls $libDir/libobjfwtls.so.*
|
|
packageEntries hid $libDir/libobjfwhid.so.*
|
|
packageEntries utils \
|
|
$binDir/ofarc $dataDir/ofarc \
|
|
$binDir/ofdns $dataDir/ofdns \
|
|
$binDir/ofhash $dataDir/ofhash \
|
|
$binDir/ofhttp $dataDir/ofhttp
|
|
packageEntries devel \
|
|
$binDir/objfw-compile \
|
|
$binDir/objfw-config \
|
|
$binDir/objfw-embed \
|
|
$binDir/objfw-new \
|
|
$libDir/objfw-config \
|
|
$developDir
|
|
}
|
|
|
|
TEST()
|
|
{
|
|
make check
|
|
}
|