SUMMARY="Qt Cryptographic Architecture"
DESCRIPTION="QCA aims to provide a straightforward and cross-platform \
crypto API, using Qt datatypes and conventions. QCA separates the API from \
the implementation, using plugins known as Providers. The advantage of this \
model is to allow applications to avoid linking to or explicitly depending \
on any particular cryptographic library. This allows one to easily change or \
upgrade crypto implementations without even needing to recompile the \
application!
"
HOMEPAGE="http://delta.affinix.com/qca/"
SOURCE_URI="https://delta.affinix.com/download/qca/2.0/qca-2.0.3.tar.bz2"
CHECKSUM_SHA256="8da20c89f390954fdcfcd3c4deef379213ddb5ae9d6b5e0c917d23f5e474895f"
SOURCE_DIR="qca-$portVersion"
REVISION="1"
LICENSE="GNU LGPL v2.1"
COPYRIGHT="2003-2014 Justin Karneges"

PATCHES="qca2-$portVersion.patch"

ARCHITECTURES="x86"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
	# x86_gcc2 is fine as primary target architecture as long as we're building
	# for a different secondary architecture.
	ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86"

PROVIDES="
	qca2$secondaryArchSuffix = $portVersion
	cmd:qcatool2$secondaryArchSuffix = $portVersion
	lib:libqca$secondaryArchSuffix = $portVersion
	"
PROVIDES_devel="
	devel:libqca$secondaryArchSuffix
	"
REQUIRES="
	haiku$secondaryArchSuffix
	libqt4$secondaryArchSuffix >= 4.8
	ca_root_certificates
	"
REQUIRES_devel="
	haiku${secondaryArchSuffix}_devel
	libqt4${secondaryArchSuffix}_devel >= 4.8
	qca2$secondaryArchSuffix == $portVersion base
	"
BUILD_PREREQUIRES="
	cmd:which
	cmd:qmake$secondaryArchSuffix
	cmd:make
	cmd:g++$secondaryArchSuffix
	"
BUILD_REQUIRES="
	haiku${secondaryArchSuffix}_devel
	libqt4${secondaryArchSuffix}_devel >= 4.8
	"

BUILD()
{
	# not an autotools configure
	./configure --prefix=$prefix --bindir=$binDir --includedir=$includeDir \
		--libdir=$libDir --datadir=$dataDir --disable-tests --release \
		--certstore-path=/system/data/ssl/CARootCertificates.pem
	make $jobArgs
}

INSTALL()
{
	rm -f bin/qcatool2.debug
	rm -f lib/libqca.so.2.0.3.debug
	
	make install
	fixPkgconfig
	
	# manually copy the mkspec since "make install" tries to install it
	# into a packaged directory and fails
	mkdir -p $dataDir/Qt/mkspecs/features/
	cp -f crypto.prf $dataDir/Qt/mkspecs/features/
	
	prepareInstalledDevelLibs libqca
	packageEntries devel \
		$developDir \
		$dataDir/Qt/mkspecs/
}
