Revision
390
Author
wsiegrist@apple.com
Date
2008-09-26 15:28:50 -0700 (Fri, 26 Sep 2008)

Log Message

More Xcode 3.x fixes:
 * Add more symlinks to open source binaries
 * Be more precise with Jamfile and resource rewriting
 * Replace dsymutil with /usr/bin/true to disable debug builds and remove a dependency on libauto
 * Only set DEVELOPER_DIR when chrooted
 * Add dependencies for IOKitUser and launchd

Modified Paths

Diff

Modified: trunk/darwinbuild/darwinbuild (389 => 390)


--- trunk/darwinbuild/darwinbuild	2008-09-24 21:58:24 UTC (rev 389)
+++ trunk/darwinbuild/darwinbuild	2008-09-26 22:28:50 UTC (rev 390)
@@ -526,9 +526,9 @@
 		cp "$DITTO" "$BuildRoot/usr/bin/ditto"
 	fi
 
-	### need dsymutil too... (hack for now)
+	### need dsymutil but it depends on libauto so disable for now
 	if [ ! -x "$BuildRoot/usr/bin/dsymutil" ]; then
-		cp "/usr/bin/dsymutil" "$BuildRoot/usr/bin/dsymutil"
+		cp "/usr/bin/true" "$BuildRoot/usr/bin/dsymutil"
 	fi
 
 	### CoreOSMakefiles 
@@ -594,8 +594,10 @@
 
 export PATH=/bin:/sbin:/usr/bin:/usr/sbin/:/usr/local/bin:/usr/local/sbin
 
-# sets the install path to xcode tools
-export DEVELOPER_DIR="/XCD/loper"
+# sets the install path to xcode tools if we're chrooted
+if [ "$CHROOTED" == "YES" ]; then
+	export DEVELOPER_DIR="/XCD/loper"
+fi
 
 export SHELL="/bin/sh"
 export HOME="/var/root"

Modified: trunk/darwinbuild/installXcode31 (389 => 390)


--- trunk/darwinbuild/installXcode31	2008-09-24 21:58:24 UTC (rev 389)
+++ trunk/darwinbuild/installXcode31	2008-09-26 22:28:50 UTC (rev 390)
@@ -13,12 +13,11 @@
     /usr/bin/xcodebuild \
     /usr/bin/xcode-select \
     /Developer/Library/version.plist \
-    /Developer/usr/bin/dsymutil \
-    /Developer/usr/bin/xcodebuild \
-    /Developer/Platforms/MacOSX.platform \
-    /Developer/Makefiles/pbx_jamfiles)
+    /Developer/usr/bin/xcodebuild)
     
 BINSYMLINKS=( \
+    cc \
+    dsymutil \
     gcc \
     gcc-4.0 \
     gcc-4.2 \
@@ -28,6 +27,8 @@
     g++ \
     g++-4.0 \
     g++-4.2 \
+    libtool \
+    mig \
     strip)
     
 
@@ -136,7 +137,6 @@
     echo "Copying Xcode and dependencies ..."
 
     # copy files and use sed to rewrite paths during copy
-    #  The [^m] used for /Developer is to prevent matching Platform subdirectories
     cpio -o -c < /tmp/installXcode.files.$$ | \
 	sed -e 's,/System,/XCD/SY,g' \
 	-e 's,CoreServices/XCD/SY,CoreServices/System,g' \
@@ -154,10 +154,17 @@
     ln -s loper/Library/PrivateFrameworks R
     popd > /dev/null
 
-    echo "Copying Jamfiles, Xcode Resources, and CoreServices ..."
-    find ".$JAMFILES" ".$XCODERESOURCES" \
-	./System/Library/CoreServices/System*.{plist,bundle} \
-	./System/Library/CoreServices/CoreTypes.bundle/ \
+    echo "Copying Jamfiles and Xcode Resources ..."
+    find ".$JAMFILES" ".$XCODERESOURCES" | cpio -o -c | \
+        sed -e 's,$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks,/XCD/SY///////Library/PrivateFrameworks,g' \
+        -e 's,/Developer/Makefiles/pbx_jamfiles,/XCD/loper/Makefiles/pbx_jamfiles,g' \
+        -e 's,/Developer/Library/PrivateFrameworks/DevToolsCore.framework,/XCD/loper/Library/PrivateFrameworks/DevToolsCore.framework,g' | \
+    (cd "$BUILDROOT"; cpio -ium${VERBOSECPIO}d )
+
+
+    echo "Copying CoreServices ..."
+    find ./System/Library/CoreServices/System*.{plist,bundle} \
+	 ./System/Library/CoreServices/CoreTypes.bundle/ \
 	| cpio -o -c | \
 	sed -e 's,/System,/XCD/SY,g' \
 	-e 's,CoreServices/XCD/SY,CoreServices/System,g' \
@@ -184,6 +191,19 @@
 	-e 's,platform/XCD/loper,platform/Developer,g' | \
     (cd "$BUILDROOT"; cpio -ium${VERBOSECPIO}d )           
 
+    # Platform
+    echo "Copying Mac OS X Platform ..."
+    find "./Developer/Platforms/MacOSX.platform" | cpio -o -c | \
+        sed -e 's,/System,/XCD/SY,g' \
+        -e 's,CoreServices/XCD/SY,CoreServices/System,g' \
+        -e 's,Resources/XCD/SY,Resources/System,g' \
+        -e 's,/usr/lib,/XCD/lib,g' \
+        -e 's,/usr/share/icu,/XCD/share/icu,g' \
+        -e 's,@rpath,/XCD/R,g' \
+        -e 's,/Developer,/XCD/loper,g' \
+        -e 's,platform/XCD/loper,platform/Developer,g' | \
+    (cd "$BUILDROOT"; cpio -ium${VERBOSECPIO}d )
+
 }
 
 
@@ -206,6 +226,6 @@
 
 popd > /dev/null
 
-RemoveTemps
+#RemoveTemps
 
 echo "Completed Xcode installation!"

Modified: trunk/plists/9A581.plist (389 => 390)


--- trunk/plists/9A581.plist	2008-09-24 21:58:24 UTC (rev 389)
+++ trunk/plists/9A581.plist	2008-09-26 22:28:50 UTC (rev 390)
@@ -2670,6 +2670,15 @@
 			environment = {
 				RC_ARCHS = "ppc ppc64 i386 x86_64";
 			};
+                        dependencies = {
+                                build = (
+                                        bootstrap_cmds,
+					xnu,
+				);
+				header = (
+					PowerManagement,
+				);
+			};
 			version = 376;
 		};
 		IONetworkingFamily = {
@@ -8201,7 +8210,10 @@
 					xnu,
 				);
 				header = (
+					CarbonHeaders,
+					CF,
 					DiskArbitration,
+					IOKitUser,
 					Libc_headers,
 					Libinfo,
 					Libm,