Bug 1411452 - Use prerendered localized html/js in repacks. r?Pike draft
authorEd Lee <edilee@mozilla.com>
Wed, 25 Oct 2017 11:20:24 -0700
changeset 687100 e00a98d55113b1dfc1d56c0063c645bc73e03f2f
parent 686801 0d1e55d87931fe70ec1d007e886bcd58015ff770
child 687101 1c4743d20aa7aa8985870076b4b17027a34aabf5
push id86416
push userbmo:edilee@mozilla.com
push dateThu, 26 Oct 2017 22:10:36 +0000
reviewersPike
bugs1411452
milestone58.0a1
Bug 1411452 - Use prerendered localized html/js in repacks. r?Pike MozReview-Commit-ID: 1FN4YFw0IBs
browser/extensions/activity-stream/jar.mn
browser/extensions/activity-stream/locales/jar.mn
browser/extensions/activity-stream/locales/moz.build
browser/extensions/activity-stream/moz.build
browser/locales/Makefile.in
--- a/browser/extensions/activity-stream/jar.mn
+++ b/browser/extensions/activity-stream/jar.mn
@@ -16,386 +16,8 @@
   content/vendor/react-intl.js (./vendor/react-intl.js)
   content/vendor/redux.js (./vendor/redux.js)
   content/vendor/react-redux.js (./vendor/react-redux.js)
   content/data/ (./data/*)
 #ifndef RELEASE_OR_BETA
   content/data/content/activity-stream-debug.html (./prerendered/en-US/activity-stream-debug.html)
   content/data/content/activity-stream-prerendered-debug.html (./prerendered/en-US/activity-stream-prerendered-debug.html)
 #endif
-
-# These defines and ifs below are generated by https://github.com/mozilla/activity-stream/blob/master/bin/render-activity-stream-html.js
-#define bn_BD bn-BD
-#define bn_IN bn-IN
-#define en_GB en-GB
-#define es_AR es-AR
-#define es_CL es-CL
-#define es_ES es-ES
-#define es_MX es-MX
-#define fy_NL fy-NL
-#define ga_IE ga-IE
-#define gu_IN gu-IN
-#define hi_IN hi-IN
-#define hy_AM hy-AM
-#define ja_JP_mac ja-JP-mac
-#define nb_NO nb-NO
-#define ne_NP ne-NP
-#define nn_NO nn-NO
-#define pa_IN pa-IN
-#define pt_BR pt-BR
-#define pt_PT pt-PT
-#define sv_SE sv-SE
-#define ta_LK ta-LK
-#define zh_CN zh-CN
-#define zh_TW zh-TW
-#if AB_CD == ach
-  content/data/content/activity-stream-initial-state.js (./prerendered/ach/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ach/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ach/activity-stream.html)
-#elif AB_CD == ar
-  content/data/content/activity-stream-initial-state.js (./prerendered/ar/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ar/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ar/activity-stream.html)
-#elif AB_CD == ast
-  content/data/content/activity-stream-initial-state.js (./prerendered/ast/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ast/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ast/activity-stream.html)
-#elif AB_CD == az
-  content/data/content/activity-stream-initial-state.js (./prerendered/az/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/az/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/az/activity-stream.html)
-#elif AB_CD == be
-  content/data/content/activity-stream-initial-state.js (./prerendered/be/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/be/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/be/activity-stream.html)
-#elif AB_CD == bg
-  content/data/content/activity-stream-initial-state.js (./prerendered/bg/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/bg/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/bg/activity-stream.html)
-#elif AB_CD == bn_BD
-  content/data/content/activity-stream-initial-state.js (./prerendered/bn-BD/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/bn-BD/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/bn-BD/activity-stream.html)
-#elif AB_CD == bn_IN
-  content/data/content/activity-stream-initial-state.js (./prerendered/bn-IN/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/bn-IN/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/bn-IN/activity-stream.html)
-#elif AB_CD == br
-  content/data/content/activity-stream-initial-state.js (./prerendered/br/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/br/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/br/activity-stream.html)
-#elif AB_CD == bs
-  content/data/content/activity-stream-initial-state.js (./prerendered/bs/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/bs/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/bs/activity-stream.html)
-#elif AB_CD == ca
-  content/data/content/activity-stream-initial-state.js (./prerendered/ca/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ca/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ca/activity-stream.html)
-#elif AB_CD == cak
-  content/data/content/activity-stream-initial-state.js (./prerendered/cak/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/cak/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/cak/activity-stream.html)
-#elif AB_CD == cs
-  content/data/content/activity-stream-initial-state.js (./prerendered/cs/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/cs/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/cs/activity-stream.html)
-#elif AB_CD == cy
-  content/data/content/activity-stream-initial-state.js (./prerendered/cy/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/cy/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/cy/activity-stream.html)
-#elif AB_CD == da
-  content/data/content/activity-stream-initial-state.js (./prerendered/da/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/da/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/da/activity-stream.html)
-#elif AB_CD == de
-  content/data/content/activity-stream-initial-state.js (./prerendered/de/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/de/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/de/activity-stream.html)
-#elif AB_CD == dsb
-  content/data/content/activity-stream-initial-state.js (./prerendered/dsb/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/dsb/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/dsb/activity-stream.html)
-#elif AB_CD == el
-  content/data/content/activity-stream-initial-state.js (./prerendered/el/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/el/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/el/activity-stream.html)
-#elif AB_CD == en_GB
-  content/data/content/activity-stream-initial-state.js (./prerendered/en-GB/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/en-GB/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/en-GB/activity-stream.html)
-#elif AB_CD == eo
-  content/data/content/activity-stream-initial-state.js (./prerendered/eo/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/eo/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/eo/activity-stream.html)
-#elif AB_CD == es_AR
-  content/data/content/activity-stream-initial-state.js (./prerendered/es-AR/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/es-AR/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/es-AR/activity-stream.html)
-#elif AB_CD == es_CL
-  content/data/content/activity-stream-initial-state.js (./prerendered/es-CL/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/es-CL/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/es-CL/activity-stream.html)
-#elif AB_CD == es_ES
-  content/data/content/activity-stream-initial-state.js (./prerendered/es-ES/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/es-ES/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/es-ES/activity-stream.html)
-#elif AB_CD == es_MX
-  content/data/content/activity-stream-initial-state.js (./prerendered/es-MX/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/es-MX/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/es-MX/activity-stream.html)
-#elif AB_CD == et
-  content/data/content/activity-stream-initial-state.js (./prerendered/et/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/et/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/et/activity-stream.html)
-#elif AB_CD == eu
-  content/data/content/activity-stream-initial-state.js (./prerendered/eu/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/eu/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/eu/activity-stream.html)
-#elif AB_CD == fa
-  content/data/content/activity-stream-initial-state.js (./prerendered/fa/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/fa/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/fa/activity-stream.html)
-#elif AB_CD == fi
-  content/data/content/activity-stream-initial-state.js (./prerendered/fi/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/fi/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/fi/activity-stream.html)
-#elif AB_CD == fr
-  content/data/content/activity-stream-initial-state.js (./prerendered/fr/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/fr/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/fr/activity-stream.html)
-#elif AB_CD == fy_NL
-  content/data/content/activity-stream-initial-state.js (./prerendered/fy-NL/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/fy-NL/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/fy-NL/activity-stream.html)
-#elif AB_CD == ga_IE
-  content/data/content/activity-stream-initial-state.js (./prerendered/ga-IE/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ga-IE/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ga-IE/activity-stream.html)
-#elif AB_CD == gd
-  content/data/content/activity-stream-initial-state.js (./prerendered/gd/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/gd/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/gd/activity-stream.html)
-#elif AB_CD == gu_IN
-  content/data/content/activity-stream-initial-state.js (./prerendered/gu-IN/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/gu-IN/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/gu-IN/activity-stream.html)
-#elif AB_CD == he
-  content/data/content/activity-stream-initial-state.js (./prerendered/he/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/he/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/he/activity-stream.html)
-#elif AB_CD == hi_IN
-  content/data/content/activity-stream-initial-state.js (./prerendered/hi-IN/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/hi-IN/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/hi-IN/activity-stream.html)
-#elif AB_CD == hr
-  content/data/content/activity-stream-initial-state.js (./prerendered/hr/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/hr/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/hr/activity-stream.html)
-#elif AB_CD == hsb
-  content/data/content/activity-stream-initial-state.js (./prerendered/hsb/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/hsb/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/hsb/activity-stream.html)
-#elif AB_CD == hu
-  content/data/content/activity-stream-initial-state.js (./prerendered/hu/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/hu/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/hu/activity-stream.html)
-#elif AB_CD == hy_AM
-  content/data/content/activity-stream-initial-state.js (./prerendered/hy-AM/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/hy-AM/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/hy-AM/activity-stream.html)
-#elif AB_CD == ia
-  content/data/content/activity-stream-initial-state.js (./prerendered/ia/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ia/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ia/activity-stream.html)
-#elif AB_CD == id
-  content/data/content/activity-stream-initial-state.js (./prerendered/id/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/id/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/id/activity-stream.html)
-#elif AB_CD == it
-  content/data/content/activity-stream-initial-state.js (./prerendered/it/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/it/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/it/activity-stream.html)
-#elif AB_CD == ja
-  content/data/content/activity-stream-initial-state.js (./prerendered/ja/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ja/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ja/activity-stream.html)
-#elif AB_CD == ja_JP_mac
-  content/data/content/activity-stream-initial-state.js (./prerendered/ja-JP-mac/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ja-JP-mac/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ja-JP-mac/activity-stream.html)
-#elif AB_CD == ka
-  content/data/content/activity-stream-initial-state.js (./prerendered/ka/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ka/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ka/activity-stream.html)
-#elif AB_CD == kab
-  content/data/content/activity-stream-initial-state.js (./prerendered/kab/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/kab/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/kab/activity-stream.html)
-#elif AB_CD == kk
-  content/data/content/activity-stream-initial-state.js (./prerendered/kk/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/kk/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/kk/activity-stream.html)
-#elif AB_CD == km
-  content/data/content/activity-stream-initial-state.js (./prerendered/km/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/km/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/km/activity-stream.html)
-#elif AB_CD == kn
-  content/data/content/activity-stream-initial-state.js (./prerendered/kn/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/kn/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/kn/activity-stream.html)
-#elif AB_CD == ko
-  content/data/content/activity-stream-initial-state.js (./prerendered/ko/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ko/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ko/activity-stream.html)
-#elif AB_CD == lij
-  content/data/content/activity-stream-initial-state.js (./prerendered/lij/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/lij/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/lij/activity-stream.html)
-#elif AB_CD == lo
-  content/data/content/activity-stream-initial-state.js (./prerendered/lo/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/lo/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/lo/activity-stream.html)
-#elif AB_CD == lt
-  content/data/content/activity-stream-initial-state.js (./prerendered/lt/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/lt/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/lt/activity-stream.html)
-#elif AB_CD == lv
-  content/data/content/activity-stream-initial-state.js (./prerendered/lv/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/lv/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/lv/activity-stream.html)
-#elif AB_CD == mk
-  content/data/content/activity-stream-initial-state.js (./prerendered/mk/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/mk/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/mk/activity-stream.html)
-#elif AB_CD == ml
-  content/data/content/activity-stream-initial-state.js (./prerendered/ml/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ml/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ml/activity-stream.html)
-#elif AB_CD == mr
-  content/data/content/activity-stream-initial-state.js (./prerendered/mr/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/mr/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/mr/activity-stream.html)
-#elif AB_CD == ms
-  content/data/content/activity-stream-initial-state.js (./prerendered/ms/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ms/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ms/activity-stream.html)
-#elif AB_CD == my
-  content/data/content/activity-stream-initial-state.js (./prerendered/my/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/my/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/my/activity-stream.html)
-#elif AB_CD == nb_NO
-  content/data/content/activity-stream-initial-state.js (./prerendered/nb-NO/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/nb-NO/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/nb-NO/activity-stream.html)
-#elif AB_CD == ne_NP
-  content/data/content/activity-stream-initial-state.js (./prerendered/ne-NP/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ne-NP/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ne-NP/activity-stream.html)
-#elif AB_CD == nl
-  content/data/content/activity-stream-initial-state.js (./prerendered/nl/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/nl/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/nl/activity-stream.html)
-#elif AB_CD == nn_NO
-  content/data/content/activity-stream-initial-state.js (./prerendered/nn-NO/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/nn-NO/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/nn-NO/activity-stream.html)
-#elif AB_CD == pa_IN
-  content/data/content/activity-stream-initial-state.js (./prerendered/pa-IN/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/pa-IN/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/pa-IN/activity-stream.html)
-#elif AB_CD == pl
-  content/data/content/activity-stream-initial-state.js (./prerendered/pl/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/pl/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/pl/activity-stream.html)
-#elif AB_CD == pt_BR
-  content/data/content/activity-stream-initial-state.js (./prerendered/pt-BR/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/pt-BR/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/pt-BR/activity-stream.html)
-#elif AB_CD == pt_PT
-  content/data/content/activity-stream-initial-state.js (./prerendered/pt-PT/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/pt-PT/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/pt-PT/activity-stream.html)
-#elif AB_CD == rm
-  content/data/content/activity-stream-initial-state.js (./prerendered/rm/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/rm/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/rm/activity-stream.html)
-#elif AB_CD == ro
-  content/data/content/activity-stream-initial-state.js (./prerendered/ro/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ro/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ro/activity-stream.html)
-#elif AB_CD == ru
-  content/data/content/activity-stream-initial-state.js (./prerendered/ru/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ru/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ru/activity-stream.html)
-#elif AB_CD == sk
-  content/data/content/activity-stream-initial-state.js (./prerendered/sk/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/sk/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/sk/activity-stream.html)
-#elif AB_CD == sl
-  content/data/content/activity-stream-initial-state.js (./prerendered/sl/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/sl/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/sl/activity-stream.html)
-#elif AB_CD == sq
-  content/data/content/activity-stream-initial-state.js (./prerendered/sq/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/sq/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/sq/activity-stream.html)
-#elif AB_CD == sr
-  content/data/content/activity-stream-initial-state.js (./prerendered/sr/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/sr/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/sr/activity-stream.html)
-#elif AB_CD == sv_SE
-  content/data/content/activity-stream-initial-state.js (./prerendered/sv-SE/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/sv-SE/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/sv-SE/activity-stream.html)
-#elif AB_CD == ta
-  content/data/content/activity-stream-initial-state.js (./prerendered/ta/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ta/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ta/activity-stream.html)
-#elif AB_CD == ta_LK
-  content/data/content/activity-stream-initial-state.js (./prerendered/ta-LK/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ta-LK/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ta-LK/activity-stream.html)
-#elif AB_CD == te
-  content/data/content/activity-stream-initial-state.js (./prerendered/te/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/te/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/te/activity-stream.html)
-#elif AB_CD == th
-  content/data/content/activity-stream-initial-state.js (./prerendered/th/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/th/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/th/activity-stream.html)
-#elif AB_CD == tl
-  content/data/content/activity-stream-initial-state.js (./prerendered/tl/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/tl/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/tl/activity-stream.html)
-#elif AB_CD == tr
-  content/data/content/activity-stream-initial-state.js (./prerendered/tr/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/tr/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/tr/activity-stream.html)
-#elif AB_CD == uk
-  content/data/content/activity-stream-initial-state.js (./prerendered/uk/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/uk/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/uk/activity-stream.html)
-#elif AB_CD == ur
-  content/data/content/activity-stream-initial-state.js (./prerendered/ur/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/ur/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/ur/activity-stream.html)
-#elif AB_CD == uz
-  content/data/content/activity-stream-initial-state.js (./prerendered/uz/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/uz/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/uz/activity-stream.html)
-#elif AB_CD == vi
-  content/data/content/activity-stream-initial-state.js (./prerendered/vi/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/vi/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/vi/activity-stream.html)
-#elif AB_CD == zh_CN
-  content/data/content/activity-stream-initial-state.js (./prerendered/zh-CN/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/zh-CN/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/zh-CN/activity-stream.html)
-#elif AB_CD == zh_TW
-  content/data/content/activity-stream-initial-state.js (./prerendered/zh-TW/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/zh-TW/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/zh-TW/activity-stream.html)
-#else
-  content/data/content/activity-stream-initial-state.js (./prerendered/en-US/activity-stream-initial-state.js)
-  content/data/content/activity-stream-prerendered.html (./prerendered/en-US/activity-stream-prerendered.html)
-  content/data/content/activity-stream.html (./prerendered/en-US/activity-stream.html)
-#endif
new file mode 100644
--- /dev/null
+++ b/browser/extensions/activity-stream/locales/jar.mn
@@ -0,0 +1,40 @@
+#filter substitution
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+[features/activity-stream@mozilla.org] @AB_CD@.jar:
+% locale activity-stream @AB_CD@ %locale/@AB_CD@/
+# These defines and ifs below are generated by https://github.com/mozilla/activity-stream/blob/master/bin/render-activity-stream-html.js
+#define bn_BD bn-BD
+#define bn_IN bn-IN
+#define en_GB en-GB
+#define es_AR es-AR
+#define es_CL es-CL
+#define es_ES es-ES
+#define es_MX es-MX
+#define fy_NL fy-NL
+#define ga_IE ga-IE
+#define gu_IN gu-IN
+#define hi_IN hi-IN
+#define hy_AM hy-AM
+#define ja_JP_mac ja-JP-mac
+#define nb_NO nb-NO
+#define ne_NP ne-NP
+#define nn_NO nn-NO
+#define pa_IN pa-IN
+#define pt_BR pt-BR
+#define pt_PT pt-PT
+#define sv_SE sv-SE
+#define ta_LK ta-LK
+#define zh_CN zh-CN
+#define zh_TW zh-TW
+#if AB_CD == ach || AB_CD == ar || AB_CD == ast || AB_CD == az || AB_CD == be || AB_CD == bg || AB_CD == bn_BD || AB_CD == bn_IN || AB_CD == br || AB_CD == bs || AB_CD == ca || AB_CD == cak || AB_CD == cs || AB_CD == cy || AB_CD == da || AB_CD == de || AB_CD == dsb || AB_CD == el || AB_CD == en_GB || AB_CD == eo || AB_CD == es_AR || AB_CD == es_CL || AB_CD == es_ES || AB_CD == es_MX || AB_CD == et || AB_CD == eu || AB_CD == fa || AB_CD == fi || AB_CD == fr || AB_CD == fy_NL || AB_CD == ga_IE || AB_CD == gd || AB_CD == gu_IN || AB_CD == he || AB_CD == hi_IN || AB_CD == hr || AB_CD == hsb || AB_CD == hu || AB_CD == hy_AM || AB_CD == ia || AB_CD == id || AB_CD == it || AB_CD == ja || AB_CD == ja_JP_mac || AB_CD == ka || AB_CD == kab || AB_CD == kk || AB_CD == km || AB_CD == kn || AB_CD == ko || AB_CD == lij || AB_CD == lo || AB_CD == lt || AB_CD == lv || AB_CD == mk || AB_CD == ml || AB_CD == mr || AB_CD == ms || AB_CD == my || AB_CD == nb_NO || AB_CD == ne_NP || AB_CD == nl || AB_CD == nn_NO || AB_CD == pa_IN || AB_CD == pl || AB_CD == pt_BR || AB_CD == pt_PT || AB_CD == rm || AB_CD == ro || AB_CD == ru || AB_CD == sk || AB_CD == sl || AB_CD == sq || AB_CD == sr || AB_CD == sv_SE || AB_CD == ta || AB_CD == ta_LK || AB_CD == te || AB_CD == th || AB_CD == tl || AB_CD == tr || AB_CD == uk || AB_CD == ur || AB_CD == uz || AB_CD == vi || AB_CD == zh_CN || AB_CD == zh_TW
+  locale/@AB_CD@/activity-stream-initial-state.js (../prerendered/@AB_CD@/activity-stream-initial-state.js)
+  locale/@AB_CD@/activity-stream-prerendered.html (../prerendered/@AB_CD@/activity-stream-prerendered.html)
+  locale/@AB_CD@/activity-stream.html (../prerendered/@AB_CD@/activity-stream.html)
+#else
+  locale/@AB_CD@/activity-stream-initial-state.js (../prerendered/en-US/activity-stream-initial-state.js)
+  locale/@AB_CD@/activity-stream-prerendered.html (../prerendered/en-US/activity-stream-prerendered.html)
+  locale/@AB_CD@/activity-stream.html (../prerendered/en-US/activity-stream.html)
+#endif
new file mode 100644
--- /dev/null
+++ b/browser/extensions/activity-stream/locales/moz.build
@@ -0,0 +1,7 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+JAR_MANIFESTS += ['jar.mn']
--- a/browser/extensions/activity-stream/moz.build
+++ b/browser/extensions/activity-stream/moz.build
@@ -5,16 +5,18 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 with Files("**"):
     BUG_COMPONENT = ("Firefox", "Activity Streams: Newtab")
 
 DEFINES['MOZ_APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
 DEFINES['MOZ_APP_MAXVERSION'] = CONFIG['MOZ_APP_MAXVERSION']
 
+DIRS += ['locales']
+
 FINAL_TARGET_FILES.features['activity-stream@mozilla.org'] += [
   'bootstrap.js',
 ]
 
 FINAL_TARGET_PP_FILES.features['activity-stream@mozilla.org'] += [
   'install.rdf.in'
 ]
 
--- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in
@@ -91,16 +91,17 @@ DEFINES += -DBOOKMARKS_INCLUDE_DIR=$(dir
 
 libs-%: AB_CD=$*
 libs-%:
 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
 	$(NSINSTALL) -D $(DIST)/install
 	@$(MAKE) -C ../../toolkit/locales libs-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+	@$(MAKE) -C ../extensions/activity-stream/locales AB_CD=$* XPI_NAME=locale-$*
 ifneq (,$(wildcard ../extensions/formautofill/locales))
 	@$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
 endif
 	@$(MAKE) -C ../extensions/onboarding/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$*
 ifndef RELEASE_OR_BETA
 	@$(MAKE) -C ../extensions/presentation/locale AB_CD=$* XPI_NAME=locale-$*
 endif