Index: third_party/class-dump/BUILD.gn |
diff --git a/third_party/class-dump/BUILD.gn b/third_party/class-dump/BUILD.gn |
new file mode 100644 |
index 0000000000000000000000000000000000000000..40d48c4014eee8a4992c2dc9caefad74b8607e76 |
--- /dev/null |
+++ b/third_party/class-dump/BUILD.gn |
@@ -0,0 +1,197 @@ |
+# Copyright 2016 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+config("config") { |
+ visibility = [ ":class-dump" ] |
+ libs = [ |
+ "Foundation.framework", |
+ "crypto", |
+ ] |
+ |
+ # TODO(crbug.com/595295): Building class-dump tools requires OS X SDK |
+ # version 10.9 or higher. Remove this override once the global version |
+ # of the SDK is raised. |
+ common_flags = [ "-mmacosx-version-min=10.9" ] |
+ ldflags = common_flags |
+ cflags_objc = common_flags |
+ |
+ cflags_objc += [ |
+ "-Wno-semicolon-before-method-body", |
+ "-Wno-unused-function", |
+ ] |
+ |
+ precompiled_header = "src/class-dump-Prefix.pch" |
+ precompiled_source = "src/class-dump-Prefix.pch" |
+} |
+ |
+executable("class-dump") { |
+ include_dirs = [ "src/Source" ] |
+ sources = [ |
+ "src/Source/CDBalanceFormatter.h", |
+ "src/Source/CDBalanceFormatter.m", |
+ "src/Source/CDClassDump.h", |
+ "src/Source/CDClassDump.m", |
+ "src/Source/CDClassDumpVisitor.h", |
+ "src/Source/CDClassDumpVisitor.m", |
+ "src/Source/CDClassFrameworkVisitor.h", |
+ "src/Source/CDClassFrameworkVisitor.m", |
+ "src/Source/CDDataCursor.h", |
+ "src/Source/CDDataCursor.m", |
+ "src/Source/CDExtensions.h", |
+ "src/Source/CDFatArch.h", |
+ "src/Source/CDFatArch.m", |
+ "src/Source/CDFatFile.h", |
+ "src/Source/CDFatFile.m", |
+ "src/Source/CDFile.h", |
+ "src/Source/CDFile.m", |
+ "src/Source/CDFindMethodVisitor.h", |
+ "src/Source/CDFindMethodVisitor.m", |
+ "src/Source/CDLCDataInCode.h", |
+ "src/Source/CDLCDataInCode.m", |
+ "src/Source/CDLCDyldInfo.h", |
+ "src/Source/CDLCDyldInfo.m", |
+ "src/Source/CDLCDylib.h", |
+ "src/Source/CDLCDylib.m", |
+ "src/Source/CDLCDylinker.h", |
+ "src/Source/CDLCDylinker.m", |
+ "src/Source/CDLCDynamicSymbolTable.h", |
+ "src/Source/CDLCDynamicSymbolTable.m", |
+ "src/Source/CDLCEncryptionInfo.h", |
+ "src/Source/CDLCEncryptionInfo.m", |
+ "src/Source/CDLCFunctionStarts.h", |
+ "src/Source/CDLCFunctionStarts.m", |
+ "src/Source/CDLCLinkeditData.h", |
+ "src/Source/CDLCLinkeditData.m", |
+ "src/Source/CDLCMain.h", |
+ "src/Source/CDLCMain.m", |
+ "src/Source/CDLCPrebindChecksum.h", |
+ "src/Source/CDLCPrebindChecksum.m", |
+ "src/Source/CDLCPreboundDylib.h", |
+ "src/Source/CDLCPreboundDylib.m", |
+ "src/Source/CDLCRoutines32.h", |
+ "src/Source/CDLCRoutines32.m", |
+ "src/Source/CDLCRoutines64.h", |
+ "src/Source/CDLCRoutines64.m", |
+ "src/Source/CDLCRunPath.h", |
+ "src/Source/CDLCRunPath.m", |
+ "src/Source/CDLCSegment.h", |
+ "src/Source/CDLCSegment.m", |
+ "src/Source/CDLCSourceVersion.h", |
+ "src/Source/CDLCSourceVersion.m", |
+ "src/Source/CDLCSubClient.h", |
+ "src/Source/CDLCSubClient.m", |
+ "src/Source/CDLCSubFramework.h", |
+ "src/Source/CDLCSubFramework.m", |
+ "src/Source/CDLCSubLibrary.h", |
+ "src/Source/CDLCSubLibrary.m", |
+ "src/Source/CDLCSubUmbrella.h", |
+ "src/Source/CDLCSubUmbrella.m", |
+ "src/Source/CDLCSymbolTable.h", |
+ "src/Source/CDLCSymbolTable.m", |
+ "src/Source/CDLCTwoLevelHints.h", |
+ "src/Source/CDLCTwoLevelHints.m", |
+ "src/Source/CDLCUUID.h", |
+ "src/Source/CDLCUUID.m", |
+ "src/Source/CDLCUnixThread.h", |
+ "src/Source/CDLCUnixThread.m", |
+ "src/Source/CDLCUnknown.h", |
+ "src/Source/CDLCUnknown.m", |
+ "src/Source/CDLCVersionMinimum.h", |
+ "src/Source/CDLCVersionMinimum.m", |
+ "src/Source/CDLoadCommand.h", |
+ "src/Source/CDLoadCommand.m", |
+ "src/Source/CDMachOFile.h", |
+ "src/Source/CDMachOFile.m", |
+ "src/Source/CDMachOFileDataCursor.h", |
+ "src/Source/CDMachOFileDataCursor.m", |
+ "src/Source/CDMethodType.h", |
+ "src/Source/CDMethodType.m", |
+ "src/Source/CDMultiFileVisitor.h", |
+ "src/Source/CDMultiFileVisitor.m", |
+ "src/Source/CDOCCategory.h", |
+ "src/Source/CDOCCategory.m", |
+ "src/Source/CDOCClass.h", |
+ "src/Source/CDOCClass.m", |
+ "src/Source/CDOCClassReference.h", |
+ "src/Source/CDOCClassReference.m", |
+ "src/Source/CDOCInstanceVariable.h", |
+ "src/Source/CDOCInstanceVariable.m", |
+ "src/Source/CDOCMethod.h", |
+ "src/Source/CDOCMethod.m", |
+ "src/Source/CDOCModule.h", |
+ "src/Source/CDOCModule.m", |
+ "src/Source/CDOCProperty.h", |
+ "src/Source/CDOCProperty.m", |
+ "src/Source/CDOCProtocol.h", |
+ "src/Source/CDOCProtocol.m", |
+ "src/Source/CDOCSymtab.h", |
+ "src/Source/CDOCSymtab.m", |
+ "src/Source/CDObjectiveC1Processor.h", |
+ "src/Source/CDObjectiveC1Processor.m", |
+ "src/Source/CDObjectiveC2Processor.h", |
+ "src/Source/CDObjectiveC2Processor.m", |
+ "src/Source/CDObjectiveCProcessor.h", |
+ "src/Source/CDObjectiveCProcessor.m", |
+ "src/Source/CDProtocolUniquer.h", |
+ "src/Source/CDProtocolUniquer.m", |
+ "src/Source/CDRelocationInfo.h", |
+ "src/Source/CDRelocationInfo.m", |
+ "src/Source/CDSearchPathState.h", |
+ "src/Source/CDSearchPathState.m", |
+ "src/Source/CDSection.h", |
+ "src/Source/CDSection.m", |
+ "src/Source/CDStructureInfo.h", |
+ "src/Source/CDStructureInfo.m", |
+ "src/Source/CDStructureTable.h", |
+ "src/Source/CDStructureTable.m", |
+ "src/Source/CDSymbol.h", |
+ "src/Source/CDSymbol.m", |
+ "src/Source/CDTextClassDumpVisitor.h", |
+ "src/Source/CDTextClassDumpVisitor.m", |
+ "src/Source/CDTopoSortNode.h", |
+ "src/Source/CDTopoSortNode.m", |
+ "src/Source/CDTopologicalSortProtocol.h", |
+ "src/Source/CDType.h", |
+ "src/Source/CDType.m", |
+ "src/Source/CDTypeController.h", |
+ "src/Source/CDTypeController.m", |
+ "src/Source/CDTypeFormatter.h", |
+ "src/Source/CDTypeFormatter.m", |
+ "src/Source/CDTypeLexer.h", |
+ "src/Source/CDTypeLexer.m", |
+ "src/Source/CDTypeName.h", |
+ "src/Source/CDTypeName.m", |
+ "src/Source/CDTypeParser.h", |
+ "src/Source/CDTypeParser.m", |
+ "src/Source/CDVisitor.h", |
+ "src/Source/CDVisitor.m", |
+ "src/Source/CDVisitorPropertyState.h", |
+ "src/Source/CDVisitorPropertyState.m", |
+ "src/Source/NSArray-CDExtensions.h", |
+ "src/Source/NSArray-CDExtensions.m", |
+ "src/Source/NSData-CDExtensions.h", |
+ "src/Source/NSData-CDExtensions.m", |
+ "src/Source/NSError-CDExtensions.h", |
+ "src/Source/NSError-CDExtensions.m", |
+ "src/Source/NSScanner-CDExtensions.h", |
+ "src/Source/NSScanner-CDExtensions.m", |
+ "src/Source/NSString-CDExtensions.h", |
+ "src/Source/NSString-CDExtensions.m", |
+ "src/Source/ULEB128.h", |
+ "src/Source/ULEB128.m", |
+ "src/Source/cd_objc2.h", |
+ "src/class-dump.m", |
+ ] |
+ |
+ configs += [ |
+ ":config", |
+ "//build/config/compiler:enable_arc", |
+ "//build/config/compiler:no_chromium_code", |
+ ] |
+ |
+ # TODO(crbug.com/595295): Building class-dump tools requires OS X SDK |
+ # version 10.9 or higher. To prevent mixing code using different value |
+ # of minimum SDK supported, forbids dependencies on any Chromium target. |
+ assert_no_deps = [ "//base/*" ] |
+} |