Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/dbus/
Date: Sat, 04 Aug 2018 08:08:02
Message-Id: 1533370069.154bd95881b2246938e8280fa17e9803c8d55302.polynomial-c@gentoo
1 commit: 154bd95881b2246938e8280fa17e9803c8d55302
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Sat Aug 4 08:05:53 2018 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Sat Aug 4 08:07:49 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=154bd958
7
8 sys-apps/dbus: Bump to version 1.12.10
9
10 Package-Manager: Portage-2.3.44, Repoman-2.3.10
11
12 sys-apps/dbus/Manifest | 1 +
13 sys-apps/dbus/dbus-1.12.10.ebuild | 274 ++++++++++++++++++++++++++++++++++++++
14 2 files changed, 275 insertions(+)
15
16 diff --git a/sys-apps/dbus/Manifest b/sys-apps/dbus/Manifest
17 index 33987fa02cd..4dec4a59d48 100644
18 --- a/sys-apps/dbus/Manifest
19 +++ b/sys-apps/dbus/Manifest
20 @@ -1,4 +1,5 @@
21 DIST dbus-1.10.18.tar.gz 1986589 BLAKE2B 95b8a04362e78001e723301e5f170e923bca8b7b1728e6a7658d606550923d2bd60a6a6916c0fcd88205ecdc4a25ab58309bdcabaeb32c2f6c5e4ef8686af02c SHA512 726f97d0a2016f4f0625ba332e93e2d33bb16857cd35cb6c79da0f44fff297df948c3df62c31ffbec34713a7b85b3ff5b65f31517fe3511ddbd3bf18bd4748ed
22 DIST dbus-1.10.24.tar.gz 1991358 BLAKE2B ffa82a26f156d5d5b5864cc675f2a24b103dcf5c73ac8a570e1e13f37f9d6b8c2aea2545b1a3979d3a94ce7a2ddda7280afde4ecd9b682d3d31355f82af217f7 SHA512 fc0b88b756affdb4fc7a62e84a6f7757121293afeadc38acf8aac48b6c2b82531e136a575be2ab503a39d7669cb7b609a021e20c1064e28c965c091e94c4f68c
23 +DIST dbus-1.12.10.tar.gz 2073510 BLAKE2B 27ecd31e2535666a06cb77ab8df4f4a0990e21d43bc9e18e62f2385b9c05515a2f7ea452d4a376ecb4f764379c05235c908cd6392303300b1ff14d9cfeb25554 SHA512 36a16393af6630c32474b971fb8864ded0fb5fe08c5ff5243a4ca312b95af4f20335c5f166b72526a0b8162c1ccfe6542ad6953c5d21a0542d920d7cb4a9ac76
24 DIST dbus-1.12.6.tar.gz 2068612 BLAKE2B 3dbb05e899e511a636816393ebc28548cc2ecaabaa0c04737189a0812791da195708ee455d7b0439fc81eea113f4bd8fc64b1b9b93e9dac84664b9c51049e75c SHA512 a0599329190e90d5982215138a19031028ed825f54c76c1ae13b54c2e4ddf14c949eacaac05c667db11bca13fb4bbdf8855fc9e15641cece55be1efde00c41ab
25 DIST dbus-1.12.8.tar.gz 2071751 BLAKE2B 9ba26d48f34b4d328335917bbc40d5f4423a48f90b0436783a8d6d290bc8b99c54aa31d23efaf52ef90748d53e68b7c0e3ddce0f4ce26ea5369acbd57d726b84 SHA512 8177898bf2db22e5c6abff0d9ffec8f248f0d155a83b7ae906c1ce3b61d289e7ba7bef9799102e6de3ca64198c7d293dccecf92c7e8b7403c1d9b1bb86e99ea3
26
27 diff --git a/sys-apps/dbus/dbus-1.12.10.ebuild b/sys-apps/dbus/dbus-1.12.10.ebuild
28 new file mode 100644
29 index 00000000000..7691f4d1a92
30 --- /dev/null
31 +++ b/sys-apps/dbus/dbus-1.12.10.ebuild
32 @@ -0,0 +1,274 @@
33 +# Copyright 1999-2018 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=6
37 +PYTHON_COMPAT=( python{2_7,3_{4,5,6,7}} )
38 +
39 +inherit autotools linux-info flag-o-matic python-any-r1 readme.gentoo-r1 systemd virtualx user multilib-minimal
40 +
41 +DESCRIPTION="A message bus system, a simple way for applications to talk to each other"
42 +HOMEPAGE="https://dbus.freedesktop.org/"
43 +SRC_URI="https://dbus.freedesktop.org/releases/dbus/${P}.tar.gz"
44 +
45 +LICENSE="|| ( AFL-2.1 GPL-2 )"
46 +SLOT="0"
47 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
48 +IUSE="debug doc elogind selinux static-libs systemd test user-session X"
49 +
50 +#RESTRICT="test"
51 +
52 +REQUIRED_USE="
53 + ?? ( elogind systemd )
54 + test? ( debug )
55 +"
56 +
57 +CDEPEND="
58 + >=dev-libs/expat-2.1.0
59 + selinux? ( sys-libs/libselinux )
60 + elogind? ( sys-auth/elogind )
61 + systemd? ( sys-apps/systemd:0= )
62 + X? (
63 + x11-libs/libX11
64 + x11-libs/libXt
65 + )
66 +"
67 +DEPEND="${CDEPEND}
68 + app-text/xmlto
69 + app-text/docbook-xml-dtd:4.4
70 + dev-libs/expat
71 + sys-devel/autoconf-archive
72 + virtual/pkgconfig
73 + doc? ( app-doc/doxygen )
74 + test? (
75 + >=dev-libs/glib-2.40:2
76 + ${PYTHON_DEPS}
77 + )
78 +"
79 +RDEPEND="${CDEPEND}
80 + selinux? ( sec-policy/selinux-dbus )
81 +"
82 +
83 +DOC_CONTENTS="
84 + Some applications require a session bus in addition to the system
85 + bus. Please see \`man dbus-launch\` for more information.
86 +"
87 +
88 +# out of sources build dir for make check
89 +TBD="${WORKDIR}/${P}-tests-build"
90 +
91 +PATCHES=(
92 + "${FILESDIR}/${PN}-enable-elogind.patch"
93 +)
94 +
95 +pkg_setup() {
96 + enewgroup messagebus
97 + enewuser messagebus -1 -1 -1 messagebus
98 +
99 + use test && python-any-r1_pkg_setup
100 +
101 + if use kernel_linux; then
102 + CONFIG_CHECK="~EPOLL"
103 + linux-info_pkg_setup
104 + fi
105 +}
106 +
107 +src_prepare() {
108 + # Tests were restricted because of this
109 + sed -i \
110 + -e 's/.*bus_dispatch_test.*/printf ("Disabled due to excess noise\\n");/' \
111 + -e '/"dispatch"/d' \
112 + bus/test-main.c || die
113 +
114 + default
115 +
116 + # required for bug 263909, cross-compile so don't remove eautoreconf
117 + eautoreconf
118 +}
119 +
120 +multilib_src_configure() {
121 + local docconf myconf
122 +
123 + # so we can get backtraces from apps
124 + case ${CHOST} in
125 + *-mingw*)
126 + # error: unrecognized command line option '-rdynamic' wrt #488036
127 + ;;
128 + *)
129 + append-flags -rdynamic
130 + ;;
131 + esac
132 +
133 + # libaudit is *only* used in DBus wrt SELinux support, so disable it, if
134 + # not on an SELinux profile.
135 + myconf=(
136 + --localstatedir="${EPREFIX}/var"
137 + --docdir="${EPREFIX}/usr/share/doc/${PF}"
138 + --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
139 + $(use_enable static-libs static)
140 + $(use_enable debug verbose-mode)
141 + --disable-asserts
142 + --disable-checks
143 + $(use_enable selinux)
144 + $(use_enable selinux libaudit)
145 + --disable-apparmor
146 + $(use_enable kernel_linux inotify)
147 + $(use_enable kernel_FreeBSD kqueue)
148 + $(use_enable elogind)
149 + $(use_enable systemd)
150 + $(use_enable user-session)
151 + --disable-embedded-tests
152 + --disable-modular-tests
153 + $(use_enable debug stats)
154 + --with-session-socket-dir="${EPREFIX}"/tmp
155 + --with-system-pid-file="${EPREFIX}"/var/run/dbus.pid
156 + --with-system-socket="${EPREFIX}"/var/run/dbus/system_bus_socket
157 + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
158 + --with-dbus-user=messagebus
159 + $(use_with X x)
160 + )
161 +
162 + if [[ ${CHOST} == *-darwin* ]]; then
163 + myconf+=(
164 + --enable-launchd
165 + --with-launchd-agent-dir="${EPREFIX}"/Library/LaunchAgents
166 + )
167 + fi
168 +
169 + if multilib_is_native_abi; then
170 + docconf=(
171 + --enable-xml-docs
172 + $(use_enable doc doxygen-docs)
173 + )
174 + else
175 + docconf=(
176 + --disable-xml-docs
177 + --disable-doxygen-docs
178 + )
179 + myconf+=(
180 + --disable-selinux
181 + --disable-libaudit
182 + --disable-elogind
183 + --disable-systemd
184 + --without-x
185 +
186 + # expat is used for the daemon only
187 + # fake the check for multilib library build
188 + ac_cv_lib_expat_XML_ParserCreate_MM=yes
189 + )
190 + fi
191 +
192 + einfo "Running configure in ${BUILD_DIR}"
193 + ECONF_SOURCE="${S}" econf "${myconf[@]}" "${docconf[@]}"
194 +
195 + if multilib_is_native_abi && use test; then
196 + mkdir "${TBD}" || die
197 + cd "${TBD}" || die
198 + einfo "Running configure in ${TBD}"
199 + ECONF_SOURCE="${S}" econf "${myconf[@]}" \
200 + $(use_enable test asserts) \
201 + $(use_enable test checks) \
202 + $(use_enable test embedded-tests) \
203 + $(has_version dev-libs/dbus-glib && echo --enable-modular-tests)
204 + fi
205 +}
206 +
207 +multilib_src_compile() {
208 + if multilib_is_native_abi; then
209 + # after the compile, it uses a selinuxfs interface to
210 + # check if the SELinux policy has the right support
211 + use selinux && addwrite /selinux/access
212 +
213 + einfo "Running make in ${BUILD_DIR}"
214 + emake
215 +
216 + if use test; then
217 + einfo "Running make in ${TBD}"
218 + emake -C "${TBD}"
219 + fi
220 + else
221 + emake -C dbus libdbus-1.la
222 + fi
223 +}
224 +
225 +src_test() {
226 + DBUS_VERBOSE=1 virtx emake -j1 -C "${TBD}" check
227 +}
228 +
229 +multilib_src_install() {
230 + if multilib_is_native_abi; then
231 + emake DESTDIR="${D}" install
232 + else
233 + emake DESTDIR="${D}" install-pkgconfigDATA
234 + emake DESTDIR="${D}" -C dbus \
235 + install-libLTLIBRARIES install-dbusincludeHEADERS \
236 + install-nodist_dbusarchincludeHEADERS
237 + fi
238 +}
239 +
240 +multilib_src_install_all() {
241 + newinitd "${FILESDIR}"/dbus.initd-r1 dbus
242 +
243 + if use X; then
244 + # dbus X session script (#77504)
245 + # turns out to only work for GDM (and startx). has been merged into
246 + # other desktop (kdm and such scripts)
247 + exeinto /etc/X11/xinit/xinitrc.d
248 + doexe "${FILESDIR}"/80-dbus
249 + fi
250 +
251 + # needs to exist for dbus sessions to launch
252 + keepdir /usr/share/dbus-1/services
253 + keepdir /etc/dbus-1/{session,system}.d
254 + # machine-id symlink from pkg_postinst()
255 + keepdir /var/lib/dbus
256 + # let the init script create the /var/run/dbus directory
257 + rm -rf "${ED}"/var/run
258 +
259 + dodoc AUTHORS ChangeLog HACKING NEWS README doc/TODO
260 + readme.gentoo_create_doc
261 +
262 + find "${ED}" -name '*.la' -delete || die
263 +}
264 +
265 +pkg_postinst() {
266 + readme.gentoo_print_elog
267 +
268 + # Ensure unique id is generated and put it in /etc wrt #370451 but symlink
269 + # for DBUS_MACHINE_UUID_FILE (see tools/dbus-launch.c) and reverse
270 + # dependencies with hardcoded paths (although the known ones got fixed already)
271 + dbus-uuidgen --ensure="${EROOT}"/etc/machine-id
272 + ln -sf "${EPREFIX}"/etc/machine-id "${EROOT}"/var/lib/dbus/machine-id
273 +
274 + if [[ ${CHOST} == *-darwin* ]]; then
275 + local plist="org.freedesktop.dbus-session.plist"
276 + elog
277 + elog
278 + elog "For MacOS/Darwin we now ship launchd support for dbus."
279 + elog "This enables autolaunch of dbus at session login and makes"
280 + elog "dbus usable under MacOS/Darwin."
281 + elog
282 + elog "The launchd plist file ${plist} has been"
283 + elog "installed in ${EPREFIX}/Library/LaunchAgents."
284 + elog "For it to be used, you will have to do all of the following:"
285 + elog " + cd ~/Library/LaunchAgents"
286 + elog " + ln -s ${EPREFIX}/Library/LaunchAgents/${plist}"
287 + elog " + logout and log back in"
288 + elog
289 + elog "If your application needs a proper DBUS_SESSION_BUS_ADDRESS"
290 + elog "specified and refused to start otherwise, then export the"
291 + elog "the following to your environment:"
292 + elog " DBUS_SESSION_BUS_ADDRESS=\"launchd:env=DBUS_LAUNCHD_SESSION_BUS_SOCKET\""
293 + fi
294 +
295 + if use user-session; then
296 + ewarn "You have enabled user-session. Please note this can cause"
297 + ewarn "bogus behaviors in several dbus consumers that are not prepared"
298 + ewarn "for this dbus activation method yet."
299 + ewarn
300 + ewarn "See the following link for background on this change:"
301 + ewarn "https://lists.freedesktop.org/archives/systemd-devel/2015-January/027711.html"
302 + ewarn
303 + ewarn "Known issues are tracked here:"
304 + ewarn "https://bugs.gentoo.org/show_bug.cgi?id=576028"
305 + fi
306 +}