зеркало из https://github.com/mozilla/gecko-dev.git
180 строки
3.8 KiB
Makefile
180 строки
3.8 KiB
Makefile
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
DEPTH = @DEPTH@
|
|
topsrcdir = @top_srcdir@
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
|
|
include $(DEPTH)/config/autoconf.mk
|
|
|
|
MODULE = xpcom
|
|
XPIDL_MODULE = xpcom_base
|
|
LIBRARY_NAME = xpcombase_s
|
|
GRE_MODULE = 1
|
|
MOZILLA_INTERNAL_API =1
|
|
LIBXUL_LIBRARY = 1
|
|
|
|
# TODO: we do this in crashreporter and storage/src too, should be centralized
|
|
ifeq ($(OS_ARCH),Linux)
|
|
DEFINES += -DXP_LINUX
|
|
endif
|
|
|
|
CPPSRCS = \
|
|
nsVersionComparatorImpl.cpp \
|
|
nsConsoleMessage.cpp \
|
|
nsConsoleService.cpp \
|
|
nsDebugImpl.cpp \
|
|
nsErrorService.cpp \
|
|
nsExceptionService.cpp \
|
|
nsMemoryImpl.cpp \
|
|
nsTraceRefcntImpl.cpp \
|
|
nsInterfaceRequestorAgg.cpp \
|
|
nsUUIDGenerator.cpp \
|
|
nsSystemInfo.cpp \
|
|
nsCycleCollector.cpp \
|
|
nsStackWalk.cpp \
|
|
nsMemoryReporterManager.cpp \
|
|
ClearOnShutdown.cpp \
|
|
VisualEventTracer.cpp \
|
|
nsErrorAsserts.cpp \
|
|
nsGZFileWriter.cpp \
|
|
nsMemoryInfoDumper.cpp \
|
|
nsMessageLoop.cpp \
|
|
AvailableMemoryTracker.cpp \
|
|
$(NULL)
|
|
|
|
ifeq ($(OS_ARCH),Linux)
|
|
CPPSRCS += MapsMemoryReporter.cpp
|
|
endif
|
|
|
|
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
|
|
CPPSRCS += nsMacUtilsImpl.cpp
|
|
endif
|
|
|
|
EXPORTS = \
|
|
nsAgg.h \
|
|
nsAutoRef.h \
|
|
nsCom.h \
|
|
nsDebugImpl.h \
|
|
nsIAllocator.h \
|
|
nsIID.h \
|
|
nsISizeOf.h \
|
|
nsISupportsObsolete.h \
|
|
nsStackWalk.h \
|
|
nsTraceRefcntImpl.h \
|
|
nsWeakPtr.h \
|
|
nsInterfaceRequestorAgg.h \
|
|
nsGZFileWriter.h \
|
|
$(NULL)
|
|
|
|
EXPORTS_NAMESPACES = mozilla
|
|
|
|
EXPORTS_mozilla = \
|
|
MapsMemoryReporter.h \
|
|
nsMemoryInfoDumper.h \
|
|
ClearOnShutdown.h \
|
|
StaticPtr.h \
|
|
AvailableMemoryTracker.h \
|
|
StackWalk.h \
|
|
VisualEventTracer.h \
|
|
$(NULL)
|
|
|
|
ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
|
|
CPPSRCS += nsCrashOnException.cpp
|
|
endif
|
|
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
|
|
ifdef MOZ_DEBUG
|
|
CSRCS += pure_api.c
|
|
EXPORTS += pure.h
|
|
endif
|
|
|
|
endif #if OS_ARCH == WINNT
|
|
|
|
SDK_XPIDLSRCS = \
|
|
nsIDebug.idl \
|
|
nsIInterfaceRequestor.idl \
|
|
nsIMemory.idl \
|
|
nsIProgrammingLanguage.idl \
|
|
nsISupports.idl \
|
|
nsITraceRefcnt.idl \
|
|
nsIWeakReference.idl \
|
|
nsrootidl.idl
|
|
|
|
SDK_HEADERS = \
|
|
nsAutoPtr.h \
|
|
nsError.h \
|
|
ErrorList.h \
|
|
ErrorListCxxDefines.h \
|
|
ErrorListCDefines.h \
|
|
nsISupportsBase.h \
|
|
nscore.h \
|
|
nsAtomicRefcnt.h \
|
|
nsCycleCollector.h \
|
|
nsObjCExceptions.h \
|
|
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
SDK_HEADERS += \
|
|
nsWindowsHelpers.h \
|
|
$(NULL)
|
|
endif
|
|
|
|
XPIDLSRCS = \
|
|
nsIConsoleListener.idl \
|
|
nsIConsoleMessage.idl \
|
|
nsIConsoleService.idl \
|
|
nsICycleCollectorListener.idl \
|
|
nsIDebug2.idl \
|
|
nsIErrorService.idl \
|
|
nsIException.idl \
|
|
nsIExceptionService.idl \
|
|
nsIVersionComparator.idl \
|
|
nsIUUIDGenerator.idl \
|
|
nsIMutable.idl \
|
|
nsIMemoryInfoDumper.idl \
|
|
nsIMemoryReporter.idl \
|
|
nsIGZFileWriter.idl \
|
|
nsIMessageLoop.idl \
|
|
$(NULL)
|
|
|
|
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
|
|
XPIDLSRCS += nsIMacUtils.idl
|
|
endif
|
|
|
|
# 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/config.mk
|
|
include $(topsrcdir)/ipc/chromium/chromium-config.mk
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
DEFINES += -D_IMPL_NS_COM
|
|
|
|
ifneq (,$(filter gtk2,$(MOZ_WIDGET_TOOLKIT)))
|
|
CXXFLAGS += $(MOZ_GTK2_CFLAGS)
|
|
endif
|
|
|
|
LOCAL_INCLUDES += \
|
|
-I$(srcdir)/../build \
|
|
-I$(topsrcdir)/xpcom/ds \
|
|
$(NULL)
|
|
|
|
# We generate ErrorListCxxDefines.h from ErrorList.h using regex. The -n option
|
|
# suppresses printing the pattern space, and the p at the end prints it anyway,
|
|
# so we don't print lines that don't match the pattern to start with.
|
|
ErrorListCxxDefines.h: ErrorList.h Makefile
|
|
sed -n 's/.*ERROR(\([A-Z_0-9]*\).*/#define \1 nsresult::\1/p' < $< > $@
|
|
|
|
ErrorListCDefines.h: ErrorList.h Makefile
|
|
sed 's/.*ERROR(\([A-Z_0-9]*\),\( *\)\(.*\))[^)]*/#define \1 \2((nsresult)(\3))/' < $< > $@
|
|
|
|
GARBAGE += \
|
|
ErrorListCxxDefines.h \
|
|
ErrorListCDefines.h \
|
|
$(NULL)
|