blob: 419a6cf44754e4a7b99b327191cfe92f3c7bd2da [file] [log] [blame]
# Copyright 2019 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit autotools cros-sanitizers
DESCRIPTION="An implementation of Microsoft's Media Transfer Protocol (MTP)."
HOMEPAGE="http://libmtp.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="*"
IUSE="-asan +crypt doc examples static-libs"
RDEPEND="virtual/libusb:1
crypt? ( dev-libs/libgcrypt )"
DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-doc/doxygen )"
DOCS="AUTHORS ChangeLog README TODO"
PATCHES=(
"${FILESDIR}"/${P}-00_disable_playlist.patch
"${FILESDIR}"/${P}-01_build_fixes.patch
"${FILESDIR}"/${P}-03_enable_ptp_support.patch
"${FILESDIR}"/${P}-05_improve_warning_formatting.patch
"${FILESDIR}"/${P}-06_disable_ptp_canon_eos_setdevicepropvalue.patch
"${FILESDIR}"/${P}-09_do_not_build_udev_and_examples.patch
"${FILESDIR}"/${P}-10_remove_nexus_s_from_device_list.patch
"${FILESDIR}"/${P}-15_read_chunks.patch
"${FILESDIR}"/${P}-19_raw_read_directory.patch
"${FILESDIR}"/${P}-20_get_thumbnail_format.patch
"${FILESDIR}"/${P}-22_ptp_timezone.patch
)
src_prepare() {
epatch "${PATCHES[@]}"
}
src_configure() {
sanitizers-setup-env
local myeconfargs=(
$(use_enable static-libs static)
$(use_enable doc doxygen)
$(use_enable crypt mtpz)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -exec rm -f {} +
if use examples; then
docinto examples
dodoc examples/*.{c,h,sh}
fi
}