x11-libs/gtk+: Version bump
authorPacho Ramos <pacho@gentoo.org>
Sun, 20 Sep 2015 18:26:50 +0000 (20:26 +0200)
committerPacho Ramos <pacho@gentoo.org>
Sun, 20 Sep 2015 18:27:49 +0000 (20:27 +0200)
Package-Manager: portage-2.2.20.1

x11-libs/gtk+/Manifest
x11-libs/gtk+/gtk+-3.16.7.ebuild [new file with mode: 0644]

index 89a9bb7dabe81da36d3fc95d5ccb771a0f2e4f9a..af76dbbc6cbde65f6cd5fc51d06ceef8475cb7a6 100644 (file)
@@ -3,3 +3,4 @@ DIST gtk+-1.2.10.tar.gz 2868322 SHA256 3fb843ea671c89b909fd145fa09fd2276af3312e5
 DIST gtk+-2.24.28.tar.xz 13354884 SHA256 b2c6441e98bc5232e5f9bba6965075dcf580a8726398f7374d39f90b88ed4656 SHA512 86d563645ca70c1e14afd4b38d925f496e596cbf6181f2e95310f58c2f4152aaecc559e3c513e6d405fcf48d8d413d59a9d72782216529c1280bd8e1947d7760 WHIRLPOOL b4943bb7792f962e0fc50a118f0dbce58a79678e1a98632717a2f3bda4ddd99b62ce9aed3b14f1c0912a4b53eb975991527843985f625c5a9e052db4889acfb0
 DIST gtk+-3.14.13.tar.xz 15784112 SHA256 b1efcb1ef299f9b205e6f4512428315fd03484e5790f65bd3ac164e84ade90b0 SHA512 e4fcca57fe58821832ee0b542d86033a1028c19e2248929e25a8c16ef05603a93815556591bcc025995bfab1238ad4060fcdf4920ec2df22ab3175b404f3a207 WHIRLPOOL 36a77983701da6041f0762013638303d323a42487a6f6508e92dfa0571f8f13b8598a8187e9665e6eeb62e41b7c2533a1fe9d2b68f097e85599d373969d52da0
 DIST gtk+-3.16.6.tar.xz 18273872 SHA256 4d12726d0856a968b41802ae5c5971d7e9bac532717e309d3f81b9989da5ffbe SHA512 0b3417c57ef755c8eb498b6800cd9e1dc1df01d508425c968944aaa0d7ff50f25a00370f9a6ccf23a87cc9f7fb251447e63055149264b997ee5a681e98dc54ec WHIRLPOOL f944cce4396d2519d357ef75f1e9d420b64d77004110f0e7d2eb643ae5b3f8182db5be28e35269a57ecfe9cbc3280dc65008c30ce1c977d64d0fbb317e6f6bce
+DIST gtk+-3.16.7.tar.xz 18294656 SHA256 19689d14de54d182fad538153dbff6d41f53841f940aa871585fdea0306c7fba SHA512 8f74b3a4093ecf776466d3988806fdae081d10d5e74c66770b52f624076afe92d58efb68ace47fd0dbc5a170a577fc9a8d1b4768794aa4249433c95198db00c8 WHIRLPOOL f8b4d9fa6b7b3ed9702f76d28d729b745217e072898239517d320f0635e87691ca874a136607566cf53d73aead53833c5ecf484fc7aea74f3c26a1f14cc5a9b4
diff --git a/x11-libs/gtk+/gtk+-3.16.7.ebuild b/x11-libs/gtk+/gtk+-3.16.7.ebuild
new file mode 100644 (file)
index 0000000..58ee8d5
--- /dev/null
@@ -0,0 +1,249 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="yes"
+GNOME2_LA_PUNT="yes"
+
+inherit autotools eutils flag-o-matic gnome2 multilib virtualx multilib-minimal
+
+DESCRIPTION="Gimp ToolKit +"
+HOMEPAGE="http://www.gtk.org/"
+
+LICENSE="LGPL-2+"
+SLOT="3"
+IUSE="aqua broadway cloudprint colord cups examples +introspection test vim-syntax wayland X xinerama"
+REQUIRED_USE="
+       || ( aqua wayland X )
+       xinerama? ( X )
+"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+# FIXME: introspection data is built against system installation of gtk+:3
+# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
+COMMON_DEPEND="
+       >=dev-libs/atk-2.15[introspection?,${MULTILIB_USEDEP}]
+       >=dev-libs/glib-2.43.4:2[${MULTILIB_USEDEP}]
+       media-libs/fontconfig[${MULTILIB_USEDEP}]
+       >=media-libs/libepoxy-1.0[${MULTILIB_USEDEP}]
+       >=x11-libs/cairo-1.14[aqua?,glib,svg,X?,${MULTILIB_USEDEP}]
+       >=x11-libs/gdk-pixbuf-2.30:2[introspection?,X?,${MULTILIB_USEDEP}]
+       >=x11-libs/pango-1.36.7[introspection?,${MULTILIB_USEDEP}]
+       x11-misc/shared-mime-info
+
+       cloudprint? (
+               >=net-libs/rest-0.7[${MULTILIB_USEDEP}]
+               >=dev-libs/json-glib-1.0[${MULTILIB_USEDEP}] )
+       colord? ( >=x11-misc/colord-0.1.9:0=[${MULTILIB_USEDEP}] )
+       cups? ( >=net-print/cups-1.2[${MULTILIB_USEDEP}] )
+       introspection? ( >=dev-libs/gobject-introspection-1.39:= )
+       wayland? (
+               >=dev-libs/wayland-1.5.91[${MULTILIB_USEDEP}]
+               media-libs/mesa[wayland,${MULTILIB_USEDEP}]
+               >=x11-libs/libxkbcommon-0.2[${MULTILIB_USEDEP}]
+       )
+       X? (
+               >=app-accessibility/at-spi2-atk-2.5.3[${MULTILIB_USEDEP}]
+               x11-libs/libXrender[${MULTILIB_USEDEP}]
+               x11-libs/libX11[${MULTILIB_USEDEP}]
+               >=x11-libs/libXi-1.3[${MULTILIB_USEDEP}]
+               x11-libs/libXext[${MULTILIB_USEDEP}]
+               >=x11-libs/libXrandr-1.3[${MULTILIB_USEDEP}]
+               x11-libs/libXcursor[${MULTILIB_USEDEP}]
+               x11-libs/libXfixes[${MULTILIB_USEDEP}]
+               x11-libs/libXcomposite[${MULTILIB_USEDEP}]
+               x11-libs/libXdamage[${MULTILIB_USEDEP}]
+               xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       app-text/docbook-xsl-stylesheets
+       app-text/docbook-xml-dtd:4.1.2
+       dev-libs/libxslt
+       dev-libs/gobject-introspection-common
+       >=dev-util/gdbus-codegen-2.38.2
+       >=dev-util/gtk-doc-am-1.20
+       >=sys-devel/gettext-0.18.3[${MULTILIB_USEDEP}]
+       virtual/pkgconfig[${MULTILIB_USEDEP}]
+       X? (
+               x11-proto/xextproto[${MULTILIB_USEDEP}]
+               x11-proto/xproto[${MULTILIB_USEDEP}]
+               x11-proto/inputproto[${MULTILIB_USEDEP}]
+               x11-proto/damageproto[${MULTILIB_USEDEP}]
+               xinerama? ( x11-proto/xineramaproto[${MULTILIB_USEDEP}] )
+       )
+       test? (
+               media-fonts/font-misc-misc
+               media-fonts/font-cursor-misc )
+       examples? ( media-libs/libcanberra[gtk3] )
+"
+# gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90
+# gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90
+# >=xorg-server-1.11.4 needed for
+#  https://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html
+RDEPEND="${COMMON_DEPEND}
+       >=dev-util/gtk-update-icon-cache-3
+       !<gnome-base/gail-1000
+       !<x11-libs/vte-0.31.0:2.90
+       >=x11-themes/adwaita-icon-theme-3.14
+       X? ( !<x11-base/xorg-server-1.11.4 )
+       abi_x86_32? (
+               !<=app-emulation/emul-linux-x86-gtklibs-20140508-r3
+               !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+       )
+"
+# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
+PDEPEND="
+       gnome-base/librsvg[${MULTILIB_USEDEP}]
+       vim-syntax? ( app-vim/gtk-syntax )
+"
+
+MULTILIB_CHOST_TOOLS=(
+       /usr/bin/gtk-query-immodules-3.0
+)
+
+strip_builddir() {
+       local rule=$1
+       shift
+       local directory=$1
+       shift
+       sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \
+               || die "Could not strip director ${directory} from build."
+}
+
+src_prepare() {
+       # -O3 and company cause random crashes in applications. Bug #133469
+       replace-flags -O3 -O2
+       strip-flags
+
+       if ! use test ; then
+               # don't waste time building tests
+               strip_builddir SRC_SUBDIRS testsuite Makefile.{am,in}
+
+               # the tests dir needs to be build now because since commit
+               # 7ff3c6df80185e165e3bf6aa31bd014d1f8bf224 tests/gtkgears.o needs to be there
+               # strip_builddir SRC_SUBDIRS tests Makefile.{am,in}
+       fi
+
+       if ! use examples; then
+               # don't waste time building demos
+               strip_builddir SRC_SUBDIRS demos Makefile.{am,in}
+               strip_builddir SRC_SUBDIRS examples Makefile.{am,in}
+       fi
+
+       # gtk-update-icon-cache is installed by dev-util/gtk-update-icon-cache 
+       epatch "${FILESDIR}"/${PN}-3.16.2-remove_update-icon-cache.patch
+
+       epatch_user
+
+       eautoreconf
+       gnome2_src_prepare
+}
+
+multilib_src_configure() {
+       # need libdir here to avoid a double slash in a path that libtool doesn't
+       # grok so well during install (// between $EPREFIX and usr ...)
+       ECONF_SOURCE=${S} \
+       gnome2_src_configure \
+               $(use_enable aqua quartz-backend) \
+               $(use_enable broadway broadway-backend) \
+               $(use_enable cloudprint) \
+               $(use_enable colord) \
+               $(use_enable cups cups auto) \
+               $(multilib_native_use_enable introspection) \
+               $(use_enable wayland wayland-backend) \
+               $(use_enable X x11-backend) \
+               $(use_enable X xcomposite) \
+               $(use_enable X xdamage) \
+               $(use_enable X xfixes) \
+               $(use_enable X xkb) \
+               $(use_enable X xrandr) \
+               $(use_enable xinerama) \
+               --disable-papi \
+               --disable-mir-backend \
+               --enable-man \
+               --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
+               --libdir="${EPREFIX}"/usr/$(get_libdir) \
+               CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config"
+
+       # work-around gtk-doc out-of-source brokedness
+       if multilib_is_native_abi; then
+               local d
+               for d in gdk gtk libgail-util; do
+                       ln -s "${S}"/docs/reference/${d}/html docs/reference/${d}/html || die
+               done
+       fi
+}
+
+multilib_src_test() {
+       # FIXME: this should be handled at eclass level
+       "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/gtk" || die
+
+       unset DBUS_SESSION_BUS_ADDRESS
+       unset DISPLAY #527682
+       GSETTINGS_SCHEMA_DIR="${S}/gtk" Xemake check
+}
+
+multilib_src_install() {
+       gnome2_src_install
+
+       # add -framework Carbon to the .pc files, bug #???
+       if use aqua ; then
+               for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; do
+                       sed -e "s:Libs\: :Libs\: -framework Carbon :" \
+                               -i "${ED%/}"/usr/$(get_libdir)/pkgconfig/$i || die "sed failed"
+               done
+       fi
+}
+
+multilib_src_install_all() {
+       insinto /etc/gtk-3.0
+       doins "${FILESDIR}"/settings.ini
+
+       dodoc AUTHORS ChangeLog* HACKING NEWS* README*
+}
+
+pkg_preinst() {
+       gnome2_pkg_preinst
+
+       multilib_pkg_preinst() {
+               # Make immodules.cache belongs to gtk+ alone
+               local cache="usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache"
+
+               if [[ -e ${EROOT}${cache} ]]; then
+                       cp "${EROOT}"${cache} "${ED}"/${cache} || die
+               else
+                       touch "${ED}"/${cache} || die
+               fi
+       }
+       multilib_parallel_foreach_abi multilib_pkg_preinst
+}
+
+pkg_postinst() {
+       gnome2_pkg_postinst
+
+       multilib_pkg_postinst() {
+               gnome2_query_immodules_gtk3 \
+                       || die "Update immodules cache failed (for ${ABI})"
+       }
+       multilib_parallel_foreach_abi multilib_pkg_postinst
+
+       if ! has_version "app-text/evince"; then
+               elog "Please install app-text/evince for print preview functionality."
+               elog "Alternatively, check \"gtk-print-preview-command\" documentation and"
+               elog "add it to your settings.ini file."
+       fi
+}
+
+pkg_postrm() {
+       gnome2_pkg_postrm
+
+       if [[ -z ${REPLACED_BY_VERSIONS} ]]; then
+               multilib_pkg_postrm() {
+                       rm -f "${EROOT}"usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache
+               }
+               multilib_foreach_abi multilib_pkg_postrm
+       fi
+}