summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorBlackNoxis <steven.darklight@gmail.com>2014-02-15 23:24:26 +0200
committerBlackNoxis <steven.darklight@gmail.com>2014-02-15 23:24:26 +0200
commit7224c1253228e5c29c78cb3f0f26ce34770f2356 (patch)
tree1684924656132935256e034f35f92abee6623265 /dev-python
Added ebuilds for kogaion desktop
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/gdk-pixbuf/GENTOO0
-rw-r--r--dev-python/gdk-pixbuf/Manifest5
-rw-r--r--dev-python/gdk-pixbuf/files/gdk-pixbuf-2.21.4-fix-automagic-x11.patch24
-rw-r--r--dev-python/gdk-pixbuf/gdk-pixbuf-2.24.0-r1.ebuild93
-rw-r--r--dev-python/gdk-pixbuf/metadata.xml9
-rw-r--r--dev-python/pymaxe/Manifest2
-rw-r--r--dev-python/pymaxe/pymaxe-20130303.ebuild30
-rw-r--r--dev-python/pysmbc/Manifest2
-rw-r--r--dev-python/pysmbc/pysmbc-1.0.13.ebuild21
-rw-r--r--dev-python/pyvlc/Manifest2
-rw-r--r--dev-python/pyvlc/pyvlc-1.0.ebuild50
-rw-r--r--dev-python/pyvlc/pyvlc-9999.ebuild50
-rw-r--r--dev-python/qtstatemachine/Manifest6
-rw-r--r--dev-python/qtstatemachine/files/qstatemachines_add_CMake_support.patch_003154
-rw-r--r--dev-python/qtstatemachine/files/qstatemachines_fix_compound_state.patch_00282
-rw-r--r--dev-python/qtstatemachine/files/qstatemachines_fix_history.patch_001155
-rw-r--r--dev-python/qtstatemachine/qtstatemachine-1.1-r1.ebuild38
-rw-r--r--dev-python/qtstatemachine/qtstatemachine-1.1.ebuild49
18 files changed, 772 insertions, 0 deletions
diff --git a/dev-python/gdk-pixbuf/GENTOO b/dev-python/gdk-pixbuf/GENTOO
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/dev-python/gdk-pixbuf/GENTOO
diff --git a/dev-python/gdk-pixbuf/Manifest b/dev-python/gdk-pixbuf/Manifest
new file mode 100644
index 00000000..0862a829
--- /dev/null
+++ b/dev-python/gdk-pixbuf/Manifest
@@ -0,0 +1,5 @@
+AUX gdk-pixbuf-2.21.4-fix-automagic-x11.patch 715 RMD160 efeaa25e97e7620018ae3ca5b62d74ff6e0fd0d1 SHA1 d67d28548ce340034f5afb0ca07b699fd1a0619e SHA256 e977da6d4731a0164b7346a790dfabb95a951f9986fa623abd171bce79f63bcb
+DIST gdk-pixbuf-2.24.0.tar.xz 1176324 RMD160 38e9896dd9a1ed6bf207509cd635828cebe674b8 SHA1 6a78751630a54fdef9a6a3928322c98e6c1ef60c SHA256 67c11d3aa40441c1cea42c365bf2d6a9a9dd52fae2d359a707ad5e8abb4d28a7
+EBUILD gdk-pixbuf-2.24.0-r1.ebuild 2845 RMD160 ccc538a207cd1dafbd668c3e94f14444a3fd8984 SHA1 64581e96f97860094003d33adb637cbc5fd83c86 SHA256 d125f224debd09c13f841a59d09c9db6c385907e897534173a8736c144a2e798
+MISC GENTOO 0 RMD160 9c1185a5c5e9fc54612808977ee8f548b2258d31 SHA1 da39a3ee5e6b4b0d3255bfef95601890afd80709 SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+MISC metadata.xml 285 RMD160 829826c3a3edd13d82bf87a4e6c1c08719f1549f SHA1 03e8b2cfc1956cfea91e8cedfa2451e68b2bf8e5 SHA256 8400998fc578bc9661b57a27ed3226941e4f75ef5bf7d9f929ed9de2d97ba8b0
diff --git a/dev-python/gdk-pixbuf/files/gdk-pixbuf-2.21.4-fix-automagic-x11.patch b/dev-python/gdk-pixbuf/files/gdk-pixbuf-2.21.4-fix-automagic-x11.patch
new file mode 100644
index 00000000..ae7ec2c9
--- /dev/null
+++ b/dev-python/gdk-pixbuf/files/gdk-pixbuf-2.21.4-fix-automagic-x11.patch
@@ -0,0 +1,24 @@
+Adds a new configure option to remove the automagic dependency on libX11.
+
+--- configure.ac
++++ configure.ac
+@@ -929,7 +929,18 @@ GDK_PIXBUF_XLIB_PACKAGES=
+ GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
+ GDK_PIXBUF_XLIB_EXTRA_LIBS=
+
+-if $PKG_CONFIG --exists x11; then
++AC_ARG_WITH(x11,
++ AC_HELP_STRING([--with-x11=@<:@no/auto/yes@:>@],
++ [build X11 support @<:@default=auto@:>@]),,
++ [
++ if $PKG_CONFIG --exists x11; then
++ with_x11=yes
++ else
++ with_x11=no
++ fi
++ ])
++
++if test x$with_x11 = xyes; then
+ AM_CONDITIONAL(USE_X11, true)
+ PKG_CHECK_MODULES(GDK_PIXBUF_XLIB_DEP, x11 gobject-2.0)
+ else
diff --git a/dev-python/gdk-pixbuf/gdk-pixbuf-2.24.0-r1.ebuild b/dev-python/gdk-pixbuf/gdk-pixbuf-2.24.0-r1.ebuild
new file mode 100644
index 00000000..f48dc30f
--- /dev/null
+++ b/dev-python/gdk-pixbuf/gdk-pixbuf-2.24.0-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gdk-pixbuf/gdk-pixbuf-2.24.0-r1.ebuild,v 1.1 2011/09/15 19:40:37 ssuominen Exp $
+
+EAPI="4"
+
+inherit gnome.org multilib libtool autotools
+
+DESCRIPTION="Image loading library for GTK+"
+HOMEPAGE="http://www.gtk.org/"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+X debug doc +introspection jpeg jpeg2k tiff test"
+
+COMMON_DEPEND="
+ >=dev-libs/glib-2.27.2:2
+ >=media-libs/libpng-1.4:0
+ introspection? ( >=dev-libs/gobject-introspection-0.9.3 )
+ jpeg? ( virtual/jpeg )
+ jpeg2k? ( media-libs/jasper )
+ tiff? ( >=media-libs/tiff-3.9.2 )
+ X? ( x11-libs/libX11 )"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/pkgconfig-0.9
+ >=sys-devel/gettext-0.17
+ >=dev-util/gtk-doc-am-1.11
+ doc? (
+ >=dev-util/gtk-doc-1.11
+ ~app-text/docbook-xml-dtd-4.1.2 )"
+# librsvg blocker is for the new pixbuf loader API, you lose icons otherwise
+RDEPEND="${COMMON_DEPEND}
+ !<gnome-base/gail-1000
+ !<gnome-base/librsvg-2.31.0
+ !<x11-libs/gtk+-2.21.3:2
+ !<x11-libs/gtk+-2.90.4:3"
+
+src_prepare() {
+ # Only build against libX11 if the user wants to do so, upstream bug #657569
+ epatch "${FILESDIR}"/${PN}-2.21.4-fix-automagic-x11.patch
+
+ # This will avoid polluting the pkg-config file with versioned libpng,
+ # which is causing problems with libpng14 -> libpng15 upgrade
+ sed -i -e 's:libpng15:libpng libpng15:' configure.ac || die
+
+ elibtoolize
+ eautoreconf
+}
+
+src_configure() {
+ # png always on to display icons (foser)
+ local myconf="
+ $(use_enable doc gtk-doc)
+ $(use_with jpeg libjpeg)
+ $(use_with jpeg2k libjasper)
+ $(use_with tiff libtiff)
+ $(use_enable introspection)
+ $(use_with X x11)
+ --with-libpng"
+
+ # Passing --disable-debug is not recommended for production use
+ use debug && myconf="${myconf} --enable-debug=yes"
+
+ econf ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS NEWS* README*
+
+ # New library, remove .la files
+ find "${D}" -name '*.la' -exec rm -f '{}' + || die
+}
+
+pkg_postinst() {
+ # causes segfault if set
+ unset __GL_NO_DSO_FINALIZER
+
+ tmp_file=$(mktemp --suffix=gdk_pixbuf_ebuild)
+ # be atomic!
+ gdk-pixbuf-query-loaders > "${tmp_file}"
+ if [ "${?}" = "0" ]; then
+ cat "${tmp_file}" > "${EROOT}usr/$(get_libdir)/gdk-pixbuf-2.0/2.10.0/loaders.cache"
+ fi
+ rm "${tmp_file}"
+
+ if [ -e "${EROOT}"usr/lib/gtk-2.0/2.*/loaders ]; then
+ elog "You need to rebuild ebuilds that installed into" "${EROOT}"usr/lib/gtk-2.0/2.*/loaders
+ elog "to do that you can use qfile from portage-utils:"
+ elog "emerge -va1 \$(qfile -qC ${EPREFIX}/usr/lib/gtk-2.0/2.*/loaders)"
+ fi
+}
diff --git a/dev-python/gdk-pixbuf/metadata.xml b/dev-python/gdk-pixbuf/metadata.xml
new file mode 100644
index 00000000..e86947c9
--- /dev/null
+++ b/dev-python/gdk-pixbuf/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnome</herd>
+ <use>
+ <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
+ for introspection</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-python/pymaxe/Manifest b/dev-python/pymaxe/Manifest
new file mode 100644
index 00000000..2cbcfe25
--- /dev/null
+++ b/dev-python/pymaxe/Manifest
@@ -0,0 +1,2 @@
+DIST pymaxe.tar.gz 195654 SHA256 3532b56bf3fbf9188f81684cb4148099ea9fbb870234495dcdef095933724c36 SHA512 6f9bbdf2fe3b63cd1186c64716303a75dc1a69378cddca76abb5003ccd95d01741d637a36f6272c5377149c3517e2fb1fa105977e9b46bedf1e1ea81e9394471 WHIRLPOOL e7ce1674aa0cb5ed521beb04117d81401f9e6cd461eb7d60c3e5d4daaff3269abecedd95403fa924b3242a3b94b4331819e7e2478c891f7ba83c1139701f0d84
+EBUILD pymaxe-20130303.ebuild 476 SHA256 1c40a47ef9c64f6614bb65d970d455d3e7bc71127f07116fd8bfe18a5592dd3a SHA512 e87a3f5e375b1011839cb8642dd4b2459c2c898b12086945dcdd8aba58268a326e4dc22046de9b7f25dd0cb4e2cd990eaff8f974054533687e0e03d9fd9fec60 WHIRLPOOL 2fb9835b84c0a6bb51b0e9ee04e8e7ec2e5f0ba6c7e25aaa6e259d78a54970c53160f3447fc0046e4fa795d5220c39343d1bece6004a0dae73ef100d4cce13eb
diff --git a/dev-python/pymaxe/pymaxe-20130303.ebuild b/dev-python/pymaxe/pymaxe-20130303.ebuild
new file mode 100644
index 00000000..f84c8c1b
--- /dev/null
+++ b/dev-python/pymaxe/pymaxe-20130303.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+
+inherit eutils
+
+RP="pymaxe"
+
+DESCRIPTION="Python support for Maxe"
+HOMEPAGE="http://pymaxe.com"
+SRC_URI="http://pymaxe.com/files/latest/${RP}.tar.gz -> ${PN}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+RDEPEND="x11-libs/pango"
+DEPEND=""
+
+S="${WORKDIR}"
+
+src_compile() {
+ cd "${S}"
+}
+
+src_install() {
+ doins -r "${S}"/usr || die
+}
diff --git a/dev-python/pysmbc/Manifest b/dev-python/pysmbc/Manifest
new file mode 100644
index 00000000..d96b52a1
--- /dev/null
+++ b/dev-python/pysmbc/Manifest
@@ -0,0 +1,2 @@
+DIST pysmbc-1.0.13.tar.bz2 20795 RMD160 ed573822da34210aa6e0f9c09159de75db0aa505 SHA1 bf37346af4a6b543f7f91c46d0d1d0cc6020db32 SHA256 479fbb70d97fb64208d95975dc745f06f75661f954a8cbb988fe8b5bce4f379b
+EBUILD pysmbc-1.0.13.ebuild 409 RMD160 07a0d9727c3300ec4f57f1e00a9a865d71e52fb6 SHA1 995ae53230058273e1ea62f016be22608efc5d96 SHA256 2a863812aa96941b867446de0aea974bce5a8b9fa51144f395d5df66b9524e02
diff --git a/dev-python/pysmbc/pysmbc-1.0.13.ebuild b/dev-python/pysmbc/pysmbc-1.0.13.ebuild
new file mode 100644
index 00000000..42d7bb73
--- /dev/null
+++ b/dev-python/pysmbc/pysmbc-1.0.13.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=3
+
+PYTHON_DEPEND="2"
+
+inherit distutils
+
+DESCRIPTION="Python bindings for libsmbclient"
+HOMEPAGE="https://fedorahosted.org/pysmbc"
+SRC_URI="http://cyberelk.net/tim/data/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+pkg_setup() {
+ python_set_active_version 2
+} \ No newline at end of file
diff --git a/dev-python/pyvlc/Manifest b/dev-python/pyvlc/Manifest
new file mode 100644
index 00000000..0ab08d99
--- /dev/null
+++ b/dev-python/pyvlc/Manifest
@@ -0,0 +1,2 @@
+EBUILD pyvlc-1.0.ebuild 854 SHA256 4bc104f41d0b9efdca7c0c064e4160dc8ab0da58777cac8e6c95d9f02ce980ef SHA512 c41f96dbad375d9859d3cd9825b2ca6b053228f4e9291b9e2b3e6c71df022d074c1dd2c96934812950f4843d556fdcbc977d1a4c614be6f9064c3c5ad17f2852 WHIRLPOOL 6755d10ae194fbba7a47cf390755dd11bf774f6e7b389b53f18b341b66327d7e543ddc8758f6007f6119fab8750c3ab2f433df2ebc40bbdacf28c4fea35688ca
+EBUILD pyvlc-9999.ebuild 854 SHA256 4bc104f41d0b9efdca7c0c064e4160dc8ab0da58777cac8e6c95d9f02ce980ef SHA512 c41f96dbad375d9859d3cd9825b2ca6b053228f4e9291b9e2b3e6c71df022d074c1dd2c96934812950f4843d556fdcbc977d1a4c614be6f9064c3c5ad17f2852 WHIRLPOOL 6755d10ae194fbba7a47cf390755dd11bf774f6e7b389b53f18b341b66327d7e543ddc8758f6007f6119fab8750c3ab2f433df2ebc40bbdacf28c4fea35688ca
diff --git a/dev-python/pyvlc/pyvlc-1.0.ebuild b/dev-python/pyvlc/pyvlc-1.0.ebuild
new file mode 100644
index 00000000..472927cc
--- /dev/null
+++ b/dev-python/pyvlc/pyvlc-1.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit git-2
+
+DESCRIPTION="Python binding to VLC library"
+HOMEPAGE="http://wiki.videolan.org/Python_bindings"
+EGIT_REPO_URI="git://git.videolan.org/vlc/bindings/python.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="generated examples wxwidgets qt4 gtk"
+
+DEPEND="media-video/vlc"
+RDEPEND="${DEPEND}
+ examples? ( dev-python/pygtk )"
+DOCS="README"
+
+S="${WORKDIR}"/${PN}-${PV}
+
+src_compile() {
+ cd "${EGIT_STORE_DIR}"
+ cd "${S}"
+}
+
+src_install() {
+ cd "${S}"
+
+ if use examples ; then
+ cd "${S}"/examples
+ ls -la
+ if use wxwidgets ; then
+ dodoc wxvlc.py
+ fi
+ if use qt4 ; then
+ dodoc qtvlc.py
+ fi
+ if use gtk ; then
+ dodoc gtkvlc.py
+ fi
+ fi
+ if use generated ; then
+ insinto "${S}"/generated
+ dodoc vlc.py
+ fi
+}
diff --git a/dev-python/pyvlc/pyvlc-9999.ebuild b/dev-python/pyvlc/pyvlc-9999.ebuild
new file mode 100644
index 00000000..472927cc
--- /dev/null
+++ b/dev-python/pyvlc/pyvlc-9999.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit git-2
+
+DESCRIPTION="Python binding to VLC library"
+HOMEPAGE="http://wiki.videolan.org/Python_bindings"
+EGIT_REPO_URI="git://git.videolan.org/vlc/bindings/python.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="generated examples wxwidgets qt4 gtk"
+
+DEPEND="media-video/vlc"
+RDEPEND="${DEPEND}
+ examples? ( dev-python/pygtk )"
+DOCS="README"
+
+S="${WORKDIR}"/${PN}-${PV}
+
+src_compile() {
+ cd "${EGIT_STORE_DIR}"
+ cd "${S}"
+}
+
+src_install() {
+ cd "${S}"
+
+ if use examples ; then
+ cd "${S}"/examples
+ ls -la
+ if use wxwidgets ; then
+ dodoc wxvlc.py
+ fi
+ if use qt4 ; then
+ dodoc qtvlc.py
+ fi
+ if use gtk ; then
+ dodoc gtkvlc.py
+ fi
+ fi
+ if use generated ; then
+ insinto "${S}"/generated
+ dodoc vlc.py
+ fi
+}
diff --git a/dev-python/qtstatemachine/Manifest b/dev-python/qtstatemachine/Manifest
new file mode 100644
index 00000000..aada8f2b
--- /dev/null
+++ b/dev-python/qtstatemachine/Manifest
@@ -0,0 +1,6 @@
+AUX qstatemachines_add_CMake_support.patch_003 4827 RMD160 b462cf9d1c91cc6af0dfe0ffe1d4c1df68ec51ad SHA1 3323225f77d9fba7ec3431f53775883f0d15b439 SHA256 4822daf62e6e266e00220da108300e8c4cafadf2bcb08e973d9f721d004d357e
+AUX qstatemachines_fix_compound_state.patch_002 2809 RMD160 87788328b902681f10c736f0a39d7b828509429a SHA1 ffed349fa3087f435b92eeb8c8c08074f9865f35 SHA256 58d9330eec0d22f9f54fb18276ea86fbaeee95a762a33a2d95c011270bbe3b40
+AUX qstatemachines_fix_history.patch_001 7507 RMD160 2417563f065816d8012587633e7fa921009676ee SHA1 e03a79b912a305ac0c8c3467994845a970fe0aaf SHA256 eec10835e5733dc9554cf7dd814bdad02f8183b28a32f949004059ce6ce30771
+DIST qtstatemachine-1.1-opensource.tar.gz 1339216 RMD160 102189d7bbb9d2260b1b15020f37f5a078dd8098 SHA1 25a748433bf1807165d176957710739a653c51a4 SHA256 141b78bccb709c203c62bb16c7a328b024d71e83263438e3e65d49c49d9486bd
+EBUILD qtstatemachine-1.1-r1.ebuild 925 RMD160 1064b64d8dae03aa6b82bb2f85d5be32fdc96086 SHA1 73b7efa14d2af213faf4fb7d4696e3a0a523cea9 SHA256 0876be0b8faea518b038a5d880b8f9b55bdf61f4f1701ea0b36a821eb61d4fad
+EBUILD qtstatemachine-1.1.ebuild 1024 RMD160 eced99f95ad1f4d24a9334acdcb73ebe37864b54 SHA1 64d9b1d191a6243bf14a889b8a0b5cbf65b6cbbb SHA256 da925a8b35bc4ca53f31486d03942192074ebd877798ad41dc0e51d5a8e5a188
diff --git a/dev-python/qtstatemachine/files/qstatemachines_add_CMake_support.patch_003 b/dev-python/qtstatemachine/files/qstatemachines_add_CMake_support.patch_003
new file mode 100644
index 00000000..d21e0126
--- /dev/null
+++ b/dev-python/qtstatemachine/files/qstatemachines_add_CMake_support.patch_003
@@ -0,0 +1,154 @@
+--- /dev/null 2009-07-25 12:29:44.706468311 +0200
++++ CMakeLists.txt 2009-07-27 17:39:53.000000000 +0200
+@@ -0,0 +1,151 @@
++cmake_minimum_required(VERSION 2.6)
++project(QtStateMachines)
++
++# Setup Cmake
++set(CMAKE_MODULE_PATH
++ ${PyQtStateMachines_SOURCE_DIR}/cmake/Modules
++ )
++
++# Setup Qt4
++find_package(Qt4 REQUIRED)
++set(QT_USE_QTDBUS 1)
++set(QT_USE_QTGUI 1)
++set(QT_USE_QTSHARED 1)
++set(QT_USE_QTSCRIPT 1)
++include(${QT_USE_FILE})
++
++add_definitions(-DQT_STATEMACHINE_SOLUTION -DQT_NO_ANIMATION -DQT_SCRIPT_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED)
++
++include_directories(
++ ${CMAKE_CURRENT_SOURCE_DIR}
++ ${CMAKE_SOURCE_DIR}/src
++ ${QT_INCLUDE_DIR}
++ ${QT_QT_INCLUDE_DIR}
++ ${QT_QTCORE_INCLUDE_DIR}
++ ${CMAKE_CURRENT_BINARY_DIR}/src
++ ${CMAKE_CURRENT_BINARY_DIR}
++ )
++
++link_directories(${CMAKE_CURRENT_SOURCE_DIR})
++
++set(QtStateMachines_SOURCES
++ src/qabstractstate.cpp
++ src/qabstracttransition.cpp
++ src/qactionstate.cpp
++ src/qeventtransition.cpp
++ src/qfinalstate.cpp
++ src/qguistatemachine.cpp
++ src/qhistorystate.cpp
++ src/qscriptedstatemachine.cpp
++ src/qsignaltransition.cpp
++ src/qssmguiinvokers.cpp
++ src/qstateaction.cpp
++ src/qstate.cpp
++ src/qstatefinishedtransition.cpp
++ src/qstatemachine.cpp
++ src/qtransition.cpp
++)
++
++
++set(QtStateMachines_HEADERS
++ src/qabstractstate.h
++ src/qabstracttransition.h
++ src/qactionstate.h
++ src/qeventtransition.h
++ src/qfinalstate.h
++ src/qhistorystate.h
++ src/qscriptedstatemachine.h
++ src/qsignalevent.h
++ src/qsignaltransition.h
++ src/qstateaction.h
++ src/qstatefinishedevent.h
++ src/qstatefinishedtransition.h
++ src/qstate.h
++ src/qstatemachine.h
++ src/qtransition.h
++ src/qtstatemachineglobal.h
++)
++
++MACRO(QT4_AUTOMOC_MY)
++ QT4_GET_MOC_FLAGS(_moc_INCS)
++
++ SET(_matching_FILES )
++ FOREACH (_current_FILE ${ARGN})
++
++ GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE)
++ # if "SKIP_AUTOMOC" is set to true, we will not handle this file here.
++ # This is required to make uic work correctly:
++ # we need to add generated .cpp files to the sources (to compile them),
++ # but we cannot let automoc handle them, as the .cpp files don't exist yet when
++ # cmake is run for the very first time on them -> however the .cpp files might
++ # exist at a later run. at that time we need to skip them, so that we don't add two
++ # different rules for the same moc file
++ GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC)
++
++ IF ( NOT _skip AND EXISTS ${_abs_FILE} )
++
++ FILE(READ ${_abs_FILE} _contents)
++
++ GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH)
++
++ STRING(REGEX MATCHALL "# *include +[^ ]+\\.moc[\">]"
++ _match
++ "${_contents}")
++ IF(_match)
++ FOREACH (_current_MOC_INC ${_match})
++ STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}")
++ GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE)
++ IF(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_header ${_abs_PATH}/${_basename}.hpp)
++ ELSE(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_header ${_abs_PATH}/${_basename}.h)
++ ENDIF(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC})
++ QT4_CREATE_MOC_COMMAND(${_header} ${_moc} "${_moc_INCS}" "")
++ MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc})
++ message("DEPS: ${_abs_FILE} -> ${_moc}")
++ ENDFOREACH (_current_MOC_INC)
++ ENDIF(_match)
++ STRING(REGEX MATCHALL "# *include [\"<]moc_+[^ ]+\\.cpp[\">]"
++ _match
++ "${_contents}"
++ )
++ IF(_match)
++ FOREACH (_current_MOC_INC ${_match})
++ STRING(REGEX MATCH "[^ <\"_]+\\.cpp" _current_MOC "${_current_MOC_INC}")
++ GET_FILENAME_COMPONENT(_basename ${_current_MOC} NAME_WE)
++ IF(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_header ${_abs_PATH}/${_basename}.hpp)
++ ELSE(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_header ${_abs_PATH}/${_basename}.h)
++ ENDIF(EXISTS ${_abs_PATH}/${_basename}.hpp)
++ SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/moc_${_current_MOC})
++ QT4_CREATE_MOC_COMMAND(${_header} ${_moc} "${_moc_INCS}" "")
++ MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc})
++ ENDFOREACH (_current_MOC_INC)
++ ENDIF(_match)
++ ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} )
++ ENDFOREACH (_current_FILE)
++ENDMACRO(QT4_AUTOMOC_MY)
++
++add_library(StateMachineFramework SHARED
++ ${QtStateMachines_SOURCES}
++ )
++
++QT4_AUTOMOC_MY(${QtStateMachines_SOURCES})
++
++target_link_libraries(StateMachineFramework
++ ${QT_QTCORE_LIBRARY}
++ ${QT_QTGUI_LIBRARY}
++ ${QT_QTSCRIPT_LIBRARY}
++ )
++
++set_target_properties(StateMachineFramework
++ PROPERTIES
++ OUTPUT_NAME
++ QtSolutions_StateMachineFramework-1.1
++ VERSION 1.0.0
++ SOVERSION 1.0.0)
++
++install(TARGETS StateMachineFramework DESTINATION lib${LIB_SUFFIX})
++install(FILES ${QtStateMachines_HEADERS} DESTINATION include/QtStateMachines/)
diff --git a/dev-python/qtstatemachine/files/qstatemachines_fix_compound_state.patch_002 b/dev-python/qtstatemachine/files/qstatemachines_fix_compound_state.patch_002
new file mode 100644
index 00000000..917bbf43
--- /dev/null
+++ b/dev-python/qtstatemachine/files/qstatemachines_fix_compound_state.patch_002
@@ -0,0 +1,82 @@
+--- src/qstatemachine_history_fixed.cpp 2009-07-26 18:21:12.000000000 +0200
++++ src/qstatemachine.cpp 2009-07-27 15:46:45.000000000 +0200
+@@ -273,6 +273,27 @@
+ }
+ }
+
++QtState *QtStateMachinePrivate::findActiveLCA(const QList<QtAbstractState*> &states)
++{
++ if (states.isEmpty())
++ return rootState;
++ QList<QtState*> ancestors = properAncestors(states.at(0), 0);
++ for (int i = 0; i < ancestors.size(); ++i) {
++ QtState *anc = ancestors.at(i);
++ if (!configuration.contains(anc))
++ continue;
++ bool ok = true;
++ for (int j = states.size() - 1; (j > 0) && ok; --j) {
++ const QtAbstractState *s = states.at(j);
++ if (!isDescendantOf(s, anc))
++ ok = false;
++ }
++ if (ok)
++ return anc;
++ }
++ return rootState;
++}
++
+ QtState *QtStateMachinePrivate::findLCA(const QList<QtAbstractState*> &states)
+ {
+ if (states.isEmpty())
+@@ -378,8 +399,18 @@
+ QList<QtAbstractState*> lst = t->targetStates();
+ if (lst.isEmpty())
+ continue;
+- lst.prepend(t->sourceState());
+- QtAbstractState *lca = findLCA(lst);
++ QtAbstractState *lca;
++ if (isDescendantOf(t->targetState(), t->sourceState()))
++ {
++ lst.prepend(t->targetState());
++ lca = findActiveLCA(lst);
++ }
++ else
++ {
++ lst.prepend(t->sourceState());
++ lca = findLCA(lst);
++ }
++
+ {
+ QSet<QtAbstractState*>::const_iterator it;
+ for (it = configuration.constBegin(); it != configuration.constEnd(); ++it) {
+@@ -451,8 +482,17 @@
+ QList<QtAbstractState*> lst = t->targetStates();
+ if (lst.isEmpty())
+ continue;
+- lst.prepend(t->sourceState());
+- QtState *lca = findLCA(lst);
++ QtState *lca;
++ if (isDescendantOf(t->targetState(), t->sourceState()))
++ {
++ lst.prepend(t->targetState());
++ lca = findActiveLCA(lst);
++ }
++ else
++ {
++ lst.prepend(t->sourceState());
++ lca = findLCA(lst);
++ }
+ for (int j = 1; j < lst.size(); ++j) {
+ QtAbstractState *s = lst.at(j);
+ addStatesToEnter(s, lca, statesToEnter, statesForDefaultEntry);
+diff -ru src_old/qstatemachine_p.h src/qstatemachine_p.h
+--- src_old/qstatemachine_p.h 2009-07-26 18:38:06.000000000 +0200
++++ src/qstatemachine_p.h 2009-07-26 18:37:15.000000000 +0200
+@@ -109,6 +109,7 @@
+
+ static QtStateMachinePrivate *get(QtStateMachine *q);
+
++ QtState *findActiveLCA(const QList<QtAbstractState*> &states);
+ static QtState *findLCA(const QList<QtAbstractState*> &states);
+
+ static bool stateEntryLessThan(QtAbstractState *s1, QtAbstractState *s2);
diff --git a/dev-python/qtstatemachine/files/qstatemachines_fix_history.patch_001 b/dev-python/qtstatemachine/files/qstatemachines_fix_history.patch_001
new file mode 100644
index 00000000..fff31346
--- /dev/null
+++ b/dev-python/qtstatemachine/files/qstatemachines_fix_history.patch_001
@@ -0,0 +1,155 @@
+--- src/qstatemachine_orig.cpp 2009-07-26 11:41:00.000000000 +0200
++++ src/qstatemachine.cpp 2009-07-26 12:41:26.000000000 +0200
+@@ -455,37 +455,7 @@
+ QtState *lca = findLCA(lst);
+ for (int j = 1; j < lst.size(); ++j) {
+ QtAbstractState *s = lst.at(j);
+- if (QtHistoryState *h = qobject_cast<QtHistoryState*>(s)) {
+- QList<QtAbstractState*> hconf = QtHistoryStatePrivate::get(h)->configuration;
+- if (!hconf.isEmpty()) {
+- for (int k = 0; k < hconf.size(); ++k) {
+- QtAbstractState *s0 = hconf.at(k);
+- addStatesToEnter(s0, lca, statesToEnter, statesForDefaultEntry);
+- }
+-#ifdef QSTATEMACHINE_DEBUG
+- qDebug() << q << ": restoring"
+- << ((QtHistoryStatePrivate::get(h)->historyType == QtState::DeepHistory) ? "deep" : "shallow")
+- << "history from" << s << ":" << hconf;
+-#endif
+- } else {
+- QList<QtAbstractState*> hlst;
+- if (QtHistoryStatePrivate::get(h)->defaultState)
+- hlst.append(QtHistoryStatePrivate::get(h)->defaultState);
+- if (hlst.isEmpty()) {
+- setError(QtStateMachine::NoDefaultStateInHistoryState, h);
+- } else {
+- for (int k = 0; k < hlst.size(); ++k) {
+- QtAbstractState *s0 = hlst.at(k);
+- addStatesToEnter(s0, lca, statesToEnter, statesForDefaultEntry);
+- }
+-#ifdef QSTATEMACHINE_DEBUG
+- qDebug() << q << ": initial history targets for" << s << ":" << hlst;
+-#endif
+- }
+- }
+- } else {
+- addStatesToEnter(s, lca, statesToEnter, statesForDefaultEntry);
+- }
++ addStatesToEnter(s, lca, statesToEnter, statesForDefaultEntry);
+ if (isParallel(lca)) {
+ QList<QtAbstractState*> lcac = QtStatePrivate::get(lca)->childStates();
+ foreach (QtAbstractState* child,lcac) {
+@@ -566,45 +536,78 @@
+ QSet<QtAbstractState*> &statesToEnter,
+ QSet<QtAbstractState*> &statesForDefaultEntry)
+ {
+- statesToEnter.insert(s);
+- if (isParallel(s)) {
+- QtState *grp = qobject_cast<QtState*>(s);
+- QList<QtAbstractState*> lst = QtStatePrivate::get(grp)->childStates();
+- for (int i = 0; i < lst.size(); ++i) {
+- QtAbstractState *child = lst.at(i);
+- addStatesToEnter(child, grp, statesToEnter, statesForDefaultEntry);
+- }
+- } else if (isCompound(s)) {
+- statesForDefaultEntry.insert(s);
+- QtState *grp = qobject_cast<QtState*>(s);
+- QtAbstractState *initial = grp->initialState();
+- if (initial != 0) {
+- addStatesToEnter(initial, grp, statesToEnter, statesForDefaultEntry);
++#ifdef QSTATEMACHINE_DEBUG
++ Q_Q(QtStateMachine);
++#endif
++ if (QtHistoryState *h = qobject_cast<QtHistoryState*>(s)) {
++ QList<QtAbstractState*> hconf = QtHistoryStatePrivate::get(h)->configuration;
++ if (!hconf.isEmpty()) {
++ for (int k = 0; k < hconf.size(); ++k) {
++ QtAbstractState *s0 = hconf.at(k);
++ addStatesToEnter(s0, root, statesToEnter, statesForDefaultEntry);
++ }
++#ifdef QSTATEMACHINE_DEBUG
++ qDebug() << q << ": restoring"
++ << ((QtHistoryStatePrivate::get(h)->historyType == QtState::DeepHistory) ? "deep" : "shallow")
++ << "history from" << s << ":" << hconf;
++#endif
+ } else {
+- setError(QtStateMachine::NoInitialStateError, grp);
+- return;
++ QList<QtAbstractState*> hlst;
++ if (QtHistoryStatePrivate::get(h)->defaultState)
++ hlst.append(QtHistoryStatePrivate::get(h)->defaultState);
++ if (hlst.isEmpty()) {
++ setError(QtStateMachine::NoDefaultStateInHistoryState, h);
++ } else {
++ for (int k = 0; k < hlst.size(); ++k) {
++ QtAbstractState *s0 = hlst.at(k);
++ addStatesToEnter(s0, root, statesToEnter, statesForDefaultEntry);
++ }
++#ifdef QSTATEMACHINE_DEBUG
++ qDebug() << q << ": initial history targets for" << s << ":" << hlst;
++#endif
++ }
+ }
+- }
+- QList<QtState*> ancs = properAncestors(s, root);
+- for (int i = 0; i < ancs.size(); ++i) {
+- QtState *anc = ancs.at(i);
+- if (!anc->parentState())
+- continue;
+- statesToEnter.insert(anc);
+- if (isParallel(anc)) {
+- QList<QtAbstractState*> lst = QtStatePrivate::get(anc)->childStates();
+- for (int j = 0; j < lst.size(); ++j) {
+- QtAbstractState *child = lst.at(j);
+- bool hasDescendantInList = false;
+- QSet<QtAbstractState*>::const_iterator it;
+- for (it = statesToEnter.constBegin(); it != statesToEnter.constEnd(); ++it) {
+- if (isDescendantOf(*it, child)) {
+- hasDescendantInList = true;
+- break;
++ } else {
++ statesToEnter.insert(s);
++ if (isParallel(s)) {
++ QtState *grp = qobject_cast<QtState*>(s);
++ QList<QtAbstractState*> lst = QtStatePrivate::get(grp)->childStates();
++ for (int i = 0; i < lst.size(); ++i) {
++ QtAbstractState *child = lst.at(i);
++ addStatesToEnter(child, grp, statesToEnter, statesForDefaultEntry);
++ }
++ } else if (isCompound(s)) {
++ statesForDefaultEntry.insert(s);
++ QtState *grp = qobject_cast<QtState*>(s);
++ QtAbstractState *initial = grp->initialState();
++ if (initial != 0) {
++ addStatesToEnter(initial, grp, statesToEnter, statesForDefaultEntry);
++ } else {
++ setError(QtStateMachine::NoInitialStateError, grp);
++ return;
++ }
++ }
++ QList<QtState*> ancs = properAncestors(s, root);
++ for (int i = 0; i < ancs.size(); ++i) {
++ QtState *anc = ancs.at(i);
++ if (!anc->parentState())
++ continue;
++ statesToEnter.insert(anc);
++ if (isParallel(anc)) {
++ QList<QtAbstractState*> lst = QtStatePrivate::get(anc)->childStates();
++ for (int j = 0; j < lst.size(); ++j) {
++ QtAbstractState *child = lst.at(j);
++ bool hasDescendantInList = false;
++ QSet<QtAbstractState*>::const_iterator it;
++ for (it = statesToEnter.constBegin(); it != statesToEnter.constEnd(); ++it) {
++ if (isDescendantOf(*it, child)) {
++ hasDescendantInList = true;
++ break;
++ }
+ }
++ if (!hasDescendantInList)
++ addStatesToEnter(child, anc, statesToEnter, statesForDefaultEntry);
+ }
+- if (!hasDescendantInList)
+- addStatesToEnter(child, anc, statesToEnter, statesForDefaultEntry);
+ }
+ }
+ }
diff --git a/dev-python/qtstatemachine/qtstatemachine-1.1-r1.ebuild b/dev-python/qtstatemachine/qtstatemachine-1.1-r1.ebuild
new file mode 100644
index 00000000..a1aaa525
--- /dev/null
+++ b/dev-python/qtstatemachine/qtstatemachine-1.1-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2004-2009 Sabayon Linux
+# Distributed under the terms of the GNU General Public License v2
+# $
+
+EAPI="2"
+inherit eutils cmake-utils
+
+DESCRIPTION="Qt State Machine Framework"
+SLOT="4"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+SRC_URI="ftp://ftp.trolltech.com/qt/solutions/lgpl/qtstatemachine-1.1-opensource.tar.gz"
+RESTRICT="mirror"
+LICENSE="|| ( LGPL-2.1 GPL-3 QPL-1.0 )"
+
+RDEPEND="dev-libs/glib
+ media-libs/libpng
+ x11-libs/qt-core:4
+ x11-libs/qt-gui:4"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${P}-opensource"
+
+src_prepare() {
+ # Add some bugfix patches
+ epatch "${FILESDIR}/"qstatemachines*.patch_*
+}
+
+pkg_postinst() {
+
+ ewarn "This package is VERY EXPERIMENTAL."
+ ewarn "Its build system is utterly broken (see CMake patch)."
+ ewarn "No examples are installed because of the issue above"
+ ewarn "...and your cat will be eaten by a black hole!"
+ einfo "Say thanks to Vincenzo Di Massa for the hard"
+ einfo "patching work."
+
+}
diff --git a/dev-python/qtstatemachine/qtstatemachine-1.1.ebuild b/dev-python/qtstatemachine/qtstatemachine-1.1.ebuild
new file mode 100644
index 00000000..7d222db9
--- /dev/null
+++ b/dev-python/qtstatemachine/qtstatemachine-1.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2004-2009 Sabayon Linux
+# Distributed under the terms of the GNU General Public License v2
+# $
+
+EAPI="2"
+inherit eutils base multilib
+
+DESCRIPTION="Qt State Machine Framework"
+SLOT="4"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+SRC_URI="ftp://ftp.trolltech.com/qt/solutions/lgpl/qtstatemachine-1.1-opensource.tar.gz"
+RESTRICT="mirror"
+LICENSE="|| ( LGPL-2.1 GPL-3 QPL-1.0 )"
+
+RDEPEND="dev-libs/glib
+ media-libs/libpng
+ x11-libs/qt-core:4
+ x11-libs/qt-gui:4"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${P}-opensource"
+
+src_configure() {
+
+ # build system is utterly broken
+ echo "yes" | ./configure -library || die "configure failed"
+
+}
+
+src_compile() {
+ qmake -makefile -nocache || die "qmake failed"
+ emake || "make failed"
+}
+
+src_install() {
+
+ # build system is broken
+ dolib.so lib/*
+
+}
+
+pkg_postinst() {
+ ewarn "This package is VERY EXPERIMENTAL."
+ ewarn "Its build system is utterly broken."
+ ewarn "No examples are installed because of the issue above"
+ ewarn "...and your cat will be eaten by a black hole!"
+ ewarn "plop!"
+}