diff --git a/dev-cpp/jwt-cpp/Manifest b/dev-cpp/jwt-cpp/Manifest new file mode 100644 index 0000000000..056eade7e2 --- /dev/null +++ b/dev-cpp/jwt-cpp/Manifest @@ -0,0 +1 @@ +DIST jwt-cpp-0.6.0.tar.gz 275126 BLAKE2B 4bf9bed9b2aa9584b497b2ab4d1d2582d9b5e4ded402200ea3f70b0e6752338fd4e2ef9c5836c728a6907a0190209c7baeaecd26032ce64dc6bf12a23594f27b SHA512 b6d5ebb3a7eeb6fef9a1d41c707251d1ab05bf47920c280d5203f1b9ee5bf6f8e914cd2ffaed66550cfa6d78c34465d4cf86517a759d5f8739b429faf1c2c0ef diff --git a/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild b/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild new file mode 100644 index 0000000000..5d54b8c45a --- /dev/null +++ b/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/Thalhammer/jwt-cpp.git" + KEYWORDS="" +else + SRC_URI="https://github.com/Thalhammer/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi + +DESCRIPTION="header only library for creating and validating JSON Web Tokens in C++11" +HOMEPAGE="https://thalhammer.github.io/jwt-cpp/" + +LICENSE="MIT" +SLOT="0" +IUSE="doc +picojson test" + +DEPEND="${RDEPEND} + dev-cpp/nlohmann_json + picojson? ( dev-cpp/picojson ) + doc? ( app-doc/doxygen[dot] )" +RESTRICT="!picojson? ( test )" + +src_prepare() { + # Unbundle dev-cpp/nlohmann_json. + rm -vrf include/nhlomann || die + # Unbundle dev-cpp/picojson and fix include paths. + # See also: https://github.com/Thalhammer/jwt-cpp/issues/213 + rm -vrf include/picojson || die + find -name '*.h' -type f -print0 | xargs -0 sed -r -e "s:picojson/picojson\.h:picojson.h:g" -i || die + # Prevent installation of bundled dev-cpp/picojson. + sed -i -e 's:^\s*install.*picojson/picojson\.h.*$::' CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DJWT_DISABLE_PICOJSON="$(usex picojson OFF ON)" + # Not useful for now, asks for non-existend CMake module. + #-DJWT_EXTERNAL_PICOJSON="$(usex picojson)" + # Examples are not installed and for development only. + -DJWT_BUILD_EXAMPLES=NO + -DJWT_BUILD_TESTS="$(usex test)" + -DJWT_CMAKE_FILES_INSTALL_DIR="${EPREFIX}"/usr/share/cmake + ) + cmake_src_configure +} + +src_test() { + "${BUILD_DIR}"/tests/jwt-cpp-test || die +} diff --git a/dev-cpp/jwt-cpp/metadata.xml b/dev-cpp/jwt-cpp/metadata.xml new file mode 100644 index 0000000000..71a6e5e732 --- /dev/null +++ b/dev-cpp/jwt-cpp/metadata.xml @@ -0,0 +1,15 @@ + + + + + o.freyermuth@googlemail.com + Oliver Freyermuth + + + https://github.com/Thalhammer/jwt-cpp/issues + Thalhammer/jwt-cpp + + + Enable use of dev-cpp/picojson + +