[MacPorts] #29214: xcodeversion portgroup: Don't fail if Xcode.app can't be found
MacPorts
noreply at macports.org
Tue Apr 19 19:00:26 PDT 2011
#29214: xcodeversion portgroup: Don't fail if Xcode.app can't be found
------------------------------+---------------------------------------------
Reporter: eturro@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 1.9.2
Keywords: | Port: xcodeversion
------------------------------+---------------------------------------------
Comment(by ryandesign@…):
/Developer/SDKs ''is'' needed by many ports; don't delete it. The things
in /Developer/usr might be needed as well by some ports; I'm not sure.
/Developer/Library contains the scripts that let you uninstall Xcode; if
you remove them, you no longer have a clean way of removing all of Xcode
later.
/Developer/Applications/Xcode.app is only 8MB; I don't think it's
unreasonable to ask users to keep that around. You're right that the
presence of Xcode.app doesn't guarantee all of developer tools is there
and working properly, but short of checking every file installed by Xcode,
and maintaining a list of every file every version of Xcode is supposed to
install, I'm not sure there is an exhaustive solution.
In the xcodeversion portgroup, I chose to use the plist inside Xcode.app
to determine the installed version of Xcode, because I could find no other
way to do so. In MacPorts base, we instead used "xcodebuild -version".
Earlier versions of xcodebuild don't show the Xcode version, so in those
cases, we have a long list of
[browser:trunk/base/src/macports1.0/macports.tcl?rev=77681#L364 known
DevToolsCore versions] and their corresponding Xcode versions. We could
bring that list into the xcodeversion portgroup (or perhaps even just use
the variable MacPorts base sets, if we can get access to it) if we really
want to allow users to remove Xcode.app.
Note that "disk space is cheap" is a mantra that we have adopted
pervasively in MacPorts. For example, ports are generally engineered to
have as many features as possible, even if that means pulling in a few
dependencies you personally might not need, or installing some
documentation you personally might never read. It's worth it to us, for
the sake of the users for whom those items are important, and it makes it
possible for other ports to declare dependencies on them and know that the
features will be there.
--
Ticket URL: <https://trac.macports.org/ticket/29214#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list