[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