From a2d2616830956a0e02fea9b3ceca1c4cdf35cab3 Mon Sep 17 00:00:00 2001 From: "seawood%netscape.com" Date: Tue, 12 Nov 2002 10:06:10 +0000 Subject: [PATCH] RMCH: xpconnect git-svn-id: svn://10.0.0.236/branches/RMCH_20021105_BRANCH@133649 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/js/src/xpconnect/Makefile.in | 126 +++++++++++++++++- mozilla/js/src/xpconnect/tests/Makefile.in | 52 +++++++- .../js/src/xpconnect/tools/src/Makefile.in | 9 +- 3 files changed, 176 insertions(+), 11 deletions(-) diff --git a/mozilla/js/src/xpconnect/Makefile.in b/mozilla/js/src/xpconnect/Makefile.in index 593182a7266..5997ab07e84 100644 --- a/mozilla/js/src/xpconnect/Makefile.in +++ b/mozilla/js/src/xpconnect/Makefile.in @@ -34,19 +34,139 @@ DEPTH = ../../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ -VPATH = @srcdir@ +VPATH = @srcdir@ @srcdir@/idl include $(DEPTH)/config/autoconf.mk -DIRS = public idl loader src shell +MODULE = xpconnect +LIBRARY_NAME = xpconnect +EXPORT_LIBRARY = 1 +SHORT_LIBNAME = xpconect +IS_COMPONENT = 1 +MODULE_NAME = xpconnect +ifeq ($(OS_ARCH),WINNT) +LIBRARY_NAME = xpc$(MOZ_BITS)$(VERSION_NUMBER) +SHORT_LIBNAME = xpc$(MOZ_BITS)$(VERSION_NUMBER) +endif ifdef ENABLE_TESTS DIRS += tests endif ifdef MOZ_XPCTOOLS -DIRS += tools +DIRS += tools/src endif +REQUIRES = xpcom \ + string \ + xpconnect \ + js \ + caps \ + dom \ + necko \ + $(NULL) + +EXPORTS = \ + public/xpc_map_end.h \ + $(NULL) + +SDK_XPIDLSRCS = \ + mozIJSSubScriptLoader.idl \ + $(NULL) + +XPIDLSRCS = \ + xpccomponents.idl \ + xpcjsid.idl \ + xpcexception.idl \ + nsIJSContextStack.idl \ + nsIJSRuntimeService.idl \ + nsIXPConnect.idl \ + nsIXPCSecurityManager.idl \ + nsIXPCScriptable.idl \ + nsIScriptError.idl \ + nsIXPCScriptNotify.idl \ + nsIScriptableInterfaces.idl \ + XPCIDispatch.idl \ + $(NULL) + + +LIB_CPPSRCS = \ + loader/mozJSComponentLoader.cpp \ + loader/mozJSSubScriptLoader.cpp \ + src/nsScriptError.cpp \ + src/nsXPConnect.cpp \ + src/xpccallcontext.cpp \ + src/xpccomponents.cpp \ + src/xpccontext.cpp \ + src/xpcconvert.cpp \ + src/xpcdebug.cpp \ + src/xpcexception.cpp \ + src/xpcjsid.cpp \ + src/xpcjsruntime.cpp \ + src/xpclog.cpp \ + src/xpcmaps.cpp \ + src/xpcmodule.cpp \ + src/xpcruntimesvc.cpp \ + src/xpcstack.cpp \ + src/xpcstring.cpp \ + src/xpcthreadcontext.cpp \ + src/xpcthrower.cpp \ + src/xpcwrappedjs.cpp \ + src/xpcvariant.cpp \ + src/xpcwrappedjsclass.cpp \ + src/xpcwrappednative.cpp \ + src/xpcwrappednativeinfo.cpp \ + src/xpcwrappednativejsops.cpp \ + src/xpcwrappednativeproto.cpp \ + src/xpcwrappednativescope.cpp \ + $(NULL) + +ifdef XPC_IDISPATCH_SUPPORT +LIB_CPPSRCS += src/XPCDispObject.cpp \ + src/XPCDispInterface.cpp \ + src/XPCDispConvert.cpp \ + src/XPCDispTypeInfo.cpp \ + src/XPCDispTearOff.cpp \ + src/XPCIDispatchExtension.cpp \ + $(NULL) +endif + +EXTRA_DSO_LDOPTS += \ + $(MOZ_COMPONENT_LIBS) \ + $(MOZ_JS_LIBS) \ + $(NULL) + +LOCAL_INCLUDES = \ + -I$(srcdir)/loader \ + $(NULL) + + +SIMPLE_PROGRAMS = shell/xpcshell$(BIN_SUFFIX) + +PROG_LIBS = \ + $(MOZ_JS_LIBS) \ + $(XPCOM_LIBS) \ + $(NSPR_LIBS) \ + $(NULL) + include $(topsrcdir)/config/rules.mk +DEFINES += -DJS_THREADSAFE -DJSFILE +LIB_DEFINES += -DEXPORT_XPC_API + +ifdef MOZ_XPCTOOLS +DEFINES += -DXPC_TOOLS_SUPPORT +REQUIRES += xpctools +endif + +ifdef XPC_IDISPATCH_SUPPORT +DEFINES += -DXPC_IDISPATCH_SUPPORT +endif + +ifeq ($(OS_ARCH),WINNT) +# use pre-compiled headers +CXXFLAGS += -YX -Fp$(LIBRARY_NAME).pch +# precompiled headers require write access to .pch which breaks -j builds +.NOTPARALLEL:: +endif + diff --git a/mozilla/js/src/xpconnect/tests/Makefile.in b/mozilla/js/src/xpconnect/tests/Makefile.in index 02c847a6c7a..dca063f8ab6 100644 --- a/mozilla/js/src/xpconnect/tests/Makefile.in +++ b/mozilla/js/src/xpconnect/tests/Makefile.in @@ -34,22 +34,47 @@ DEPTH = ../../../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ -VPATH = @srcdir@ +VPATH = @srcdir@ @srcdir@/idl include $(DEPTH)/config/autoconf.mk -MODULE = TestXPC +MODULE = xpconnect_tests +LIBRARY_NAME = xpctest +EXPORT_LIBRARY = 1 +IS_COMPONENT = 1 +CPP_PROG_LINK = 1 SIMPLE_PROGRAMS = TestXPC$(BIN_SUFFIX) + REQUIRES = xpconnect \ xpcom \ string \ js \ - xpconnect_tests \ $(NULL) -DIRS = idl components +LIB_CPPSRCS = \ + components/xpctest_array.cpp \ + components/xpctest_echo.cpp \ + components/xpctest_child.cpp \ + components/xpctest_noisy.cpp \ + components/xpctest_overloaded.cpp \ + components/xpctest_string.cpp \ + components/xpctest_module.cpp \ + components/xpctest_attributes.cpp \ + components/xpctest_calljs.cpp \ + components/xpctest_const.cpp \ + components/xpctest_in.cpp \ + components/xpctest_inout.cpp \ + components/xpctest_multiple.cpp \ + components/xpctest_out.cpp \ + components/xpctest_domstring.cpp \ + components/xpctest_variant.cpp \ + $(NULL) -CPPSRCS = TestXPC.cpp +EXTRA_DSO_LDOPTS = \ + $(LIBS_DIR) \ + $(MOZ_JS_LIBS) \ + $(MOZ_COMPONENT_LIBS) \ + $(NULL) PROG_LIBS = \ $(LIBS_DIR) \ @@ -57,6 +82,21 @@ PROG_LIBS = \ $(MOZ_COMPONENT_LIBS) \ $(NULL) +XPIDLSRCS = \ + xpctest.idl \ + xpctest2.idl \ + xpctest_attributes.idl \ + xpctest_calljs.idl \ + xpctest_const.idl \ + xpctest_in.idl \ + xpctest_inout.idl \ + xpctest_multiple.idl \ + xpctest_domstring.idl \ + xpctest_out.idl \ + $(NULL) + include $(topsrcdir)/config/rules.mk -DEFINES += -DJS_THREADSAFE -DJSFILE +PROG_DEFINES += -DJS_THREADSAFE -DJSFILE + +$(SIMPLE_PROGRAMS): %$(BIN_SUFFIX): %.$(OBJ_SUFFIX) $(SHARED_LIBRARY) $(LIBRARY) diff --git a/mozilla/js/src/xpconnect/tools/src/Makefile.in b/mozilla/js/src/xpconnect/tools/src/Makefile.in index 9defd363bab..94aaa26dae7 100644 --- a/mozilla/js/src/xpconnect/tools/src/Makefile.in +++ b/mozilla/js/src/xpconnect/tools/src/Makefile.in @@ -35,7 +35,7 @@ DEPTH = ../../../../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ -VPATH = @srcdir@ +VPATH = @srcdir@ @srcdir@/../idl include $(DEPTH)/config/autoconf.mk @@ -55,11 +55,16 @@ CPPSRCS = \ nsXPCToolsModule.cpp \ $(NULL) +XPIDLSRCS = \ + nsIXPCToolsCompiler.idl \ + nsIXPCToolsProfiler.idl \ + $(NULL) + include $(topsrcdir)/config/config.mk EXTRA_DSO_LDOPTS += \ - $(MOZ_COMPONENT_LIBS) \ $(MOZ_JS_LIBS) \ + $(MOZ_COMPONENT_LIBS) \ $(NULL) include $(topsrcdir)/config/rules.mk