1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ipc/glue/moz.build Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,153 @@ 1.4 +# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- 1.5 +# vim: set filetype=python: 1.6 +# This Source Code Form is subject to the terms of the Mozilla Public 1.7 +# License, v. 2.0. If a copy of the MPL was not distributed with this 1.8 +# file, You can obtain one at http://mozilla.org/MPL/2.0/. 1.9 + 1.10 +EXPORTS += [ 1.11 + 'nsIIPCBackgroundChildCreateCallback.h', 1.12 + 'nsIIPCSerializableInputStream.h', 1.13 + 'nsIIPCSerializableURI.h', 1.14 +] 1.15 + 1.16 +EXPORTS.mozilla.ipc += [ 1.17 + 'BackgroundChild.h', 1.18 + 'BackgroundParent.h', 1.19 + 'BrowserProcessSubThread.h', 1.20 + 'CrossProcessMutex.h', 1.21 + 'FileDescriptor.h', 1.22 + 'FileDescriptorUtils.h', 1.23 + 'GeckoChildProcessHost.h', 1.24 + 'InputStreamUtils.h', 1.25 + 'IOThreadChild.h', 1.26 + 'MessageChannel.h', 1.27 + 'MessageLink.h', 1.28 + 'ProcessChild.h', 1.29 + 'ProtocolUtils.h', 1.30 + 'ScopedXREEmbed.h', 1.31 + 'SharedMemory.h', 1.32 + 'SharedMemoryBasic.h', 1.33 + 'SharedMemorySysV.h', 1.34 + 'Shmem.h', 1.35 + 'Transport.h', 1.36 + 'URIUtils.h', 1.37 + 'WindowsMessageLoop.h', 1.38 +] 1.39 + 1.40 +if CONFIG['OS_ARCH'] == 'WINNT': 1.41 + EXPORTS.mozilla.ipc += [ 1.42 + 'Transport_win.h', 1.43 + ] 1.44 + SOURCES += [ 1.45 + 'SharedMemory_windows.cpp', 1.46 + 'Transport_win.cpp', 1.47 + 'WindowsMessageLoop.cpp', 1.48 + ] 1.49 +else: 1.50 + EXPORTS.mozilla.ipc += [ 1.51 + 'Transport_posix.h', 1.52 + ] 1.53 + UNIFIED_SOURCES += [ 1.54 + 'SharedMemory_posix.cpp', 1.55 + 'Transport_posix.cpp', 1.56 + ] 1.57 + 1.58 +if CONFIG['OS_ARCH'] == 'WINNT': 1.59 + SOURCES += [ 1.60 + 'CrossProcessMutex_windows.cpp', 1.61 + ] 1.62 +elif CONFIG['OS_ARCH'] == 'Linux': 1.63 + UNIFIED_SOURCES += [ 1.64 + 'CrossProcessMutex_posix.cpp', 1.65 + ] 1.66 +else: 1.67 + UNIFIED_SOURCES += [ 1.68 + 'CrossProcessMutex_unimplemented.cpp', 1.69 + ] 1.70 + 1.71 +# Android has its own, 1.72 +# almost-but-not-quite-compatible-with-POSIX-or-/dev/shm shared memory 1.73 +# impl. 1.74 +if CONFIG['OS_TARGET'] == 'Android': 1.75 + EXPORTS.mozilla.ipc += ['SharedMemoryBasic_android.h'] 1.76 + UNIFIED_SOURCES += [ 1.77 + 'SharedMemoryBasic_android.cpp', 1.78 + ] 1.79 +else: 1.80 + EXPORTS.mozilla.ipc += ['SharedMemoryBasic_chromium.h'] 1.81 + 1.82 +if CONFIG['OS_ARCH'] == 'Linux': 1.83 + UNIFIED_SOURCES += [ 1.84 + 'ProcessUtils_linux.cpp', 1.85 + ] 1.86 +elif CONFIG['OS_ARCH'] in ('DragonFly', 'FreeBSD', 'NetBSD', 'OpenBSD'): 1.87 + UNIFIED_SOURCES += [ 1.88 + 'ProcessUtils_bsd.cpp' 1.89 + ] 1.90 +else: 1.91 + UNIFIED_SOURCES += [ 1.92 + 'ProcessUtils_none.cpp', 1.93 + ] 1.94 + 1.95 +EXPORTS.ipc += [ 1.96 + 'IPCMessageUtils.h', 1.97 +] 1.98 + 1.99 +UNIFIED_SOURCES += [ 1.100 + 'BackgroundImpl.cpp', 1.101 + 'BrowserProcessSubThread.cpp', 1.102 + 'FileDescriptor.cpp', 1.103 + 'FileDescriptorUtils.cpp', 1.104 + 'InputStreamUtils.cpp', 1.105 + 'MessageChannel.cpp', 1.106 + 'MessageLink.cpp', 1.107 + 'MessagePump.cpp', 1.108 + 'ProcessChild.cpp', 1.109 + 'ProtocolUtils.cpp', 1.110 + 'ScopedXREEmbed.cpp', 1.111 + 'SharedMemory.cpp', 1.112 + 'Shmem.cpp', 1.113 + 'StringUtil.cpp', 1.114 +] 1.115 + 1.116 +# GeckoChildProcessHost.cpp cannot be built in unified mode because it uses plarena.h. 1.117 +# URIUtils.cpp cannot be built in unified mode because of name clashes on strdup. 1.118 +SOURCES += [ 1.119 + 'BackgroundChildImpl.cpp', 1.120 + 'BackgroundParentImpl.cpp', 1.121 + 'GeckoChildProcessHost.cpp', 1.122 + 'URIUtils.cpp', 1.123 +] 1.124 + 1.125 +LOCAL_INCLUDES += [ 1.126 + '/xpcom/build', 1.127 +] 1.128 + 1.129 +IPDL_SOURCES = [ 1.130 + 'InputStreamParams.ipdlh', 1.131 + 'PBackground.ipdl', 1.132 + 'PBackgroundTest.ipdl', 1.133 + 'ProtocolTypes.ipdlh', 1.134 + 'URIParams.ipdlh', 1.135 +] 1.136 + 1.137 + 1.138 +LOCAL_INCLUDES += [ 1.139 + '/xpcom/threads', 1.140 +] 1.141 + 1.142 +include('/ipc/chromium/chromium-config.mozbuild') 1.143 + 1.144 +FINAL_LIBRARY = 'xul' 1.145 + 1.146 +for var in ('MOZ_CHILD_PROCESS_NAME', 'MOZ_CHILD_PROCESS_BUNDLE'): 1.147 + DEFINES[var] = '"%s"' % CONFIG[var] 1.148 + 1.149 +LOCAL_INCLUDES += [ 1.150 + '/toolkit/crashreporter', 1.151 +] 1.152 + 1.153 +if CONFIG['MOZ_CONTENT_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT': 1.154 + LOCAL_INCLUDES += [ 1.155 + '/security/sandbox/win/src/sandboxbroker', 1.156 + ]