1 |
commit: 6455ce2a691b95dc83c015927763e9c9fc771997 |
2 |
Author: Conrad Kostecki <conrad <AT> kostecki <DOT> com> |
3 |
AuthorDate: Tue May 1 20:19:34 2018 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed May 9 12:46:43 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6455ce2a |
7 |
|
8 |
net-im/libcommuni: New package |
9 |
|
10 |
Closes: https://bugs.gentoo.org/652462 |
11 |
Closes: https://github.com/gentoo/gentoo/pull/7813 |
12 |
Package-Manager: Portage-2.3.24, Repoman-2.3.6 |
13 |
|
14 |
net-im/libcommuni/Manifest | 1 + |
15 |
net-im/libcommuni/files/uchardet.pri | 17 +++++++ |
16 |
net-im/libcommuni/libcommuni-3.5.0.ebuild | 74 +++++++++++++++++++++++++++++++ |
17 |
net-im/libcommuni/metadata.xml | 21 +++++++++ |
18 |
4 files changed, 113 insertions(+) |
19 |
|
20 |
diff --git a/net-im/libcommuni/Manifest b/net-im/libcommuni/Manifest |
21 |
new file mode 100644 |
22 |
index 00000000000..3adc4146f91 |
23 |
--- /dev/null |
24 |
+++ b/net-im/libcommuni/Manifest |
25 |
@@ -0,0 +1 @@ |
26 |
+DIST libcommuni-3.5.0.tar.gz 646734 BLAKE2B 81e2c783625a0befe2d364423e862967bc76e8a66e9b5d7f2f94f46f46530d54b030bfd3a48d7877532092c607295cff5a77ecd8bb669112d53507a1ea18c5b0 SHA512 4d62f7e5edd32b9121f2b69d15a4022ad5d6cf7136dc48d0a1ca4bd413b3334533d7734d6939906fa3426f8db9bc255696107ecada19875c60ce59990b54dee4 |
27 |
|
28 |
diff --git a/net-im/libcommuni/files/uchardet.pri b/net-im/libcommuni/files/uchardet.pri |
29 |
new file mode 100644 |
30 |
index 00000000000..d22393b76d2 |
31 |
--- /dev/null |
32 |
+++ b/net-im/libcommuni/files/uchardet.pri |
33 |
@@ -0,0 +1,17 @@ |
34 |
+###################################################################### |
35 |
+# Communi |
36 |
+###################################################################### |
37 |
+ |
38 |
+include(../pkg.pri) |
39 |
+ |
40 |
+pkgExists(uchardet) { |
41 |
+ CONFIG += link_pkgconfig |
42 |
+ PKGCONFIG += uchardet |
43 |
+} |
44 |
+ |
45 |
+isEmpty(PKGCONFIG) { |
46 |
+ error("UChardet support has been enabled, but the UChardet installation has not been found. Did you emerged app-i18n/uchardet?") |
47 |
+} else { |
48 |
+ LIBS += -luchardet |
49 |
+ INCPATH += -isystem /usr/include/uchardet |
50 |
+} |
51 |
|
52 |
diff --git a/net-im/libcommuni/libcommuni-3.5.0.ebuild b/net-im/libcommuni/libcommuni-3.5.0.ebuild |
53 |
new file mode 100644 |
54 |
index 00000000000..166369b11ab |
55 |
--- /dev/null |
56 |
+++ b/net-im/libcommuni/libcommuni-3.5.0.ebuild |
57 |
@@ -0,0 +1,74 @@ |
58 |
+# Copyright 1999-2018 Gentoo Foundation |
59 |
+# Distributed under the terms of the GNU General Public License v2 |
60 |
+ |
61 |
+EAPI=6 |
62 |
+ |
63 |
+inherit qmake-utils |
64 |
+ |
65 |
+DESCRIPTION="A cross-platform IRC framework written with Qt" |
66 |
+HOMEPAGE="http://communi.github.io/" |
67 |
+SRC_URI="https://github.com/communi/libcommuni/archive/v${PV}.tar.gz -> ${P}.tar.gz" |
68 |
+ |
69 |
+LICENSE="BSD" |
70 |
+SLOT="0" |
71 |
+KEYWORDS="~amd64 ~x86" |
72 |
+IUSE="qml test +uchardet" |
73 |
+ |
74 |
+# Compiling with USE="test" is currently broken with dev-libs/icu |
75 |
+# See: https://github.com/communi/libcommuni/issues/60 |
76 |
+REQUIRED_USE="test? ( uchardet )" |
77 |
+ |
78 |
+RDEPEND="dev-qt/qtcore:5 |
79 |
+ dev-qt/qtdeclarative:5 |
80 |
+ uchardet? ( app-i18n/uchardet ) |
81 |
+ !uchardet? ( dev-libs/icu:= )" |
82 |
+ |
83 |
+DEPEND="test? ( dev-qt/qttest:5 ) |
84 |
+ ${RDEPEND}" |
85 |
+ |
86 |
+RESTRICT="!test? ( test )" |
87 |
+ |
88 |
+src_prepare() { |
89 |
+ default |
90 |
+ |
91 |
+ # Don't use bundled uchardet, use instead app-i18n/uchardet |
92 |
+ rm -rf src/3rdparty/uchardet-0.0.1/* || die |
93 |
+ cp "${FILESDIR}"/uchardet.pri src/3rdparty/uchardet-0.0.1/uchardet.pri || die |
94 |
+} |
95 |
+ |
96 |
+src_configure() { |
97 |
+ local myqmakeargs=( libcommuni.pro |
98 |
+ # Disables compile run-time benchmarks, as they don't make any sense |
99 |
+ -config no_benchmarks |
100 |
+ # Disables examples, as no new files are installed |
101 |
+ -config no_examples |
102 |
+ # Is needed for fixing the QA Notice: The following files contain insecure RUNPATHs |
103 |
+ -config no_rpath |
104 |
+ # Compile libcommuni always in Release mode, as Debug seems to do nothing |
105 |
+ -config release |
106 |
+ # Don't silence all compile messages |
107 |
+ -config verbose |
108 |
+ -config $(usex qml '' 'no_')install_imports |
109 |
+ -config $(usex qml '' 'no_')install_qml |
110 |
+ -config $(usex test '' 'no_')tests |
111 |
+ -config $(usex uchardet 'no_' '')icu |
112 |
+ -config $(usex uchardet '' 'no_')uchardet ) |
113 |
+ |
114 |
+ eqmake5 "${myqmakeargs[@]}" |
115 |
+} |
116 |
+ |
117 |
+src_test() { |
118 |
+ # This is a hack to delete the existing LD_LIBRARY_PATH and set a new one, |
119 |
+ # otherwise a test will fail, because it uses the system installed lib instead of the new compiled lib. |
120 |
+ # The test will fail, when libcommuni is emerged with USE="uchardet" and |
121 |
+ # libcommuni is already installed with USE="-uchardat", or the other way around. |
122 |
+ find "${S}" -type f -name 'target_wrapper.sh' -exec sed -i -e "/.*LD_LIBRARY_PATH.*/d" {} \; || die |
123 |
+ local -x LD_LIBRARY_PATH="${S}/lib" |
124 |
+ |
125 |
+ default |
126 |
+} |
127 |
+ |
128 |
+src_install() { |
129 |
+ emake install INSTALL_ROOT="${D}" |
130 |
+ einstalldocs |
131 |
+} |
132 |
|
133 |
diff --git a/net-im/libcommuni/metadata.xml b/net-im/libcommuni/metadata.xml |
134 |
new file mode 100644 |
135 |
index 00000000000..40dcff97d64 |
136 |
--- /dev/null |
137 |
+++ b/net-im/libcommuni/metadata.xml |
138 |
@@ -0,0 +1,21 @@ |
139 |
+<?xml version="1.0" encoding="UTF-8"?> |
140 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
141 |
+<pkgmetadata> |
142 |
+ <maintainer type="person"> |
143 |
+ <email>ck+gentoo@××××××××.de</email> |
144 |
+ <name>Conrad Kostecki</name> |
145 |
+ </maintainer> |
146 |
+ <maintainer type="project"> |
147 |
+ <email>proxy-maint@g.o</email> |
148 |
+ <name>Proxy Maintainers</name> |
149 |
+ </maintainer> |
150 |
+ <longdescription> |
151 |
+ A cross-platform IRC framework written with Qt. |
152 |
+ Communi provides a set of tools for enabling |
153 |
+ IRC connectivity in Qt-based C++ and QML applications. |
154 |
+ </longdescription> |
155 |
+ <use> |
156 |
+ <flag name="qml">Install optional qml files.</flag> |
157 |
+ <flag name="uchardet">Use <pkg>app-i18n/uchardet</pkg>, which is upstreams default, instead of <pkg>dev-libs/icu</pkg>, which makes impossible to run tests.</flag> |
158 |
+ </use> |
159 |
+</pkgmetadata> |