mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 16:55:40 +00:00
768b96f58b
C5038 is a new warning in VS2017, similar to gcc and clang's -Wreorder, which is enabled by -Wall. We should enable C5038 so Windows developers can see these warnings locally instead of when gcc and clang fail with warnings-as-errors on Try. https://blogs.msdn.microsoft.com/vcblog/2017/07/21/diagnostic-improvements-in-vs2017-15-3-0/ We need to suppress C5038 warnings from Windows Runtime Library header files (wrl.h) included in ANGLE and widget/windows: z:\build\build\src\vs2017_15.4.2\SDK\Include\10.0.15063.0\winrt\wrl\wrappers\corewrappers.h(515): error C5038: data member 'Microsoft::WRL::Wrappers::Details::SyncLockWithStatusT<Microsoft::WRL::Wrappers::HandleTraits::SemaphoreTraits>::sync_' will be initialized after data member 'Microsoft::WRL::Wrappers::Details::SyncLockWithStatusT<Microsoft::WRL::Wrappers::HandleTraits::SemaphoreTraits>::status_' ... And suppress C5038 warnings in upstream webrtc code: media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseFilter.cpp(176): error C5038: data member 'mozilla::media::BaseFilter::mClsId' will be initialized after data member 'mozilla::media::BaseFilter::mState' media/webrtc/trunk/webrtc/modules/video_capture/windows/BasePin.cpp(169): error C5038: data member 'mozilla::media::BasePin::mFilter' will be initialized after data member 'mozilla::media::BasePin::mLock' media/webrtc/trunk/webrtc/modules/video_capture/windows/BasePin.cpp(170): error C5038: data member 'mozilla::media::BasePin::mLock' will be initialized after data member 'mozilla::media::BasePin::mName' media/webrtc/trunk/webrtc/modules/video_capture/windows/BasePin.cpp(172): error C5038: data member 'mozilla::media::BasePin::mDirection' will be initialized after data member 'mozilla::media::BasePin::mQualitySink' MozReview-Commit-ID: BMDVkvQXNoq --HG-- extra : rebase_source : 0d5ede9530d0d0750b8fffdc1cdfdc646ec8f22a
154 lines
3.5 KiB
Python
154 lines
3.5 KiB
Python
# -*- Mode: python; 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/.
|
|
|
|
with Files("**"):
|
|
BUG_COMPONENT = ("Core", "Widget: Win32")
|
|
|
|
with Files("*CompositorWidget*"):
|
|
BUG_COMPONENT = ("Core", "Graphics")
|
|
|
|
TEST_DIRS += ['tests']
|
|
|
|
EXPORTS += [
|
|
'nsdefs.h',
|
|
'WindowHook.h',
|
|
'WinUtils.h',
|
|
]
|
|
|
|
EXPORTS.mozilla.widget += [
|
|
'AudioSession.h',
|
|
'CompositorWidgetChild.h',
|
|
'CompositorWidgetParent.h',
|
|
'InProcessWinCompositorWidget.h',
|
|
'PDFiumEngineShim.h',
|
|
'PDFViaEMFPrintHelper.h',
|
|
'WinCompositorWidget.h',
|
|
'WinMessages.h',
|
|
'WinModifierKeyState.h',
|
|
'WinNativeEventData.h',
|
|
]
|
|
|
|
UNIFIED_SOURCES += [
|
|
'AudioSession.cpp',
|
|
'CompositorWidgetChild.cpp',
|
|
'CompositorWidgetParent.cpp',
|
|
'GfxInfo.cpp',
|
|
'IEnumFE.cpp',
|
|
'IMMHandler.cpp',
|
|
'InkCollector.cpp',
|
|
'InProcessWinCompositorWidget.cpp',
|
|
'JumpListItem.cpp',
|
|
'KeyboardLayout.cpp',
|
|
'nsAppShell.cpp',
|
|
'nsClipboard.cpp',
|
|
'nsColorPicker.cpp',
|
|
'nsDataObj.cpp',
|
|
'nsDataObjCollection.cpp',
|
|
'nsDragService.cpp',
|
|
'nsIdleServiceWin.cpp',
|
|
'nsImageClipboard.cpp',
|
|
'nsLookAndFeel.cpp',
|
|
'nsNativeDragSource.cpp',
|
|
'nsNativeDragTarget.cpp',
|
|
'nsNativeThemeWin.cpp',
|
|
'nsSound.cpp',
|
|
'nsToolkit.cpp',
|
|
'nsUXThemeData.cpp',
|
|
'nsWindow.cpp',
|
|
'nsWindowBase.cpp',
|
|
'nsWindowDbg.cpp',
|
|
'nsWindowGfx.cpp',
|
|
'nsWinGesture.cpp',
|
|
'ScreenHelperWin.cpp',
|
|
'TaskbarPreview.cpp',
|
|
'TaskbarPreviewButton.cpp',
|
|
'TaskbarTabPreview.cpp',
|
|
'TaskbarWindowPreview.cpp',
|
|
'WidgetTraceEvent.cpp',
|
|
'WindowHook.cpp',
|
|
'WinIMEHandler.cpp',
|
|
'WinPointerEvents.cpp',
|
|
'WinTaskbar.cpp',
|
|
'WinTextEventDispatcherListener.cpp',
|
|
'WinUtils.cpp',
|
|
]
|
|
|
|
# The following files cannot be built in unified mode because of name clashes.
|
|
SOURCES += [
|
|
'JumpListBuilder.cpp',
|
|
'nsBidiKeyboard.cpp',
|
|
'nsFilePicker.cpp',
|
|
'nsWidgetFactory.cpp',
|
|
'WinCompositorWidget.cpp',
|
|
'WindowsUIUtils.cpp',
|
|
'WinMouseScrollHandler.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_CRASHREPORTER']:
|
|
UNIFIED_SOURCES += [
|
|
'LSPAnnotator.cpp',
|
|
]
|
|
|
|
if CONFIG['NS_PRINTING']:
|
|
UNIFIED_SOURCES += [
|
|
'nsDeviceContextSpecWin.cpp',
|
|
'nsPrintDialogUtil.cpp',
|
|
'nsPrintDialogWin.cpp',
|
|
'nsPrintOptionsWin.cpp',
|
|
'nsPrintSettingsWin.cpp',
|
|
]
|
|
if CONFIG['MOZ_ENABLE_SKIA_PDF']:
|
|
DIRS += ['/modules/pdfium']
|
|
UNIFIED_SOURCES += [
|
|
'PDFiumEngineShim.cpp',
|
|
'PDFViaEMFPrintHelper.cpp',
|
|
'WindowsEMF.cpp',
|
|
]
|
|
|
|
if CONFIG['NS_ENABLE_TSF']:
|
|
SOURCES += [
|
|
'TSFTextStore.cpp',
|
|
]
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
if CONFIG['MOZ_ENABLE_SKIA_PDF']:
|
|
LOCAL_INCLUDES += [
|
|
'/gfx/skia/skia/include/config',
|
|
'/gfx/skia/skia/include/core',
|
|
'/modules/pdfium/pdfium/public',
|
|
]
|
|
TEST_DIRS += ['gtest']
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/layout/generic',
|
|
'/layout/xul',
|
|
'/toolkit/xre',
|
|
'/widget',
|
|
'/widget/headless',
|
|
'/xpcom/base',
|
|
]
|
|
|
|
DEFINES['MOZ_UNICODE'] = True
|
|
|
|
for var in ('MOZ_ENABLE_D3D10_LAYER'):
|
|
if CONFIG[var]:
|
|
DEFINES[var] = True
|
|
|
|
RESFILE = 'widget.res'
|
|
|
|
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
|
|
|
OS_LIBS += [
|
|
'rpcrt4',
|
|
]
|
|
|
|
if CONFIG['_MSC_VER']:
|
|
# C5038: Suppress initializer list order warnings from wrl.h
|
|
SOURCES['WindowsUIUtils.cpp'].flags += ['-wd5038']
|