config 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. # vim: filetype=yaml sw=2
  2. version: '[% c("abbrev") %]'
  3. filename: 'firefox-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %]'
  4. git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% c("var/torbrowser_branch") %]-1-build1'
  5. tag_gpg_id: 1
  6. git_url: https://git.torproject.org/tor-browser.git
  7. git_submodule: 1
  8. gpg_keyring: torbutton.gpg
  9. var:
  10. firefox_platform_version: 78.14.0
  11. firefox_version: '[% c("var/firefox_platform_version") %]esr'
  12. torbrowser_branch: 11.0
  13. branding_directory: 'browser/branding/alpha'
  14. copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
  15. deps:
  16. - build-essential
  17. - unzip
  18. - zip
  19. - autoconf2.13
  20. - yasm
  21. # We are building our own version of Python 3.6, which is required
  22. # for the build. However mach still requires Python 2.7, so we
  23. # install this version using the package.
  24. - python
  25. - pkg-config
  26. container:
  27. use_container: 1
  28. steps:
  29. src-tarballs:
  30. filename: 'src-[% project %]-[% c("version") %].tar.xz'
  31. version: '[% c("git_hash") %]'
  32. input_files: []
  33. var:
  34. container:
  35. use_container: 0
  36. targets:
  37. nightly:
  38. version: '[% c("abbrev") %]'
  39. list_toolchain_updates:
  40. git_url: https://github.com/mozilla/gecko-dev.git
  41. # < 91.0a1
  42. git_hash: f351e19360729b351bfc7c1386d6e4ca4ea676e2
  43. tag_gpg_id: 0
  44. input_files: []
  45. var:
  46. container:
  47. use_container: 0
  48. targets:
  49. release:
  50. var:
  51. branding_directory: 'browser/branding/official'
  52. nightly:
  53. git_hash: 'tor-browser-[% c("var/firefox_version") %]-[% c("var/torbrowser_branch") %]-1'
  54. tag_gpg_id: 0
  55. var:
  56. branding_directory: 'browser/branding/nightly'
  57. linux-x86_64:
  58. var:
  59. martools_filename: mar-tools-linux64.zip
  60. arch_deps:
  61. - libgtk2.0-dev
  62. - libgtk-3-dev
  63. - libdbus-glib-1-dev
  64. - libxt-dev
  65. - hardening-wrapper
  66. # To pass configure since ESR 31.
  67. - libpulse-dev
  68. # To pass configure since ESR 52
  69. - libx11-xcb-dev
  70. # To support Wayland mode
  71. - libdrm-dev
  72. linux-i686:
  73. var:
  74. martools_filename: mar-tools-linux32.zip
  75. sort_deps: 0
  76. arch_deps:
  77. - libgtk2.0-dev:i386
  78. - libgtk-3-dev:i386
  79. - libdbus-glib-1-dev:i386
  80. - libxt-dev:i386
  81. - hardening-wrapper
  82. # To pass configure since ESR 31.
  83. - libpulse-dev:i386
  84. # To pass configure since ESR 52
  85. - libx11-xcb-dev:i386
  86. # To support Wayland mode
  87. - libdrm-dev:i386
  88. linux-arm:
  89. var:
  90. martools_filename: mar-tools-linuxarm.zip
  91. linux-cross:
  92. var:
  93. container:
  94. use_container: 1
  95. suite: buster
  96. arch: amd64
  97. post_pkginst: |
  98. export DEBIAN_FRONTEND=noninteractive
  99. # The recommended packages produce a package conflict.
  100. apt-get -y install --no-install-suggests --no-install-recommends libgtk2.0-dev:[% c("var/arch_debian") %]
  101. apt-get -y install --no-install-suggests --no-install-recommends libgtk-3-dev:[% c("var/arch_debian") %]
  102. apt-get -y install --no-install-suggests --no-install-recommends libdbus-glib-1-dev:[% c("var/arch_debian") %]
  103. apt-get -y install --no-install-suggests --no-install-recommends libxt-dev:[% c("var/arch_debian") %]
  104. apt-get -y install --no-install-suggests --no-install-recommends libpulse-dev:[% c("var/arch_debian") %]
  105. apt-get -y install --no-install-suggests --no-install-recommends libx11-xcb-dev:[% c("var/arch_debian") %]
  106. apt-get -y install --no-install-suggests --no-install-recommends libgcc-8-dev:[% c("var/arch_debian") %]
  107. apt-get -y install --no-install-suggests --no-install-recommends libstdc++-8-dev:[% c("var/arch_debian") %]
  108. # TODO: Build gcc+stdlib from source.
  109. arch_deps:
  110. - yasm
  111. osx-x86_64:
  112. var:
  113. martools_filename: mar-tools-mac64.zip
  114. arch_deps:
  115. - rsync
  116. windows:
  117. var:
  118. arch_deps:
  119. - wine
  120. compiler: mingw-w64-clang
  121. windows-i686:
  122. var:
  123. martools_filename: mar-tools-win32.zip
  124. windows-x86_64:
  125. var:
  126. martools_filename: mar-tools-win64.zip
  127. input_files:
  128. - project: container-image
  129. - name: '[% c("var/compiler") %]'
  130. project: '[% c("var/compiler") %]'
  131. enable: '[% ! c("var/linux-cross") %]'
  132. - filename: get-moz-build-date
  133. - filename: 'mozconfig-[% c("var/osname") %][% IF c("var/asan") %]-asan[% END %]'
  134. name: mozconfig
  135. - project: binutils
  136. name: binutils
  137. enable: '[% c("var/linux") %]'
  138. - filename: fix-info-plist.py
  139. enable: '[% c("var/osx") %]'
  140. - filename: linux-arm-neon.patch
  141. enable: '[% c("var/linux-arm") %]'
  142. - filename: linux-arm-wasm.patch
  143. enable: '[% c("var/linux-arm") %]'
  144. # Linux ARM WASM patch from https://github.com/archlinuxarm/PKGBUILDs/blob/001eccbae9dcac00b6bf29b032f28786aba9afdd/extra/firefox/arm.patch
  145. - filename: nsis-uninstall.patch
  146. enable: '[% c("var/windows") %]'
  147. - project: rust
  148. name: rust
  149. - project: cbindgen
  150. name: cbindgen
  151. - project: wasi-sysroot
  152. name: wasi-sysroot
  153. enable: '[% c("var/rlbox") %]'
  154. - project: lucetc
  155. name: lucetc
  156. enable: '[% c("var/rlbox") %]'
  157. - project: node
  158. name: node
  159. enable: '[% ! c("var/linux-cross") %]'
  160. - project: node
  161. name: node
  162. enable: '[% c("var/linux-cross") %]'
  163. target:
  164. - '[% c("var/channel") %]'
  165. - 'torbrowser-linux-x86_64'
  166. - project: nasm
  167. name: nasm
  168. enable: '[% ! c("var/linux-cross") %]'
  169. - project: nasm
  170. name: nasm
  171. enable: '[% c("var/linux-cross") %]'
  172. target:
  173. - '[% c("var/channel") %]'
  174. - 'torbrowser-linux-x86_64'
  175. - project: python
  176. name: python
  177. - project: clang
  178. name: clang
  179. enable: '[% ! c("var/linux-cross") %]'
  180. - project: clang
  181. name: clang
  182. enable: '[% c("var/linux-cross") %]'
  183. target:
  184. - '[% c("var/channel") %]'
  185. - 'torbrowser-linux-x86_64'
  186. - project: gcc
  187. name: gcc
  188. enable: '[% c("var/linux-cross") %]'
  189. target:
  190. - '[% c("var/channel") %]'
  191. - 'torbrowser-linux-x86_64'
  192. - project: fxc2
  193. name: fxc2
  194. enable: '[% c("var/windows") %]'
  195. target_prepend:
  196. - torbrowser-windows-x86_64
  197. - name: mingw-w64
  198. project: mingw-w64
  199. enable: '[% c("var/windows") %]'
  200. - filename: abicheck.cc
  201. enable: '[% c("var/linux") %]'
  202. - filename: start-firefox
  203. enable: '[% c("var/linux") %]'
  204. - project: tor-launcher
  205. name: tor-launcher
  206. - filename: namecoin-torbutton.patch
  207. enable: '[% c("var/namecoin") %]'
  208. # TorButton patch authored by Arthur Edelstein, from https://github.com/arthuredelstein/torbutton/ branch 2.1.10-namecoin
  209. - filename: namecoin-etld.patch
  210. enable: '[% c("var/namecoin") %]'