1 |
commit: b36ec58d90c77c8eb616da08b99a169537240b81 |
2 |
Author: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Aug 27 16:30:04 2017 +0000 |
4 |
Commit: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Aug 27 17:56:48 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b36ec58d |
7 |
|
8 |
media-libs/libgphoto2: security version bump 2.5.12 → 2.5.14, bug #623636 |
9 |
|
10 |
Also fix multiple warnings shown on multilib setup, bug #560432. |
11 |
|
12 |
Package-Manager: Portage-2.3.8, Repoman-2.3.3 |
13 |
|
14 |
media-libs/libgphoto2/Manifest | 1 + |
15 |
media-libs/libgphoto2/libgphoto2-2.5.14.ebuild | 211 +++++++++++++++++++++++++ |
16 |
2 files changed, 212 insertions(+) |
17 |
|
18 |
diff --git a/media-libs/libgphoto2/Manifest b/media-libs/libgphoto2/Manifest |
19 |
index c6376496035..260e4c349ac 100644 |
20 |
--- a/media-libs/libgphoto2/Manifest |
21 |
+++ b/media-libs/libgphoto2/Manifest |
22 |
@@ -1,2 +1,3 @@ |
23 |
DIST libgphoto2-2.5.10.tar.bz2 6992591 SHA256 8d8668d432ba595c7466442aec2cf553bdf8782ec171291dbc65717c633a4ef2 SHA512 13f593e09e8428bf72fc783b4ddfd5fc418fcf42ebe17d05b44255458dbac956293fb189c48b609fba5586f39771d148a3541fa484ac51fd68c921f2f05ca18a WHIRLPOOL 9a1a87450cda0321ebc20d3a95d50ae1ab5a6f2a6083346cba15b9d5d4276e6ce1a84a6198f70d3cfa42cfacd3fe004a41dd7dd866047094ae6e9e54520883ef |
24 |
DIST libgphoto2-2.5.12.tar.bz2 6974928 SHA256 b9bb28990fde45ac385e4851a07dbad2e1250404b535b0a3a3b898bb431e4e2e SHA512 aa47e9be64579e0691f58b775ca4d80f3ed65763e6d832cba9fd28603ba2dce4c9b5b3291f38dad399b69393d325896f67f2bde622062ca38b9b138f48f12336 WHIRLPOOL b690d5b55a7dc11cdd04e694e4ec4a44c0b3801c3e778610c32b414fd7e6e89f1ef49ac1c9b5f36a57d35afbb94c08e4e4f8cb9663c4106658eaaeaea1ddf5bd |
25 |
+DIST libgphoto2-2.5.14.tar.bz2 6992238 SHA256 d3ce70686fb87d6791b9adcbb6e5693bfbe1cfef9661c23c75eb8a699ec4e274 SHA512 6dd75700e2b2afdf87f7eab4c62fbbe2c42f9154d644edfae25e3d5fbe5ed0894be832cc1367933fc6c113a1cc379d1956fecf108d6ee240935b9d7e2f614688 WHIRLPOOL 45a8cb9380f96da0fb680be95db3c028c07d7cc5f66126609f7a6539a5b5fd7e4edb45d00c43cb9c491e026311cd6161666280eb93ea784538c90297fbc1cc9c |
26 |
|
27 |
diff --git a/media-libs/libgphoto2/libgphoto2-2.5.14.ebuild b/media-libs/libgphoto2/libgphoto2-2.5.14.ebuild |
28 |
new file mode 100644 |
29 |
index 00000000000..39c24bb06ed |
30 |
--- /dev/null |
31 |
+++ b/media-libs/libgphoto2/libgphoto2-2.5.14.ebuild |
32 |
@@ -0,0 +1,211 @@ |
33 |
+# Copyright 1999-2017 Gentoo Foundation |
34 |
+# Distributed under the terms of the GNU General Public License v2 |
35 |
+ |
36 |
+# TODO |
37 |
+# 1. Track upstream bug --disable-docs does not work. |
38 |
+# https://sourceforge.net/tracker/index.php?func=detail&aid=1643870&group_id=8874&atid=108874 |
39 |
+ |
40 |
+EAPI=6 |
41 |
+inherit eutils multilib multilib-minimal udev user |
42 |
+ |
43 |
+DESCRIPTION="Library that implements support for numerous digital cameras" |
44 |
+HOMEPAGE="http://www.gphoto.org/" |
45 |
+SRC_URI="mirror://sourceforge/gphoto/${P}.tar.bz2" |
46 |
+ |
47 |
+LICENSE="GPL-2" |
48 |
+ |
49 |
+# FIXME: should we also bump for libgphoto2_port.so soname version? |
50 |
+SLOT="0/6" # libgphoto2.so soname version |
51 |
+ |
52 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" |
53 |
+IUSE="doc examples exif gd jpeg nls serial" |
54 |
+ |
55 |
+# By default, drivers for all supported cameras will be compiled. |
56 |
+# If you want to only compile for specific camera(s), set CAMERAS |
57 |
+# environment to a space-separated list (no commas) of drivers that |
58 |
+# you want to build. |
59 |
+IUSE_CAMERAS=" |
60 |
+ adc65 agfa_cl20 aox ax203 |
61 |
+ barbie |
62 |
+ canon casio_qv clicksmart310 |
63 |
+ digigr8 digita dimagev dimera3500 directory |
64 |
+ enigma13 |
65 |
+ fuji |
66 |
+ gsmart300 |
67 |
+ hp215 |
68 |
+ iclick |
69 |
+ jamcam jd11 jl2005a jl2005c |
70 |
+ kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica konica_qm150 |
71 |
+ largan lg_gsm |
72 |
+ mars mustek |
73 |
+ panasonic_coolshot panasonic_l859 panasonic_dc1000 panasonic_dc1580 pccam300 pccam600 pentax polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ptp2 |
74 |
+ ricoh ricoh_g3 |
75 |
+ samsung sierra sipix_blink2 sipix_web2 smal sonix sony_dscf1 sony_dscf55 soundvision spca50x sq905 st2205 stv0674 stv0680 sx330z |
76 |
+ toshiba_pdrm11 topfield tp6801 |
77 |
+" |
78 |
+ |
79 |
+for camera in ${IUSE_CAMERAS}; do |
80 |
+ IUSE="${IUSE} +cameras_${camera}" |
81 |
+done |
82 |
+ |
83 |
+# libgphoto2 actually links to libltdl |
84 |
+RDEPEND=" |
85 |
+ >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}] |
86 |
+ dev-libs/libltdl:0[${MULTILIB_USEDEP}] |
87 |
+ >=virtual/libusb-1-r1:1[${MULTILIB_USEDEP}] |
88 |
+ cameras_ax203? ( >=media-libs/gd-2.0.35-r4:=[${MULTILIB_USEDEP}] ) |
89 |
+ cameras_st2205? ( >=media-libs/gd-2.0.35-r4:=[${MULTILIB_USEDEP}] ) |
90 |
+ exif? ( >=media-libs/libexif-0.6.21-r1:=[${MULTILIB_USEDEP}] ) |
91 |
+ gd? ( >=media-libs/gd-2.0.35-r4:=[jpeg=,${MULTILIB_USEDEP}] ) |
92 |
+ jpeg? ( >=virtual/jpeg-0-r2:0[${MULTILIB_USEDEP}] ) |
93 |
+ serial? ( >=dev-libs/lockdev-1.0.3.1.2-r2[${MULTILIB_USEDEP}] ) |
94 |
+ !<sys-fs/udev-201 |
95 |
+" |
96 |
+DEPEND="${RDEPEND} |
97 |
+ dev-util/gtk-doc-am |
98 |
+ sys-devel/flex |
99 |
+ >=sys-devel/gettext-0.14.1 |
100 |
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] |
101 |
+ doc? ( app-doc/doxygen ) |
102 |
+" |
103 |
+ |
104 |
+MULTILIB_CHOST_TOOLS=( |
105 |
+ /usr/bin/gphoto2-port-config |
106 |
+ /usr/bin/gphoto2-config |
107 |
+) |
108 |
+ |
109 |
+pkg_pretend() { |
110 |
+ if ! echo "${USE}" | grep "cameras_" > /dev/null 2>&1; then |
111 |
+ einfo "No camera drivers will be built since you did not specify any." |
112 |
+ fi |
113 |
+} |
114 |
+ |
115 |
+pkg_setup() { |
116 |
+ enewgroup plugdev |
117 |
+} |
118 |
+ |
119 |
+src_prepare() { |
120 |
+ default |
121 |
+ |
122 |
+ # Handle examples ourselves |
123 |
+ sed 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' -i Makefile.am Makefile.in \ |
124 |
+ || die "examples sed failed" |
125 |
+ |
126 |
+ sed -e 's/sleep 2//' -i configure || die |
127 |
+} |
128 |
+ |
129 |
+multilib_src_configure() { |
130 |
+ local myconf |
131 |
+ use doc || myconf=( ac_cv_path_DOXYGEN=false ) |
132 |
+ |
133 |
+ # Upstream doesn't default to --enable-option-checking due having another |
134 |
+ # configure in libgphoto2_port/ that also needs to be checked on every bump |
135 |
+ # |
136 |
+ # Serial port uses either lockdev or ttylock, but we don't have ttylock |
137 |
+ # --with-doc-dir needed to prevent duplicate docs installation, bug #586842 |
138 |
+ ECONF_SOURCE=${S} \ |
139 |
+ econf \ |
140 |
+ --with-doc-dir="${EPREFIX}"/usr/share/doc/${PF} \ |
141 |
+ --disable-docs \ |
142 |
+ --disable-gp2ddb \ |
143 |
+ $(use_enable nls) \ |
144 |
+ $(use_with exif libexif auto) \ |
145 |
+ $(use_with gd) \ |
146 |
+ $(use_with jpeg) \ |
147 |
+ $(use_enable serial) \ |
148 |
+ $(use_enable serial lockdev) \ |
149 |
+ --with-libusb=no \ |
150 |
+ --with-libusb-1.0=auto \ |
151 |
+ --disable-ttylock \ |
152 |
+ --with-camlibs=${cameras} \ |
153 |
+ --with-hotplug-doc-dir="${EPREFIX}"/usr/share/doc/${PF}/hotplug \ |
154 |
+ --with-rpmbuild=$(type -P true) \ |
155 |
+ udevscriptdir="$(get_udevdir)" \ |
156 |
+ "${myconf[@]}" |
157 |
+} |
158 |
+ |
159 |
+src_configure() { |
160 |
+ local cameras |
161 |
+ local cam |
162 |
+ local cam_warn=no |
163 |
+ for cam in ${IUSE_CAMERAS} ; do |
164 |
+ if use "cameras_${cam}"; then |
165 |
+ cameras="${cameras},${cam}" |
166 |
+ else |
167 |
+ cam_warn=yes |
168 |
+ fi |
169 |
+ done |
170 |
+ |
171 |
+ if [ "${cam_warn}" = "yes" ]; then |
172 |
+ [ -z "${cameras}" ] || cameras="${cameras:1}" |
173 |
+ einfo "Enabled camera drivers: ${cameras:-none}" |
174 |
+ einfo "Upstream will not support you if you do not compile all camera drivers first" |
175 |
+ else |
176 |
+ cameras="all" |
177 |
+ einfo "Enabled camera drivers: all" |
178 |
+ fi |
179 |
+ |
180 |
+ multilib-minimal_src_configure |
181 |
+} |
182 |
+ |
183 |
+multilib_src_compile() { |
184 |
+ default |
185 |
+ |
186 |
+ if multilib_is_native_abi && use doc; then |
187 |
+ doxygen doc/Doxyfile || die "Documentation generation failed" |
188 |
+ fi |
189 |
+} |
190 |
+ |
191 |
+multilib_src_install_all() { |
192 |
+ prune_libtool_files --modules |
193 |
+ |
194 |
+ einstalldocs |
195 |
+ dodoc TESTERS MAINTAINERS HACKING |
196 |
+ |
197 |
+ if use examples; then |
198 |
+ insinto /usr/share/doc/${PF}/examples |
199 |
+ doins examples/README examples/*.c examples/*.h |
200 |
+ fi |
201 |
+ |
202 |
+ # FIXME: fixup autoconf bug #???? |
203 |
+ if ! use doc && [ -d "${ED}/usr/share/doc/${PF}/apidocs.html" ]; then |
204 |
+ rm -fr "${ED}/usr/share/doc/${PF}/apidocs.html" |
205 |
+ fi |
206 |
+ # end fixup |
207 |
+ |
208 |
+ local udev_rules cam_list |
209 |
+ udev_rules="$(get_udevdir)/rules.d/70-libgphoto2.rules" |
210 |
+ cam_list="/usr/$(get_libdir)/libgphoto2/print-camera-list" |
211 |
+ |
212 |
+ if [ -x "${ED}"${cam_list} ]; then |
213 |
+ # Let print-camera-list find libgphoto2.so |
214 |
+ export LD_LIBRARY_PATH="${ED}/usr/$(get_libdir)" |
215 |
+ # Let libgphoto2 find its camera-modules |
216 |
+ export CAMLIBS="${ED}/usr/$(get_libdir)/libgphoto2/${PV}" |
217 |
+ |
218 |
+ einfo "Generating UDEV-rules ..." |
219 |
+ mkdir -p "${ED}"/${udev_rules%/*} |
220 |
+ echo -e "# do not edit this file, it will be overwritten on update\n#" \ |
221 |
+ > "${ED}"/${udev_rules} |
222 |
+ "${ED}"${cam_list} udev-rules version 201 group plugdev >> "${ED}"/${udev_rules} \ |
223 |
+ || die "failed to create udev-rules" |
224 |
+ else |
225 |
+ eerror "Unable to find print-camera-list" |
226 |
+ eerror "and therefore unable to generate hotplug usermap." |
227 |
+ eerror "You will have to manually generate it by running:" |
228 |
+ eerror " ${cam_list} udev-rules version 201 group plugdev > ${udev_rules}" |
229 |
+ fi |
230 |
+ |
231 |
+} |
232 |
+ |
233 |
+pkg_postinst() { |
234 |
+ if ! has_version "sys-auth/consolekit[acl]" && ! has_version "sys-apps/systemd[acl]" && ! has_version "sys-auth/elogind[acl]" ; then |
235 |
+ elog "Don't forget to add yourself to the plugdev group " |
236 |
+ elog "if you want to be able to access your camera." |
237 |
+ fi |
238 |
+ |
239 |
+ local old_udev_rules="${EROOT}"etc/udev/rules.d/99-libgphoto2.rules |
240 |
+ if [[ -f ${old_udev_rules} ]]; then |
241 |
+ rm -f "${old_udev_rules}" |
242 |
+ fi |
243 |
+} |