Date: Wednesday, March 23, 2011 @ 16:48:02
  Author: daniel
Revision: 116437

Add patches to compile gluezilla against xulrunner 2.0

Added:
  gluezilla/trunk/xulrunner2.0.patch
  gluezilla/trunk/xulrunner2.0_configure.patch
Modified:
  gluezilla/trunk/PKGBUILD

------------------------------+
 PKGBUILD                     |   14 ++-
 xulrunner2.0.patch           |  150 +++++++++++++++++++++++++++++++++++++++++
 xulrunner2.0_configure.patch |   51 +++++++++++++
 3 files changed, 210 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2011-03-23 19:58:24 UTC (rev 116436)
+++ PKGBUILD    2011-03-23 20:48:02 UTC (rev 116437)
@@ -7,19 +7,23 @@
 arch=(i686 x86_64)
 license=('LGPL2' 'MPL')
 url="http://www.mono-project.com/";
-depends=('mono' 'xulrunner>=1.9.2.2')
+depends=('mono' 'xulrunner>=2.0')
 makedepends=('pkgconfig')
 options=('!libtool')
-source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2
 configure_xulrunner.patch)
+source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2
 xulrunner2.0.patch xulrunner2.0_configure.patch)
 md5sums=('bd4eb89747498945227877295fcd36b5'
-         '57296aa02aad2cfb42772ccb6b5302cf')
+         '26ea3af3ef5ce045a13a3f3ee54cf0f6'
+         '06faa671dd791868701d98e610fcbc7e')
 
 build() {
   cd ${srcdir}/gluezilla-${pkgver}
-  patch < ${srcdir}/configure_xulrunner.patch || return 1
+  patch -p1 < ${srcdir}/xulrunner2.0.patch || return 1
+  patch -p1 < ${srcdir}/xulrunner2.0_configure.patch || return 1
+  
+  rm configure
+  autoconf
   ./configure --prefix=/usr
   make || return 1
   make DESTDIR=${pkgdir} install || return 1
 
 }
-

Added: xulrunner2.0.patch
===================================================================
--- xulrunner2.0.patch                          (rev 0)
+++ xulrunner2.0.patch  2011-03-23 20:48:02 UTC (rev 116437)
@@ -0,0 +1,150 @@
+diff --git a/src/BrowserWindow.cpp b/src/BrowserWindow.cpp
+index f260295..10ae7bd 100755
+--- a/src/BrowserWindow.cpp
++++ b/src/BrowserWindow.cpp
+@@ -28,23 +28,6 @@
+ NS_GENERIC_FACTORY_CONSTRUCTOR(SecurityWarningDialogs)
+ NS_GENERIC_FACTORY_CONSTRUCTOR(PromptService)
+ 
+-static const nsModuleComponentInfo components[] = {
+-  {
+-      SECURITYWARNINGSDIALOGS_CLASSNAME,
+-      SECURITYWARNINGSDIALOGS_CID,
+-      NS_SECURITYWARNINGDIALOGS_CONTRACTID,
+-      SecurityWarningDialogsConstructor
+-  },
+-  {
+-      PROMPTSERVICE_CLASSNAME,
+-      PROMPTSERVICE_CID,
+-      NS_PROMPTSERVICE_CONTRACTID,
+-      PromptServiceConstructor
+-  }
+-
+-};
+-
+-
+ BrowserWindow::BrowserWindow (void)
+ {
+       owner = nsnull;
+@@ -162,17 +145,17 @@ nsresult BrowserWindow::RegisterComponents ()
+     nsCOMPtr<nsIFactory> componentFactory;
+     rv = 
NS_NewSecurityWarningServiceFactory(getter_AddRefs(componentFactory));
+     if (NS_SUCCEEDED(rv)) {
+-        compReg->RegisterFactory(components[0].mCID,
+-                                 components[0].mDescription,
+-                                 components[0].mContractID,
++              compReg->RegisterFactory(kSECURITYWARNINGSDIALOGS_CID,
++                                 SECURITYWARNINGSDIALOGS_CLASSNAME,
++                                 NS_SECURITYWARNINGDIALOGS_CONTRACTID,
+                                  componentFactory);
+       }
+ 
+     rv = NS_NewPromptServiceFactory(getter_AddRefs(componentFactory), this);
+     if (NS_SUCCEEDED(rv)) {
+-        compReg->RegisterFactory(components[1].mCID,
+-                                 components[1].mDescription,
+-                                 components[1].mContractID,
++        compReg->RegisterFactory(kPROMPTSERVICE_CID,
++                                 PROMPTSERVICE_CLASSNAME,
++                                 NS_PROMPTSERVICE_CONTRACTID,
+                                  componentFactory);
+       }
+ 
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 3b7bce3..cd6ec99 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -26,7 +26,7 @@ libgluezilla_la_SOURCES =    \
+       gluezilla.h   \
+       FastDelegate.h
+ 
+-if OLDXUL
++if XUL_2
+ libgluezilla_la_SOURCES += \
+       gluezilla_nsIScriptContext.h \
+       gluezilla_nsIScriptGlobalObject.h
+diff --git a/src/PromptService.h b/src/PromptService.h
+index 04fddb9..174bca4 100644
+--- a/src/PromptService.h
++++ b/src/PromptService.h
+@@ -20,8 +20,9 @@
+ // {77686174-2061-6d20-6920-746F20646F20}
+ #define PROMPTSERVICE_CID \
+ { 0x77686174, 0x2061, 0x6d20, { 0x69, 0x20, 0x74, 0x6F, 0x20, 0x64, 0x6F, 
0x20 } }
+-
+-
++
++static NS_DEFINE_CID(kPROMPTSERVICE_CID, PROMPTSERVICE_CID);
++
+ class PromptService : public nsIPromptService
+ {
+       NS_DECL_ISUPPORTS
+diff --git a/src/SecurityWarningsDialogs.h b/src/SecurityWarningsDialogs.h
+index b75f529..ae352ad 100644
+--- a/src/SecurityWarningsDialogs.h
++++ b/src/SecurityWarningsDialogs.h
+@@ -21,8 +21,9 @@
+ // {696E7465-7265-7374-696E-67206C696665}
+ #define SECURITYWARNINGSDIALOGS_CID \
+ { 0x696E7465, 0x7265, 0x7374, { 0x69, 0x6E, 0x67, 0x20, 0x6C, 0x69, 0x66, 
0x65 } }
+-
+-
++
++static NS_DEFINE_CID(kSECURITYWARNINGSDIALOGS_CID, 
SECURITYWARNINGSDIALOGS_CID);
++
+ class SecurityWarningDialogs : public nsISecurityWarningDialogs
+ {
+ public:
+diff --git a/src/interfaces.h b/src/interfaces.h
+index 3a9f9dd..6acebb8 100644
+--- a/src/interfaces.h
++++ b/src/interfaces.h
+@@ -4,7 +4,18 @@
+ #define TO_STRING(x) #x
+ 
+ //Gecko Embedding API
++#if XUL_VERSION < 4
+ #include <nsEmbedAPI.h>
++#else
++#include <nscore.h>
++#include <nsXPCOM.h>
++#include <nsILocalFile.h>
++#include <nsIDirectoryService.h>
++#define NS_GRE_COMPONENT_DIR                    "GreComsD"
++#define NS_XPCOM_COMPONENT_DIR                  "ComsD"
++#define NS_XPCOM_COMPONENT_REGISTRY_FILE        "ComRegF"
++#define NS_XPCOM_XPTI_REGISTRY_FILE             "XptiRegF"
++#endif
+ 
+ //XPCOM API
+ #include <nsCOMPtr.h>
+@@ -78,8 +89,12 @@
+ #include <nsIPromptService.h>
+ #include <nsISecurityWarningDialogs.h>
+ #include <nsIComponentRegistrar.h>
++#if XUL_VERSION < 4
+ #include <nsIGenericFactory.h>
+-
++#else
++#include <mozilla/ModuleUtils.h>
++struct nsModuleComponentInfo;
++#endif
+ // preferences
+ #include <nsIPrefBranch.h>
+ #include <nsIPrefService.h>
+@@ -131,12 +146,15 @@
+   typedef type (NS_FROZENCALL * name##Type) params; \
+   extern name##Type name NS_HIDDEN;
+ 
++#if XUL_VERSION < 4
+ XRE_API(nsresult,
+       XRE_InitEmbedding, (nsILocalFile *aLibXULDirectory,
+                                               nsILocalFile *aAppDirectory,
+                                               nsIDirectoryServiceProvider 
*aAppDirProvider,
+                                               nsStaticModuleInfo const 
*aStaticComponents,
+                                               PRUint32 aStaticComponentCount))
++#endif
++
+ 
+ XRE_API(void, XRE_TermEmbedding, ())
+ 

Added: xulrunner2.0_configure.patch
===================================================================
--- xulrunner2.0_configure.patch                                (rev 0)
+++ xulrunner2.0_configure.patch        2011-03-23 20:48:02 UTC (rev 116437)
@@ -0,0 +1,51 @@
+--- a/configure.ac
++++ b/configure.ac_new
+@@ -87,16 +87,23 @@
+ 
+       if test "x${oldxul}" != xyes ; then
+ 
+-              AC_MSG_CHECKING(Mozilla XPCOM > 1.8)
+-              mozilla_xpcom_pcs="libxul-embedding-unstable"
+-              for pc in $mozilla_xpcom_pcs; do
+-                      if $PKG_CONFIG --exists $pc; then
+-                              AC_MSG_RESULT($pc)
+-                              mozilla_xpcom=$pc
+-                              XUL_VERSION=3
+-                              break;
+-                      fi
+-              done
++              if test -z $mozilla_xpcom; then
++                      AC_MSG_CHECKING(Mozilla XPCOM > 1.8)
++                      mozilla_xpcom_pcs="libxul-embedding 
libxul-embedding-unstable"
++                      for pc in $mozilla_xpcom_pcs; do
++                              if $PKG_CONFIG --exists $pc; then
++                                      mozilla_xpcom=$pc
++                                      XUL_VERSION=3
++                                      version="$(pkg-config --modversion $pc)"
++                                      minor=`echo "$version" | sed -e 
's,\([[0-9]]*\)\..*,\1,'`
++                                      if test $minor -ge 2; then
++                                              XUL_VERSION=4
++                                      fi
++                                      AC_MSG_RESULT(Found $version)
++                                      break;
++                              fi
++                      done
++              fi
+       fi
+ 
+       if test -z $mozilla_xpcom; then
+@@ -121,9 +128,12 @@
+       XPCOM_PKGS="$mozilla_xpcom"
+ fi
+ 
+-AM_CONDITIONAL([OLDXUL], [test x$XUL_VERSION = x2])
+-
+ AC_SUBST(XUL_VERSION)
++
++AM_CONDITIONAL([XUL_4], [test x$XUL_VERSION = x4])
++AM_CONDITIONAL([XUL_3], [test x$XUL_VERSION = x3])
++AM_CONDITIONAL([XUL_2], [test x$XUL_VERSION = x2])
++
+ 
+ AC_ARG_ENABLE([optimize],
+       AC_HELP_STRING([--enable-optimize], [Enable optimizations (-O2)]),

Reply via email to