| # Copyright 1999-2021 Gentoo Authors |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| EAPI=7 |
| inherit toolchain-funcs flag-o-matic |
| |
| MY_P="${PN}${PV//.}" |
| DESCRIPTION="Info ZIP (encryption support)" |
| HOMEPAGE="http://www.info-zip.org/" |
| SRC_URI="mirror://sourceforge/infozip/${MY_P}.zip" |
| |
| LICENSE="Info-ZIP" |
| SLOT="0" |
| KEYWORDS="*" |
| IUSE="bzip2 crypt natspec unicode" |
| |
| DEPEND="${RDEPEND}" |
| RDEPEND="bzip2? ( app-arch/bzip2 ) |
| natspec? ( dev-libs/libnatspec )" |
| BDEPEND="app-arch/unzip" |
| |
| S="${WORKDIR}/${MY_P}" |
| |
| PATCHES=( |
| "${FILESDIR}/${P}"-no-crypt.patch #238398 |
| "${FILESDIR}/${P}"-pic.patch |
| "${FILESDIR}/${P}"-exec-stack.patch #122849 |
| "${FILESDIR}/${P}"-build.patch #200995 |
| "${FILESDIR}/${P}"-zipnote-freeze.patch #322047 |
| "${FILESDIR}/${P}"-format-security.patch #512414 |
| ) |
| |
| src_prepare() { |
| default |
| use natspec && eapply "${FILESDIR}/${PN}"-3.0-natspec.patch #275244 |
| } |
| |
| src_configure() { |
| append-cppflags \ |
| -DLARGE_FILE_SUPPORT \ |
| -DUIDGID_NOT_16BIT \ |
| -D$(usex bzip2 '' NO)BZIP2_SUPPORT \ |
| -D$(usex crypt '' NO)CRYPT \ |
| -D$(usex unicode '' NO)UNICODE_SUPPORT |
| # Third arg disables bzip2 logic as we handle it ourselves above. |
| sh ./unix/configure "$(tc-getCC)" "-I. -DUNIX ${CFLAGS} ${CPPFLAGS}" "${T}" || die |
| if use bzip2 ; then |
| sed -i -e "s:LFLAGS2=:&'-lbz2 ':" flags || die |
| fi |
| } |
| |
| src_compile() { |
| emake \ |
| CPP="$(tc-getCPP)" \ |
| -f unix/Makefile generic |
| } |
| |
| src_install() { |
| dobin zip zipnote zipsplit |
| doman man/zip{,note,split}.1 |
| if use crypt ; then |
| dobin zipcloak |
| doman man/zipcloak.1 |
| fi |
| dodoc BUGS CHANGES README* TODO WHATSNEW WHERE proginfo/*.txt |
| } |