--- wikisrc/users/ryoon/how_to_update_www_firefox.mdwn 2014/06/09 08:46:25 1.5 +++ wikisrc/users/ryoon/how_to_update_www_firefox.mdwn 2017/01/22 13:02:09 1.11 @@ -1,24 +1,22 @@ [[!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 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 -See . +See -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 - $ hg pull central - $ hg pull inbound - $ hg pull aurora - $ hg pull beta - $ hg pull release - $ hg update @@ -26,18 +24,19 @@ You should follow "Using Bookmarks to Ma Find latest release. - $ hg branches | grep 2901 - GECKO2901_2014050617_RELBRANCH 207485:3fd2b5510ccf + $ hg tags|grep 50_ + (snip) + FIREFOX_50_1_0_RELEASE 359965:8612c3320053 (snip) Checkout the branch. - $ hg checkout GECKO2901_2014050617_RELBRANCH + $ hg checkout FIREFOX_50_1_0_RELEASE Create named branch for applying pkgsrc patches - $ hg branch pkgsrc_firefox-29.0.1 - $ hg commit -m "Create pkgsrc_firefox-29.0.1 branch for applying pkgsrc patches" + $ hg branch pkgsrc_firefox-50.1.0 + $ hg commit -m "Create pkgsrc_firefox-50.1.0 branch for applying pkgsrc patches" Add .*\.orig$ to .hgignore, and commit this change @@ -51,63 +50,46 @@ Add .*\.orig$ to .hgignore, and commit t $ popd $ cat /usr/pkgsrc/www/firefox/patches/patch-*|patch -p0 $ 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 Find latest branch. - $ hg branches | grep 300b9 - GECKO300b9_2014052918_RELBRANCH 199964:b7037f050049 + $ hg tags | grep 51_ + (snip) + FIREFOX_51_0b14_RELEASE 364880:09142d07fd73 + (snip) Checkout the branch. - $ hg checkout GECKO300b9_2014052918_RELBRANCH + $ hg checkout FIREFOX_51_0b14_RELEASE Create named branch for working. - $ hg branch ryoon_firefox-30.b9 - -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" + $ hg branch ryoon_firefox-51.0 + $ hg commit -m "Create ryoon_firefox-51.0 branch for merging pkgsrc patches" Add .*\.orig$ to .hgignore, and commit this change $ 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 - $ hg merge pkgsrc_firefox-29.0.1 + $ hg merge pkgsrc_firefox-50.1.0 $ hg resolve -l $ vi file/marked/as/U $ hg resolve --mark file/marked/as/U (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 - $ hg diff -r (revision of first commit in ryoon_freebsd-30.0) | \ - sed -e 's!^--- a/!--- !' -e 's!^+++ b/!+++ !' > ~/firefox-30.0.diff - $ vi ~/firefox-30.0.diff + $ hg diff -r (revision of first commit in ryoon_firefox-51.0) | \ + sed -e 's!^--- a/!--- !' -e 's!^+++ b/!+++ !' > ~/firefox-51.0.diff + $ vi ~/firefox-51.0.diff (Remove patch to .hgignore) (Remove patch to .hgtags) @@ -117,11 +99,10 @@ Commit the patches $ vi Makefile (Update version) (Remove PKGREVISION) - (Fix WRKSRC variable) $ make mdi $ make extract - $ pushd ${WRKOBJDIR}/www/firefox/work/mozilla-beta - $ patch -p0 < ~/firefox-30.0.diff + $ pushd ${WRKOBJDIR}/www/firefox/work/${DISTNAME} + $ patch -p0 < ~/firefox-51.0.diff $ popd $ mkpatches $ patchdiff