Created attachment 222437 [details]
Build and package info is available at https://gitlab.com/swills/freebsd-ports/pipelines/256066241
Created attachment 222445 [details]
patch with added dependencies and ordered Makefile vars
Hi Mathieu, hi Brad,
While reviewing the patch for the update, several things stood out that I changed in attached new patch:
- missing dependencies for OPTION SNMP:
devel/pcre, ports-mgmt/pkg, and archivers/rpm4
- missing dependency for OPTION XML, if used
together with OPTION READLINE: libedit
- post-patch target: REINPLACE_CMD for
Makefile.* not needed anymore
- Ordered Makefile vars, like suggested by portclippy
I set OPTION DTRACE broken, since it quits with:
/bin/sh ../libtool --tag=CC --mode=link cc -I ../include -Wunknown-warning-option -fdiagnostics-show-option -fdiagnostics-color=auto -pipe -Wall -W -Wextra -Wformat -Wformat-security -Wimplicit-fallthrough -Wfatal-errors -Wheader-guard -Wdocumentation -Winline -Wpointer-arith -fno-omit-frame-pointer -Wno-cast-align -Wno-unused-parameter -Wno-missing-field-initializers -Wno-sign-compare -fstack-protector -fstack-protector-all -fstack-protector-strong -fstack-clash-protection -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -std=gnu99 -Wl,-z,relro -Wl,-z,now -Wl,-rpath,/usr/local/lib -fstack-protector-strong -o libcommon-daemon-client.la log.lo version.lo compat/libcompat.la -L/usr/local/lib
libtool: link: (cd .libs/libcommon-daemon-client.lax/libcompat.a && ar x "/poudriere/ports/default/net-mgmt/lldpd/work/lldpd-1.0.8/src/compat/.libs/libcompat.a")
libtool: link: ar cr .libs/libcommon-daemon-client.a .libs/log.o .libs/version.o .libs/libcommon-daemon-client.lax/libcompat.a/empty.o
libtool: link: ranlib .libs/libcommon-daemon-client.a
libtool: link: rm -fr .libs/libcommon-daemon-client.lax
libtool: link: ( cd ".libs" && rm -f "libcommon-daemon-client.la" && ln -s "../libcommon-daemon-client.la" "libcommon-daemon-client.la" )
Making all in src/daemon
dtrace -C -h -s -o probes.h
dtrace: failed to open -o: No such file or directory
*** Error code 1
make: stopped in /poudriere/ports/default/net-mgmt/lldpd/work/lldpd-1.0.8/src/daemon
*** Error code 1
It would be nice if you could check the patch for functionality and general correctness.
For the DTRACE option, I suggest that it be marked Broken in the description until further notice.
Hi Brad and Rainer
Thank you for your patch(es), I've taken the chance to upload this new tarball to the mirror in the port on my end so that we have both the official download and a mirror for the "just in case".
From my end, the patch looks fine, thank your Rainer for your insights on DTrace, I'm fine with marking it broken.
The new dependency on RPM looks interesting. I'm fine with it, but it surprises me a bit and plan to check out on this later on.
Have you done a runtime test? Usually Vincent, the upstream developer does his due diligence and I've rarely encountered issues with fresh lldpd versions once they built fine on FreeBSD.
From my end: Thumbs up, and thanks!*
* I've unfortunately been sucked into more non-BSD related work lately.
A commit references this bug:
Date: Mon Feb 15 20:18:12 UTC 2021
New revision: 565335
net-mgmt/lldpd: Update to 1.0.8
Submitted by: Brad Davis <brd@FreeBSD.org>
Hi Brad, hi Simon,
I just committed your patch/port :)
If there are any problems, please feel free to contact me, thanks.
I don't understand the addition of a dependency on rpm4 (and pcre and libpkg). Nowhere in the source code are these libraries mentioned, and they create a huge overhead in terms of dependencies, since rpm4 has a build/run dependency on gcc10.
Can you explain in more detail what breaks without this, alternatively, make the SNMP option default to off?
(In reply to Niclas Zeising from comment #6)
+1, also perhaps for XML?
I still haven't gotten any reply as to why rpm4 is a dependency of lldpd. It seems totally un-needed and cauess a huge amount of dependencies. Can this be disabled?
Created attachment 224079 [details]
patch to get rid of some dependencies
Hi Simon, hi Brad,
I think Niclas is right and three dependencies I added in attachment #222445 [details] are not needed. They crept in when I also tested the port outside of Poudriere with DEVELOPER=yes in /etc/make.conf. There it was complained that these dependencies are missing. Sometimes dependencies are assigned wrongly. Sorry for that.
It is not clear to me why XML should also be removed. That is obviously used, isn't it?
In my opinion USES=pkgconfig should also be moved up from the JSON option. Surely the configure script checks whether pkg-config is available independently of JSON?
(In reply to Rainer Hurling from comment #9)
I believe it requres a portrevision bump, since dependencies change.
Thanks for looking into this!
+1 on the "huh, what are these dependencies for" comments - I ran into this as well. I maintain my ports preferrably by installing binpkgs these days, and having lldpd pull in a bunch of fairly heavy new dependencies came as a surprise
New packages to be INSTALLED:
thanks for looking into this.
Committed in https://cgit.freebsd.org/ports/commit/?id=98b50d4c60f26249f944d24abdbcfa931f5c7268.
Thanks for the hint about not needed dependencies.