1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
5 inherit flag-o-matic toolchain-funcs
7 DESCRIPTION="tools to create and extract Squashfs filesystems"
8 HOMEPAGE="http://squashfs.sourceforge.net"
10 mirror://sourceforge/squashfs/squashfs${PV/_p*}.tar.gz
11 mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV/_p*}-${PV/*_p}.debian.tar.xz
16 KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 s390 sparc x86"
17 IUSE="debug lz4 lzma lzo static xattr +xz"
20 sys-libs/zlib[static-libs(+)]
21 !xz? ( !lzo? ( sys-libs/zlib[static-libs(+)] ) )
22 lz4? ( app-arch/lz4[static-libs(+)] )
23 lzma? ( app-arch/xz-utils[static-libs(+)] )
24 lzo? ( dev-libs/lzo[static-libs(+)] )
25 xattr? ( sys-apps/attr[static-libs(+)] )
26 xz? ( app-arch/xz-utils[static-libs(+)] )
29 !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
33 static? ( ${LIB_DEPEND} )
36 "${FILESDIR}"/${P/_p*}-sysmacros.patch
37 "${FILESDIR}"/${P/_p*}-aligned-data.patch
38 "${FILESDIR}"/${P/_p*}-local-cve-fix.patch
39 "${FILESDIR}"/${P/_p*}-mem-overflow.patch
40 "${FILESDIR}"/${P/_p*}-extmatch.patch
41 "${FILESDIR}"/${P/_p*}-musl.patch
44 S="${WORKDIR}/squashfs${PV/_p*}/${PN}"
47 eapply -p2 "${WORKDIR}"/debian/patches/*.patch
48 eapply -p2 ${PATCHES[@]}
52 use10() { usex $1 1 0 ; }
55 # restore GNU89 inline semantics to
56 # emit function symbols, bug 595290
57 append-cflags -std=gnu89
59 # set up make command line variables in EMAKE_SQUASHFS_CONF
61 LZMA_XZ_SUPPORT=$(use10 lzma)
62 LZO_SUPPORT=$(use10 lzo)
63 LZ4_SUPPORT=$(use10 lz4)
64 XATTR_SUPPORT=$(use10 xattr)
65 XZ_SUPPORT=$(use10 xz)
69 use debug && append-cppflags -DSQUASHFS_TRACE
70 use static && append-ldflags -static
74 emake "${EMAKE_SQUASHFS_CONF[@]}"
78 dobin mksquashfs unsquashfs
80 dodoc CHANGES PERFORMANCE.README pseudo-file.example README* OLD-READMEs/*
81 doman "${WORKDIR}"/debian/manpages/*.[0-9]