mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 03:10:15 -04:00
sys-fs/dwarfs: Updated to 0.15.1
Dropped jemalloc support because of #969223 URGENT BUGFIX: mkdwarfs did not correctly handle inputs where hardlinks had the same inode number on different devices. To run into this issue, you would have to make mkdwarfs scan files from multiple devices (e.g. the root of a directory tree with multiple mounted filesystems) and have files with the same inode number on different devices and have at least two of those files also have a link count greater than 1. While this is hopefully rare in practice, it is a serious bug that can lead to crashes (in the best case) or even data loss (in the worst case), as only the data of one of these files would be stored in the image. This has been fixed and a test has been added to cover this case. Bug: https://bugs.gentoo.org/969223 Bug: https://bugs.gentoo.org/971461 Signed-off-by: Denis Reva <denis7774@gmail.com>
This commit is contained in:
BIN
sys-fs/dwarfs/.dwarfs-0.15.1.ebuild.kate-swp
Normal file
BIN
sys-fs/dwarfs/.dwarfs-0.15.1.ebuild.kate-swp
Normal file
Binary file not shown.
@@ -1,3 +1,4 @@
|
||||
DIST dwarfs-0.12.4.tar.xz 12271700 BLAKE2B 1aad8f84cd2b79445f952b9e2ce55ff534c77d48a9ae5f15c73359b368eca032d1a85d023595e6f99cb1c83a949405387eb5d8a4b2b8b1336798fa5ae6069905 SHA512 d20006d7df485b2884bc20a5ec521b79846a1b1f72791f7151691b90e38e8e2b3230f164b36bd68aed31cbdf428d316bbe5938394cc565c7d832060337773212
|
||||
DIST dwarfs-0.13.0.tar.xz 13117660 BLAKE2B 19cf0b68ffb016907cac88521ff5390f1ef637e978e4c9c5a32bf99fb9f7f9e4214b5b74c49dcd4b1fd1f3a7057b0bc9d1f821e871c4870cee0b41c186e5143e SHA512 9e30ce8667657c2bbda1912601b9061f5dd6360fb2ec06e39f95dd23bce7fc633d8c1088b5d6fcecddf756cca7670ebdebaf3a86b0b9a51a24a498d1ba71aad0
|
||||
DIST dwarfs-0.14.1.tar.xz 13410736 BLAKE2B 0aaba364533fbd992eb312492332a193171e3e4781820a0b2b574255a039a7da3ca365b7a929f2ce8511f84babf81ca30b93791fd6491f5b54b0cd49a17640ce SHA512 7ff1faf1536aeda1d54d68f627b810222303b8ed8b414d01e1a2b6d51693bc68e116d499a4d408a5cd49f241de1e642d7013bd1b1981ac20e388b3338b15870d
|
||||
DIST dwarfs-0.15.1.tar.xz 1327908 BLAKE2B 3924454f8eab168f1dfe1978e8ced3541c7eac091d55a13d331d4fd5fd1b18c09ccd28cc87fb59e1977dbde05a2b99e18f984744a2798178e3a9222267476e21 SHA512 32d095fb626d1beddd442eb8ce3192179cb7c4d5aa1edef6ac2ad7b339ee3aeef4c2b064cabee1778459b417de6dd5dd0c12b921b5dee6f0cc97b2f47b46390f
|
||||
|
||||
101
sys-fs/dwarfs/dwarfs-0.15.1.ebuild
Normal file
101
sys-fs/dwarfs/dwarfs-0.15.1.ebuild
Normal file
@@ -0,0 +1,101 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit check-reqs cmake flag-o-matic
|
||||
|
||||
DESCRIPTION="Fast high compression read-only filesystem for Linux, FreeBSD, macOS and Windows"
|
||||
HOMEPAGE="https://github.com/mhx/dwarfs"
|
||||
SRC_URI="https://github.com/mhx/dwarfs/releases/download/v${PV}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3 MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="+jemalloc test +tools +fuse +perfmon flac ricepp stacktrace"
|
||||
S="${WORKDIR}/dwarfs-${PV}"
|
||||
|
||||
RDEPEND="
|
||||
>=app-arch/libarchive-3.8.6
|
||||
>=app-arch/brotli-1.2.0
|
||||
>=app-arch/lz4-1.10.0
|
||||
>=app-arch/xz-utils-5.8.1
|
||||
>=app-arch/zstd-1.5.7
|
||||
>=dev-cpp/parallel-hashmap-2.0.0
|
||||
dev-libs/boost[context]
|
||||
>=dev-libs/libfmt-12.1.0:=
|
||||
dev-libs/utfcpp
|
||||
>=dev-libs/xxhash-0.8.3
|
||||
flac? ( >=media-libs/flac-1.5.0 )
|
||||
fuse? ( sys-fs/fuse:3 )
|
||||
sys-libs/binutils-libs
|
||||
stacktrace? ( >=dev-cpp/cpptrace-1.0.4 )
|
||||
virtual/zlib:=
|
||||
jemalloc? ( >=dev-libs/jemalloc-5.3.0 )
|
||||
test? ( >=dev-cpp/gtest-1.17.0 )
|
||||
>=dev-cpp/range-v3-0.12.0
|
||||
dev-libs/date
|
||||
>=dev-libs/openssl-3.0
|
||||
dev-cpp/nlohmann_json
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
FEATURES="
|
||||
stacktrace? ( nostrip )
|
||||
"
|
||||
|
||||
DOCS=( "README.md" "CHANGES.md" "TODO" )
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
CHECKREQS_DISK_BUILD="500M"
|
||||
CMAKE_WARN_UNUSED_CLI=0
|
||||
|
||||
src_configure(){
|
||||
use stacktrace && append-flags -g
|
||||
mycmakeargs=(
|
||||
-DUSE_JEMALLOC=$(usex jemalloc ON OFF)
|
||||
-DWITH_TESTS=$(usex test ON OFF)
|
||||
-DWITH_MAN_PAGES=ON
|
||||
-DWITH_MAN_OPTION=ON
|
||||
-DWITH_LIBDWARFS=ON
|
||||
-DWITH_TOOLS=$(usex tools ON OFF)
|
||||
-DWITH_FUSE_DRIVER=$(usex fuse ON OFF)
|
||||
-DENABLE_PERFMON=$(usex perfmon ON OFF)
|
||||
-DTRY_ENABLE_FLAC=$(usex flac ON OFF)
|
||||
-DENABLE_RICEPP=$(usex ricepp ON OFF)
|
||||
-DENABLE_STACKTRACE=$(usex stacktrace ON OFF)
|
||||
-DWITH_LEGACY_FUSE=OFF
|
||||
-DPREFER_SYSTEM_GTEST=ON
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test(){
|
||||
export DWARFS_SKIP_FUSE_TESTS=1
|
||||
local CMAKE_SKIP_TESTS=(
|
||||
# Perfmon is not working within sandbox
|
||||
dwarfsextract_test.perfmon
|
||||
)
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
|
||||
pkg_postinst(){
|
||||
elog "More information: ${HOMEPAGE}"
|
||||
if use tools ; then
|
||||
elog " creating images: mkdwarfs --man"
|
||||
elog " creating images: man mkdwarfs"
|
||||
elog " creating images: ${HOMEPAGE}/blob/main/doc/mkdwarfs.md"
|
||||
fi
|
||||
if use fuse ; then
|
||||
elog " mounting images: dwarfs --man"
|
||||
elog " mounting images: man dwarfs"
|
||||
elog " mounting images: ${HOMEPAGE}/blob/main/doc/dwarfs.md"
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user