# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit bash-completion-r1 toolchain-funcs DESCRIPTION="Unpacker for various archiving formats, e.g. rar v3" HOMEPAGE="https://unarchiver.c3.cx/" SRC_URI=" https://github.com/MacPaw/XADMaster/archive/v${PV}/XADMaster-${PV}.tar.gz https://github.com/MacPaw/universal-detector/archive/1.1/universal-detector-1.1.tar.gz" S="${WORKDIR}/XADMaster-${PV}" LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="amd64" RDEPEND=" app-arch/bzip2:= dev-libs/icu:= gnustep-base/gnustep-base:= media-sound/wavpack sys-libs/zlib" DEPEND=" ${RDEPEND} gnustep-base/gnustep-make[native-exceptions]" BDEPEND=" || ( sys-devel/gcc[objc] gnustep-base/gnustep-make[libobjc2] )" PATCHES=( "${FILESDIR}"/${P}-Wint-conversion.patch ) check_objc_toolchain() { if tc-is-gcc; then has_version 'sys-devel/gcc[-objc]' && die "GCC requires sys-devel/gcc with USE=objc" elif tc-is-clang; then has_version 'gnustep-base/gnustep-make[-libobjc2]' && die "Clang requires gnustep-base/gnustep-make with USE=libobjc2" else die "${PN} can only be build using GCC or Clang" fi } pkg_pretend() { [[ ${MERGE_TYPE} != binary ]] && check_objc_toolchain } pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && check_objc_toolchain } src_prepare() { default # avoid jobserver warning "make[1]: warning: jobserver unavailable: using -j1" sed -i -e 's:make:$(MAKE):g' Makefile.linux || die mv "${WORKDIR}/universal-detector-1.1" "${WORKDIR}/UniversalDetector" || die } src_compile() { emake -f Makefile.linux \ AR="$(tc-getAR)" \ CC="$(tc-getCC)" \ CXX="$(tc-getCXX)" \ OBJCC="$(tc-getCC)" \ CFLAGS="${CFLAGS}" \ CXXFLAGS="${CXXFLAGS}" \ OBJCFLAGS="${CFLAGS}" \ LD="$(tc-getCXX)" \ LDFLAGS="-Wl,--whole-archive -fexceptions -fgnu-runtime ${LDFLAGS}" } src_install() { dobin {ls,un}ar doman Extra/{ls,un}ar.1 dobashcomp Extra/{ls,un}ar.bash_completion }