Files
haikuports/dev-libs/libomemo-c/libomemo_c-0.5.1.recipe
2025-12-20 07:22:45 +01:00

95 lines
2.1 KiB
Bash

SUMMARY="Fork of libsignal-protocol-c adding support for OMEMO XEP-0384 0.5.0+"
DESCRIPTION="This is a fork of libsignal-protocol-c, an implementation of Signal's \
ratcheting forward secrecy protocol that works in synchronous and asynchronous messaging. \
The fork adds support for OMEMO as defined in XEP-0384 versions 0.3.0 and later.
- OMEMO version 0.3.0 uses the original libsignal-protocol-c implementation with its protocol versions 2 and 3.
- OMEMO version 0.4.0+ is implemented using a new protocol version 4 internally. In comparison with protocol \
version 3, it changes:
- HKDF info strings
- Protocol buffer encoding
- Signature scheme (uses XEd25519 instead of custom \"Curve25519 signatures\")
- Specification-compliant double ratchet
- Support for Ed25519 public keys
- Various serializations
- Removes unused functionality
"
HOMEPAGE="https://github.com/dino/libomemo-c"
COPYRIGHT="2015-2016 Open Whisper Systems
2020-2025 Dino Team
"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="$HOMEPAGE/releases/download/v$portVersion/libomemo-c-$portVersion.tar.gz"
CHECKSUM_SHA256="766827c07ff2cdc4deaf87bd9485474ed4aeea2fa5152593bf49fabe22b5865f"
SOURCE_FILENAME="libomemo-c-$portVersion.tar.gz"
SOURCE_DIR="libomemo-c-$portVersion"
ARCHITECTURES="all ?x86_gcc2"
libVersion="$portVersion"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
libomemo_c = $portVersion
lib:libomemo_c = $libVersionCompat
"
REQUIRES="
haiku
lib:libprotobuf_c
"
PROVIDES_devel="
libomemo_c_devel = $portVersion
devel:libomemo_c = $libVersionCompat
"
REQUIRES_devel="
libomemo_c == $portVersion base
devel:libprotobuf_c
"
BUILD_REQUIRES="
haiku_devel
devel:libprotobuf_c
devel:libcheck
devel:libglib_2.0
devel:libssl
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc
cmd:meson
cmd:pkg_config
"
TEST_REQUIRES="
cmd:meson
"
BUILD()
{
meson setup build \
--buildtype=release \
--prefix=$prefix \
--libdir=$libDir \
--reconfigure
meson compile -C build
}
INSTALL()
{
meson install -C build
prepareInstalledDevelLib \
libomemo-c
fixPkgconfig
packageEntries devel \
$developDir
}
TEST()
{
meson test -C build
}