nghttp2: rewrite recipe to be an idiomatic library recipe

This recipe for nghttp2 doesn't build any of the binaries, just the core
library, but is structured like a recipe that is primarily an application
that happens to ship libraries.

Remove the lib${BPN} package and put the library into PN (which will then
be debian-renamed).

Use the shorthand option to just build the library.

Add documentation enabling/disabling options so we don't install the
docs if not needed. Currently there are no extra dependencies as the
sphinx-generated manpages are pre-built in the tarballs, but this could
change.

(From OE-Core rev: 0fe1fb05cf6b36d70d43b3bd245a53ac36d389fa)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton 2025-08-21 12:02:42 +01:00 committed by Richard Purdie
parent 47b1a709ab
commit dae1dcaa8f

View File

@ -8,18 +8,9 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz"
SRC_URI[sha256sum] = "00ba1bdf0ba2c74b2a4fe6c8b1069dc9d82f82608af24442d430df97c6f9e631"
inherit cmake manpages python3native github-releases
PACKAGECONFIG[manpages] = ""
# examples are never installed, and don't need to be built in the
# first place
EXTRA_OECMAKE = "-DENABLE_EXAMPLES=OFF -DENABLE_APP=OFF -DENABLE_HPACK_TOOLS=OFF -DENABLE_PYTHON_BINDINGS=OFF"
PACKAGECONFIG[manpages] = "-DENABLE_DOC=ON,-DENABLE_DOC=OFF"
PACKAGES =+ "lib${BPN}"
RDEPENDS:${PN}:class-native = ""
ALLOW_EMPTY:${PN} = "1"
FILES:${PN} = ""
FILES:lib${BPN} = "${libdir}/*${SOLIBS}"
EXTRA_OECMAKE = "-DENABLE_LIB_ONLY=ON -DENABLE_PYTHON_BINDINGS=OFF"
BBCLASSEXTEND = "native nativesdk"