gfx/angle/README.mozilla
author Ian Bicking <ianb@colorstudy.com>
Wed, 13 Sep 2017 14:40:39 -0500
changeset 433464 fa1052b9a9529e7e7ccee343475ed3d5c0ac7674
parent 230872 26a02411f50b9892b74530e74cc3d1b06c22f3fe
child 438232 591f6b2788a91ee51338ae5f7c775dc88cebf303
permissions -rw-r--r--
Bug 1399615 - Export Screenshots 19.0.0 to Firefox. r=kmag MozReview-Commit-ID: 1QFbWCThVeg

This is the ANGLE project, originally from https://chromium.googlesource.com/angle/angle 

The Mozilla upstream is the 'mozilla' branch from https://github.com/mozilla/angle, which
includes Mozilla-specific patches on top of upstream.

=== How to upgrade ANGLE ===

1. git clone https://github.com/mozilla/angle angle

2. Go into the angle dir, and add the google upstream as a remote:
     git remote add google https://chromium.googlesource.com/angle/angle

3. Fetch the new google upstream:
     git fetch google

4. Switch to the mozilla branch
     git checkout mozilla

5. Rebase the mozilla branch on top of the new google master.  Fix up patches along the way,
   remove unneded commits.  Google seems to have "chromium/2059" branches as well, that I
   assume are merges into the Chromium tree.  These might be a good point to rebase on
   as well, instead of google/master:
     git rebase -i google/master
  or git rebase -i google/chromium/2081  (whatever the latest is in 'git branch -a')

6. Re-generate moz.build files:
     ./gyp_mozbuild

7. nuke mozilla-central/gfx/angle directory

8. copy all the relevant files from the github checkout
     cd mozilla-central
     mkdir gfx/angle
     cp -r /c/proj/angle/[A-Z]* /c/proj/angle/{include,src,moz.build} gfx/angle

9.  Build. Fix things until it builds.

10. Try runs and reviews!

11. Once reviews are done and checkin is ready, tag the equivalent git repo:
    git tag -a mozilla-bug-123456 -m "ANGLE update for bug 123456"

12. Push the new mozilla branch, along with the tags upstream:
    git push --tags mozilla +mozilla

The "mozilla" branch head will keep moving, since it will keep getting rebased.
The tags will point to the topmost commit that was used for a particular bug number,
so that we can see its history if needed.