blob: 08e2490c718fa7cc8979e337ae1ca2041d4e2550 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-libs/libgphoto2/libgphoto2-2.1.6-r1.ebuild,v 1.14 2007/01/06 14:55:34 zzam Exp $
inherit libtool eutils
DESCRIPTION="Library that implements support for numerous digital cameras"
HOMEPAGE="http://www.gphoto.org/"
SRC_URI="mirror://sourceforge/gphoto/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86"
IUSE="nls doc exif nousb jpeg"
# needs >usbutils-0.11-r2 to avoid /usr/lib/libusb*
# conflicts with dev-libs/libusb
RDEPEND="!nousb? (
>=dev-libs/libusb-0.1.8
>=sys-apps/usbutils-0.11-r2
)
exif? ( >=media-libs/libexif-0.5.9 )"
DEPEND="${RDEPEND}
dev-util/pkgconfig
doc? ( dev-util/gtk-doc
=app-text/docbook-sgml-dtd-4.2*
)"
# By default, drivers for all supported cards will be compiled.
# If you want to only compile for specific card(s), set CAMERAS
# environment to a comma-separated list (no spaces) of drivers that
# you want to build.
IUSE_CAMERAS="adc65 agfa-cl20 aox barbie canon casio digita dimera directory enigma13 fuji gsmart300 iclick jamcam jd11
kodak konica largan mars minolta mustek panasonic pccam300 pccam600 polaroid ptp2 ricoh samsung
sierra sipix smal sonydscf1 sonydscf55 soundvision spca50x sq905 stv0674 stv0680 sx330z toshiba"
RESTRICT="confcache"
pkg_setup() {
if [ -z "${CAMERAS}" ] ; then
ewarn "All camera drivers will be built since you did not specify"
ewarn "via the CAMERAS variable what camera you use."
ewarn "libgphoto2 supports: all ${IUSE_CAMERAS}"
fi
echo
if use jpeg && ! use exif ; then
ewarn "For 'exif' support, you need to set USE=exif"
fi
enewgroup plugdev || die "Error creating plugdev group"
}
src_unpack() {
unpack ${A}
cd ${S}
epatch ${FILESDIR}/${PN}-2.1.2-norpm.patch
epatch ${FILESDIR}/${P}-gtk-doc-digit-attribute.patch
# make default group 'plugdev', not camera
sed -e 's:=camera:=plugdev:' -i packaging/linux-hotplug/usbcam.group
}
src_compile() {
local cameras
local cam
for cam in ${CAMERAS} ; do
has ${cam} ${IUSE_CAMERAS} && cameras="${cameras},${cam}"
done
[ -z "${cameras}" ] \
&& cameras="all" \
|| cameras="${cameras:1}"
einfo $cameras
elibtoolize
local myconf
myconf="--with-rpmbuild=/bin/false"
myconf="--with-drivers=${cameras}"
use exif \
&& myconf="${myconf} --with-exif-prefix=/usr" \
|| myconf="${myconf} --without-exif"
myconf="${myconf} `use_enable nls`"
myconf="${myconf} `use_enable doc docs`"
econf ${myconf} || die "econf failed"
# or the documentation fails.
emake -j1 || die "make failed"
}
src_install() {
if use !nousb; then
make DESTDIR=${D} \
gphotodocdir=/usr/share/doc/${PF} \
HTML_DIR=/usr/share/doc/${PF}/sgml \
hotplugdocdir=/usr/share/doc/${PF}/linux-hotplug \
install || die "install failed"
else
make DESTDIR=${D} \
gphotodocdir=/usr/share/doc/${PF} \
HTML_DIR=/usr/share/doc/${PF}/sgml \
install || die "install failed"
fi
# manually move apidocs
if use doc; then
dodir /usr/share/doc/${PF}/api
mv ${D}/usr/share/doc/libgphoto2/html/api/* ${D}/usr/share/doc/${PF}/api/
mv ${D}/usr/share/doc/libgphoto2_port/html/api/* ${D}/usr/share/doc/${PF}/api/
fi
rm -rf ${D}/usr/share/doc/libgphoto2
rm -rf ${D}/usr/share/doc/libgphoto2_port
dodoc ChangeLog NEWS* README AUTHORS TESTERS MAINTAINERS HACKING CHANGES
# install hotplug support
if use !nousb; then
insinto /etc/hotplug/usb
newins ${S}/packaging/linux-hotplug/usbcam.group usbcam
chmod +x ${D}/etc/hotplug/usb/usbcam
fi
}
pkg_postinst() {
if use !nousb; then
einfo "Generating usbcam-gphoto2.usermap .."
HOTPLUG_USERMAP="/etc/hotplug/usb/usbcam-gphoto2.usermap"
if [ -x ${ROOT}/usr/$(get_libdir)/libgphoto2/print-usb-usermap ]; then
echo "# !!! DO NOT EDIT THIS FILE !!! This file is automatically generated." > ${ROOT}/${HOTPLUG_USERMAP}
echo "# Put your custom entries in /etc/hotplug/usb/usbcam.usermap" >> ${ROOT}/${HOTPLUG_USERMAP}
${ROOT}/usr/$(get_libdir)/libgphoto2/print-usb-usermap >> ${ROOT}/${HOTPLUG_USERMAP}
else
eerror "Unable to find ${ROOT}/usr/$(get_libdir)/libgphoto2/print-usb-usermap"
eerror "and therefore unable to generate hotplug usermap."
eerror "You will have to manually generate it by running:"
eerror " /usr/$(get_libdir)/libgphoto2/print-usb-usermap > ${HOTPLUG_USERMAP}"
fi
fi
elog "Don't forget to add yourself to the plugdev group "
elog "if you want to be able to access your camera."
}
|