# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- # vim: set filetype=python: # 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/. LIBRARY_NAME = 'xul' SOURCES += [ 'nsStaticXULComponents.cpp', ] if CONFIG['OS_ARCH'] == 'WINNT': SOURCES += [ 'nsDllMain.cpp', ] if not CONFIG['GNU_CC']: LOCAL_INCLUDES += [ '/widget/windows', '/xpcom/base', ] # component libraries additional_defines = ( 'MOZ_AUTH_EXTENSION', 'MOZ_GIO_COMPONENT', 'MOZ_JSDEBUGGER', 'MOZ_PERMISSIONS', 'MOZ_PREF_EXTENSIONS', 'MOZ_SPELLCHECK', 'MOZ_UNIVERSALCHARDET', 'MOZ_ZIPWRITER', ) for var in additional_defines: if CONFIG[var]: DEFINES[var] = True if CONFIG['MOZ_DEBUG'] and CONFIG['ENABLE_TESTS']: DEFINES['ENABLE_LAYOUTDEBUG'] = True if CONFIG['MOZ_WIDGET_TOOLKIT'] not in ('android', 'gonk', 'qt', 'cocoa', 'windows') and \ CONFIG['MOZ_XUL']: DEFINES['MOZ_FILEVIEW'] = True # Platform-specific icon channel stuff - supported mostly-everywhere if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'mac', 'cocoa', 'gtk2', 'gtk3', 'qt', 'android'): DEFINES['ICON_DECODER'] = True LOCAL_INCLUDES += [ '/config', # need widget/windows for resource.h (included from widget.rc) '/widget/windows', ] if CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['GNU_CC']: LOCAL_INCLUDES += [ '/xpcom/base', ] FAIL_ON_WARNINGS = True MSVC_ENABLE_PGO = True FORCE_SHARED_LIB = True DELAYLOAD_DLLS += [ 'comdlg32.dll', 'dbghelp.dll', 'psapi.dll', 'rasapi32.dll', 'rasdlg.dll', 'secur32.dll', 'wininet.dll', 'winspool.drv' ] if CONFIG['MOZ_METRO']: DELAYLOAD_DLLS += [ 'API-MS-WIN-CORE-WINRT-L' + CONFIG['CRTEXPDLLVERSION'] + '.DLL', 'API-MS-WIN-CORE-WINRT-STRING-L' + CONFIG['CRTEXPDLLVERSION'] + '.DLL', 'uiautomationcore.dll' ] if CONFIG['ACCESSIBILITY']: DELAYLOAD_DLLS += ['oleacc.dll'] if CONFIG['MOZ_WEBRTC']: DELAYLOAD_DLLS += ['msdmo.dll']