From e5940ff991028cfdb04a615d43ee622e956899ce Mon Sep 17 00:00:00 2001 From: automorphism88 Date: Tue, 27 Mar 2018 10:35:21 -0700 Subject: sys-fs/cryfs: version bump to 0.9.9. Closes: https://github.com/gentoo/gentoo/pull/7659 --- sys-fs/cryfs/Manifest | 1 + sys-fs/cryfs/cryfs-0.9.9.ebuild | 92 +++++++++++++++++++++++++++++++++++++++++ sys-fs/cryfs/cryfs-9999.ebuild | 32 ++++++++++---- sys-fs/cryfs/metadata.xml | 1 + 4 files changed, 117 insertions(+), 9 deletions(-) create mode 100644 sys-fs/cryfs/cryfs-0.9.9.ebuild (limited to 'sys-fs') diff --git a/sys-fs/cryfs/Manifest b/sys-fs/cryfs/Manifest index 0dd4c3b50f04..3889148971d5 100644 --- a/sys-fs/cryfs/Manifest +++ b/sys-fs/cryfs/Manifest @@ -1,2 +1,3 @@ DIST cryfs-0.9.7-spdlog.patch.xz 28204 BLAKE2B 0905971713b2d709aa34bfd11333a0aaea21ba08bbed12eee20e668fae4c19b17fe25d2fecf17dfff67abadd896b5e3eda2344655e2fb32ea1f28961d850d158 SHA512 a09adf3d9ce47bd38bfc9e3b35f23df8ce971e6d115d7e6eaa907c7eab71e73d495bda9d1ab96e25b4a9a9d551fa07a71f37d17c9779679b3a95dfff1d311a86 DIST cryfs-0.9.7.tar.xz 970588 BLAKE2B b3d79ed44c2280ef34bafa5613f51918093686da9a4637987745bd9601817033049115754e235b9a9a0f2045401182bc9cb48291173df6571887e9dec3f73636 SHA512 962c7e5e7ea153ed41cb47094b71bc41457e26203b94cc5e349c4d21e86630e32113c0193a248eee8ead41bede1c712d4c006150f84a6e1c2a0a0a7c02a1911b +DIST cryfs-0.9.9.tar.xz 977928 BLAKE2B 927d5f61be99a6400cfd53de6291e14ae32f446d281485901e758341f138a2efdfb7385b6c205db6f865dc83f6fbd9ede8fd1bb5a7957fb242624d78d2523eaf SHA512 18f0ce954dc9958b52a77aac85d4d30d03409e4f88c27ec3e904a6014f5257e12fe47a4f3bb628f6ebf3b5aa8cb9d3a59e0aee76d83a3f6bdd4ef864b66898aa diff --git a/sys-fs/cryfs/cryfs-0.9.9.ebuild b/sys-fs/cryfs/cryfs-0.9.9.ebuild new file mode 100644 index 000000000000..3e5dfe1b37b8 --- /dev/null +++ b/sys-fs/cryfs/cryfs-0.9.9.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) + +inherit cmake-utils python-any-r1 flag-o-matic + +DESCRIPTION="Encrypted FUSE filesystem that conceals metadata" +HOMEPAGE="https://www.cryfs.org/" + +SLOT=0 +IUSE="custom-optimization libressl test update-check" + +LICENSE="LGPL-3 BSD-2 MIT" +# cryfs - LGPL-3 +# scrypt - BSD-2 +# spdlog - MIT + +if [[ "${PV}" == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/cryfs/cryfs" +else + SRC_URI="https://github.com/cryfs/cryfs/releases/download/${PV}/${P}.tar.xz" + KEYWORDS="~amd64 ~arm ~x86" + S="${WORKDIR}" +fi + +RDEPEND=">=dev-libs/boost-1.56:= + >=dev-libs/crypto++-5.6.3:= + net-misc/curl:= + >=sys-fs/fuse-2.8.6:= + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= )" +DEPEND="${RDEPEND} + ${PYTHON_DEPS}" + +src_prepare() { + cmake-utils_src_prepare + + # remove tests that require internet access to comply with Gentoo policy + sed -i -e '/CurlHttpClientTest.cpp/d' -e '/FakeHttpClientTest.cpp/d' test/cpp-utils/CMakeLists.txt || die + + # remove non-applicable warning + sed -i -e '/WARNING! This is a debug build. Performance might be slow./d' src/cryfs-cli/Cli.cpp || die +} + +src_configure() { + # upstream restricts installing files to Release configuration + # (CMAKE_BUILD_TYPE does not affect anything else) + local CMAKE_BUILD_TYPE + local -a mycmakeargs + CMAKE_BUILD_TYPE=Release + mycmakeargs=( + "-DBoost_USE_STATIC_LIBS=off" + "-DCRYFS_UPDATE_CHECKS=$(usex update-check)" + "-DBUILD_TESTING=$(usex test)" + ) + use custom-optimization || append-flags -O3 + + cmake-utils_src_configure +} + +src_test() { + local TMPDIR + TMPDIR="${T}" + addread /dev/fuse + addwrite /dev/fuse + local -a tests_failed + tests_failed=() + + for i in gitversion cpp-utils parallelaccessstore blockstore blobstore fspp cryfs cryfs-cli ; do + "${BUILD_DIR}"/test/${i}/${i}-test || tests_failed+=( "${i}" ) + done + + adddeny /dev/fuse + + if [[ -n ${tests_failed[@]} ]] ; then + eerror "The following tests failed:" + eerror "${tests_failed[@]}" + die "At least one test failed" + fi +} + +src_install() { + # work around upstream issue with cmake not creating install target + # in Makefile if we enable BUILD_TESTING + dobin "${BUILD_DIR}/src/cryfs-cli/cryfs" + gzip -cd "${BUILD_DIR}/doc/cryfs.1.gz" > "${T}/cryfs.1" || die + doman "${T}/cryfs.1" + einstalldocs +} diff --git a/sys-fs/cryfs/cryfs-9999.ebuild b/sys-fs/cryfs/cryfs-9999.ebuild index 3689ed8b7db5..3e5dfe1b37b8 100644 --- a/sys-fs/cryfs/cryfs-9999.ebuild +++ b/sys-fs/cryfs/cryfs-9999.ebuild @@ -1,16 +1,16 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) -inherit cmake-utils python-any-r1 +inherit cmake-utils python-any-r1 flag-o-matic DESCRIPTION="Encrypted FUSE filesystem that conceals metadata" HOMEPAGE="https://www.cryfs.org/" SLOT=0 -IUSE="libressl test update-check" +IUSE="custom-optimization libressl test update-check" LICENSE="LGPL-3 BSD-2 MIT" # cryfs - LGPL-3 @@ -22,7 +22,7 @@ if [[ "${PV}" == 9999 ]] ; then EGIT_REPO_URI="https://github.com/cryfs/cryfs" else SRC_URI="https://github.com/cryfs/cryfs/releases/download/${PV}/${P}.tar.xz" - KEYWORDS="~amd64 ~x86" + KEYWORDS="~amd64 ~arm ~x86" S="${WORKDIR}" fi @@ -48,21 +48,26 @@ src_prepare() { src_configure() { # upstream restricts installing files to Release configuration # (CMAKE_BUILD_TYPE does not affect anything else) - local CMAKE_BUILD_TYPE=Release - local mycmakeargs=( + local CMAKE_BUILD_TYPE + local -a mycmakeargs + CMAKE_BUILD_TYPE=Release + mycmakeargs=( "-DBoost_USE_STATIC_LIBS=off" "-DCRYFS_UPDATE_CHECKS=$(usex update-check)" "-DBUILD_TESTING=$(usex test)" ) + use custom-optimization || append-flags -O3 cmake-utils_src_configure } src_test() { - local TMPDIR="${T}" + local TMPDIR + TMPDIR="${T}" addread /dev/fuse addwrite /dev/fuse - local tests_failed=() + local -a tests_failed + tests_failed=() for i in gitversion cpp-utils parallelaccessstore blockstore blobstore fspp cryfs cryfs-cli ; do "${BUILD_DIR}"/test/${i}/${i}-test || tests_failed+=( "${i}" ) @@ -72,7 +77,16 @@ src_test() { if [[ -n ${tests_failed[@]} ]] ; then eerror "The following tests failed:" - eerror "$tests_failed[@]" + eerror "${tests_failed[@]}" die "At least one test failed" fi } + +src_install() { + # work around upstream issue with cmake not creating install target + # in Makefile if we enable BUILD_TESTING + dobin "${BUILD_DIR}/src/cryfs-cli/cryfs" + gzip -cd "${BUILD_DIR}/doc/cryfs.1.gz" > "${T}/cryfs.1" || die + doman "${T}/cryfs.1" + einstalldocs +} diff --git a/sys-fs/cryfs/metadata.xml b/sys-fs/cryfs/metadata.xml index 5f26c5a3bc9b..177b7e18c57f 100644 --- a/sys-fs/cryfs/metadata.xml +++ b/sys-fs/cryfs/metadata.xml @@ -8,6 +8,7 @@ proxy-maint@gentoo.org + Use user-defined compiler optimization level Enable automatic checking for updates and security vulnerabilities Encrypted FUSE filesystem that conceals metadata -- cgit v1.2.3-65-gdbad