jerryw / android-sync

New java Sync client for Fennec

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

* You need Maven 3.  Homebrew is possibly easiest:

  brew update
  brew install maven

* You need to prepare the repo before you can use it.
  * Use `preprocess.sh` to build manifests etc. to keep Eclipse happy. The output
    is ignored by Git, and the Fennec merge script skips them, too.
  * The `fennec-code-drop.sh` script does this for you, as well as running tests.
  * To run Android tests, you'll need to create .project and .classpath in `test`,
    too.

* To make changes to generated files.
  * strings.xml doesn't exist. Modify strings.xml.in.
  * AndroidManifest.xml doesn't exist. Modify the file fragments in manifests/.
  * The same goes for other files that are produced by preprocess.sh.
  * If you want to alter a value _to affect our build only_, put it in
    AndroidManifest.xml.in.

* To run the unit and integration test suites:
  * `mvn test`
  * `mvn integration-test` with an emulator running or a device connected.

* To merge to mozilla-central:

  MC=~/moz/hg/mozilla-central
  pushd $MC
  hg qpop --all
  hg pull -u
  hg qnew -m "Android Sync code drop." code-drop
  popd
  ./fennec-code-drop.sh $MC
  pushd $MC
  # hg add any files that have been added. Removing files that have been
  # removed is an exercise for the reader.
  hg qrefresh

* If you *know* all tests pass, or you're in an environment that prevents you
  from running them, you can invoke `fennec-copy-code.sh` directly (with the
  appropriate environment variables.)

* To build mozilla-central:

  # You can do a partial build if you know what you're doing.
  make -f client.mk
  make -C objdir-fennec package
  adb install -r objdir-fennec/dist/fennec*.apk

* You'll need subgit to work with external dependency clones.

  http://rustyklophaus.com/articles/20100124-SubmodulesAndSubreposDoneRight.html

* If for some reason you need to work with the external test-android-sync repo:

  git remote add -f android-sync-test ~/path/to/test-android-sync
  git pull -s subtree android-sync-test develop

  (It's a subtree.)

About

New java Sync client for Fennec