# ***** 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 Mozilla IPC. # # The Initial Developer of the Original Code is # Ben Turner . # Portions created by the Initial Developer are Copyright (C) 2009 # 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@ 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