Author: tfiala Date: Tue Jun 21 18:06:20 2016 New Revision: 273332 URL: http://llvm.org/viewvc/llvm-project?rev=273332&view=rev Log: add code coverage support to Xcode build
This change adds a new Xcode variable, LLDB_ENABLE_COVERAGE. If set to 1, then the Xcode build will produce a clang coverage-style build of LLDB. This can be done with a commandline invocation such as: xcodebuild -scheme desktop -configuration Debug build LLDB_ENABLE_COVERAGE=1 Alternatively, the variable can be locally modified from within Xcode and built with the Xcode IDE. Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/lldb.xcodeproj/project.pbxproj?rev=273332&r1=273331&r2=273332&view=diff ============================================================================== --- lldb/trunk/lldb.xcodeproj/project.pbxproj (original) +++ lldb/trunk/lldb.xcodeproj/project.pbxproj Tue Jun 21 18:06:20 2016 @@ -3759,7 +3759,7 @@ isa = PBXGroup; children = ( 26CE05A0115C31E50022F371 /* debugserver */, - 239504C51BDD3FD700963CEA /* debugserver */, + 239504C51BDD3FD700963CEA /* debugserver-nonui */, ); name = Products; sourceTree = "<group>"; @@ -6302,10 +6302,10 @@ /* End PBXProject section */ /* Begin PBXReferenceProxy section */ - 239504C51BDD3FD700963CEA /* debugserver */ = { + 239504C51BDD3FD700963CEA /* debugserver-nonui */ = { isa = PBXReferenceProxy; fileType = "compiled.mach-o.executable"; - path = "debugserver-mini"; + path = "debugserver-nonui"; remoteRef = 239504C41BDD3FD700963CEA /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -7450,8 +7450,13 @@ "LLDB_COMPRESSION_CFLAGS[sdk=macosx10.11]" = "-DHAVE_LIBCOMPRESSION=1"; LLDB_COMPRESSION_LDFLAGS = ""; "LLDB_COMPRESSION_LDFLAGS[sdk=macosx10.11]" = "-weak-lcompression"; + LLDB_COVERAGE_CFLAGS = "$(LLDB_COVERAGE_CFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_CFLAGS_1 = "-fprofile-instr-generate -fcoverage-mapping"; + LLDB_COVERAGE_LDFLAGS = "$(LLDB_COVERAGE_LDFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_LDFLAGS_1 = "-fprofile-instr-generate"; LLDB_DISABLE_PYTHON = 0; "LLDB_DISABLE_PYTHON[sdk=iphoneos*]" = 1; + LLDB_ENABLE_COVERAGE = 0; LLDB_FRAMEWORK_INSTALL_DIR = /Applications/Xcode.app/Contents/SharedFrameworks; LLDB_TOOLS_INSTALL_DIR = /usr/bin; LLDB_ZLIB_CFLAGS = "-DHAVE_LIBZ=1"; @@ -7467,11 +7472,13 @@ "-Wparentheses", "$(LLDB_ZLIB_CFLAGS)", "$(LLDB_COMPRESSION_CFLAGS)", + "$(LLDB_COVERAGE_CFLAGS)", "-Wimplicit-fallthrough", ); OTHER_LDFLAGS = ( "$(LLDB_COMPRESSION_LDFLAGS)", "$(LLDB_ZLIB_LDFLAGS)", + "$(LLDB_COVERAGE_LDFLAGS)", ); PYTHON_FRAMEWORK_PATH = /System/Library/Frameworks/Python.framework; PYTHON_VERSION_MAJOR = 2; @@ -7536,8 +7543,13 @@ "LLDB_COMPRESSION_CFLAGS[sdk=macosx10.11]" = "-DHAVE_LIBCOMPRESSION=1"; LLDB_COMPRESSION_LDFLAGS = ""; "LLDB_COMPRESSION_LDFLAGS[sdk=macosx10.11]" = "-weak-lcompression"; + LLDB_COVERAGE_CFLAGS = "$(LLDB_COVERAGE_CFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_CFLAGS_1 = "-fprofile-instr-generate -fcoverage-mapping"; + LLDB_COVERAGE_LDFLAGS = "$(LLDB_COVERAGE_LDFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_LDFLAGS_1 = "-fprofile-instr-generate"; LLDB_DISABLE_PYTHON = 0; "LLDB_DISABLE_PYTHON[sdk=iphoneos*]" = 1; + LLDB_ENABLE_COVERAGE = 0; LLDB_FRAMEWORK_INSTALL_DIR = /Applications/Xcode.app/Contents/SharedFrameworks; LLDB_TOOLS_INSTALL_DIR = /usr/bin; LLDB_ZLIB_CFLAGS = "-DHAVE_LIBZ=1"; @@ -7553,11 +7565,13 @@ "-Wparentheses", "$(LLDB_ZLIB_CFLAGS)", "$(LLDB_COMPRESSION_CFLAGS)", + "$(LLDB_COVERAGE_CFLAGS)", "-Wimplicit-fallthrough", ); OTHER_LDFLAGS = ( "$(LLDB_COMPRESSION_LDFLAGS)", "$(LLDB_ZLIB_LDFLAGS)", + "$(LLDB_COVERAGE_LDFLAGS)", ); PYTHON_FRAMEWORK_PATH = /System/Library/Frameworks/Python.framework; PYTHON_VERSION_MAJOR = 2; @@ -8245,8 +8259,13 @@ "LLDB_COMPRESSION_CFLAGS[sdk=macosx10.11]" = "-DHAVE_LIBCOMPRESSION=1"; LLDB_COMPRESSION_LDFLAGS = ""; "LLDB_COMPRESSION_LDFLAGS[sdk=macosx10.11]" = "-weak-lcompression"; + LLDB_COVERAGE_CFLAGS = "$(LLDB_COVERAGE_CFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_CFLAGS_1 = "-fprofile-instr-generate -fcoverage-mapping"; + LLDB_COVERAGE_LDFLAGS = "$(LLDB_COVERAGE_LDFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_LDFLAGS_1 = "-fprofile-instr-generate"; LLDB_DISABLE_PYTHON = 0; "LLDB_DISABLE_PYTHON[sdk=iphoneos*]" = 1; + LLDB_ENABLE_COVERAGE = 0; LLDB_FRAMEWORK_INSTALL_DIR = /Applications/Xcode.app/Contents/SharedFrameworks; "LLDB_FRAMEWORK_INSTALL_DIR[sdk=iphoneos*]" = /System/Library/PrivateFrameworks; LLDB_TOOLS_INSTALL_DIR = /Applications/Xcode.app/Contents/Developer/usr/bin; @@ -8263,11 +8282,13 @@ "-Wparentheses", "$(LLDB_ZLIB_CFLAGS)", "$(LLDB_COMPRESSION_CFLAGS)", + "$(LLDB_COVERAGE_CFLAGS)", "-Wimplicit-fallthrough", ); OTHER_LDFLAGS = ( "$(LLDB_COMPRESSION_LDFLAGS)", "$(LLDB_ZLIB_LDFLAGS)", + "$(LLDB_COVERAGE_LDFLAGS)", ); PYTHON_FRAMEWORK_PATH = /System/Library/Frameworks/Python.framework; PYTHON_VERSION_MAJOR = 2; @@ -8956,8 +8977,13 @@ "LLDB_COMPRESSION_CFLAGS[sdk=macosx10.11internal]" = "-DHAVE_LIBCOMPRESSION=1"; LLDB_COMPRESSION_LDFLAGS = ""; "LLDB_COMPRESSION_LDFLAGS[sdk=macosx10.11]" = "-weak-lcompression"; + LLDB_COVERAGE_CFLAGS = "$(LLDB_COVERAGE_CFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_CFLAGS_1 = "-fprofile-instr-generate -fcoverage-mapping"; + LLDB_COVERAGE_LDFLAGS = "$(LLDB_COVERAGE_LDFLAGS_$(LLDB_ENABLE_COVERAGE))"; + LLDB_COVERAGE_LDFLAGS_1 = "-fprofile-instr-generate"; LLDB_DISABLE_PYTHON = 0; "LLDB_DISABLE_PYTHON[sdk=iphoneos*]" = 1; + LLDB_ENABLE_COVERAGE = 0; LLDB_FRAMEWORK_INSTALL_DIR = /Applications/Xcode.app/Contents/SharedFrameworks; LLDB_TOOLS_INSTALL_DIR = /usr/bin; LLDB_ZLIB_CFLAGS = "-DHAVE_LIBZ=1"; @@ -8973,11 +8999,13 @@ "-Wparentheses", "$(LLDB_ZLIB_CFLAGS)", "$(LLDB_COMPRESSION_CFLAGS)", + "$(LLDB_COVERAGE_CFLAGS)", "-Wimplicit-fallthrough", ); OTHER_LDFLAGS = ( "$(LLDB_COMPRESSION_LDFLAGS)", "$(LLDB_ZLIB_LDFLAGS)", + "$(LLDB_COVERAGE_LDFLAGS)", ); PYTHON_FRAMEWORK_PATH = /System/Library/Frameworks/Python.framework; PYTHON_VERSION_MAJOR = 2; _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits