commit:     cdad97b8e0077bde07d9a43f381d2546dab91eed
Author:     Denis Reva <denis7774 <AT> gmail <DOT> com>
AuthorDate: Tue Mar  9 03:24:36 2021 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Tue Mar  9 03:24:46 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=cdad97b8

sys-fs/dwarfs: new version 0.4.0

Key features:
* Up to twice as fast and up to 10% better compression
* New dwarfsextract tool
  Allow extracting dwarfs images as archives.
* Bugfixes.
  Fixed bug with revdep-rebuild.
  Package now proper use system libraries.

Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Denis Reva <denis7774 <AT> gmail.com>

 sys-fs/dwarfs/Manifest                      |  1 +
 sys-fs/dwarfs/dwarfs-0.4.0.ebuild           | 98 +++++++++++++++++++++++++++++
 sys-fs/dwarfs/files/dwarfs-0.4.0-link.patch | 20 ++++++
 3 files changed, 119 insertions(+)

diff --git a/sys-fs/dwarfs/Manifest b/sys-fs/dwarfs/Manifest
index 4a31b877..76f32318 100644
--- a/sys-fs/dwarfs/Manifest
+++ b/sys-fs/dwarfs/Manifest
@@ -1,4 +1,5 @@
 DIST dwarfs-0.2.4.tar.gz 131125 BLAKE2B 
06dd11a90d203882a6b2398d6a3e763a269746a57394444e67913bbb66176305e3d6d606a7f35b4c3692d1d761e90d853b268f876004be1e8274b5b16174dcde
 SHA512 
2136f1159eaf80afd6f5a1edda65c7a7f2cb147c7b14a5d19981fbd417e8785c2d7f986df3787587b4b5157bfd299159f4015a017d289bb0c9fba77b337ed3b5
 DIST dwarfs-0.3.1.tar.bz2 8704811 BLAKE2B 
f7f5a2affae5da78d526891017ac66ed16f73919c7b990b558413c028590e3e3efa2f7e8cc70d97cbad2a0332d91458444898611ea86343a5978bcdf2ed1bf3b
 SHA512 
5776f5da14a5ccbe0e1cf11acec1c9360aa23e2f6751f54a5df200d4625ffc1892658bd4d987ae15fb08ec1f97d7db2a8c42ed80bb6aae062a45e50513e09f51
+DIST dwarfs-0.4.0.tar.bz2 11634383 BLAKE2B 
a401e891f5453bd8cccbc664066f759c5ffa60568305b44d57fbcc239d6759ff2e6d5fb1450c7424be14e9eb7ab4f9996dce54a78de6e6e5d8b1cbe2d15dc4eb
 SHA512 
b815c4bdb1ac61798ead817f27d8fbfaf234d2698d9f72427b7cd55fd334214f595baf286c979fee344b34c7589d5859df8c6e8259473bf13d7461f1f63d90a6
 DIST fbthrift-2020.11.30.00.tar.gz 5274706 BLAKE2B 
ad13eb7b66f804c7a667746d72298e05726d1f78a49523a10f2712cc4dbea71999590a2c420e8081d32dc24a7d203e11d5c7e5c15f2627594295cd5533096dd9
 SHA512 
33b4c1a4cfc8783f99d5da8ae113f877e1f23586f5a854833107805fe35834604e677d7abe690cefeb70baed20cb3cc14449cfae35a9af89594974377bbe0329
 DIST folly-2020.11.30.00.tar.gz 3261437 BLAKE2B 
5070819f1f8bac2030e761a8d2330379e8e5ba242d21330b98dcd598cb18e12046a9ad3fb6462f82dbc47c53cf0905c330e707201bfbbedb81f203ef1b30731e
 SHA512 
e7e06bd8c8e38af345d20a04886b4497c4f0c9877263dbcb5a3f2d17c7a3252a2529086a5a04d07c2d3a457ca3930c43672fc4f74b7bdbc2ec0d07abdf1ed425

diff --git a/sys-fs/dwarfs/dwarfs-0.4.0.ebuild 
b/sys-fs/dwarfs/dwarfs-0.4.0.ebuild
new file mode 100644
index 00000000..2f42f924
--- /dev/null
+++ b/sys-fs/dwarfs/dwarfs-0.4.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit cmake check-reqs python-single-r1
+
+DESCRIPTION="A fast very high compression read-only FUSE file system"
+HOMEPAGE="https://github.com/mhx/dwarfs";
+
+SRC_URI="https://github.com/mhx/dwarfs/releases/download/v${PV}/dwarfs-${PV}.tar.bz2
 -> ${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="python +jemalloc"
+
+#test IUSE disabled because there is no googletest in portage tree at this 
moment
+#-DWITH_TESTS=$(usex test ON OFF)
+
+PYTHON_REQ_USE="python"
+
+DEPEND="sys-devel/flex
+               sys-devel/binutils:*"
+RDEPEND="dev-libs/boost[context,threads,python?]
+               dev-libs/double-conversion
+               dev-libs/libfmt
+               dev-libs/libevent
+               dev-libs/xxhash
+               jemalloc? ( >=dev-libs/jemalloc-5.2.1 )
+               app-arch/libarchive
+               app-arch/zstd
+               app-arch/lz4
+               app-arch/xz-utils
+               app-arch/snappy
+               dev-cpp/sparsehash
+               dev-cpp/gflags
+               dev-cpp/glog[gflags]
+               sys-fs/fuse:3
+               sys-libs/binutils-libs
+               sys-libs/zlib
+               sys-libs/libunwind
+               !dev-cpp/folly"
+BDEPEND="app-text/ronn
+               dev-util/cmake
+               sys-apps/sed
+               sys-devel/bison
+               virtual/pkgconfig"
+
+CHECKREQS_DISK_BUILD="1.2G"
+
+PATCHES=( ${FILESDIR}/dwarfs-0.4.0-link.patch )
+
+DOCS=( "README.md" "CHANGES.md" "TODO" )
+
+CMAKE_IN_SOURCE_BUILD=1
+CMAKE_WARN_UNUSED_CLI=0
+
+src_prepare(){
+       cmake_src_prepare
+       einfo "setting library path to $(get_libdir)"
+       sed "s/DESTINATION lib/DESTINATION $(get_libdir)/" -i CMakeLists.txt || 
die
+}
+
+src_configure(){
+       einfo "setting configuration flags to:"
+       mycmakeargs=(
+               -DUSE_JEMALLOC=$(usex jemalloc ON OFF)
+               -DWITH_PYTHON=$(usex python ON OFF)
+               -DPREFER_SYSTEM_ZSTD=1
+               -DPREFER_SYSTEM_XXHASH=1
+               -DWITH_LEGACY_FUSE=0
+       )
+       if use python; then mycmakeargs+=( 
-DWITH_PYTHON_VERSION=${EPYTHON#python} ); fi
+       einfo ${mycmakeargs}
+       cmake_src_configure
+}
+
+src_install(){
+       cmake_src_install
+       dolib.so libmetadata_thrift.so libthrift_light.so
+       dolib.so folly/libfolly.so.0.58.0-dev folly/libfolly.so
+}
+
+pkg_postinst(){
+       elog "Test shows that dwarfs compiled with Clang is substantially 
faster than GCC ones"
+       elog "See https://github.com/mhx/dwarfs/issues/14";
+       elog "So you may want to compile it independently with Clang by the"
+       elog "https://wiki.gentoo.org/wiki/Clang";
+       elog "And with the per-package settings:"
+       elog 
"https://wiki.gentoo.org/wiki/Handbook:AMD64/Portage/Advanced#Per-package_environment_variables";
+       elog "Also you may find more information in the"
+       elog "${HOMEPAGE}"
+       elog "About creating: ${HOMEPAGE}/blob/main/doc/mkdwarfs.md"
+       elog "About mounting: ${HOMEPAGE}/blob/main/doc/dwarfs.md"
+}

diff --git a/sys-fs/dwarfs/files/dwarfs-0.4.0-link.patch 
b/sys-fs/dwarfs/files/dwarfs-0.4.0-link.patch
new file mode 100644
index 00000000..93c4b4f2
--- /dev/null
+++ b/sys-fs/dwarfs/files/dwarfs-0.4.0-link.patch
@@ -0,0 +1,20 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 18fa5cd..36fc0b3 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -258,8 +258,6 @@ add_executable(dwarfsextract src/dwarfsextract.cpp)
+ 
+ list(APPEND BINARY_TARGETS mkdwarfs dwarfsck dwarfsbench dwarfsextract)
+ 
+-target_link_libraries(dwarfsextract PkgConfig::LIBARCHIVE)
+-
+ if(FUSE3_FOUND)
+   add_executable(dwarfs-bin src/dwarfs.cpp)
+   target_compile_definitions(dwarfs-bin PRIVATE _FILE_OFFSET_BITS=64
+@@ -482,6 +480,7 @@ target_link_libraries(
+   thrift_light
+   folly
+   ${Boost_LIBRARIES}
++  PkgConfig::LIBARCHIVE
+   PkgConfig::LIBLZ4
+   PkgConfig::LIBLZMA)

Reply via email to