Gentoo Archives: gentoo-commits

From: Ian Stakenvicius <axs@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/openh264/, media-libs/openh264/files/
Date: Wed, 17 Feb 2016 17:44:09
Message-Id: 1455731032.4d5c795719dd54884d02e1379b8a10eb6c830418.axs@gentoo
1 commit: 4d5c795719dd54884d02e1379b8a10eb6c830418
2 Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
3 AuthorDate: Wed Feb 17 17:43:12 2016 +0000
4 Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
5 CommitDate: Wed Feb 17 17:43:52 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d5c7957
7
8 media-libs/openh264: version bump
9
10 Release Notes: https://github.com/cisco/openh264/releases/tag/v1.5.0
11
12 Package-Manager: portage-2.2.26
13
14 media-libs/openh264/Manifest | 2 +
15 .../files/openh264-1.5.0-pkgconfig-pathfix.patch | 40 ++++++++++
16 media-libs/openh264/openh264-1.5.0.ebuild | 93 ++++++++++++++++++++++
17 3 files changed, 135 insertions(+)
18
19 diff --git a/media-libs/openh264/Manifest b/media-libs/openh264/Manifest
20 index 5096e9f..86032b8 100644
21 --- a/media-libs/openh264/Manifest
22 +++ b/media-libs/openh264/Manifest
23 @@ -1,2 +1,4 @@
24 DIST gmp-api-Firefox38.tar.gz 16209 SHA256 6b156afe850c0d6faf0492ca5feeff4358e50ddc5ce3022ddcc6905a5bd21c80 SHA512 9aecbc84b1ba2fcfcb10c56680d92a72dd55f7ef7b8a68a3950dbce65fb7eb2c5e6a211149889f618bef2468ba1f3f8c01dc63e86e0a30d9295b019b75657eb8 WHIRLPOOL c12eb175ddf11f0ece400cc34bf9d5e690494fd4630c12667eed3765b66a625a1f9a3b41e20fc5a0c0f614eafbd75b6ddd5bd2a827077cfaac507a3f41990c42
25 +DIST gmp-api-Firefox39.tar.gz 16363 SHA256 ecb461af06f4d8f1c16330e78e73775f5656767ced77ac2b5e4bb9413ca86ec4 SHA512 da6f05c5f0540be8d4f48d25b947b21214d34a6eed365ee5fa4a38c69f77325add4be902e0dcd9d06be43914a3518ded7e4f2289dab034a24325f0bff201692a WHIRLPOOL fd661b7798970570053789577744bb12ab6354e3bcb70f64e2ac5aa73367f4a958feb3fcef343ef025aa15d6201af40d6f80a0f565e23340e1001f2259e073ce
26 DIST openh264-1.4.0.tar.gz 37681189 SHA256 a1b9a7a7f1ee204793c613789a505f0971bc2b03b3dbd8f05d9c4a3f3b900a22 SHA512 8192494698cb5557331be56ecbe2b7b143e0ed95739a69a88bdb34a58f66710ef1cd9234f1e98c9b16432a41a3243634e6ca63c58119315f2f9360cb2959e42b WHIRLPOOL 0d9f1f728fbceef35a5e22a6fe4c9dd42fbf84d41fe14e938194438542af182d3994694ffcd68f58798f14c8096b49b0aecad23f58ec6bdbc02de43b8d783532
27 +DIST openh264-1.5.0.tar.gz 37851166 SHA256 98077bd5d113c183ce02b678733b0cada2cf36750370579534c4d70f0b6c27b5 SHA512 30599fed5e928af7dfec079d101a22885e52874c1d7db91ff289b989a9a20548b6bbd5d25e4e546efedd4e5aba97cbc42b1e847970b93116d86efc7af394aeaf WHIRLPOOL 038ad081e0702f198ddc519bdaef7d91254179f8f4febdb2b453ab20c40e47cd759a7b5c881065ac0523d78fc95564aa132e9a4f4b565951613aeb2a46ce74ef
28
29 diff --git a/media-libs/openh264/files/openh264-1.5.0-pkgconfig-pathfix.patch b/media-libs/openh264/files/openh264-1.5.0-pkgconfig-pathfix.patch
30 new file mode 100644
31 index 0000000..a39823a
32 --- /dev/null
33 +++ b/media-libs/openh264/files/openh264-1.5.0-pkgconfig-pathfix.patch
34 @@ -0,0 +1,40 @@
35 +--- a/Makefile 2015-10-19 21:49:05.000000000 -0400
36 ++++ b/Makefile 2016-02-17 12:16:06.102945631 -0500
37 +@@ -27,6 +27,7 @@
38 + DESTDIR=
39 + LIBDIR_NAME=lib
40 + SHAREDLIB_DIR=$(PREFIX)/lib
41 ++INCLUDES_DIR=$(PREFIX)/include
42 + PROJECT_NAME=openh264
43 + MODULE_NAME=gmpopenh264
44 + GMP_API_BRANCH=Firefox39
45 +@@ -244,14 +245,14 @@
46 + endif
47 +
48 + $(PROJECT_NAME).pc: $(PROJECT_NAME).pc.in
49 +- @sed -e 's;@prefix@;$(PREFIX);' -e 's;@VERSION@;$(VERSION);' -e 's;@LIBS@;;' -e 's;@LIBS_PRIVATE@;$(STATIC_LDFLAGS);' < $< > $@
50 ++ @sed -e 's;@prefix@;$(PREFIX);' -e 's;@sharedlibdir@;$(SHAREDLIB_DIR);' -e 's;@includesdir@;$(INCLUDES_DIR);' -e 's;@VERSION@;$(VERSION);' -e 's;@LIBS@;;' -e 's;@LIBS_PRIVATE@;$(STATIC_LDFLAGS);' < $< > $@
51 +
52 + $(PROJECT_NAME)-static.pc: $(PROJECT_NAME).pc.in
53 +- @sed -e 's;@prefix@;$(PREFIX);' -e 's;@VERSION@;$(VERSION);' -e 's;@LIBS@;$(STATIC_LDFLAGS);' -e 's;@LIBS_PRIVATE@;;' < $< > $@
54 ++ @sed -e 's;@prefix@;$(PREFIX);' -e 's;@sharedlibdir@;$(SHAREDLIB_DIR);' -e 's;@includesdir@;$(INCLUDES_DIR);' -e 's;@VERSION@;$(VERSION);' -e 's;@LIBS@;$(STATIC_LDFLAGS);' -e 's;@LIBS_PRIVATE@;;' < $< > $@
55 +
56 + install-headers:
57 +- mkdir -p $(DESTDIR)$(PREFIX)/include/wels
58 +- install -m 644 $(SRC_PATH)/codec/api/svc/codec*.h $(DESTDIR)$(PREFIX)/include/wels
59 ++ mkdir -p $(DESTDIR)/$(INCLUDES_DIR)/wels
60 ++ install -m 644 $(SRC_PATH)/codec/api/svc/codec*.h $(DESTDIR)/$(INCLUDES_DIR)/wels
61 +
62 + install-static-lib: $(LIBPREFIX)$(PROJECT_NAME).$(LIBSUFFIX) install-headers
63 + mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)
64 +--- a/openh264.pc.in 2015-10-19 21:49:05.000000000 -0400
65 ++++ b/openh264.pc.in 2016-02-17 12:17:03.792768147 -0500
66 +@@ -1,6 +1,6 @@
67 + prefix=@prefix@
68 +-libdir=${prefix}/lib
69 +-includedir=${prefix}/include
70 ++libdir=@sharedlibdir@
71 ++includedir=@includesdir@
72 +
73 + Name: OpenH264
74 + Description: OpenH264 is a codec library which supports H.264 encoding and decoding. It is suitable for use in real time applications such as WebRTC.
75
76 diff --git a/media-libs/openh264/openh264-1.5.0.ebuild b/media-libs/openh264/openh264-1.5.0.ebuild
77 new file mode 100644
78 index 0000000..3355074
79 --- /dev/null
80 +++ b/media-libs/openh264/openh264-1.5.0.ebuild
81 @@ -0,0 +1,93 @@
82 +# Copyright 1999-2016 Gentoo Foundation
83 +# Distributed under the terms of the GNU General Public License v2
84 +# $Id$
85 +
86 +EAPI=5
87 +
88 +inherit nsplugins multilib-minimal
89 +
90 +MOZVER=39
91 +DESCRIPTION="Cisco OpenH264 library and Gecko Media Plugin for Mozilla packages"
92 +HOMEPAGE="http://www.openh264.org/"
93 +SRC_URI="https://github.com/cisco/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
94 + https://github.com/mozilla/gmp-api/archive/Firefox${MOZVER}.tar.gz -> gmp-api-Firefox${MOZVER}.tar.gz"
95 +LICENSE="BSD"
96 +SLOT="0"
97 +KEYWORDS="~amd64 ~x86"
98 +IUSE="+plugin utils"
99 +
100 +RESTRICT="bindist"
101 +
102 +RDEPEND="!<www-client/firefox-${MOZVER}"
103 +DEPEND="dev-lang/nasm"
104 +
105 +DOCS=( LICENSE CONTRIBUTORS README.md )
106 +
107 +src_prepare() {
108 + epatch "${FILESDIR}"/${P}-pkgconfig-pathfix.patch
109 + multilib_copy_sources
110 +}
111 +
112 +multilib_src_configure() {
113 + ln -s "${WORKDIR}"/gmp-api-Firefox${MOZVER} gmp-api || die
114 +}
115 +
116 +emakecmd() {
117 + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
118 + emake V=Yes CFLAGS_M32="" CFLAGS_M64="" CFLAGS_OPT="" \
119 + PREFIX="${EPREFIX}/usr" \
120 + LIBDIR_NAME="$(get_libdir)" \
121 + SHAREDLIB_DIR="${EPREFIX}/usr/$(get_libdir)" \
122 + INCLUDES_DIR="${EPREFIX}/usr/include/${PN}" \
123 + $@
124 +}
125 +
126 +multilib_src_compile() {
127 + local mybits="ENABLE64BIT=No"
128 + case "${ABI}" in
129 + s390x|alpha|*64) mybits="ENABLE64BIT=Yes";;
130 + esac
131 +
132 + emakecmd ${mybits} ${tgt}
133 + use plugin && emakecmd ${mybits} plugin
134 +}
135 +
136 +multilib_src_install() {
137 + emakecmd DESTDIR="${D}" install-shared
138 +
139 + use utils && dobin h264{enc,dec}
140 +
141 + if use plugin; then
142 + local plugpath="usr/$(get_libdir)/${PLUGINS_DIR}/gmp-gmp${PN}/system-installed"
143 + insinto "/${plugpath}"
144 + doins libgmpopenh264.so* gmpopenh264.info
145 + echo "MOZ_GMP_PATH=\"${EROOT}${plugpath}\"" >"${T}"/98-moz-gmp-${PN}
146 + doenvd "${T}"/98-moz-gmp-${PN}
147 +
148 + cat <<PREFEOF >"${T}"/${P}.js
149 +pref("media.gmp-gmp${PN}.autoupdate", false);
150 +pref("media.gmp-gmp${PN}.version", "system-installed");
151 +PREFEOF
152 +
153 + insinto /usr/$(get_libdir)/firefox/defaults/pref
154 + doins "${T}"/${P}.js
155 +
156 + insinto /usr/$(get_libdir)/seamonkey/defaults/pref
157 + doins "${T}"/${P}.js
158 + fi
159 +}
160 +
161 +pkg_postinst() {
162 + if use plugin; then
163 + if [[ -z ${REPLACING_VERSIONS} ]]; then
164 + elog "Please restart your login session, in order for the session's environment"
165 + elog "to include the new MOZ_GMP_PATH variable."
166 + elog ""
167 + fi
168 + elog "This package attempts to override the Mozilla GMPInstaller auto-update process,"
169 + elog "however even if it is not successful in doing so the profile-installed plugin"
170 + elog "will not be used unless this package is removed. This package will take precedence"
171 + elog "over any gmp-gmpopenh264 that may be installed in a user's profile."
172 + elog ""
173 + fi
174 +}