summaryrefslogtreecommitdiff
path: root/community/google-gadgets
diff options
context:
space:
mode:
authorOmar Vega Ramos <ovruni@gnu.org.pe>2012-12-05 23:43:35 -0500
committerOmar Vega Ramos <ovruni@gnu.org.pe>2012-12-05 23:43:35 -0500
commite45256216e1810c532395137dfe07f1e1e16180c (patch)
tree6055d0ade4874a2943f1abc8c5cb511542a2c18f /community/google-gadgets
parent9e6f3860287a16dbf8843bfe7f6f96f87f1b8a6d (diff)
Add google-gadgets-0.11.2-glib-2.31.patch and google-gadgets-0.11.2-gcc-4.7.patch
Diffstat (limited to 'community/google-gadgets')
-rw-r--r--community/google-gadgets/PKGBUILD11
-rw-r--r--community/google-gadgets/google-gadgets-0.11.2-gcc-4.7.patch325
-rw-r--r--community/google-gadgets/google-gadgets-0.11.2-glib-2.31.patch25
3 files changed, 358 insertions, 3 deletions
diff --git a/community/google-gadgets/PKGBUILD b/community/google-gadgets/PKGBUILD
index 21e2e2b7a..34c643492 100644
--- a/community/google-gadgets/PKGBUILD
+++ b/community/google-gadgets/PKGBUILD
@@ -20,9 +20,13 @@ makedepends=('gstreamer0.10-base-plugins' 'libwebkit'
'zip' 'flex')
options=('!libtool')
source=("http://google-gadgets-for-linux.googlecode.com/files/$_realname-$pkgver.tar.bz2"
- "wifi-types.patch")
+ "wifi-types.patch"
+ "google-gadgets-0.11.2-glib-2.31.patch"
+ "google-gadgets-0.11.2-gcc-4.7.patch")
md5sums=('279305553bcbf74f3e3615f6abc36a5e'
- 'f0df71c60a174e9d629db87b8bd9e102')
+ 'f0df71c60a174e9d629db87b8bd9e102'
+ '1b9c7769d6659ea77069e9c22592797a'
+ 'b62bc8592b5a44cb34cb7a7e4a6cf62e')
build() {
cd "$srcdir/$_realname-$pkgver"
@@ -32,7 +36,8 @@ build() {
#
# xulrunner 2.0 is incompatible;
# we build without smjs-script/browser-element
-
+ patch -Np1 -i ${srcdir}/google-gadgets-0.11.2-glib-2.31.patch
+ patch -Np1 -i ${srcdir}/google-gadgets-0.11.2-gcc-4.7.patch
patch -p1 <$srcdir/wifi-types.patch
./configure --prefix=/usr \
--disable-werror \
diff --git a/community/google-gadgets/google-gadgets-0.11.2-gcc-4.7.patch b/community/google-gadgets/google-gadgets-0.11.2-gcc-4.7.patch
new file mode 100644
index 000000000..2e77e10fd
--- /dev/null
+++ b/community/google-gadgets/google-gadgets-0.11.2-gcc-4.7.patch
@@ -0,0 +1,325 @@
+Author: Pino Toscano <pino@debian.org>
+Description: Fix building with GCC 4.7
+ This patch fixes the two kinds of issues that arise with GCC 4.7:
+ - include <unistd.h> for functions like access(), fork(), readlink(), etc
+ - fix argument-dependent lookup issues by qualifying the lookup of functions
+Forwarded: no
+Last-Update: 2012-04-04
+
+--- a/ggadget/scriptable_enumerator.h
++++ b/ggadget/scriptable_enumerator.h
+@@ -68,22 +68,22 @@
+
+ protected:
+ virtual void DoClassRegister() {
+- RegisterMethod("atEnd",
++ this->RegisterMethod("atEnd",
+ NewSlot(&E::AtEnd,
+ &ScriptableEnumerator<E, Wrapper, Param, ClassId>
+ ::enumerator_));
+- RegisterMethod("moveFirst",
++ this->RegisterMethod("moveFirst",
+ NewSlot(&E::MoveFirst,
+ &ScriptableEnumerator<E, Wrapper, Param, ClassId>
+ ::enumerator_));
+- RegisterMethod("moveNext",
++ this->RegisterMethod("moveNext",
+ NewSlot(&E::MoveNext,
+ &ScriptableEnumerator<E, Wrapper, Param, ClassId>
+ ::enumerator_));
+- RegisterMethod("item",
++ this->RegisterMethod("item",
+ NewSlot(&ScriptableEnumerator<E, Wrapper, Param, ClassId>
+ ::GetItem));
+- RegisterProperty("count",
++ this->RegisterProperty("count",
+ NewSlot(&E::GetCount,
+ &ScriptableEnumerator<E, Wrapper, Param, ClassId>
+ ::enumerator_),
+--- a/ggadget/uuid.cc
++++ b/ggadget/uuid.cc
+@@ -24,6 +24,7 @@
+ #include <cstdlib>
+ #include <cstring>
+ #include <ctime>
++#include <unistd.h>
+
+ #include "string_utils.h"
+
+--- a/ggadget/xml_dom.cc
++++ b/ggadget/xml_dom.cc
+@@ -1327,15 +1327,15 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterProperty("data", NewSlot(&DOMCharacterData::GetData),
++ this->RegisterProperty("data", NewSlot(&DOMCharacterData::GetData),
+ NewSlot(&DOMCharacterData::SetData));
+- RegisterProperty("length", NewSlot(&DOMCharacterData::GetLength), NULL);
+- RegisterMethod("substringData",
++ this->RegisterProperty("length", NewSlot(&DOMCharacterData::GetLength), NULL);
++ this->RegisterMethod("substringData",
+ NewSlot(&DOMCharacterData::ScriptSubstringData));
+- RegisterMethod("appendData", NewSlot(&DOMCharacterData::AppendData));
+- RegisterMethod("insertData", NewSlot(&DOMCharacterData::ScriptInsertData));
+- RegisterMethod("deleteData", NewSlot(&DOMCharacterData::ScriptDeleteData));
+- RegisterMethod("replaceData",
++ this->RegisterMethod("appendData", NewSlot(&DOMCharacterData::AppendData));
++ this->RegisterMethod("insertData", NewSlot(&DOMCharacterData::ScriptInsertData));
++ this->RegisterMethod("deleteData", NewSlot(&DOMCharacterData::ScriptDeleteData));
++ this->RegisterMethod("replaceData",
+ NewSlot(&DOMCharacterData::ScriptReplaceData));
+ }
+
+@@ -1377,20 +1377,20 @@
+ private:
+ UTF16String ScriptSubstringData(size_t offset, size_t count) {
+ UTF16String result;
+- CheckException(SubstringData(offset, count, &result));
++ this->CheckException(SubstringData(offset, count, &result));
+ return result;
+ }
+
+ void ScriptInsertData(size_t offset, const UTF16String &arg) {
+- CheckException(InsertData(offset, arg));
++ this->CheckException(InsertData(offset, arg));
+ }
+
+ void ScriptDeleteData(size_t offset, size_t count) {
+- CheckException(DeleteData(offset, count));
++ this->CheckException(DeleteData(offset, count));
+ }
+
+ void ScriptReplaceData(size_t offset, size_t count, const UTF16String &arg) {
+- CheckException(ReplaceData(offset, count, arg));
++ this->CheckException(ReplaceData(offset, count, arg));
+ }
+
+ DOMCharacterDataImpl impl_;
+@@ -1417,10 +1417,10 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterProperty("name", NewSlot(&DOMAttr::GetName), NULL);
++ this->RegisterProperty("name", NewSlot(&DOMAttr::GetName), NULL);
+ // Our DOMAttrs are always specified, because we don't support DTD for now.
+- RegisterConstant("specified", true);
+- RegisterProperty("value", NewSlot(&DOMAttr::GetValue),
++ this->RegisterConstant("specified", true);
++ this->RegisterProperty("value", NewSlot(&DOMAttr::GetValue),
+ NewSlot(&DOMAttr::SetValue));
+ // ownerElement is a DOM2 property, so not registered for now.
+ }
+@@ -1516,19 +1516,19 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterProperty("tagName", NewSlot(&DOMElement::GetTagName), NULL);
+- RegisterMethod("getAttribute", NewSlot(&DOMElement::GetAttribute));
+- RegisterMethod("setAttribute",
++ this->RegisterProperty("tagName", NewSlot(&DOMElement::GetTagName), NULL);
++ this->RegisterMethod("getAttribute", NewSlot(&DOMElement::GetAttribute));
++ this->RegisterMethod("setAttribute",
+ NewSlot(&DOMElement::ScriptSetAttribute));
+- RegisterMethod("removeAttribute",
++ this->RegisterMethod("removeAttribute",
+ NewSlot(&DOMElement::RemoveAttribute));
+- RegisterMethod("getAttributeNode",
++ this->RegisterMethod("getAttributeNode",
+ NewSlot(&DOMElement::GetAttributeNodeNotConst));
+- RegisterMethod("setAttributeNode",
++ this->RegisterMethod("setAttributeNode",
+ NewSlot(&DOMElement::ScriptSetAttributeNode));
+- RegisterMethod("removeAttributeNode",
++ this->RegisterMethod("removeAttributeNode",
+ NewSlot(&DOMElement::ScriptRemoveAttributeNode));
+- RegisterMethod("getElementsByTagName",
++ this->RegisterMethod("getElementsByTagName",
+ NewSlot(&Super::GetElementsByTagNameNotConst));
+ }
+
+@@ -1696,16 +1696,16 @@
+ }
+
+ virtual void DoClassRegister() {
+- RegisterProperty("length", NewSlot(&AttrsNamedMap::GetLength), NULL);
+- RegisterMethod("getNamedItem",
++ this->RegisterProperty("length", NewSlot(&AttrsNamedMap::GetLength), NULL);
++ this->RegisterMethod("getNamedItem",
+ NewSlot(&AttrsNamedMap::GetNamedItemNotConst));
+- RegisterMethod("setNamedItem",
++ this->RegisterMethod("setNamedItem",
+ NewSlot(&AttrsNamedMap::ScriptSetNamedItem));
+- RegisterMethod("removeNamedItem",
++ this->RegisterMethod("removeNamedItem",
+ NewSlot(&AttrsNamedMap::ScriptRemoveNamedItem));
+- RegisterMethod("item", NewSlot(&AttrsNamedMap::GetItemNotConst));
++ this->RegisterMethod("item", NewSlot(&AttrsNamedMap::GetItemNotConst));
+ // Microsoft compatibility.
+- RegisterMethod("", NewSlot(&AttrsNamedMap::GetItemNotConst));
++ this->RegisterMethod("", NewSlot(&AttrsNamedMap::GetItemNotConst));
+ }
+
+ virtual DOMNodeInterface *GetNamedItem(const std::string &name) {
+@@ -1875,7 +1875,7 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterMethod("splitText", NewSlot(&DOMText::ScriptSplitText));
++ this->RegisterMethod("splitText", NewSlot(&DOMText::ScriptSplitText));
+ }
+
+ virtual NodeType GetNodeType() const { return TEXT_NODE; }
+@@ -2060,9 +2060,9 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterProperty("target",
++ this->RegisterProperty("target",
+ NewSlot(&DOMProcessingInstruction::GetTarget), NULL);
+- RegisterProperty("data", NewSlot(&DOMProcessingInstruction::GetData),
++ this->RegisterProperty("data", NewSlot(&DOMProcessingInstruction::GetData),
+ NewSlot(&DOMProcessingInstruction::SetData));
+ }
+
+@@ -2109,7 +2109,7 @@
+ DEFINE_CLASS_ID(0xd23149a89cf24e12, DOMImplementationInterface);
+
+ virtual void DoClassRegister() {
+- RegisterMethod("hasFeature", NewSlot(&DOMImplementation::HasFeature));
++ this->RegisterMethod("hasFeature", NewSlot(&DOMImplementation::HasFeature));
+ }
+
+ virtual bool HasFeature(const char *feature, const char *version) const {
+@@ -2129,13 +2129,13 @@
+ void SetCode(int code) { code_ = code; }
+
+ virtual void DoClassRegister() {
+- RegisterProperty("errorCode", NewSlot(&ParseError::GetCode), NULL);
+- RegisterConstant("filepos", 0);
+- RegisterConstant("line", 0);
+- RegisterConstant("linepos", 0);
+- RegisterConstant("reason", "");
+- RegisterConstant("srcText", "");
+- RegisterConstant("url", "");
++ this->RegisterProperty("errorCode", NewSlot(&ParseError::GetCode), NULL);
++ this->RegisterConstant("filepos", 0);
++ this->RegisterConstant("line", 0);
++ this->RegisterConstant("linepos", 0);
++ this->RegisterConstant("reason", "");
++ this->RegisterConstant("srcText", "");
++ this->RegisterConstant("url", "");
+ }
+
+ private:
+@@ -2180,45 +2180,45 @@
+
+ virtual void DoClassRegister() {
+ Super::DoClassRegister();
+- RegisterConstant("doctype", static_cast<ScriptableInterface *>(NULL));
+- RegisterConstant("implementation", &dom_implementation_);
+- RegisterProperty("documentElement",
++ this->RegisterConstant("doctype", static_cast<ScriptableInterface *>(NULL));
++ this->RegisterConstant("implementation", &dom_implementation_);
++ this->RegisterProperty("documentElement",
+ NewSlot(&DOMDocument::GetDocumentElementNotConst), NULL);
+- RegisterMethod("loadXML", NewSlot(&DOMDocument::LoadXML));
+- RegisterMethod("createElement",
++ this->RegisterMethod("loadXML", NewSlot(&DOMDocument::LoadXML));
++ this->RegisterMethod("createElement",
+ NewSlot(&DOMDocument::ScriptCreateElement));
+- RegisterMethod("createDocumentFragment",
++ this->RegisterMethod("createDocumentFragment",
+ NewSlot(&DOMDocument::CreateDocumentFragment));
+- RegisterMethod("createTextNode",
++ this->RegisterMethod("createTextNode",
+ NewSlot(&DOMDocument::CreateTextNode));
+- RegisterMethod("createComment", NewSlot(&DOMDocument::CreateComment));
+- RegisterMethod("createCDATASection",
++ this->RegisterMethod("createComment", NewSlot(&DOMDocument::CreateComment));
++ this->RegisterMethod("createCDATASection",
+ NewSlot(&DOMDocument::CreateCDATASection));
+- RegisterMethod("createProcessingInstruction",
++ this->RegisterMethod("createProcessingInstruction",
+ NewSlot(&DOMDocument::ScriptCreateProcessingInstruction));
+- RegisterMethod("createAttribute",
++ this->RegisterMethod("createAttribute",
+ NewSlot(&DOMDocument::ScriptCreateAttribute));
+- RegisterMethod("createEntityReference",
++ this->RegisterMethod("createEntityReference",
+ NewSlot(&DOMDocument::ScriptCreateEntityReference));
+- RegisterMethod("getElementsByTagName",
++ this->RegisterMethod("getElementsByTagName",
+ NewSlot(&Super::GetElementsByTagNameNotConst));
+- RegisterMethod("importNode", NewSlot(&DOMDocument::ScriptImportNode));
++ this->RegisterMethod("importNode", NewSlot(&DOMDocument::ScriptImportNode));
+ // Compatibility with Microsoft DOM.
+- RegisterProperty("parsed", NewFixedGetterSlot(true), NULL);
+- RegisterProperty("parseError", NewSlot(&DOMDocument::GetParseError), NULL);
+- RegisterProperty("resolveExternals", NULL, NewSlot(&DummySetter));
+- RegisterProperty("validateOnParse", NULL, NewSlot(&DummySetter));
+- RegisterProperty("preserveWhiteSpace",
++ this->RegisterProperty("parsed", NewFixedGetterSlot(true), NULL);
++ this->RegisterProperty("parseError", NewSlot(&DOMDocument::GetParseError), NULL);
++ this->RegisterProperty("resolveExternals", NULL, NewSlot(&DummySetter));
++ this->RegisterProperty("validateOnParse", NULL, NewSlot(&DummySetter));
++ this->RegisterProperty("preserveWhiteSpace",
+ NewSlot(&DOMDocument::PreservesWhiteSpace),
+ NewSlot(&DOMDocument::SetPreserveWhiteSpace));
+- RegisterMethod("getProperty", NewSlot(DummyGetProperty));
+- RegisterMethod("setProperty", NewSlot(DummySetProperty));
++ this->RegisterMethod("getProperty", NewSlot(DummyGetProperty));
++ this->RegisterMethod("setProperty", NewSlot(DummySetProperty));
+ // Compatibility with Microsoft DOM: XMLHttpRequest functions.
+- RegisterProperty("async", NewSlot(&DOMDocument::IsAsync),
++ this->RegisterProperty("async", NewSlot(&DOMDocument::IsAsync),
+ NewSlot(&DOMDocument::SetAsync));
+- RegisterProperty("readyState", NewSlot(&DOMDocument::GetReadyState), NULL);
+- RegisterMethod("load", NewSlot(&DOMDocument::Load));
+- RegisterClassSignal("onreadystatechange",
++ this->RegisterProperty("readyState", NewSlot(&DOMDocument::GetReadyState), NULL);
++ this->RegisterMethod("load", NewSlot(&DOMDocument::Load));
++ this->RegisterClassSignal("onreadystatechange",
+ &DOMDocument::onreadystatechange_signal_);
+ }
+
+--- a/ggadget/xdg/icon_theme.cc
++++ b/ggadget/xdg/icon_theme.cc
+@@ -16,6 +16,7 @@
+ #include <sys/time.h>
+ #include <time.h>
+ #include <cstdlib>
++#include <unistd.h>
+
+ #include <map>
+ #include <vector>
+--- a/extensions/qt_system_framework/qt_system_framework.cc
++++ b/extensions/qt_system_framework/qt_system_framework.cc
+@@ -32,6 +32,7 @@
+ #include <ggadget/xdg/desktop_entry.h>
+ #include <ggadget/xdg/icon_theme.h>
+ #include <ggadget/xdg/utilities.h>
++#include <unistd.h>
+
+ #define Initialize qt_system_framework_LTX_Initialize
+ #define Finalize qt_system_framework_LTX_Finalize
+--- a/extensions/linux_system_framework/process.cc
++++ b/extensions/linux_system_framework/process.cc
+@@ -17,6 +17,7 @@
+ #include <sys/types.h>
+ #include <dirent.h>
+ #include <cstdlib>
++#include <unistd.h>
+
+ #ifdef HAVE_X11
+ #include <X11/Xlib.h>
+--- a/gadgets/designer/designer_script_utils.cc
++++ b/gadgets/designer/designer_script_utils.cc
+@@ -39,6 +39,7 @@
+ #include <ggadget/system_utils.h>
+ #include <ggadget/uuid.h>
+ #include <ggadget/view_interface.h>
++#include <unistd.h>
+
+ namespace ggadget {
+ namespace designer {
diff --git a/community/google-gadgets/google-gadgets-0.11.2-glib-2.31.patch b/community/google-gadgets/google-gadgets-0.11.2-glib-2.31.patch
new file mode 100644
index 000000000..912f47235
--- /dev/null
+++ b/community/google-gadgets/google-gadgets-0.11.2-glib-2.31.patch
@@ -0,0 +1,25 @@
+--- google-gadgets-for-linux-0.11.2.orig/ggadget/gtk/main_loop.cc 2009-12-28 05:39:59.000000000 -0500
++++ google-gadgets-for-linux-0.11.2/ggadget/gtk/main_loop.cc 2012-12-03 19:27:35.160966552 -0500
+@@ -16,9 +16,8 @@
+
+ #include <fcntl.h>
+ #include <stdint.h>
+-#include <glib/ghash.h>
++#include <glib.h>
+ #include <gtk/gtk.h>
+-#include <glib/gthread.h>
+ #include <ggadget/common.h>
+ #include "main_loop.h"
+ #include "utilities.h"
+
+--- google-gadgets-for-linux-0.11.2.orig/hosts/gtk/main.cc 2009-09-22 04:12:00.000000000 -0500
++++ google-gadgets-for-linux-0.11.2/hosts/gtk/main.cc 2012-12-01 03:56:37.320907813 -0500
+@@ -15,7 +15,7 @@
+ */
+
+ #include <gtk/gtk.h>
+-#include <glib/gthread.h>
++#include <glib.h>
+ #include <locale.h>
+ #include <signal.h>
+ #include <unistd.h>