History log of /freebsd-current/lib/libnv/Makefile
Revision Date Author Comments
# d0b2dbfa 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# e4c36b7a 21-Jul-2022 Kristof Provost <kp@FreeBSD.org>

libnv: bump library version

Now that we version symbols we should bump the library major version.
While here use version FBSD_1.7 to match the current HEAD FreeBSD
namespace and remove extraneous 'All rights reserved' and incorrect
copyright statement.

Reviewed by: kevans
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D35875


# 000321ba 17-May-2022 Reid Linnemann <rlinnemann@netgate.com>

namespace nv names, version libnv and libnvpair library symbols

libnv and libnvpair have aliased symbols, and as a result a single process which
dlopens a shared object that is dynamically linked to libnv and another to
libnvpair will wind up with a single set of resolved symbols for those in
conflict. A source file also cannot include both libnv and libnvpair headers
because of aliased identifiers. To resolve the situation, libnv types and
functions are namespaced via nv_namespace.h, and libnv symbols are
versioned. The msgio functions are not namespaced or exported as they are not
part of the external API.

Reviewed by: kevans
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D35261


# 8403170b 16-Apr-2021 Kristof Provost <kp@FreeBSD.org>

libpfct: Fix PIC flag

Use ${PICFLAG} rather than hard-adding -fPIC, which removes the
requirement for libnv to be built PIC.

MFC after: 4 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")


# 15ca6622 10-Apr-2021 Kristof Provost <kp@FreeBSD.org>

libnv: Use PICFLAG rather than -fPIC

Suggested by: andrew
MFC after: 4 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")


# 0dd13c77 02-Apr-2021 Kristof Provost <kp@FreeBSD.org>

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


# 4928d027 26-Jun-2020 Matt Macy <mmacy@FreeBSD.org>

Fix libnv build post rename

Submitted by: Neel Chauhan
Differential Revision: https://reviews.freebsd.org/D25481


# a7b5a3d48 05-Sep-2019 Emmanuel Vadot <manu@FreeBSD.org>

pkgbase: Put a lot of binaries and lib in FreeBSD-runtime

All of them are needed to be able to boot to single user and be able
to repair a existing FreeBSD installation so put them directly into
FreeBSD-runtime.

Reviewed by: bapt, gjb
Differential Revision: https://reviews.freebsd.org/D21503


# 50a2c229 09-Aug-2018 Kyle Evans <kevans@FreeBSD.org>

libnv: Remove -I${SRCTOP}/sys

This should have been done as part of r336019 -- including ${SRCTOP}/sys is
not a good business model for something that's build in legacy/bootstrap
stages.

Beyond that, libnv seems to build quite alright as legacy, part of
buildworld, and standalone without. Axe it.

Reported by: truckman (head building stable/11)
Tested by: Shawn Webb (HardenedBSD)
MFC after: 3 days


# 63889bbd 16-Jul-2018 Alex Richardson <arichardson@FreeBSD.org>

No longer install sys/nv.h and sys/cnv.h in lib/libnv/Makefile

Use tools/build/Makefile to install the headers into ${WORLDTMP}/legacy
instead. Compared to r336026 this has the minor advantage that it avoids
unncessary header installation when building the non-bootstrap libnv.

Reviewed By: bdrewery, kevans
Approved By: brooks (mentor)
Differential Revision: https://reviews.freebsd.org/D16187


# 3cafc9a6 06-Jul-2018 Kyle Evans <kevans@FreeBSD.org>

config(8): Fix broken ABI

r336019 introduced ${SRCTOP}/sys to the include paths in order to pull in a
new sys/{c,}nv.h. This is wrong, because the build tree's ABI isn't
guaranteed to match what's running on the host system.

Fix instead by removing -I${SRCTOP}/sys and installing the libnv headers
with `make -C lib/libnv includes`... this may or may not get re-worked in
the future so that a userland lib isn't installing includes from sys/.

Reported by: bdrewery


# d511b20a 02-Aug-2017 Enji Cooper <ngie@FreeBSD.org>

Add HAS_TESTS to all Makefiles that are currently using the
`SUBDIR.${MK_TESTS}+= tests` idiom.

This is a follow up to r321912.


# 4b330699 02-Aug-2017 Enji Cooper <ngie@FreeBSD.org>

Convert traditional ${MK_TESTS} conditional idiom for including test
directories to SUBDIR.${MK_TESTS} idiom

This is being done to pave the way for future work (and homogenity) in
^/projects/make-check-sandbox .

No functional change intended.

MFC after: 1 weeks


# a9468a4e 19-Jan-2017 Enji Cooper <ngie@FreeBSD.org>

Use SRCTOP-relative paths to other directories instead of .CURDIR-relative ones

This implifies pathing in make/displayed output

MFC after: 3 weeks
Sponsored by: Dell EMC Isilon


# 5ef231f6 27-Aug-2016 Mariusz Zaborski <oshogbo@FreeBSD.org>

Add cnv API.

cnv API is a set of functions for managing name/value pairs by cookie.
The cookie can be obtained by nvlist_next(), nvlist_get_parent() or
nvlist_get_pararr() function. This patch also includes unit tests.

Submitted by: Adam Starak <starak.adam@gmail.com>


# d48a2d23 26-Feb-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Remove WARNS inherited fine by ../Makefile.inc.

Sponsored by: EMC / Isilon Storage Division


# a70cba95 04-Feb-2016 Glen Barber <gjb@FreeBSD.org>

First pass through library packaging.

Sponsored by: The FreeBSD Foundation


# 54f98da9 04-Jul-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Move the nvlist source and private includes from sys/kern to seperate
directory sys/contrib/libnv.

The goal of this operation is to NOT install header files which shouldn't
be used outside the nvlist library.

Approved by: pjd (mentor)


# 58c86148 04-Jul-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Move nvlist documentation to the FreeBSD Kernel Developer's sections.

Approved by: pjd (mentor)


# c36e54bb 02-Jul-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Let the nv.h and dnv.h includes be only in sys directory.

Change consumers to include those files from sys.
Add duplicated files to ObsoleteFiles.

Approved by: pjd (mentor)


# 18b2ee82 15-Jun-2015 Baptiste Daroussin <bapt@FreeBSD.org>

Revert r284417 it is not necessary anymore


# 4232f826 15-Jun-2015 Baptiste Daroussin <bapt@FreeBSD.org>

Enforce overwritting SHLIBDIR

Since METAMODE has been added, sys.mk loads bsd.mkopt.mk which ends load loading
bsd.own.mk which then defines SHLIBDIR before all the Makefile.inc everywhere.

This makes /lib being populated again.

Reported by: many


# 24f93ee7 01-May-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Add nvlist_flags() function, which returns nvlist's public flags.

Approved by: pjd (mentor)


# 041392bc 01-May-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Sort MLINKS alphabetically.

Approved by: pjd (mentor)


# 0bb5e6ef 29-Apr-2015 Mariusz Zaborski <oshogbo@FreeBSD.org>

Remove the nvlist_.*[fv] functions.

Those functions are problematic, because there is no way to report
memory allocation problems without complicating the API, so we can
either abort or potentially return invalid results. None of which is
acceptable.

In most cases the caller knows the size of the name, so he can allocate
buffer on the stack and use snprintf(3) to prepare the name.

After some discussion the conclusion is to removed those functions,
which also simplifies the API.

Discussed with: pjd, rstone
Approved by: pjd (mentor)


# 4d6a976e 28-Feb-2015 Ryan Stone <rstone@FreeBSD.org>

Move libnv into the kernel and hook it into the kernel build

Differential Revision: https://reviews.freebsd.org/D1883
Reviewed by: jfv
MFC after: 1 month
Sponsored by: Sandvine Inc.


# a87e5162 28-Feb-2015 Ryan Stone <rstone@FreeBSD.org>

Add function to force an nvlist into the error state

Add an nvlist_set_error() function that can be used to force an
nvlist into the error state. This is useful both for writing
tests and for writing APIs that use nvlists internally.

Differential Revision: https://reviews.freebsd.org/D1878
Reviewed by: pjd, jfv
MFC After: 1 month
Sponsored by: Sandvine Inc.


# b4b88475 29-Jan-2015 Pawel Jakub Dawidek <pjd@FreeBSD.org>

Add missing nvlist_get_parent(3) link.

Submitted by: Mariusz Zaborski <oshogbo@FreeBSD.org>


# 55edfde1 27-Oct-2014 John-Mark Gurney <jmg@FreeBSD.org>

fix typo, properly install a link to nv for nvlist_freev...


# 1f771f46 07-Sep-2014 Enji Cooper <ngie@FreeBSD.org>

Include src.opts.mk after SHLIBDIR has been defined so libnv is installed to
/lib , not /usr/lib

MFC after: 3 days
Approved by: rpaulo (mentor)
Submitted by: antoine
Pointyhat to: me
Phabric: D739


# b236bcf1 05-Aug-2014 Enji Cooper <ngie@FreeBSD.org>

Integrate lib/libnv into the build/kyua

Rename all of the TAP test applications from <test> to <test>_test
to match the convention described in the TestSuite wiki page

Phabric: D538
Approved by: jmmv (mentor)
Sponsored by: EMC / Isilon Storage Division


# 36da5199 12-Nov-2013 Pawel Jakub Dawidek <pjd@FreeBSD.org>

Bring in libnv library for managing name/value pairs. The following types
are currently supported:

- NV_TYPE_NULL - only name, no data;
- NV_TYPE_BOOL - boolean (true or false);
- NV_TYPE_NUMBER - 64bit unsigned integer;
- NV_TYPE_STRING - C string;
- NV_TYPE_NVLIST - nested nvlist;
- NV_TYPE_DESCRIPTOR - file descriptor;
- NV_TYPE_BINARY - binary data.

For detailed documentation and examples see nv(3) manual page.

Sponsored by: The FreeBSD Foundation