summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Hill <dirtyepic@gentoo.org>2009-08-06 04:56:07 +0000
committerRyan Hill <dirtyepic@gentoo.org>2009-08-06 04:56:07 +0000
commit0268c7f135f56568f54e6c3b7eafe44ec4ebe82c (patch)
treee25be70be31b251de195f37cfa7ddd493eb73680 /x11-libs/wxGTK
parentrespecting CC variable, CFLAGS, LDFLAGS, omiting -Werror, fixing links, bugs ... (diff)
downloadgentoo-2-0268c7f135f56568f54e6c3b7eafe44ec4ebe82c.tar.gz
gentoo-2-0268c7f135f56568f54e6c3b7eafe44ec4ebe82c.tar.bz2
gentoo-2-0268c7f135f56568f54e6c3b7eafe44ec4ebe82c.zip
Add patch from upstream to fix symbol conflict with GSocket struct from
developmental glib currently in gnome-overlay. Bug #278778. (Portage version: 2.2_rc35/cvs/Linux x86_64)
Diffstat (limited to 'x11-libs/wxGTK')
-rw-r--r--x11-libs/wxGTK/ChangeLog10
-rw-r--r--x11-libs/wxGTK/files/wxGTK-2.8.10.1-gsocket.patch16
-rw-r--r--x11-libs/wxGTK/wxGTK-2.6.4.0-r6.ebuild220
-rw-r--r--x11-libs/wxGTK/wxGTK-2.8.10.1-r3.ebuild159
4 files changed, 404 insertions, 1 deletions
diff --git a/x11-libs/wxGTK/ChangeLog b/x11-libs/wxGTK/ChangeLog
index 0525982087d1..e95dcb909c49 100644
--- a/x11-libs/wxGTK/ChangeLog
+++ b/x11-libs/wxGTK/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for x11-libs/wxGTK
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/wxGTK/ChangeLog,v 1.238 2009/07/29 21:43:35 maekke Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/wxGTK/ChangeLog,v 1.239 2009/08/06 04:56:07 dirtyepic Exp $
+
+*wxGTK-2.8.10.1-r3 (06 Aug 2009)
+*wxGTK-2.6.4.0-r6 (06 Aug 2009)
+
+ 06 Aug 2009; Ryan Hill <dirtyepic@gentoo.org> +wxGTK-2.6.4.0-r6.ebuild,
+ +wxGTK-2.8.10.1-r3.ebuild, +files/wxGTK-2.8.10.1-gsocket.patch:
+ Add patch from upstream to fix symbol conflict with GSocket struct from
+ developmental glib currently in gnome-overlay. Bug #278778.
29 Jul 2009; Markus Meier <maekke@gentoo.org> wxGTK-2.6.4.0-r5.ebuild,
wxGTK-2.8.10.1-r1.ebuild:
diff --git a/x11-libs/wxGTK/files/wxGTK-2.8.10.1-gsocket.patch b/x11-libs/wxGTK/files/wxGTK-2.8.10.1-gsocket.patch
new file mode 100644
index 000000000000..b875cb814ad6
--- /dev/null
+++ b/x11-libs/wxGTK/files/wxGTK-2.8.10.1-gsocket.patch
@@ -0,0 +1,16 @@
+--- wxPython-src-2.8.10.1-orig/src/gtk/gsockgtk.cpp
++++ wxPython-src-2.8.10.1/src/gtk/gsockgtk.cpp
+@@ -15,8 +15,13 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+
++// newer versions of glib define its own GSocket but we unfortunately use this
++// name in our own (semi-)public header and so can't change it -- rename glib
++// one instead
++#define GSocket GlibGSocket
+ #include <gdk/gdk.h>
+ #include <glib.h>
++#undef GSocket
+
+ #include "wx/gsocket.h"
+ #include "wx/unix/gsockunx.h"
diff --git a/x11-libs/wxGTK/wxGTK-2.6.4.0-r6.ebuild b/x11-libs/wxGTK/wxGTK-2.6.4.0-r6.ebuild
new file mode 100644
index 000000000000..75cd4e24820d
--- /dev/null
+++ b/x11-libs/wxGTK/wxGTK-2.6.4.0-r6.ebuild
@@ -0,0 +1,220 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/wxGTK/wxGTK-2.6.4.0-r6.ebuild,v 1.1 2009/08/06 04:56:07 dirtyepic Exp $
+
+inherit eutils versionator flag-o-matic
+
+DESCRIPTION="GTK+ version of wxWidgets, a cross-platform C++ GUI toolkit."
+HOMEPAGE="http://wxwidgets.org/"
+
+BASE_PV="$(get_version_component_range 1-3)"
+BASE_P="${PN}-${BASE_PV}"
+
+# we use the wxPython tarballs because they include the full wxGTK sources and
+# are released more frequently than wxGTK.
+SRC_URI="mirror://sourceforge/wxpython/wxPython-src-${PV}.tar.bz2
+ doc? ( mirror://sourceforge/wxwindows/wxWidgets-${BASE_PV}-HTML.tar.gz )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="X doc debug gnome odbc opengl pch sdl unicode"
+
+RDEPEND="
+ dev-libs/expat
+ odbc? ( dev-db/unixODBC )
+ sdl? ( media-libs/libsdl )
+ X? (
+ >=x11-libs/gtk+-2.0
+ >=dev-libs/glib-2.0
+ media-libs/jpeg
+ media-libs/tiff
+ x11-libs/libSM
+ x11-libs/libXinerama
+ x11-libs/libXxf86vm
+ gnome? ( gnome-base/libgnomeprintui )
+ opengl? ( virtual/opengl )
+ )"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ X? (
+ x11-proto/xproto
+ x11-proto/xineramaproto
+ x11-proto/xf86vidmodeproto
+ )"
+
+PDEPEND=">=app-admin/eselect-wxwidgets-0.7"
+
+SLOT="2.6"
+LICENSE="wxWinLL-3
+ GPL-2
+ odbc? ( LGPL-2 )
+ doc? ( wxWinFDL-3 )"
+
+S="${WORKDIR}/wxPython-src-${PV}"
+HTML_S="${WORKDIR}/wxWidgets-${BASE_PV}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # General Patches
+
+ epatch "${FILESDIR}"/${PN}-2.6.3-unicode-odbc.patch
+ epatch "${FILESDIR}"/${BASE_P}-collision.patch
+ epatch "${FILESDIR}"/${BASE_P}-mmedia.patch # Bug #174874
+
+ # Patches Specific to this version
+
+ epatch "${FILESDIR}"/${P}-wxrc_link_fix.patch
+ epatch "${FILESDIR}"/${P}-g_free.patch
+ epatch "${FILESDIR}"/${PN}-2.8.10.1-CVE-2009-2369.patch
+ epatch "${FILESDIR}"/${PN}-2.8.10.1-gsocket.patch
+
+ # Reverse apply patch in wxPython tarball that breaks ABI
+ EPATCH_SINGLE_MSG="Reversing listctrl-ongetitemcolumnimage.patch ..." \
+ EPATCH_OPTS="-R" epatch "${S}"/patches/listctrl-ongetitemcolumnimage.patch
+
+ # wxBase has an automagic sdl dependency. short circuit it here.
+ # http://bugs.gentoo.org/show_bug.cgi?id=91574
+ use sdl || sed -i -e 's:$wxUSE_LIBSDL" != "no":$wxUSE_LIBSDL" = "yes":' configure
+}
+
+src_compile() {
+ local myconf
+
+ append-flags -fno-strict-aliasing
+
+ # X independent options
+ myconf="--enable-shared
+ --enable-compat24
+ --with-regex=builtin
+ --with-zlib=sys
+ --with-expat
+ $(use_enable pch precomp-headers)
+ $(use_with sdl)
+ $(use_with odbc)"
+
+ # wxGTK only
+ use X && \
+ myconf="${myconf}
+ --enable-gui
+ --with-libpng
+ --with-libxpm
+ --with-libjpeg
+ --with-libtiff
+ $(use_enable opengl)
+ $(use_with opengl)
+ $(use_with gnome gnomeprint)"
+
+ # wxBase only
+ use X || \
+ myconf="${myconf}
+ --disable-gui"
+
+ # in 2.6 we always build ansi
+ # everything else is controlled by USE
+ if ! use debug; then
+ build_wx ansi
+ else
+ build_wx ansi-debug
+ fi
+
+ if use unicode; then
+ if ! use debug; then
+ build_wx unicode
+ else
+ build_wx unicode-debug
+ fi
+ fi
+}
+
+src_install() {
+ # Note - the last version to be installed becomes the default, so install
+ # ansi after unicode
+ install_wx unicode
+ install_wx unicode-debug
+ install_wx ansi
+ install_wx ansi-debug
+
+ dodoc "${S}"/docs/changes.txt
+ dodoc "${S}"/docs/gtk/readme.txt
+
+ if use doc; then
+ dohtml -r "${HTML_S}"/docs/html/*
+ fi
+
+ # We don't want this
+ rm "${D}"/usr/share/locale/it/LC_MESSAGES/wxmsw.mo
+}
+
+pkg_postinst() {
+ has_version app-admin/eselect-wxwidgets \
+ && eselect wxwidgets update
+}
+
+pkg_postrm() {
+ has_version app-admin/eselect-wxwidgets \
+ && eselect wxwidgets update
+}
+
+build_wx() {
+ local build_wx_conf
+
+ case "$1" in
+ ansi)
+ build_wx_conf="${build_wx_conf}
+ --disable-unicode"
+ ;;
+
+ ansi-debug)
+ build_wx_conf="${build_wx_conf}
+ --disable-unicode
+ --enable-debug_flag"
+ ;;
+
+ unicode)
+ build_wx_conf="${build_wx_conf}
+ --enable-unicode"
+ ;;
+
+ unicode-debug)
+ build_wx_conf="${build_wx_conf}
+ --enable-unicode
+ --enable-debug_flag"
+ ;;
+
+ *)
+ eerror "wxlib.class: build_wx called with invalid argument(s)."
+ die "wxlib.class: build_wx called with invalid argument(s)."
+ ;;
+ esac
+
+ mkdir -p build_$1
+ pushd build_$1
+
+ ECONF_SOURCE="${S}" econf \
+ ${myconf} \
+ ${build_wx_conf} \
+ || die "Failed to configure $1."
+
+ emake || die "Failed to make $1."
+
+ if [[ -e contrib/src ]]; then
+ cd contrib/src
+ emake || die "Failed to make $1 contrib."
+ fi
+
+ popd
+}
+
+install_wx() {
+ if [[ -d build_$1 ]]; then
+ pushd build_$1
+ emake DESTDIR="${D}" install || die "Failed to install $1."
+ if [[ -e contrib/src ]]; then
+ cd contrib/src
+ emake DESTDIR="${D}" install || die "Failed to install $1 contrib."
+ fi
+ popd
+ fi
+}
diff --git a/x11-libs/wxGTK/wxGTK-2.8.10.1-r3.ebuild b/x11-libs/wxGTK/wxGTK-2.8.10.1-r3.ebuild
new file mode 100644
index 000000000000..0c89ff285334
--- /dev/null
+++ b/x11-libs/wxGTK/wxGTK-2.8.10.1-r3.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/wxGTK/wxGTK-2.8.10.1-r3.ebuild,v 1.1 2009/08/06 04:56:07 dirtyepic Exp $
+
+EAPI="2"
+
+inherit eutils versionator flag-o-matic
+
+DESCRIPTION="GTK+ version of wxWidgets, a cross-platform C++ GUI toolkit."
+HOMEPAGE="http://wxwidgets.org/"
+
+BASE_PV="$(get_version_component_range 1-3)"
+BASE_P="${PN}-${BASE_PV}"
+
+# we use the wxPython tarballs because they include the full wxGTK sources and
+# docs, and are released more frequently than wxGTK.
+SRC_URI="mirror://sourceforge/wxpython/wxPython-src-${PV}.tar.bz2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="X doc debug gnome gstreamer odbc opengl pch sdl"
+
+RDEPEND="
+ dev-libs/expat
+ odbc? ( dev-db/unixODBC )
+ sdl? ( media-libs/libsdl )
+ X? (
+ >=x11-libs/gtk+-2.4
+ >=dev-libs/glib-2.4
+ media-libs/jpeg
+ media-libs/tiff
+ x11-libs/libSM
+ x11-libs/libXinerama
+ x11-libs/libXxf86vm
+ gnome? ( gnome-base/libgnomeprintui )
+ gstreamer? (
+ >=gnome-base/gconf-2.0
+ >=media-libs/gstreamer-0.10 )
+ opengl? ( virtual/opengl )
+ )"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ X? (
+ x11-proto/xproto
+ x11-proto/xineramaproto
+ x11-proto/xf86vidmodeproto
+ )"
+
+PDEPEND=">=app-admin/eselect-wxwidgets-0.7"
+
+SLOT="2.8"
+LICENSE="wxWinLL-3
+ GPL-2
+ odbc? ( LGPL-2 )
+ doc? ( wxWinFDL-3 )"
+
+S="${WORKDIR}/wxPython-src-${PV}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.6.3-unicode-odbc.patch
+ epatch "${FILESDIR}"/${PN}-2.8.10-collision.patch
+ epatch "${FILESDIR}"/${PN}-2.8.7-mmedia.patch # Bug #174874
+ # this version only:
+ epatch "${FILESDIR}"/${P}-CVE-2009-2369.patch # Bug #277722
+ epatch "${FILESDIR}"/${P}-gsocket.patch # Bug #278778
+}
+
+src_configure() {
+ local myconf
+
+ append-flags -fno-strict-aliasing
+
+ # X independent options
+ myconf="--enable-compat26
+ --enable-shared
+ --enable-unicode
+ --with-regex=builtin
+ --with-zlib=sys
+ --with-expat=sys
+ $(use_enable debug)
+ $(use_enable pch precomp-headers)
+ $(use_with sdl)"
+
+ use odbc \
+ && myconf="${myconf} --with-odbc=sys" \
+ || myconf="${myconf} $(use_with odbc)"
+
+ # wxGTK options
+ # --enable-graphics_ctx - needed for webkit, editra
+ # --without-gnomevfs - bug #203389
+
+ use X && \
+ myconf="${myconf}
+ --enable-graphics_ctx
+ --enable-gui
+ --with-libpng=sys
+ --with-libxpm=sys
+ --with-libjpeg=sys
+ --with-libtiff=sys
+ $(use_enable gstreamer mediactrl)
+ $(use_enable opengl)
+ $(use_with opengl)
+ $(use_with gnome gnomeprint)
+ --without-gnomevfs"
+
+ # wxBase options
+ use X || \
+ myconf="${myconf}
+ --disable-gui"
+
+ mkdir "${S}"/wxgtk_build
+ cd "${S}"/wxgtk_build
+
+ ECONF_SOURCE="${S}" econf ${myconf} || die "configure failed."
+}
+
+src_compile() {
+ cd "${S}"/wxgtk_build
+
+ emake || die "make failed."
+
+ if [[ -d contrib/src ]]; then
+ cd contrib/src
+ emake || die "make contrib failed."
+ fi
+}
+
+src_install() {
+ cd "${S}"/wxgtk_build
+
+ emake DESTDIR="${D}" install || die "install failed."
+
+ if [[ -d contrib/src ]]; then
+ cd contrib/src
+ emake DESTDIR="${D}" install || die "install contrib failed."
+ fi
+
+ cd "${S}"/docs
+ dodoc changes.txt readme.txt todo30.txt
+ newdoc base/readme.txt base_readme.txt
+ newdoc gtk/readme.txt gtk_readme.txt
+
+ if use doc; then
+ dohtml -r "${S}"/docs/html/*
+ fi
+
+ # We don't want this
+ rm "${D}"usr/share/locale/it/LC_MESSAGES/wxmsw.mo
+}
+
+pkg_postinst() {
+ has_version app-admin/eselect-wxwidgets \
+ && eselect wxwidgets update
+}
+
+pkg_postrm() {
+ has_version app-admin/eselect-wxwidgets \
+ && eselect wxwidgets update
+}