Bug 254099 - [NEWPORT] devel/libserdes
Summary: [NEWPORT] devel/libserdes
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Rainer Hurling
URL:
Keywords:
Depends on:
Blocks: 254093
  Show dependency treegraph
 
Reported: 2021-03-07 13:51 UTC by Sergey Akhmatov
Modified: 2021-03-07 15:37 UTC (History)
1 user (show)

See Also:


Attachments
libserdes-6.0.2 (2.00 KB, patch)
2021-03-07 13:51 UTC, Sergey Akhmatov
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Akhmatov 2021-03-07 13:51:06 UTC
Created attachment 223057 [details]
libserdes-6.0.2

Libserdes is a schema-based serializer/deserializer
C/C++ library with support for Avro and the Confluent
Platform Schema Registry.

It's a new dependency for net/kafkacat introduced in #254093 update.
Comment 1 Rainer Hurling freebsd_committer 2021-03-07 14:55:01 UTC
Poudriere passes fine on amd64 and i386 :)

In my real world box I get from the make:

====> Running Q/A tests (stage-qa)
Error: /usr/local/lib/libserdes.so.1 is linked to /usr/local/lib/librdkafka++.so.1 from net/librdkafka but it is not declared as a dependency
Warning: you need LIB_DEPENDS+=librdkafka++.so:net/librdkafka


So it seems, libserdes would like to have net/librdkafka as a dependency. If it is there, it is linked. You can find concrete hints for the usage in configure.self:

    # Semi optional libs
    mkl_lib_check "librdkafka" ENABLE_LIBRDKAFKA disable CXX "-lrdkafka++" \
                      "#include <librdkafka/rdkafkacpp.h>"

Would it be OK for you, if a add this dependency before the commit?
Comment 2 Sergey Akhmatov 2021-03-07 15:18:31 UTC
(In reply to Rainer Hurling from comment #1)
"Semi optional" :(
I don't see a way to make it explicitly. Ok, let's add librdkafka as a dependency.

Thank you! I've always assumed poudriere testing is enough, seems I was wrong.
Comment 3 Rainer Hurling freebsd_committer 2021-03-07 15:27:31 UTC
(In reply to Sergey Akhmatov from comment #2)
> I don't see a way to make it explicitly. Ok, let's add librdkafka
> as a dependency.
> 
> Thank you! I've always assumed poudriere testing is enough, seems I was wrong.
I think Poudriere is doing exactly what it is asked to do.

This "semi-optional" thing in libserdes is not the best way to ask for a dependency :(
Comment 4 commit-hook freebsd_committer 2021-03-07 15:35:15 UTC
A commit references this bug:

Author: rhurlin
Date: Sun Mar  7 15:34:47 UTC 2021
New revision: 567573
URL: https://svnweb.freebsd.org/changeset/ports/567573

Log:
  New port: devel/libserdes: schema-based serializer/deserializer C/C++ library

  With support for Avro and the Confluent Platform Schema Registry.
  The library is aimed to be used in the streaming pipeline, e.g.
  Apache Kafka, to perform data serialization and deserialization
  with centrally managed schemas.

  https://github.com/confluentinc/libserdes

  PR:		254099
  Submitted by:	Sergey Akhmatov <sergey@akhmatov.ru> (maintainer)

Changes:
  head/devel/Makefile
  head/devel/libserdes/
  head/devel/libserdes/Makefile
  head/devel/libserdes/distinfo
  head/devel/libserdes/pkg-descr
  head/devel/libserdes/pkg-plist
Comment 5 Rainer Hurling freebsd_committer 2021-03-07 15:37:42 UTC
Committing, thanks!

net/librdkafka was added, because it is mentioned as a 'semi-optional' dependency in configure.self and will be linked, if present ...