blob: e2a137fd54dbc5f8f2b04d157a484377f64db5f5 [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="https://sourceforge.net/projects/libmtp/files/libmtp/1.1.16/libmtp-1.1.16.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
}