Re: Xcode 3 custom install location vs Shared workgroup builds
Re: Xcode 3 custom install location vs Shared workgroup builds
- Subject: Re: Xcode 3 custom install location vs Shared workgroup builds
- From: Scott Tooker <email@hidden>
- Date: Thu, 3 Apr 2008 11:52:17 -0700
On Apr 3, 2008, at 3:11 AM, Thomas Engelmeier wrote:
On 02.04.2008, at 23:48, Scott Tooker wrote:
To make the Xcode developer tools fully relocatable is actually a
hard problem to solve, since there are some features that require
pieces that get installed into the base OS (distributed builds is
one, so is Dtrace/Instruments integration).
Um, it requires an OS wide install and can not be expanded to either
- an proxy daemon that delegates to the appropriate gcc installation
based on an additional gcc version flag
or
- one distcc instance per installation started and broadcasted with
an unique port?
Guess the later might be desired for companies with compile farms so
their developers can use Xcode 2.5, 3.0 AND some beta variants
simultanous for the compile cluster.
Remember that distributed builds for Xcode 2.5 will only work on
Tiger, not Leopard. Currently (as of Xcode 3.0), there is no good
solution for distributing builds using multiple different developer
tools installs on the same machine.
If you feel you need and would use such functionality, please file a
bug.
In order to support distributed builds and Dtrace integration (due to
dependencies on launchd which needs to be able to reference daemons
via an absolute path), a small number of files need to be installed
into the base system.
This does result in a small amount of secondary functionality being
unavailable when you have only installed the relocatable developer
tools (for example, keeping the Xcode directory on a removable or
secondary volume) without installing the "System" pieces. However, we
spent a LOT of time ensuring that Xcode and gcc functionality remained
intact in this scenario.
For reference, here are the files that get laid down by Xcode 3.0
developer tools (omitting CHUD Tools for clarity):
./Library/Developer/3.0/uninstall-devtools
./Library/Developer/3.0/uninstaller/packages-10.5
./Library/Developer/3.0/DNB/DedicatedNetworkBuilds.framework
./Library/Developer/3.0/Instruments/Daemons/DTActivityServer
./Library/Developer/3.0/Instruments/Daemons/DTDTraceServer
./Library/Developer/3.0/Instruments/Daemons/DTTSecD
./Library/Developer/Shared/uninstall-devtools
./Library/Developer/Shared/uninstaller/packages-10.5
./Library/Developer/Shared/XcodeTools.plist
./Library/Developer/Shared/Documentation/DocSets
./System/Library/LaunchDaemons/com.apple.dnbobserver.plist
./System/Library/LaunchDaemons/com.apple.dnbvolunteer.plist
./System/Library/LaunchDaemons/com.apple.distccdConfig.plist
./System/Library/LaunchDaemons/com.apple.dt.DTActivityServer.plist
./System/Library/LaunchDaemons/com.apple.dt.DTDTraceServer.plist
./System/Library/LaunchDaemons/com.apple.dt.DTTSecD.plist
./System/Library/LaunchDaemons/distccd.plist
./System/Library/UserEventPlugins/InstrumentsHotKeyAgent.plugin/
./private/etc/gdb.conf
./usr/bin/agvtool
./usr/bin/ibtool
./usr/bin/instruments
./usr/bin/opendiff
./usr/bin/xcode-select
./usr/bin/xcodebuild
./usr/bin/xcodeindex
./usr/share/man/man1/xcode-select.1
./usr/share/xcode-select
./usr/share/xcode-select/xcode_dir_path
There are a few files (like the gdb.conf file) that already have bugs
on them to be moved inside the developer folder, the content in /usr/
bin is support for the xcode_select mechanism (allows you to target a
specific tools installation to use from the command line).
Compared to the total amount of content provided by the Xcode 3.0
developer tools that was made relocatable (i.e. installed inside /
Developer), not much is installed into the base system (and all of the
base system content can be skipped when installing).
Scott
Scott
Regards,
Tom_E
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden