xpcom/base/Makefile.in
author Eduard Neculaesi <eduardnem@gmail.com>
Wed, 31 Oct 2012 01:19:44 +0200
changeset 112010 a33857ce6108a55bd288bab4323fb0eaa90a7925
parent 111858 963873ff3081ca3001cb884903bae0894ef84c2d
permissions -rw-r--r--
Bug 804566 - [OS.File] Add an option ignoreExisting to OS.File.makeDir r=dteller

#
# 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 \
		$(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 \
		NSPRFormatTime.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

CPPSRCS += AvailableMemoryTracker.cpp

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 \
		ErrorListDefines.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 ErrorListDefines.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.
ErrorListDefines.h: ErrorList.h
		sed -n 's/.*ERROR(\([A-Z_0-9]*\).*/#define \1 nsresult::\1/p' < $< > $@

GARBAGE += ErrorListDefines.h