Since there is no Xcode script variable for "current project directory," how can you create a script menu item to run the Clang Static Analyzer on your current project from Xcode?
问题:
回答1:
From the XCode script menu item, "Edit User Scripts" enter the following script:
#!/bin/bash
result=$( osascript << END
tell application "Xcode"
tell active project document
set projectPath to path as string
end tell
end tell
return projectPath
END
)
cd "$result"
/Developer/clangchecker/scan-build -k -V xcodebuild -configuration Debug -sdk iphonesimulator3.0
Obviously, you will need to adjust the path to your install of Clang, and adjust to the version of the SDK you are using.
Remember to do a "Clean All" immediately before using scan-build, or the results may be incomplete.
回答2:
FYI, Xcode 3.2 (Snow Leopard only I believe) includes the Clang Static Analyzer in the "Build and Analyze" menu option.
http://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html
One downside of Xcode 3.2 (aside from it only working on Snow Leopard) is that the v2.x Simulators don't seem to work - in fact, I've seen posts indicating that v2.x builds are not supported at all.
回答3:
I believe the ${PROJECT_DIR} environment variable is what you want for the directory of the project running a build-phase script.