Bug 560147: Follow-up fixing non-libxul builds. This will include layers into thebes.dll, and ensure thebes.dll exposes the correct symbols. r=ted
authorBas Schouten <bschouten@mozilla.com>
Wed, 28 Apr 2010 22:43:52 +0200
changeset 41484 5d011d796c84d40e741adcdac13bdb3725d88b38
parent 41483 f444c1024fd1d6b1b2ec758de4e1cdbd1ef105c1
child 41485 c2db5c026000cf9885d836fb8f0051658b17f603
push idunknown
push userunknown
push dateunknown
reviewersted
bugs560147
milestone1.9.3a5pre
Bug 560147: Follow-up fixing non-libxul builds. This will include layers into thebes.dll, and ensure thebes.dll exposes the correct symbols. r=ted
embedding/browser/build/Makefile.in
gfx/Makefile.in
gfx/layers/Makefile.in
gfx/thebes/src/Makefile.in
gfx/thebes/src/gfxDllDeps.cpp
layout/build/Makefile.in
toolkit/library/libxul-config.mk
widget/src/build/Makefile.in
widget/src/cocoa/Makefile.in
widget/src/gtk2/Makefile.in
widget/src/os2/Makefile.in
widget/src/qt/Makefile.in
--- a/embedding/browser/build/Makefile.in
+++ b/embedding/browser/build/Makefile.in
@@ -47,17 +47,17 @@ MODULE		= webbrwsr
 LIBRARY_NAME	= webbrwsr
 IS_COMPONENT	= 1
 MODULE_NAME	= Browser_Embedding_Module
 EXPORT_LIBRARY	= 1
 GRE_MODULE	= 1
 LIBXUL_LIBRARY	= 1
 
 
-EXTRA_DSO_LIBS	= gkgfx thebes layers
+EXTRA_DSO_LIBS	= gkgfx thebes
 
 CPPSRCS		= \
 		nsWebBrowserModule.cpp		\
 		$(NULL)
 
 SHARED_LIBRARY_LIBS= \
 		../webBrowser/$(LIB_PREFIX)nsWebBrowser_s.$(LIB_SUFFIX) \
 		$(NULL)
--- a/gfx/Makefile.in
+++ b/gfx/Makefile.in
@@ -43,28 +43,28 @@ VPATH		= @srcdir@
 include $(DEPTH)/config/autoconf.mk
 
 MODULE		= gfx
 
 ifdef MOZ_TREE_CAIRO
 DIRS		= cairo
 endif
 
-DIRS		+= thebes public idl src qcms
-
 # In static builds, ycbcr must appear after layers in
 # the link line on linux. This order is defined by the
 # order listed in DIRS. On shared builds ycbcr must
 # be built first so the order is reversed.
 ifdef BUILD_STATIC_LIBS
 DIRS		+= layers ycbcr
 else
 DIRS            += ycbcr layers
 endif
 
+DIRS		+= public idl src qcms thebes
+
 ifdef MOZ_IPC
 DIRS		+= ipc
 endif
 
 ifdef ENABLE_TESTS
 ifndef MOZ_ENABLE_LIBXUL
 TOOL_DIRS	+= tests
 endif
--- a/gfx/layers/Makefile.in
+++ b/gfx/layers/Makefile.in
@@ -41,20 +41,20 @@ srcdir      = @srcdir@
 VPATH       = \
   $(srcdir) \
   $(srcdir)/basic \
   $(srcdir)/opengl \
   $(NULL)
 
 include $(DEPTH)/config/autoconf.mk
 
-MODULE         = layers
+MODULE         = thebes
 LIBRARY_NAME   = layers
-EXPORT_LIBRARY = 1
 LIBXUL_LIBRARY = 1
+FORCE_STATIC_LIB = 1
 
 DEFINES += -DIMPL_THEBES
 
 EXPORTS = \
         BasicLayers.h \
         ImageLayers.h \
         Layers.h \
         LayerManagerOGL.h \
@@ -64,25 +64,11 @@ CPPSRCS = \
         BasicImages.cpp \
         BasicLayers.cpp \
         LayerManagerOGL.cpp \
         ThebesLayerOGL.cpp \
         ContainerLayerOGL.cpp \
         ImageLayerOGL.cpp \
         $(NULL)
 
-EXTRA_DSO_LIBS = \
-        gkgfx \
-        thebes \
-        ycbcr \
-        $(NULL)
-
-EXTRA_DSO_LDOPTS += \
-        $(LIBS_DIR) \
-        $(EXTRA_DSO_LIBS) \
-        $(MOZ_CAIRO_LIBS) \
-        $(XPCOM_LIBS) \
-        $(NSPR_LIBS) \
-        $(NULL)
-
 include $(topsrcdir)/config/rules.mk
 
 CXXFLAGS += $(MOZ_CAIRO_CFLAGS)
--- a/gfx/thebes/src/Makefile.in
+++ b/gfx/thebes/src/Makefile.in
@@ -30,18 +30,31 @@ CPPSRCS	= \
 	gfxRect.cpp \
 	gfxSkipChars.cpp \
 	gfxTextRunCache.cpp \
 	gfxTextRunWordCache.cpp \
 	gfxUserFontSet.cpp \
 	GLContext.cpp \
 	$(NULL)
 
+SHARED_LIBRARY_LIBS += \
+	../../layers/$(LIB_PREFIX)layers.$(LIB_SUFFIX) \
+	$(NULL)
+
+
+ifndef MOZ_ENABLE_LIBXUL
+EXTRA_DSO_LIBS	= gkgfx ycbcr
+ifeq (,$(filter-out WINNT WINCE OS2,$(OS_ARCH)))
+CPPSRCS += gfxDllDeps.cpp
+endif
+endif
+
 EXTRA_DSO_LDOPTS += \
 	$(MOZ_CAIRO_LIBS) \
+	$(EXTRA_DSO_LIBS) \
 	$(MOZ_UNICHARUTIL_LIBS) \
 	$(XPCOM_LIBS) \
 	$(NSPR_LIBS) \
 	$(ZLIB_LIBS) \
 	$(QCMS_LIBS) \
 	$(NULL)
 
 ifeq ($(MOZ_WIDGET_TOOLKIT),windows)
new file mode 100644
--- /dev/null
+++ b/gfx/thebes/src/gfxDllDeps.cpp
@@ -0,0 +1,4 @@
+#include "Layers.h"
+#include "LayerManagerOGL.h"
+#include "BasicLayers.h"
+#include "ImageLayers.h"
--- a/layout/build/Makefile.in
+++ b/layout/build/Makefile.in
@@ -56,17 +56,17 @@ EXPORT_LIBRARY = 1
 IS_COMPONENT	= 1
 MODULE_NAME	= nsLayoutModule
 GRE_MODULE	= 1
 LIBXUL_LIBRARY	= 1
 
 ifndef MOZ_ENABLE_LIBXUL
 EXTRA_DSO_LIBS	= gkgfx gfxutils
 endif
-EXTRA_DSO_LIBS	+= thebes layers ycbcr
+EXTRA_DSO_LIBS	+= thebes ycbcr
 
 
 CPPSRCS		= \
 		nsLayoutModule.cpp \
 		nsContentDLF.cpp \
 		nsLayoutStatics.cpp \
 		$(NULL)
 
--- a/toolkit/library/libxul-config.mk
+++ b/toolkit/library/libxul-config.mk
@@ -302,17 +302,17 @@ DEFINES += -DMOZ_ENABLE_POSTSCRIPT
 STATIC_LIBS += gfxpsshar
 endif
 
 ifneq (,$(filter icon,$(MOZ_IMG_DECODERS)))
 DEFINES += -DICON_DECODER
 COMPONENT_LIBS += imgicon
 endif
 
-STATIC_LIBS += thebes layers ycbcr
+STATIC_LIBS += thebes ycbcr
 COMPONENT_LIBS += gkgfxthebes
 
 ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
 COMPONENT_LIBS += gkwidget
 endif
 ifeq (beos,$(MOZ_WIDGET_TOOLKIT))
 COMPONENT_LIBS += widget_beos
 endif
--- a/widget/src/build/Makefile.in
+++ b/widget/src/build/Makefile.in
@@ -50,17 +50,16 @@ RESFILE		= widget.res
 MODULE_NAME	= nsWidgetModule
 LIBXUL_LIBRARY = 1
 
 
 CPPSRCS		= nsWinWidgetFactory.cpp
 
 EXTRA_DSO_LIBS	= gkgfx \
 		  thebes \
-		  layers \
 		  $(NULL)
 
 LOCAL_INCLUDES	= \
 		-I$(srcdir) \
 		-I$(srcdir)/../xpwidgets \
 		-I$(srcdir)/../windows \
 		$(NULL)
 
--- a/widget/src/cocoa/Makefile.in
+++ b/widget/src/cocoa/Makefile.in
@@ -101,17 +101,16 @@ XPIDLSRCS	+= \
 SHARED_LIBRARY_LIBS = ../xpwidgets/libxpwidgets_s.a
 
 EXTRA_DSO_LDOPTS += \
 		$(MOZ_UNICHARUTIL_LIBS) \
 		$(TK_LIBS) \
 		$(call EXPAND_LIBNAME_PATH,gkgfx,$(DEPTH)/gfx/src) \
 		$(MOZ_COMPONENT_LIBS) \
 		-lthebes \
-		-llayers \
 		$(QCMS_LIBS) \
 		$(NULL)
 
 include $(topsrcdir)/config/rules.mk
 
 NIB_FILES = \
 	classes.nib \
 	info.nib \
--- a/widget/src/gtk2/Makefile.in
+++ b/widget/src/gtk2/Makefile.in
@@ -104,17 +104,16 @@ endif
 # build our subdirs, too
 
 SHARED_LIBRARY_LIBS = ../xpwidgets/libxpwidgets_s.a
 
 EXTRA_DSO_LDOPTS += \
 		$(MOZ_COMPONENT_LIBS) \
 		-lgkgfx \
 		-lthebes \
-		-llayers \
 		$(MOZ_CAIRO_LIBS) \
                 $(MOZ_STARTUP_NOTIFICATION_LIBS) \
 		$(XLDFLAGS) \
 		$(XLIBS) \
 		$(XEXT_LIBS) \
 		$(XCOMPOSITE_LIBS) \
 		$(MOZ_GTK2_LIBS) \
 		$(QCMS_LIBS) \
--- a/widget/src/os2/Makefile.in
+++ b/widget/src/os2/Makefile.in
@@ -84,17 +84,16 @@ SHARED_LIBRARY_LIBS = \
 
 EXTRA_DSO_LIBS	= gkgfx
 
 EXTRA_DSO_LDOPTS = \
 		$(EXTRA_DSO_LIBS) \
 		$(MOZ_UNICHARUTIL_LIBS) \
 		$(MOZ_COMPONENT_LIBS) \
 		-lthebes \
-		-llayers \
 		$(QCMS_LIBS) \
 		$(NULL)
 
 ifdef ENABLE_TESTS
 HAS_EXTRAEXPORTS = 1
 endif
 
 include $(topsrcdir)/config/rules.mk
--- a/widget/src/qt/Makefile.in
+++ b/widget/src/qt/Makefile.in
@@ -83,17 +83,16 @@ CPPSRCS	= \
 		$(NULL)
 
 SHARED_LIBRARY_LIBS = ../xpwidgets/libxpwidgets_s.a
 
 EXTRA_DSO_LDOPTS = \
 		$(MOZ_COMPONENT_LIBS) \
 		-lgkgfx \
 		-lthebes \
-		-llayers \
 		$(MOZ_JS_LIBS) \
 		$(MOZ_QT_LIBS) \
 		$(GLIB_LIBS) \
 		$(QCMS_LIBS) \
 		$(XEXT_LIBS) \
 		$(NULL)