tag 480799 + help
tag 473702 + help
stop

        Hi,

 I didn't expect my journey to build galeon against xulrunner 1.9 to be
 so long; I reached the point today where I don't really know how to
 continue further; it would probably require understanding many concepts
 of XPCOM glue which I'm far from mastering.  I've pushed the decent
 changes to SVN as individual patches:
    svn.debian.org/svn/pkg-galeon/unstable/galeon

 I tried some random changes in the attached random changes patch; the
 only one I'm pretty confident with is the MOZILLA_HOME one.  The other
 ones were attempts to get the thing to build.  I could reach the final
 link with them in place, but the linking fails due to hidden symbols
 being missing.  At this point I know it's related to glue things, but
 there are too many hacks in place for me to claim this is useful or
 safe to run by Debian users.

 I welcome any help in finishing the port; it probably needs some hours
 of someone knowing how mozembed should now be used with glue defines
 and links.

 Be careful with some of the recent changes I introduced, I'm not too
 confident with the fixes I came up with.  :-/

   Thanks,
-- 
Loïc Minier
--- a/configure.in
+++ b/configure.in
@@ -263,13 +263,17 @@ if test $MOZILLA = libxul-embedding-unstable; then
 fi
 AC_SUBST(MOZILLA_INCLUDE_ROOT)
 
-MOZILLA_HOME="`$PKG_CONFIG --variable=libdir $MOZILLA_XPCOM`"
+AC_ARG_WITH([gecko-home],
+        AS_HELP_STRING([--with-gecko-home@<:@=[path]@:>@],
+                       [Manually set MOZILLA_FIVE_HOME]),
+        MOZILLA_HOME=$with_gecko_home,
+        MOZILLA_HOME="`$PKG_CONFIG --variable=libdir $MOZILLA_XPCOM`")
 AC_SUBST(MOZILLA_HOME)
 
 PKG_CHECK_MODULES(MOZILLA_COMPONENT, $MOZILLA-gtkmozembed >= $min_version,
 		  [has_gtkmozembed=yes], [has_gtkmozembed=no])
 if test "x$has_gtkmozembed" = "xno"; then
-	MOZILLA_COMPONENT_CFLAGS="$XPCOM_COMPONENT_CFLAGS -I$MOZILLA_INCLUDE_ROOT/gtkembedmoz"
+	MOZILLA_COMPONENT_CFLAGS="$XPCOM_COMPONENT_CFLAGS -I$MOZILLA_INCLUDE_ROOT/gtkembedmoz -DXPCOM_GLUE_USE_NSPR"
 	MOZILLA_COMPONENT_LIBS="$XPCOM_COMPONENT_LIBS -lxul"
 fi
 
--- a/mozilla/JSConsoleListener.cpp
+++ b/mozilla/JSConsoleListener.cpp
@@ -50,7 +50,7 @@ NS_IMETHODIMP JSConsoleListener::Observe(nsIConsoleMessage *aMessage)
 {
 	PRUnichar *message;
 
-	aMessage->GetMessage (&message);
+	aMessage->GetMessageMoz (&message);
 
 	GaleonJSConsole * js_console;
 	js_console = galeon_embed_shell_get_js_console (embed_shell);
--- a/mozilla/MozRegisterComponents.cpp
+++ b/mozilla/MozRegisterComponents.cpp
@@ -52,7 +52,13 @@
 #include <nsICategoryManager.h>
 #include <nsIComponentManager.h>
 #include <nsCOMPtr.h>
+#ifdef XPCOM_GLUE
+#define XPCOM_GLUE_USE_NSPR
+#include <gtkmozembed_glue.cpp>
+#include <nsXPCOMGlue.h>
+#else
 #include <nsXPCOM.h>
+#endif
 #include <nsComponentManagerUtils.h>
 #include <nsServiceManagerUtils.h>
 #include <nsDocShellCID.h>
--- a/mozilla/mozilla-embed.cpp
+++ b/mozilla/mozilla-embed.cpp
@@ -26,6 +26,12 @@
 #define MOZILLA_CLIENT
 #include "gtkmozembed.h"
 #undef MOZILLA_CLIENT
+#ifdef XPCOM_GLUE
+#include <gtkmozembed_glue.cpp>
+#include <nsXPCOMGlue.h>
+#else
+#include <nsXPCOM.h>
+#endif
 #include "gul-string.h"
 #include "galeon-embed-utils.h"
 #include "galeon-embed.h"
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -145,7 +145,7 @@ galeon_LDADD = \
 	$(GALEON_DEPENDENCY_LIBS) \
 	$(INTLLIBS)
 
-galeon_LDFLAGS = -R$(MOZILLA_HOME) -dlopen self
+galeon_LDFLAGS = -rpath $(MOZILLA_HOME) -dlopen self
 
 if ENABLE_GTKHTML_EMBED
 gtkhtmlembed_libs = $(top_builddir)/gtkhtml/libgtkhtmlembed.la

Reply via email to