# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ inherit eutils java-pkg-2 linux-info flag-o-matic multilib DESCRIPTION="jUSB provides a Free Software Java API for USB" HOMEPAGE="http://jusb.sourceforge.net/" SRC_URI="mirror://sourceforge/${PN}/${P}-src.tgz" LICENSE="LGPL-2.1" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="doc source" DEPEND=">=virtual/jdk-1.4 source? ( app-arch/zip )" RDEPEND=">=virtual/jre-1.4" S=${WORKDIR} CONFIG_CHECK="~USB_DEVICEFS" ERROR_CONFIG_USB_DEVICEFS=" You need to turn on the USB device filesystem option under USB support in order to use jUSB " pkg_setup() { linux-info_pkg_setup java-pkg-2_pkg_setup } src_unpack() { unpack ${A} mkdir src tar -xzf src.tgz -C src # The struct usbdevfs_ctrltransfer is different # in latest 2.4 and 2.6 kernels. This patch is # to make jusb compile on 2.6 kernels ! kernel_is 2 4 && epatch ${FILESDIR}/${P}-native.patch epatch ${FILESDIR}/${P}-makefile.patch sed -i \ -e 's#-shared#-shared -Wl,-soname=libjusb.so#' \ -e 's#javac#javac $(JAVACFLAGS)#' \ "${S}/Makefile" || die "sed failed" } src_compile() { export OSTYPE="linux-gnu" # makefile patching isnt worth the trouble, only # one native source file append-flags -fPIC # bug #279088 emake -j1 || die "Failed to compile" use doc && make javadoc } src_install() { java-pkg_dojar jusb.jar java-pkg_sointo /usr/$(get_libdir) java-pkg_doso libjusb.so dodoc README* if use doc; then java-pkg_dohtml doc/*.html java-pkg_dohtml -r apidoc/* fi use source && java-pkg_dosrc src/* }