haikuwebkit/Tools/ContentExtensionTester/Configurations/Base.xcconfig

86 lines
3.8 KiB
Plaintext
Raw Permalink Normal View History

WebKit should remove unused debug variant support <https://webkit.org/b/218315> <rdar://problem/70785369> Reviewed by Darin Adler. Remove support for building the debug variant since it is currently unused. We now set default values for the DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT variables. Also move these values out of the Xcode project into Base.xcconfig files using the [config=Debug] specifier so that these overrides are next to the definitions. Source/bmalloc: * Configurations/Base.xcconfig: * bmalloc.xcodeproj/project.pbxproj: Source/JavaScriptCore: * Configurations/Base.xcconfig: * JavaScriptCore.xcodeproj/project.pbxproj: Source/ThirdParty/ANGLE: Additional changes in behavior are noted below. * Configurations/ANGLE-dynamic.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. - Set up DEAD_CODE_STRIPPING and STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously dead code and symbols were never stipped in Release or Production builds. * Configurations/ANGLE-static.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. * Configurations/Base.xcconfig: - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. Previously Debug builds were built with -Os instead of -O0. Source/ThirdParty/libwebrtc: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Add missing copyright block. - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. * Configurations/DebugRelease.xcconfig: - Add missing copyright block. - Move DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL to Base.xcconfig for [config=Debug]. * Configurations/libwebrtc.xcconfig: - Add missing copyright block. - Set up STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously symbols were never stripped in Release or Production builds. * Configurations/yasm.xcconfig: - Add missing copyright block. (GCC_PREPROCESSOR_DEFINITIONS): - Add $(DEBUG_DEFINES) so yasm builds with -DNDEBUG in Release and Production configurations. * libwebrtc.xcodeproj/project.pbxproj: - Remove unneeded PRODUCT_NAME variables. Source/WebCore: * Configurations/Base.xcconfig: * WebCore.xcodeproj/project.pbxproj: Source/WebCore/PAL: * Configurations/Base.xcconfig: * PAL.xcodeproj/project.pbxproj: Source/WebInspectorUI: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Set up DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT the same as other WebKit projects. Previously dead code was always stripped in Debug builds. Previously symbols were never stripped in Release or Production builds. Previously Debug builds were built with -Os instead of -O0. * WebInspectorUI.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to Base.xcconfig. Source/WebKit: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * WebKit.xcodeproj/project.pbxproj: - STRIP_INSTALLED_PRODUCT is now set to NO for Debug builds. Previously symbols were always stripped in Debug builds. Source/WebKitLegacy: Additional changes in behavior are noted below. * WebKitLegacy.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to mac/Configurations/Base.xcconfig. - Remove useless OTHER_LDFLAGS definitions. - Remove unneeded BUILD_VARIANTS definition. Source/WebKitLegacy/mac: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * Configurations/WebKitLegacy.xcconfig: - Move definition of ENABLE_WEBKIT_UNSET_DYLD_FRAMEWORK_PATH in DEBUG_DEFINES from the Xcode project to WebKitLegacy.xcconfig. Source/WTF: * Configurations/Base.xcconfig: * WTF.xcodeproj/project.pbxproj: Tools: Additional changes in behavior are noted below. * ContentExtensionTester/Configurations/Base.xcconfig: * ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj: * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: - Remove unneeded Xcode variables that have no effect or are already set in xcconfig files. * DumpRenderTree/mac/Configurations/Base.xcconfig: * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: - Remove redundant PRODUCT_NAME which is defined in ImageDiff.xcconfig. - Let Xcode have its way with the project file. * ImageDiff/cg/Configurations/Base.xcconfig: * Scripts/check-for-exit-time-destructors: * Scripts/check-for-global-initializers: - Switch to use BUILD_VARIANTS instead of CURRENT_VARIANT. Xcode only invokes build phase scripts once (even when multiple variants are defined for a build), and it always sets CURRENT_VARIANT=normal, so using BUILD_VARIANTS is more accurate. - Add FIXME about building with multiple variants. These scripts are only used in engineering builds, which are only ever built with BUILD_VARIANTS=normal, so there is no urgency to handle multiple variants here. * Scripts/check-for-inappropriate-objc-class-names: * Scripts/check-for-weak-vtables-and-externals: - Remove unused $variants variable. * TestWebKitAPI/Configurations/Base.xcconfig: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * lldb/lldbWebKitTester/Configurations/Base.xcconfig: * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: - Correctly define DEAD_CODE_STRIPPING, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT when buliding Debug configuration. Canonical link: https://commits.webkit.org/231223@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@269380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-11-04 21:17:51 +00:00
// Copyright (C) 2015-2020 Apple Inc. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 1. Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "../../../../Internal/Configurations/HaveInternalSDK.xcconfig"
SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds https://bugs.webkit.org/show_bug.cgi?id=189553 Reviewed by Tim Horton. .: * Makefile.shared: PerformanceTests: * MediaTime/Configurations/Base.xcconfig: * MediaTime/Configurations/SDKVariant.xcconfig: Added. Source/bmalloc: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/JavaScriptCore: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/ThirdParty/ANGLE: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/ThirdParty/libwebrtc: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/WebCore: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. * Configurations/WebCore.xcconfig: Source/WebCore/PAL: * Configurations/Base.xcconfig: * Configurations/PAL.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/WebInspectorUI: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/WebKit: * Configurations/Base.xcconfig: * Configurations/BaseTarget.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Source/WebKitLegacy/mac: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. * Configurations/WebKitLegacy.xcconfig: Source/WTF: * Configurations/Base.xcconfig: * Configurations/SDKVariant.xcconfig: Added. Tools: Add a check-webkit-style check that ensures all SDKVariant.xcconfig files match. * ContentExtensionTester/Configurations/Base.xcconfig: * ContentExtensionTester/Configurations/SDKVariant.xcconfig: Added. * DumpRenderTree/mac/Configurations/Base.xcconfig: * DumpRenderTree/mac/Configurations/SDKVariant.xcconfig: Added. * ImageDiff/cg/Configurations/Base.xcconfig: * ImageDiff/cg/Configurations/SDKVariant.xcconfig: Added. * MiniBrowser/Configurations/Base.xcconfig: * MiniBrowser/Configurations/SDKVariant.xcconfig: Added. * MobileMiniBrowser/Configurations/Base.xcconfig: * MobileMiniBrowser/Configurations/SDKVariant.xcconfig: Added. * Scripts/webkitpy/style/checker.py: (_all_categories): (FileType): (CheckerDispatcher._file_type): (CheckerDispatcher._create_checker): * Scripts/webkitpy/style/checkers/sdkvariant.py: Added. (SDKVariantChecker): (SDKVariantChecker.__init__): (SDKVariantChecker.check): * TestWebKitAPI/Configurations/Base.xcconfig: * TestWebKitAPI/Configurations/SDKVariant.xcconfig: Added. * WebEditingTester/Configurations/Base.xcconfig: * WebEditingTester/Configurations/SDKVariant.xcconfig: Added. * WebKitLauncher/Configurations/SDKVariant.xcconfig: Added. * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/Configurations/SDKVariant.xcconfig: Added. * lldb/lldbWebKitTester/Configurations/Base.xcconfig: * lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig: Added. Canonical link: https://commits.webkit.org/208098@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@240176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-01-18 22:53:49 +00:00
#include "SDKVariant.xcconfig"
USE_INTERNAL_SDK = $(USE_INTERNAL_SDK_$(CONFIGURATION));
USE_INTERNAL_SDK_Production = YES;
USE_INTERNAL_SDK_Debug = $(HAVE_INTERNAL_SDK);
USE_INTERNAL_SDK_Release = $(HAVE_INTERNAL_SDK);
CLANG_CXX_LANGUAGE_STANDARD = gnu++0x;
CLANG_CXX_LIBRARY = libc++;
Enable Objective-C weak references <https://webkit.org/b/184789> <rdar://problem/39571716> Reviewed by Dan Bernstein. Source/bmalloc: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/JavaScriptCore: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * Configurations/ToolExecutable.xcconfig: (CLANG_ENABLE_OBJC_ARC): Simplify. Source/ThirdParty/ANGLE: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/ThirdParty/libwebrtc: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WebCore: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WebCore/PAL: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WebInspectorUI: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WebKit: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WebKitLegacy/mac: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Source/WTF: * Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Tools: * ContentExtensionTester/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * DumpRenderTree/mac/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * ImageDiff/cg/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * MiniBrowser/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * TestWebKitAPI/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. * WebEditingTester/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_ARC): Re-order. * WebKitLauncher/Configurations/Base.xcconfig: Add newline at end of file. (CLANG_ENABLE_OBJC_WEAK): Enable. * WebKitTestRunner/Configurations/Base.xcconfig: (CLANG_ENABLE_OBJC_WEAK): Enable. Canonical link: https://commits.webkit.org/200302@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@230824 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-04-19 22:53:45 +00:00
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_CXX0X_EXTENSIONS = NO;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = dwarf-with-dsym;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DEBUGGING_SYMBOLS = default;
GCC_ENABLE_CPP_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_ENABLE_SYMBOL_SEPARATION = NO;
GCC_FAST_OBJC_DISPATCH = YES;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
GCC_OBJC_CALL_CXX_CDTORS = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(inherited);
GCC_STRICT_ALIASING = YES;
GCC_THREADSAFE_STATICS = NO;
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION_ = YES;
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES;
GCC_WARN_SIGN_COMPARE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
Should not use variable-length-array (VLA) https://bugs.webkit.org/show_bug.cgi?id=209043 Reviewed by Mark Lam. PerformanceTests: * MediaTime/Configurations/Base.xcconfig: Source/bmalloc: * Configurations/Base.xcconfig: Source/JavaScriptCore: This patch disables variable-length-array (VLA). If this feature uses user-input, user can control the stack height consumed by C++ code. This patch avoids using VLA. To achieve that, 1. We set `-Wvla` warning option to trigger warnings if it is used. 2. Introduce MarkedJSValueRefArray for API. This replaces `JSValueRef arguments[variableLength]` use case. MarkedJSValueRefArray registers itself to JSC GC so that GC can mark it as a strong root. * API/JSContext.mm: (+[JSContext currentArguments]): * API/JSValue.mm: (-[JSValue callWithArguments:]): (-[JSValue constructWithArguments:]): (-[JSValue invokeMethod:withArguments:]): * API/MarkedJSValueRefArray.cpp: Added. (JSC::MarkedJSValueRefArray::MarkedJSValueRefArray): (JSC::MarkedJSValueRefArray::~MarkedJSValueRefArray): (JSC::MarkedJSValueRefArray::visitAggregate): * API/MarkedJSValueRefArray.h: Added. * API/tests/minidom.c: (print): * API/tests/testapi.cpp: (TestAPI::markedJSValueArrayAndGC): (testCAPIViaCpp): * Configurations/Base.xcconfig: * JavaScriptCore.xcodeproj/project.pbxproj: * Sources.txt: * heap/Heap.cpp: (JSC::Heap::addCoreConstraints): (JSC::Heap::addMarkedJSValueRefArray): * heap/Heap.h: * heap/MarkedSpace.h: (JSC::MarkedSpace::activeWeakSetsBegin): Deleted. (JSC::MarkedSpace::activeWeakSetsEnd): Deleted. (JSC::MarkedSpace::newActiveWeakSetsBegin): Deleted. (JSC::MarkedSpace::newActiveWeakSetsEnd): Deleted. * runtime/ArgList.h: Source/WebCore: * Configurations/Base.xcconfig: * crypto/mac/SerializedCryptoKeyWrapMac.mm: (WebCore::wrapSerializedCryptoKey): (WebCore::unwrapSerializedCryptoKey): * html/canvas/WebGL2RenderingContext.cpp: (WebCore::WebGL2RenderingContext::getInternalformatParameter): * platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp: (WebCore::CoreAudioCaptureDeviceManager::refreshAudioCaptureDevices): * platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm: (WebCore::updateDisplayID): (WebCore::ScreenDisplayCaptureSourceMac::screenCaptureDevices): Source/WebCore/PAL: * Configurations/Base.xcconfig: Source/WebInspectorUI: * Configurations/Base.xcconfig: Source/WebKit: * Configurations/Base.xcconfig: * UIProcess/_WKTouchEventGenerator.mm: (-[_WKTouchEventGenerator touchDown:touchCount:]): (-[_WKTouchEventGenerator liftUp:touchCount:]): (-[_WKTouchEventGenerator moveToPoints:touchCount:duration:]): Source/WebKitLegacy/mac: * Configurations/Base.xcconfig: Source/WTF: * Configurations/Base.xcconfig: * wtf/UUID.cpp: (WTF::bootSessionUUIDString): Tools: * ContentExtensionTester/Configurations/Base.xcconfig: * lldb/lldbWebKitTester/Configurations/Base.xcconfig: Canonical link: https://commits.webkit.org/222020@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-03-15 10:16:52 +00:00
WARNING_CFLAGS = -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wexit-time-destructors -Wglobal-constructors -Wtautological-compare -Wimplicit-fallthrough -Wvla;
TARGET_MACOS_LEGACY_VERSION_IDENTIFIER = $(TARGET_MACOS_LEGACY_VERSION_IDENTIFIER_$(MACOSX_DEPLOYMENT_TARGET:base))
TARGET_MACOS_LEGACY_VERSION_IDENTIFIER_10 = 10$(MACOSX_DEPLOYMENT_TARGET:suffix:identifier)
TARGET_MAC_OS_X_VERSION_MAJOR = $(TARGET_MAC_OS_X_VERSION_MAJOR_$(TARGET_MACOS_LEGACY_VERSION_IDENTIFIER))
TARGET_MAC_OS_X_VERSION_MAJOR_ = $(MACOSX_DEPLOYMENT_TARGET:base:base)0000
TARGET_MAC_OS_X_VERSION_MAJOR_10_13 = 101300
TARGET_MAC_OS_X_VERSION_MAJOR_10_14 = 101400
TARGET_MAC_OS_X_VERSION_MAJOR_10_15 = 101500
WebKit should remove unused debug variant support <https://webkit.org/b/218315> <rdar://problem/70785369> Reviewed by Darin Adler. Remove support for building the debug variant since it is currently unused. We now set default values for the DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT variables. Also move these values out of the Xcode project into Base.xcconfig files using the [config=Debug] specifier so that these overrides are next to the definitions. Source/bmalloc: * Configurations/Base.xcconfig: * bmalloc.xcodeproj/project.pbxproj: Source/JavaScriptCore: * Configurations/Base.xcconfig: * JavaScriptCore.xcodeproj/project.pbxproj: Source/ThirdParty/ANGLE: Additional changes in behavior are noted below. * Configurations/ANGLE-dynamic.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. - Set up DEAD_CODE_STRIPPING and STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously dead code and symbols were never stipped in Release or Production builds. * Configurations/ANGLE-static.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. * Configurations/Base.xcconfig: - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. Previously Debug builds were built with -Os instead of -O0. Source/ThirdParty/libwebrtc: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Add missing copyright block. - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. * Configurations/DebugRelease.xcconfig: - Add missing copyright block. - Move DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL to Base.xcconfig for [config=Debug]. * Configurations/libwebrtc.xcconfig: - Add missing copyright block. - Set up STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously symbols were never stripped in Release or Production builds. * Configurations/yasm.xcconfig: - Add missing copyright block. (GCC_PREPROCESSOR_DEFINITIONS): - Add $(DEBUG_DEFINES) so yasm builds with -DNDEBUG in Release and Production configurations. * libwebrtc.xcodeproj/project.pbxproj: - Remove unneeded PRODUCT_NAME variables. Source/WebCore: * Configurations/Base.xcconfig: * WebCore.xcodeproj/project.pbxproj: Source/WebCore/PAL: * Configurations/Base.xcconfig: * PAL.xcodeproj/project.pbxproj: Source/WebInspectorUI: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Set up DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT the same as other WebKit projects. Previously dead code was always stripped in Debug builds. Previously symbols were never stripped in Release or Production builds. Previously Debug builds were built with -Os instead of -O0. * WebInspectorUI.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to Base.xcconfig. Source/WebKit: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * WebKit.xcodeproj/project.pbxproj: - STRIP_INSTALLED_PRODUCT is now set to NO for Debug builds. Previously symbols were always stripped in Debug builds. Source/WebKitLegacy: Additional changes in behavior are noted below. * WebKitLegacy.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to mac/Configurations/Base.xcconfig. - Remove useless OTHER_LDFLAGS definitions. - Remove unneeded BUILD_VARIANTS definition. Source/WebKitLegacy/mac: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * Configurations/WebKitLegacy.xcconfig: - Move definition of ENABLE_WEBKIT_UNSET_DYLD_FRAMEWORK_PATH in DEBUG_DEFINES from the Xcode project to WebKitLegacy.xcconfig. Source/WTF: * Configurations/Base.xcconfig: * WTF.xcodeproj/project.pbxproj: Tools: Additional changes in behavior are noted below. * ContentExtensionTester/Configurations/Base.xcconfig: * ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj: * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: - Remove unneeded Xcode variables that have no effect or are already set in xcconfig files. * DumpRenderTree/mac/Configurations/Base.xcconfig: * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: - Remove redundant PRODUCT_NAME which is defined in ImageDiff.xcconfig. - Let Xcode have its way with the project file. * ImageDiff/cg/Configurations/Base.xcconfig: * Scripts/check-for-exit-time-destructors: * Scripts/check-for-global-initializers: - Switch to use BUILD_VARIANTS instead of CURRENT_VARIANT. Xcode only invokes build phase scripts once (even when multiple variants are defined for a build), and it always sets CURRENT_VARIANT=normal, so using BUILD_VARIANTS is more accurate. - Add FIXME about building with multiple variants. These scripts are only used in engineering builds, which are only ever built with BUILD_VARIANTS=normal, so there is no urgency to handle multiple variants here. * Scripts/check-for-inappropriate-objc-class-names: * Scripts/check-for-weak-vtables-and-externals: - Remove unused $variants variable. * TestWebKitAPI/Configurations/Base.xcconfig: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * lldb/lldbWebKitTester/Configurations/Base.xcconfig: * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: - Correctly define DEAD_CODE_STRIPPING, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT when buliding Debug configuration. Canonical link: https://commits.webkit.org/231223@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@269380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-11-04 21:17:51 +00:00
DEBUG_DEFINES = NDEBUG;
DEBUG_DEFINES[config=Debug] = ;
WebKit should remove unused debug variant support <https://webkit.org/b/218315> <rdar://problem/70785369> Reviewed by Darin Adler. Remove support for building the debug variant since it is currently unused. We now set default values for the DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT variables. Also move these values out of the Xcode project into Base.xcconfig files using the [config=Debug] specifier so that these overrides are next to the definitions. Source/bmalloc: * Configurations/Base.xcconfig: * bmalloc.xcodeproj/project.pbxproj: Source/JavaScriptCore: * Configurations/Base.xcconfig: * JavaScriptCore.xcodeproj/project.pbxproj: Source/ThirdParty/ANGLE: Additional changes in behavior are noted below. * Configurations/ANGLE-dynamic.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. - Set up DEAD_CODE_STRIPPING and STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously dead code and symbols were never stipped in Release or Production builds. * Configurations/ANGLE-static.xcconfig: - Move DEBUG_DEFINES to Base.xcconfig. * Configurations/Base.xcconfig: - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. Previously Debug builds were built with -Os instead of -O0. Source/ThirdParty/libwebrtc: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Add missing copyright block. - Set up DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL the same as other WebKit projects. * Configurations/DebugRelease.xcconfig: - Add missing copyright block. - Move DEBUG_DEFINES and GCC_OPTIMIZATION_LEVEL to Base.xcconfig for [config=Debug]. * Configurations/libwebrtc.xcconfig: - Add missing copyright block. - Set up STRIP_INSTALLED_PRODUCT the same as for other WebKit projects. Previously symbols were never stripped in Release or Production builds. * Configurations/yasm.xcconfig: - Add missing copyright block. (GCC_PREPROCESSOR_DEFINITIONS): - Add $(DEBUG_DEFINES) so yasm builds with -DNDEBUG in Release and Production configurations. * libwebrtc.xcodeproj/project.pbxproj: - Remove unneeded PRODUCT_NAME variables. Source/WebCore: * Configurations/Base.xcconfig: * WebCore.xcodeproj/project.pbxproj: Source/WebCore/PAL: * Configurations/Base.xcconfig: * PAL.xcodeproj/project.pbxproj: Source/WebInspectorUI: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: - Set up DEAD_CODE_STRIPPING, DEBUG_DEFINES, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT the same as other WebKit projects. Previously dead code was always stripped in Debug builds. Previously symbols were never stripped in Release or Production builds. Previously Debug builds were built with -Os instead of -O0. * WebInspectorUI.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to Base.xcconfig. Source/WebKit: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * WebKit.xcodeproj/project.pbxproj: - STRIP_INSTALLED_PRODUCT is now set to NO for Debug builds. Previously symbols were always stripped in Debug builds. Source/WebKitLegacy: Additional changes in behavior are noted below. * WebKitLegacy.xcodeproj/project.pbxproj: - Move DEBUG_DEFINES to mac/Configurations/Base.xcconfig. - Remove useless OTHER_LDFLAGS definitions. - Remove unneeded BUILD_VARIANTS definition. Source/WebKitLegacy/mac: Additional changes in behavior are noted below. * Configurations/Base.xcconfig: * Configurations/WebKitLegacy.xcconfig: - Move definition of ENABLE_WEBKIT_UNSET_DYLD_FRAMEWORK_PATH in DEBUG_DEFINES from the Xcode project to WebKitLegacy.xcconfig. Source/WTF: * Configurations/Base.xcconfig: * WTF.xcodeproj/project.pbxproj: Tools: Additional changes in behavior are noted below. * ContentExtensionTester/Configurations/Base.xcconfig: * ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj: * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: - Remove unneeded Xcode variables that have no effect or are already set in xcconfig files. * DumpRenderTree/mac/Configurations/Base.xcconfig: * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: - Remove redundant PRODUCT_NAME which is defined in ImageDiff.xcconfig. - Let Xcode have its way with the project file. * ImageDiff/cg/Configurations/Base.xcconfig: * Scripts/check-for-exit-time-destructors: * Scripts/check-for-global-initializers: - Switch to use BUILD_VARIANTS instead of CURRENT_VARIANT. Xcode only invokes build phase scripts once (even when multiple variants are defined for a build), and it always sets CURRENT_VARIANT=normal, so using BUILD_VARIANTS is more accurate. - Add FIXME about building with multiple variants. These scripts are only used in engineering builds, which are only ever built with BUILD_VARIANTS=normal, so there is no urgency to handle multiple variants here. * Scripts/check-for-inappropriate-objc-class-names: * Scripts/check-for-weak-vtables-and-externals: - Remove unused $variants variable. * TestWebKitAPI/Configurations/Base.xcconfig: * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * WebKitTestRunner/Configurations/Base.xcconfig: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * lldb/lldbWebKitTester/Configurations/Base.xcconfig: * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: - Correctly define DEAD_CODE_STRIPPING, GCC_OPTIMIZATION_LEVEL and STRIP_INSTALLED_PRODUCT when buliding Debug configuration. Canonical link: https://commits.webkit.org/231223@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@269380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-11-04 21:17:51 +00:00
GCC_OPTIMIZATION_LEVEL = 3;
GCC_OPTIMIZATION_LEVEL[config=Debug] = 0;
SDKROOT = macosx.internal;