On 12 Apr 2021, at 16:40, Shawn Webb wrote:
On Mon, Apr 12, 2021 at 01:39:50PM +0200, Kristof Provost wrote:
On 10 Apr 2021, at 17:27, Shawn Webb wrote:
On Sat, Apr 10, 2021 at 09:16:22AM +0000, Kristof Provost wrote:
The branch main has been updated by kp:
URL:
https://cgit.FreeBSD.org/src/commit/?id=0dd13c77432ade1ae94c9661cbad5537e3e6ab1d
commit 0dd13c77432ade1ae94c9661cbad5537e3e6ab1d
Author: Kristof Provost <k...@freebsd.org>
AuthorDate: 2021-04-02 15:06:02 +0000
Commit: Kristof Provost <k...@freebsd.org>
CommitDate: 2021-04-10 09:16:01 +0000
libnv: Build PIC
Build libnv as position independent code so we can use it from
shared
libraries.
MFC after: 4 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D29561
---
lib/libnv/Makefile | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/libnv/Makefile b/lib/libnv/Makefile
index b13758931c4e..854cd2c7f3f3 100644
--- a/lib/libnv/Makefile
+++ b/lib/libnv/Makefile
@@ -10,6 +10,7 @@ SHLIB_MAJOR= 0
.PATH: ${SRCTOP}/sys/contrib/libnv ${SRCTOP}/sys/sys
CFLAGS+=-I${.CURDIR}
+CFLAGS+=-fPIC
Wouldn't the better fix be renaming LIB to SHLIB like every other
PIC
lib?
Ed pointed me at INSTALL_PIC_ARCHIVE. I’m also pondering just
making
libpfctl a .so, which should also fix the issue this addresses.
The complication is that libpfctl is currently a .a, and can be used
in a
shared library itself (for bsnmp), so it has to be - and use - PIC.
Out of curiosity, is there a reason not to have the shared library
depend on libnv as a shared library?
That’s mostly an accident. Libpfctl is currently marked as
INTERNALLIB=true, which makes it a static library and links it to the
static library.
I’m considering making libpfctl a shared library, if only because
there are consumers of the pf ioctl interface in ports, and I intend to
remove some of the old (for which there are now nvlist-based versions)
ioctls. That will be a lot easier for those applications if they can
just use libpfctl.
The downside is that, if we consider libpfctl to be a stable ABI, we
move the previous ABI problem from the kernel to userspace, rather than
getting rid of it.
Best regards,
Kristof
_______________________________________________
dev-commits-src-main@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-main
To unsubscribe, send any mail to "dev-commits-src-main-unsubscr...@freebsd.org"