summaryrefslogtreecommitdiff
path: root/www/libxul/files/patch-bug799441
diff options
context:
space:
mode:
Diffstat (limited to 'www/libxul/files/patch-bug799441')
-rw-r--r--www/libxul/files/patch-bug799441116
1 files changed, 116 insertions, 0 deletions
diff --git a/www/libxul/files/patch-bug799441 b/www/libxul/files/patch-bug799441
new file mode 100644
index 000000000000..98bc613ba60d
--- /dev/null
+++ b/www/libxul/files/patch-bug799441
@@ -0,0 +1,116 @@
+commit b9accdd
+Author: Mike Hommey <mh+mozilla@glandium.org>
+Date: Thu Oct 18 14:47:10 2012 +0200
+
+ Bug 799441 - Build GIO module in libxul. r=ted
+---
+ configure.in | 6 ++++++
+ extensions/gio/Makefile.in | 14 +++-----------
+ toolkit/library/Makefile.in | 5 +++++
+ toolkit/library/nsStaticXULComponents.cpp | 7 +++++++
+ toolkit/toolkit-tiers.mk | 4 ++++
+ 5 files changed, 25 insertions(+), 11 deletions(-)
+
+diff --git configure.in configure.in
+index a9fb5f1..37e6db8 100644
+--- configure.in
++++ configure.in
+@@ -6086,6 +6086,12 @@ if test -n "$LIBXUL_SDK_DIR" -a `echo "$MOZ_EXTENSIONS" | grep -c gio` -ne 0; th
+ MOZ_EXTENSIONS=`echo $MOZ_EXTENSIONS | sed -e 's|gio||'`
+ fi
+
++if test `echo "$MOZ_EXTENSIONS" | grep -c gio` -ne 0; then
++ MOZ_GIO_COMPONENT=1
++ MOZ_EXTENSIONS=`echo $MOZ_EXTENSIONS | sed -e 's|gio||'`
++fi
++AC_SUBST(MOZ_GIO_COMPONENT)
++
+ if test -z "$MOZ_JSDEBUGGER" -a `echo "$MOZ_EXTENSIONS" | grep -c venkman` -ne 0; then
+ AC_MSG_WARN([Cannot build venkman without JavaScript debug library. Removing venkman from MOZ_EXTENSIONS.])
+ MOZ_EXTENSIONS=`echo $MOZ_EXTENSIONS | sed -e 's|venkman||'`
+diff --git extensions/gio/Makefile.in extensions/gio/Makefile.in
+index ccf2846..79112a8 100644
+--- extensions/gio/Makefile.in
++++ extensions/gio/Makefile.in
+@@ -14,6 +14,9 @@ MODULE = nkgio
+ LIBRARY_NAME = nkgio
+ SHORT_LIBNAME = nkgio
+ IS_COMPONENT = 1
++EXPORT_LIBRARY = 1
++MODULE_NAME = nsGIOModule
++LIBXUL_LIBRARY = 1
+
+ CPPSRCS = \
+ nsGIOProtocolHandler.cpp \
+@@ -21,15 +24,4 @@ CPPSRCS = \
+
+ LOCAL_INCLUDES = $(MOZ_GIO_CFLAGS)
+
+-EXTRA_DSO_LDOPTS = \
+- $(XPCOM_GLUE_LDOPTS) \
+- $(MOZ_COMPONENT_LIBS) \
+- $(MOZ_GIO_LIBS) \
+- $(NULL)
+-
+-# make sure this component is never statically linked into the main
+-# application. this is necessary since we don't want to force users
+-# to install gio in order to use the rest of mozilla ;-)
+-FORCE_SHARED_LIB= 1
+-
+ include $(topsrcdir)/config/rules.mk
+diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
+index 7f9046e..6499758 100644
+--- toolkit/library/Makefile.in
++++ toolkit/library/Makefile.in
+@@ -333,6 +333,11 @@ COMPONENT_LIBS += gkdebug
+ endif
+ endif
+
++ifdef MOZ_GIO_COMPONENT
++DEFINES += -DMOZ_GIO_COMPONENT
++COMPONENT_LIBS += nkgio
++endif
++
+ ifdef MOZ_APP_COMPONENT_LIBS
+ COMPONENT_LIBS += $(MOZ_APP_COMPONENT_LIBS)
+ endif
+diff --git toolkit/library/nsStaticXULComponents.cpp toolkit/library/nsStaticXULComponents.cpp
+index e1d90f2..85b21a2 100644
+--- toolkit/library/nsStaticXULComponents.cpp
++++ toolkit/library/nsStaticXULComponents.cpp
+@@ -164,6 +164,12 @@
+ #define PROFILER_MODULE
+ #endif
+
++#if defined(MOZ_GIO_COMPONENT)
++#define GIO_MODULE MODULE(nsGIOModule)
++#else
++#define GIO_MODULE
++#endif
++
+ #define XUL_MODULES \
+ MODULE(nsUConvModule) \
+ MODULE(nsI18nModule) \
+@@ -220,6 +226,7 @@
+ MODULE(nsTelemetryModule) \
+ MODULE(jsinspector) \
+ MODULE(jsdebugger) \
++ GIO_MODULE \
+ /* end of list */
+
+ #define MODULE(_name) \
+diff --git toolkit/toolkit-tiers.mk toolkit/toolkit-tiers.mk
+index e87d7af..4b16d23 100644
+--- toolkit/toolkit-tiers.mk
++++ toolkit/toolkit-tiers.mk
+@@ -252,6 +252,10 @@ tier_platform_dirs += js/ductwork/debugger
+
+ tier_platform_dirs += other-licenses/snappy
+
++ifdef MOZ_GIO_COMPONENT
++tier_platform_dirs += extensions/gio
++endif
++
+ ifdef APP_LIBXUL_STATICDIRS
+ # Applications can cheat and ask for code to be
+ # built before libxul so libxul can be linked against it.