Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:11.4
python-gnome-extras
xulrunner19.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File xulrunner19.patch of Package python-gnome-extras
diff -uprN gnome-python-extras-2.25.3.orig/configure.ac gnome-python-extras-2.25.3/configure.ac --- gnome-python-extras-2.25.3.orig/configure.ac 2009-04-30 13:52:57.000000000 +0200 +++ gnome-python-extras-2.25.3/configure.ac 2009-04-30 13:53:05.000000000 +0200 @@ -18,7 +18,7 @@ m4_define(gnome_python_required_version, m4_define(gtkhtml2_required_version, 2.3.1) m4_define(mozilla_required_version, 1.2b) m4_define(firefox_required_version, 1.0) -m4_define(xulrunner_required_version, 1.8) +m4_define(xulrunner_required_version, 1.9) m4_define(libgda_required_version, 3.99.11) m4_define(gksu_required_version, 1.2.5) m4_define(gksu2_required_version, 2.0.4) @@ -38,6 +38,8 @@ AC_DEFINE(GNOME_PYTHON_EXTRAS_MINOR_VERS AC_DEFINE(GNOME_PYTHON_EXTRAS_MICRO_VERSION, gnome_python_extras_micro_version, [Gnome-Python-Extras macro version]) +AC_PROG_CXX + dnl AC_ARG_BINDING(NAME, DEFAULT [, MODULENAME]) AC_DEFUN([AC_ARG_BINDING], [AC_ARG_ENABLE([$1], @@ -237,58 +239,81 @@ AC_ARG_WITH(gtkmozembed, AS_HELP_STRING( if "$build_gtkmozembed"; then if test $mozpackage = any ; then -PKG_CHECK_MODULES(GTKMOZEMBED, [xulrunner-gtkmozembed >= xulrunner_required_version - gtk+-2.0 >= gtk_required_version], - [build_gtkmozembed=true; mozpackage=xulrunner], +PKG_CHECK_MODULES(GTKMOZEMBED, [libxul-embedding >= xulrunner_required_version + nspr >= 4.7 + gtk+-2.0 >= gtk_required_version], + [build_gtkmozembed=true; mozpackage=xulrunner; + GTKMOZEMBED_CODEGEN_DEFINES="-DHAVE_XUL19"; mozpkgconfig=libxul-embedding], [ PKG_CHECK_MODULES(GTKMOZEMBED, [firefox-gtkmozembed >= firefox_required_version gtk+-2.0 >= gtk_required_version], - [build_gtkmozembed=true; mozpackage=firefox], + [build_gtkmozembed=true; mozpackage=firefox; mozpkgconfig=$mozpackage-gtkmozembed], [ PKG_CHECK_MODULES(GTKMOZEMBED, [mozilla-gtkmozembed >= mozilla_required_version gtk+-2.0 >= gtk_required_version], - [build_gtkmozembed=true; mozpackage=mozilla], + [build_gtkmozembed=true; mozpackage=mozilla; mozpkgconfig=$mozpackage-gtkmozembed], build_gtkmozembed=false) ]) ]) else +GTKMOZEMBED_CODEGEN_DEFINES="" case $mozpackage in - xulrunner) mozpackage_required_version=xulrunner_required_version ;; - firefox) mozpackage_required_version=firefox_required_version ;; - mozilla) - mozpackage_required_version=mozilla_required_version - AC_MSG_CHECKING([for extra gtkmozembed code generation flags]) - PKG_CHECK_MODULES(XUL19, mozilla-gtkmozembed >= 0.21 gtk+-2.0, - GTKMOZEMBED_CODEGEN_DEFINES="-DHAVE_XUL19", - GTKMOZEMBED_CODEGEN_DEFINES="") - AC_MSG_RESULT([$GTKMOZEMBED_CODEGEN_DEFINES]) - ;; + xulrunner) + mozpackage_required_version=xulrunner_required_version + GTKMOZEMBED_CODEGEN_DEFINES="-DHAVE_XUL19" + mozpkgconfig=libxul-embedding + ;; + firefox) mozpackage_required_version=firefox_required_version; mozpkgconfig=$mozpackage-gtkmozembed ;; + mozilla) mozpackage_required_version=mozilla_required_version; mozpkgconfig=$mozpackage-gtkmozembed ;; *) AC_MSG_ERROR([--with-gtkmozembed argument must be either 'mozilla', 'firefox', or 'xulrunner']) esac AC_SUBST(GTKMOZEMBED_CODEGEN_DEFINES) -PKG_CHECK_MODULES(GTKMOZEMBED, [$mozpackage-gtkmozembed >= $mozpackage_required_version, - gtk+-2.0 >= gtk_required_version], +PKG_CHECK_MODULES(GTKMOZEMBED, [$mozpkgconfig>= $mozpackage_required_version, + gtk+-2.0 >= gtk_required_version], build_gtkmozembed=true, build_gtkmozembed=false) fi AM_CONDITIONAL(BUILD_GTKMOZEMBED, $build_gtkmozembed) -if test -n "$export_dynamic"; then - GTKMOZEMBED_LIBS=`echo $GTKMOZEMBED_LIBS | sed -e "s/$export_dynamic//"` -fi -MOZILLA_HOME="`$PKG_CONFIG --variable=libdir $mozpackage-gtkmozembed`" -if test -z "$MOZILLA_HOME"; then - MOZILLA_HOME="`$PKG_CONFIG --variable=sdkdir $mozpackage-gtkmozembed`/lib" -fi -AC_SUBST(MOZILLA_HOME) +if test $mozpackage = xulrunner; then + GTKMOZEMBED_CFLAGS="$(pkg-config --cflags --define-variable=includetype=unstable libxul-embedding gtk+-2.0 nspr)" +else + MOZILLA_HOME="`$PKG_CONFIG --variable=libdir $mozpackage-gtkmozembed`" + if test -z "$MOZILLA_HOME"; then + MOZILLA_HOME="`$PKG_CONFIG --variable=sdkdir $mozpackage-gtkmozembed`/lib" + fi + AC_SUBST(MOZILLA_HOME) +fi # $mozpackage = xulrunner fi # if build_gtkmozembed AM_CONDITIONAL(BUILD_GTKMOZEMBED, $build_gtkmozembed) + +AC_LANG_PUSH(C++) +_SAVE_CPPFLAGS=$CPPFLAGS +_SAVE_CXXFLAGS=$CXXFLAGS +CXXFLAGS=$GTKMOZEMBED_CFLAGS +CPPFLAGS= +AC_COMPILE_IFELSE([AC_LANG_SOURCE( +[[#ifndef XPCOM_GLUE +#error "no xpcom glue" +#endif]])], +[have_xpcom_glue=yes], [have_xpcom_glue=yes] +) +CPPFLAGS=$_SAVE_CPPFLAGS +CXXFLAGS=$_SAVE_CXXFLAGS +AC_LANG_POP(C++) + +AM_CONDITIONAL(HAVE_XPCOM_GLUE, [test $have_xpcom_glue=yes]) +if test "$have_xpcom_glue" = "yes"; then + AC_DEFINE(HAVE_XPCOM_GLUE, 1, + [Define to 1 if libxpcomglue is being used.]) +fi + if test -n "$export_dynamic"; then GTKMOZEMBED_LIBS=`echo $GTKMOZEMBED_LIBS | sed -e "s/$export_dynamic//"` fi diff -uprN gnome-python-extras-2.25.3.orig/gtkmozembed/gtkmozembedmodule.c gnome-python-extras-2.25.3/gtkmozembed/gtkmozembedmodule.c --- gnome-python-extras-2.25.3.orig/gtkmozembed/gtkmozembedmodule.c 2009-04-30 13:52:57.000000000 +0200 +++ gnome-python-extras-2.25.3/gtkmozembed/gtkmozembedmodule.c 1970-01-01 01:00:00.000000000 +0100 @@ -1,29 +0,0 @@ -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -/* include this first, before NO_IMPORT_PYGOBJECT is defined */ -#include <pygobject.h> - -void pygtkmozembed_register_classes (PyObject *d); -void pygtkmozembed_add_constants(PyObject *module, const gchar *strip_prefix); - -extern PyMethodDef pygtkmozembed_functions[]; - -DL_EXPORT(void) -initgtkmozembed(void) -{ - PyObject *m, *d; - - init_pygobject (); - - m = Py_InitModule ("gtkmozembed", pygtkmozembed_functions); - d = PyModule_GetDict (m); - - pygtkmozembed_register_classes (d); - pygtkmozembed_add_constants(m, "GTK_MOZ_EMBED_"); - - if (PyErr_Occurred ()) { - Py_FatalError ("can't initialise module gtkmozembed"); - } -} diff -uprN gnome-python-extras-2.25.3.orig/gtkmozembed/gtkmozembedmodule.cpp gnome-python-extras-2.25.3/gtkmozembed/gtkmozembedmodule.cpp --- gnome-python-extras-2.25.3.orig/gtkmozembed/gtkmozembedmodule.cpp 1970-01-01 01:00:00.000000000 +0100 +++ gnome-python-extras-2.25.3/gtkmozembed/gtkmozembedmodule.cpp 2009-04-30 13:55:23.000000000 +0200 @@ -0,0 +1,72 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +/* include this first, before NO_IMPORT_PYGOBJECT is defined */ +#include <pygobject.h> +#include <pygtk/pygtk.h> + +#ifdef XPCOM_GLUE +#include "gtkmozembed_glue.cpp" +#endif + +G_BEGIN_DECLS +void initgtkmozembed(void); +void pygtkmozembed_add_constants(PyObject *module, const gchar *strip_prefix); +void pygtkmozembed_register_classes (PyObject *d); +G_END_DECLS + +extern PyMethodDef pygtkmozembed_functions[]; + +void +initgtkmozembed(void) +{ + PyObject *m, *d; + int argc = 0; + + init_pygobject (); + +#ifdef XPCOM_GLUE + static const GREVersionRange greVersion = { + "1.9b", PR_TRUE, + "1.9.*", PR_TRUE + }; + char xpcomLocation[4096]; + nsresult rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcomLocation, 4096); + if (NS_FAILED(rv)) { + printf("GRE_GetGREPathWithProperties failed\n"); + return; + } + + // Startup the XPCOM Glue that links us up with XPCOM. + XPCOMGlueStartup(xpcomLocation); + if (NS_FAILED(rv)) { + printf("XPCOMGlueStartup failed\n"); + return; + } + + rv = GTKEmbedGlueStartup(); + if (NS_FAILED(rv)) {printf("location: %s \n", xpcomLocation); + printf("GTKEmbedGlueStartup failed\n"); + return; + } + + //gtk_moz_embed_set_comp_path(xpcomLocation); + + char *lastSlash = strrchr(xpcomLocation, '/'); + if (lastSlash) + *lastSlash = '\0'; + + gtk_moz_embed_set_path(xpcomLocation); +#endif + + m = Py_InitModule ("gtkmozembed", pygtkmozembed_functions); + d = PyModule_GetDict (m); + + pygtkmozembed_add_constants(m, "GTK_MOZ_EMBED_"); + pygtkmozembed_register_classes (d); + + if (PyErr_Occurred ()) { + Py_FatalError ("can't initialise module gtkmozembed"); + } +} diff -uprN gnome-python-extras-2.25.3.orig/gtkmozembed/Makefile.am gnome-python-extras-2.25.3/gtkmozembed/Makefile.am --- gnome-python-extras-2.25.3.orig/gtkmozembed/Makefile.am 2009-04-30 13:52:57.000000000 +0200 +++ gnome-python-extras-2.25.3/gtkmozembed/Makefile.am 2009-04-30 13:53:05.000000000 +0200 @@ -12,10 +12,16 @@ pkgpyexecdir = $(pyexecdir)/gtk-2.0 # gtkmozembed module pkgpyexec_LTLIBRARIES = gtkmozembed.la gtkmozembed_la_LDFLAGS = -module -avoid-version \ - -export-symbols-regex initgtkmozembed \ - -R$(MOZILLA_HOME) -L$(MOZILLA_HOME) + -export-symbols-regex initgtkmozembed \ + $(NULL) + +# only use rpath for non-glue builds +if !HAVE_XPCOM_GLUE + gtkmozembed_la_LDFLAGS + = -R$(MOZILLA_HOME) -L$(MOZILLA_HOME) +endif + gtkmozembed_la_LIBADD = $(GTKMOZEMBED_LIBS) -gtkmozembed_la_SOURCES = gtkmozembedmodule.c +gtkmozembed_la_SOURCES = gtkmozembedmodule.cpp nodist_gtkmozembed_la_SOURCES = gtkmozembed.c gtkmozembed.c: gtkmozembed.defs gtkmozembed.override CLEANFILES = gtkmozembed.c
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor