Diff for /wikisrc/users/ryoon/how_to_update_www_firefox.mdwn between versions 1.3 and 1.11

version 1.3, 2014/06/09 08:32:38 version 1.11, 2017/01/22 13:02:09
Line 1 Line 1
 [[!meta title="How to update pkgsrc/www/firefox"]]  [[!meta title="How to update pkgsrc/www/firefox"]]
   
 This article shows how to update pkgsrc/www/firefox package to latest release.  This article shows you how to update pkgsrc/www/firefox package to latest
   release.
 You can use Mozilla's Mercurial (hg) repositories to track upstream changes.  You can use Mozilla's Mercurial (hg) repositories to track upstream changes.
   
 You should have pkgsrc/meta-pkgs/pkg_developer package.  You should have pkgsrc/meta-pkgs/pkg_developer package
   and pkgsrc/devel/py-mercurial package.
   
 # Clone hg tree  # Clone hg tree
 See <https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Source_Code/Mercurial>.  See <http://mozilla-version-control-tools.readthedocs.io/en/latest/hgmozilla/unifiedrepo.html>
   
 You should follow "Using Bookmarks to Manage Multiple Repositories from a Single Clone" section.  You should follow "Working with the Unified Repo" section.
   In short, run:
   
           $ hg clone https://hg.mozilla.org/mozilla-unified
   
 # Update trees to latest  # Update trees to latest
   
         $ hg pull central  
         $ hg pull inbound  
         $ hg pull aurora  
         $ hg pull beta  
         $ hg pull release  
   
         $ hg update          $ hg update
   
   
Line 26  You should follow "Using Bookmarks to Ma Line 24  You should follow "Using Bookmarks to Ma
   
 Find latest release.  Find latest release.
   
         $ hg branches | grep 2901          $ hg tags|grep 50_
         GECKO2901_2014050617_RELBRANCH 207485:3fd2b5510ccf          (snip)
           FIREFOX_50_1_0_RELEASE         359965:8612c3320053
         (snip)          (snip)
   
 Checkout the branch.  Checkout the branch.
   
         $ hg checkout GECKO2901_2014050617_RELBRANCH          $ hg checkout FIREFOX_50_1_0_RELEASE
   
 Create named branch for applying pkgsrc patches  Create named branch for applying pkgsrc patches
   
         $ hg branch pkgsrc_firefox-29.0.1          $ hg branch pkgsrc_firefox-50.1.0
         $ hg commit -m "Create pkgsrc_firefox-29.0.1 branch for applying pkgsrc patches"          $ hg commit -m "Create pkgsrc_firefox-50.1.0 branch for applying pkgsrc patches"
   
 Add .*\.orig$ to .hgignore, and commit this change  Add .*\.orig$ to .hgignore, and commit this change
   
Line 51  Add .*\.orig$ to .hgignore, and commit t Line 50  Add .*\.orig$ to .hgignore, and commit t
         $ popd          $ popd
         $ cat /usr/pkgsrc/www/firefox/patches/patch-*|patch -p0          $ cat /usr/pkgsrc/www/firefox/patches/patch-*|patch -p0
         $ hg add ...(necessary files)          $ hg add ...(necessary files)
         $ hg commit -m "Apply pkgsrc patches for firefox-29.0.1nb2"          $ hg commit -m "Apply pkgsrc patches for firefox-50.1.0nb3"
   
   
 # Checkout latest beta source, and create your branch  # Checkout latest beta source, and create your branch
   
 Find latest branch.  Find latest branch.
   
         $ hg branches | grep 300b9          $ hg tags | grep 51_
         GECKO300b9_2014052918_RELBRANCH 199964:b7037f050049          (snip)
           FIREFOX_51_0b14_RELEASE        364880:09142d07fd73
           (snip)
   
 Checkout the branch.  Checkout the branch.
   
         $ hg checkout GECKO300b9_2014052918_RELBRANCH          $ hg checkout FIREFOX_51_0b14_RELEASE
   
 Create named branch for working.  Create named branch for working.
   
         $ hg branch ryoon_firefox-30.b9          $ hg branch ryoon_firefox-51.0
           $ hg commit -m "Create ryoon_firefox-51.0 branch for merging pkgsrc patches"
 Create named branch for applying pkgsrc patches  
   
         $ hg branch ryoon_firefox-30.0  
         $ hg commit -m "Create ryoon_firefox-30.0 branch for applying freebsd-gecko patches"  
   
 Add .*\.orig$ to .hgignore, and commit this change  Add .*\.orig$ to .hgignore, and commit this change
   
         $ hg commit -m "Ignore .orig files" .hgignore          $ hg commit -m "Ignore .orig files" .hgignore
   
 Apply patches from freebsd-gecko  
   
         $ cat ~/repos/freebsd-gecko/trunk/www/firefox/files/patch-*|patch -p0  
   
 Fix rejected patches manually  
   
         $ hg status | grep rej$  
         $ vi path/to/a/certain/file.c  
   
 Commit the patches  
   
         $ hg add (necessary files)  
         $ hg commit -m "Apply freebsd-gecko patches for firefox-30.0"  
   
   
 # Merge your patches  # Merge your patches
   
         $ hg merge pkgsrc_firefox-29.0.1          $ hg merge pkgsrc_firefox-50.1.0
         $ hg resolve -l          $ hg resolve -l
         $ vi file/marked/as/U          $ vi file/marked/as/U
         $ hg resolve --mark file/marked/as/U          $ hg resolve --mark file/marked/as/U
         (loop)          (loop)
         $ hg commit -m "Merge pkgsrc_firefox-29.0.1 brnach to 30.0"          $ hg commit -m "Merge pkgsrc_firefox-50.1.0 branch to 51.0"
   
   
 # Create patch file for patch -p0  # Create patch file for patch -p0
   
         $ hg diff -r (revision of first commit in ryoon_freebsd-30.0) | \          $ hg diff -r (revision of first commit in ryoon_firefox-51.0) | \
         sed -e 's!^--- a/!--- !' -e 's!^+++ b/!+++ !' > ~/firefox-30.0.diff          sed -e 's!^--- a/!--- !' -e 's!^+++ b/!+++ !' > ~/firefox-51.0.diff
         vi ~/firefox-30.0.diff          $ vi ~/firefox-51.0.diff
         (Remove patch to .hgignore)          (Remove patch to .hgignore)
         (Remove patch to .hgtags)          (Remove patch to .hgtags)
   
Line 117  Commit the patches Line 99  Commit the patches
         $ vi Makefile          $ vi Makefile
         (Update version)          (Update version)
         (Remove PKGREVISION)          (Remove PKGREVISION)
         (Fix WRKSRC)  
         $ make mdi          $ make mdi
         $ make extract          $ make extract
         $ pushd ${WRKOBJDIR}/www/firefox/work/mozilla-beta          $ pushd ${WRKOBJDIR}/www/firefox/work/${DISTNAME}
         $ patch -p0 < ~/firefox-30.0.diff          $ patch -p0 < ~/firefox-51.0.diff
         $ popd          $ popd
         $ mkpatches          $ mkpatches
         $ patchdiff          $ patchdiff

Removed from v.1.3  
changed lines
  Added in v.1.11


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb