Gentoo Archives: gentoo-commits

From: Daniel Pielmeier <billie@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/projectx/
Date: Sat, 17 Apr 2021 17:47:36
Message-Id: 1618681632.d1d19f945b50ad3d430c1929594eb8f38f8727b1.billie@gentoo
1 commit: d1d19f945b50ad3d430c1929594eb8f38f8727b1
2 Author: Daniel Pielmeier <billie <AT> gentoo <DOT> org>
3 AuthorDate: Sat Apr 17 17:47:12 2021 +0000
4 Commit: Daniel Pielmeier <billie <AT> gentoo <DOT> org>
5 CommitDate: Sat Apr 17 17:47:12 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1d19f94
7
8 media-video/projectx: Bump java virtuals to 1.8.
9
10 Package-Manager: Portage-3.0.17, Repoman-3.0.2
11 Signed-off-by: Daniel Pielmeier <billie <AT> gentoo.org>
12
13 media-video/projectx/projectx-0.91.0.10-r3.ebuild | 134 ++++++++++++++++++++++
14 1 file changed, 134 insertions(+)
15
16 diff --git a/media-video/projectx/projectx-0.91.0.10-r3.ebuild b/media-video/projectx/projectx-0.91.0.10-r3.ebuild
17 new file mode 100644
18 index 00000000000..2663408f4e0
19 --- /dev/null
20 +++ b/media-video/projectx/projectx-0.91.0.10-r3.ebuild
21 @@ -0,0 +1,134 @@
22 +# Copyright 1999-2021 Gentoo Authors
23 +# Distributed under the terms of the GNU General Public License v2
24 +
25 +EAPI=7
26 +
27 +JAVA_PKG_IUSE="doc source"
28 +
29 +inherit desktop eutils java-pkg-2 java-ant-2 toolchain-funcs xdg
30 +
31 +XDG_P="xdg-20100731"
32 +
33 +DESCRIPTION="Converts, splits and demuxes DVB and other MPEG recordings"
34 +HOMEPAGE="http://project-x.sourceforge.net/"
35 +SRC_URI="https://dev.gentoo.org/~billie/distfiles/${P}.tar.xz
36 + https://dev.gentoo.org/~billie/distfiles/${PN}-idctfast.tar.xz
37 + https://dev.gentoo.org/~billie/distfiles/${XDG_P}.java.xz
38 + https://dev.gentoo.org/~billie/distfiles/${PN}-icon.png"
39 +
40 +LICENSE="GPL-2"
41 +SLOT="0"
42 +KEYWORDS="~amd64 ~ppc64 ~x86"
43 +IUSE="X cpu_flags_x86_mmx cpu_flags_x86_sse"
44 +
45 +COMMON_DEPEND="
46 + dev-java/commons-net:0
47 + X? ( dev-java/browserlauncher2:1.0 )
48 +"
49 +RDEPEND="
50 + ${COMMON_DEPEND}
51 + >=virtual/jre-1.8:*
52 +"
53 +DEPEND="
54 + ${COMMON_DEPEND}
55 + >=virtual/jdk-1.8:*
56 + app-arch/xz-utils
57 + virtual/libiconv
58 +"
59 +
60 +S="${WORKDIR}/Project-X"
61 +
62 +mainclass() {
63 + # read Main-Class from MANIFEST.MF
64 + sed -n "s/^Main-Class: \([^ ]\+\).*/\1/p" "${S}/MANIFEST.MF" || die
65 +}
66 +
67 +src_prepare() {
68 + default
69 +
70 + xdg_environment_reset
71 +
72 + local X
73 +
74 + # apply stdout corruption patch (zzam@g.o)
75 + eapply "${FILESDIR}/${PN}-0.91.0.10-stdout-corrupt.patch"
76 +
77 + # apply BrowserLauncher2 patch
78 + use X && eapply "${FILESDIR}/${PN}-0.91.0.10-bl2.patch"
79 + rm -rf src/edu || die
80 +
81 + # apply IDCTFast patch
82 + eapply "${FILESDIR}/${PN}-0.91.0.10-idctfast.patch"
83 +
84 + # apply XDG patch
85 + cp -f "${WORKDIR}/${XDG_P}.java" "${S}/src/xdg.java" || die
86 + eapply "${FILESDIR}/${PN}-0.91.0.10-xdg.patch"
87 +
88 + # copy build.xml
89 + cp -f "${FILESDIR}/build-0.91.0.10.xml" build.xml || die
90 +
91 + # patch executable and icon
92 + sed -i -e "s:^\(Exec=\).*:\1${PN}_gui:g" \
93 + -e "s:^\(Icon=\).*:\1${PN}:g" *.desktop || die
94 +
95 + # convert CRLF to LF
96 + edos2unix *.txt MANIFEST.MF
97 +
98 + # convert docs to utf-8
99 + if [ -x "$(type -p iconv)" ]; then
100 + for X in zutun.txt; do
101 + iconv -f LATIN1 -t UTF8 -o "${X}~" "${X}" && mv -f "${X}~" "${X}" || die
102 + done
103 + fi
104 +
105 + # merge/remove resources depending on USE="X"
106 + if use X; then
107 + mv -f htmls resources/ || die
108 + else
109 + rm -rf src/net/sourceforge/dvb/projectx/gui || die
110 + rm resources/*.gif || die
111 + fi
112 +
113 + # update library packages
114 + cd lib || die
115 + rm -f {commons-net,jakarta-oro}*.jar || die
116 + java-pkg_jar-from commons-net
117 + use X && java-pkg_jar-from browserlauncher2-1.0
118 + java-pkg_ensure-no-bundled-jars
119 +}
120 +
121 +src_compile() {
122 + local IDCT="idct-mjpeg" # default IDCT implementation
123 + if use x86 || use amd64; then
124 + use cpu_flags_x86_mmx && IDCT="idct-mjpeg-mmx"
125 + use cpu_flags_x86_sse && IDCT="idct-mjpeg-sse"
126 + fi
127 +
128 + eant build $(use_doc) -Dmanifest.mainclass=$(mainclass)
129 +
130 + cd lib/PORTABLE || die
131 + emake CC=$(tc-getCC) IDCT="${IDCT}" LDFLAGS="${LDFLAGS}" \
132 + CPLAT="${CFLAGS} -O3 -ffast-math -fPIC"
133 +}
134 +
135 +src_install() {
136 + java-pkg_dojar dist/${PN}.jar
137 + java-pkg_doso lib/PORTABLE/libidctfast.so
138 +
139 + java-pkg_dolauncher ${PN}_cli --main $(mainclass) \
140 + --java_args "-Djava.awt.headless=true -Xmx256m"
141 +
142 + if use X; then
143 + java-pkg_dolauncher ${PN}_gui --main $(mainclass) \
144 + --java_args "-Xmx256m"
145 + dosym ${PN}_gui /usr/bin/${PN}
146 + newicon "${DISTDIR}/${PN}-icon.png" "${PN}.png"
147 + domenu *.desktop
148 + else
149 + dosym ${PN}_cli /usr/bin/${PN}
150 + fi
151 +
152 + dodoc *.txt
153 + use doc && java-pkg_dojavadoc apidocs
154 + use source && java-pkg_dosrc src
155 +}