# 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 = ../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/crashreporter MODULE = ipc LIBRARY_NAME = mozipc_s FORCE_STATIC_LIB = 1 LIBXUL_LIBRARY = 1 EXPORT_LIBRARY = 1 EXPORTS_NAMESPACES = IPC mozilla/ipc EXPORTS_IPC = IPCMessageUtils.h EXPORTS_mozilla/ipc = \ AsyncChannel.h \ BrowserProcessSubThread.h \ CrossProcessMutex.h \ GeckoChildProcessHost.h \ IOThreadChild.h \ ProcessChild.h \ ProtocolUtils.h \ RPCChannel.h \ SharedMemory.h \ SharedMemoryBasic.h \ SharedMemoryBasic_chromium.h \ SharedMemorySysV.h \ Shmem.h \ SyncChannel.h \ ScopedXREEmbed.h \ Transport.h \ $(NULL) ifeq ($(OS_ARCH),WINNT) #{ EXPORTS_mozilla/ipc += \ Transport_win.h \ $(NULL) else # POSIX EXPORTS_mozilla/ipc += \ Transport_posix.h \ $(NULL) endif #} ifeq ($(OS_TARGET),Android) # Android has its own, # almost-but-not-quite-compatible-with-POSIX-or-/dev/shm shared memory # impl. EXPORTS_mozilla/ipc += SharedMemoryBasic_android.h else EXPORTS_mozilla/ipc += SharedMemoryBasic_chromium.h endif #} CPPSRCS += \ AsyncChannel.cpp \ BrowserProcessSubThread.cpp \ GeckoChildProcessHost.cpp \ MessagePump.cpp \ ProcessChild.cpp \ ProtocolUtils.cpp \ RPCChannel.cpp \ ScopedXREEmbed.cpp \ SharedMemory.cpp \ Shmem.cpp \ StringUtil.cpp \ SyncChannel.cpp \ $(NULL) ifeq ($(OS_ARCH),WINNT) #{ CPPSRCS += \ SharedMemory_windows.cpp \ Transport_win.cpp \ WindowsMessageLoop.cpp \ CrossProcessMutex_windows.cpp \ $(NULL) else # POSIX CPPSRCS += \ SharedMemory_posix.cpp \ Transport_posix.cpp \ CrossProcessMutex_unimplemented.cpp \ $(NULL) endif #} ifeq ($(OS_TARGET),Android) CPPSRCS += SharedMemoryBasic_android.cpp endif #} include $(topsrcdir)/ipc/app/defs.mk DEFINES += -DMOZ_CHILD_PROCESS_NAME=\"$(MOZ_CHILD_PROCESS_NAME)\" DEFINES += -DMOZ_CHILD_PROCESS_BUNDLE=\"$(MOZ_CHILD_PROCESS_BUNDLE)\" include $(topsrcdir)/config/config.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk include $(topsrcdir)/config/rules.mk # Since we get the value of MOZ_CHILD_PROCESS_NAME from another file make sure # to rebuild if that file changes. $(CPPSRCS:%.cpp=%.$(OBJ_SUFFIX)): $(topsrcdir)/ipc/app/defs.mk