summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorRaphael <raphael@google.com>2009-04-28 12:11:03 -0700
committerRaphael <raphael@google.com>2009-04-28 12:11:03 -0700
commit68fee208248b8a7cc05033156c8acdb5c74b9fa7 (patch)
treedd164d8fd759afe039bcefe5fc41dc571107f044 /docs
parent594999277ec269bc706647b23ecc11e16f12a971 (diff)
downloadandroid_development-68fee208248b8a7cc05033156c8acdb5c74b9fa7.tar.gz
android_development-68fee208248b8a7cc05033156c8acdb5c74b9fa7.tar.bz2
android_development-68fee208248b8a7cc05033156c8acdb5c74b9fa7.zip
Fix cygwin git script, we need some of the external projects.
Diffstat (limited to 'docs')
-rw-r--r--docs/howto_SDK_git_cygwin.txt19
1 files changed, 11 insertions, 8 deletions
diff --git a/docs/howto_SDK_git_cygwin.txt b/docs/howto_SDK_git_cygwin.txt
index 2f890a397..078062b41 100644
--- a/docs/howto_SDK_git_cygwin.txt
+++ b/docs/howto_SDK_git_cygwin.txt
@@ -105,11 +105,12 @@ provides a list of projects to ignore:
B- The other issue is that by default repo maintains around 100+ git projects.
However most of these are not needed to build the Windows SDK. We can easily
-reduce this list to around 60 projects, which will make your repo syncs a lot
+reduce this list to around 70 projects, which will make your repo syncs a lot
faster.
-Solution: Simply ignore all projects bionic, bootable/*, external/* and
-hardware/*.
+Solution: Simply ignore all projects bionic, bootable/*, hardware/* and most
+external projects. For external, we still need a handful of projects for the
+SDK -- things like the emulator or sqlite can be quite useful :-)
Here's a script that takes care of all these details. It performs the repo
init, creates the appropriate local_manifest.xml and does a repo sync as
@@ -123,20 +124,22 @@ set -e # fail on errors
URL=git://android.git.kernel.org/platform/manifest.git
BRANCH=donut
-if [ ! -d .repo ]; then
- # repo init if there's no .repo directory
+# repo init if there's no .repo directory
+if [[ ! -d .repo ]]; then
repo init -u $URL -b $BRANCH
+fi
- # create a local_manifest to exclude projects not useful to the Windows SDK
+# create a local_manifest to exclude projects not useful to the Windows SDK
+L=.repo/local_manifest.xml
+if [[ ! -f $L ]]; then
M=.repo/manifest.xml
- L=.repo/local_manifest.xml
cat > $L <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
EOF
- for i in $(grep -E "/(bionic|bootable|external|hardware)" $M | sed -s '/name/s/^.*name="\([^"]\+\)".*/\1/') ; do
+ for i in $(sed -sn '/external\/\(apache\|expat\|g\|libpng\|pr\|qemu\|sqlite\|tag\|zlib\)/d;/\(bionic\|bootable\|cts\|external\|hardware\).* name/s/^.*name="\([^"]\+\)".*/\1/p' $M) ; do
echo "Ignore project $i"
echo " <remove-project name=\"$i\" />" >> $L
done