MFCEmbed (with the standalone glue) needs to link against the XPCOM_GLUE versions of XPCOM functions, not the dllimport versions. Bug 315601, this needs ex-post-facto review but I'm checking it in to get mfcembed working.

git-svn-id: svn://10.0.0.236/trunk@184317 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
bsmedberg%covad.net
2005-11-08 21:20:05 +00:00
parent c60f27b3b2
commit 58bd0ec35a
4 changed files with 133 additions and 16 deletions

View File

@@ -41,6 +41,8 @@ topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
DIRS = standalone
MODULE = embed_base
LIBRARY_NAME = embed_base_s
XPIDL_MODULE = embed_base
@@ -78,17 +80,9 @@ XPIDLSRCS = \
nsIWindowCreator2.idl \
$(NULL)
CPPSRCS = \
nsEmbedAPI.cpp \
$(NULL)
include $(srcdir)/objs.mk
ifeq (,$(filter-out WINNT WINCE,$(OS_ARCH)))
CPPSRCS += nsEmbedWin32.cpp
endif
ifeq ($(OS_ARCH),OS2)
CPPSRCS += nsEmbedOS2.cpp
endif
CPPSRCS += $(EMBED_CPPSRCS)
# we don't want the shared lib, but we want to force the creation of a
# static lib.
@@ -97,4 +91,3 @@ FORCE_STATIC_LIB = 1
include $(topsrcdir)/config/rules.mk
CXXFLAGS += $(MOZ_TOOLKIT_REGISTRY_CFLAGS)

View File

@@ -0,0 +1,47 @@
# vim:set ts=8 sw=8 sts=8 noet:
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Mozilla browser.
#
# The Initial Developer of the Original Code is
# Christopher Blizzard. Portions created by Christopher Blizzard Copyright (C) 1999, Christopher Blizzard. All Rights Reserved.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
EMBED_CPPSRCS = nsEmbedAPI.cpp
ifeq (,$(filter-out WINNT WINCE,$(OS_ARCH)))
EMBED_CPPSRCS += nsEmbedWin32.cpp
endif
ifeq ($(OS_ARCH),OS2)
EMBED_CPPSRCS += nsEmbedOS2.cpp
endif

View File

@@ -0,0 +1,74 @@
# vim:set ts=8 sw=8 sts=8 noet:
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Mozilla browser.
#
# The Initial Developer of the Original Code is
# Christopher Blizzard. Portions created by Christopher Blizzard Copyright (C) 1999, Christopher Blizzard. All Rights Reserved.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
MODULE = embed_base
LIBRARY_NAME = embed_base_standalone
XPIDL_MODULE = embed_base
include $(DEPTH)/config/autoconf.mk
REQUIRES = xpcom \
intl \
embedcomponents \
$(NULL)
DEFINES += -DMOZILLA_STRICT_API -DXPCOM_GLUE
SDK_LIBRARY = \
$(LIB_PREFIX)embed_base_standalone.$(LIB_SUFFIX) \
$(NULL)
include $(srcdir)/../objs.mk
CPPSRCS += $(EMBED_CPPSRCS)
# we don't want the shared lib, but we want to force the creation of a
# static lib.
FORCE_STATIC_LIB = 1
include $(topsrcdir)/config/rules.mk
CXXFLAGS += $(MOZ_TOOLKIT_REGISTRY_CFLAGS)
export::
$(INSTALL) $(addprefix $(srcdir)/../,$(EMBED_CPPSRCS)) .

View File

@@ -109,23 +109,26 @@ CPPSRCS = \
StdAfx.cpp \
$(NULL)
EXTRA_DSO_LIBS = embed_base_s profdirserviceprovidersa_s
LIBS = $(DIST)/lib/$(LIB_PREFIX)profdirserviceprovidersa_s.$(LIB_SUFFIX)
ifdef NS_TRACE_MALLOC
EXTRA_DSO_LIBS += tracemalloc
LIBS += tracemalloc
endif
LIBS = \
$(EXTRA_DSO_LIBS) \
LIBS += \
$(MOZ_UNICHARUTIL_LIBS) \
$(NULL)
ifdef GRE_BUILD
LIBS += \
$(DIST)/lib/$(LIB_PREFIX)embed_base_standalone.$(LIB_SUFFIX) \
$(DIST)/lib/$(LIB_PREFIX)xpcomglue.$(LIB_SUFFIX) \
$(NULL)
else
LIBS += $(XPCOM_LIBS)
LIBS += \
$(DIST)/lib/$(LIB_PREFIX)embed_base_s.$(LIB_SUFFIX) \
$(XPCOM_LIBS) \
$(NULL)
ifdef BUILD_STATIC_LIBS
LIBS += $(MOZ_JS_LIBS)
endif