boklm pushed to branch main at The Tor Project / Applications / tor-browser-build

Commits:

9 changed files:

Changes:

  • projects/android-components/build
    ... ... @@ -9,10 +9,6 @@ builddir=/var/tmp/build/[% project %]
    9 9
     mkdir $distdir/[% project %]
    
    10 10
     mkdir /var/tmp/build
    
    11 11
     
    
    12
    -cat > get-moz-build-date << "EOF"
    
    13
    -[% INCLUDE "get-moz-build-date" %]
    
    14
    -EOF
    
    15
    -
    
    16 12
     [% IF !c("var/fetch_gradle_dependencies") %]
    
    17 13
       tar -C $distdir -xf [% c('input_files_by_name/geckoview') %]
    
    18 14
       gradle_repo=$rootdir/[% c('input_files_by_name/gradle-dependencies') %]
    
    ... ... @@ -60,12 +56,7 @@ sed -i 's/tag = getGitHash()/tag = \"[% c('abbrev') %]\"/' publish.gradle
    60 56
       export LANG=C.UTF-8
    
    61 57
       patch -p1 < $rootdir/mavenLocal.patch
    
    62 58
     
    
    63
    -  eval $(perl $rootdir/get-moz-build-date [% pc("fenix", "var/copyright_year") %] [% pc("fenix", "var/torbrowser_version") %])
    
    64
    -  if [ -z $MOZ_BUILD_DATE ]
    
    65
    -  then
    
    66
    -    echo "MOZ_BUILD_DATE is not set"
    
    67
    -    exit 1
    
    68
    -  fi
    
    59
    +  [% c("var/set_MOZ_BUILD_DATE") %]
    
    69 60
     
    
    70 61
       # Increase the maximum memory usage, for when compiling with --disable-install-strip
    
    71 62
       gradle_args="--offline --no-daemon -Dmaven.repo.local=$gradle_repo -Dorg.gradle.jvmargs=-Xmx8g"
    

  • projects/common/get-moz-build-date deleted
    1
    -#!/usr/bin/perl -w
    
    2
    -# Generate a MOZ_BUILD_DATE based on Tor Browser version number
    
    3
    -
    
    4
    -use strict;
    
    5
    -
    
    6
    -die "wrong number of arguments" unless @ARGV == 2;
    
    7
    -my ($year, $version) = @ARGV;
    
    8
    -my $date;
    
    9
    -if ($version =~ m/^tbb-nightly\.([^\.]+)\.([^\.]+)\.([^\.]+)$/) {
    
    10
    -  $date = sprintf("%d%02d%02d010101", $1, $2, $3);
    
    11
    -} elsif ($version eq 'testbuild') {
    
    12
    -  # There is no need for an increasing build date in test builds. Just hardcode
    
    13
    -  # it to a value that is compatible with the v1 versionCode scheme on Android,
    
    14
    -  # see: #34163. We adjust the date to the new cutoff according to
    
    15
    -  # https://github.com/mozilla-mobile/fenix/pull/14952, following Mozilla.
    
    16
    -  # This should be unproblematic for test builds anyway.
    
    17
    -  $date = 20141228000000;
    
    18
    -} else {
    
    19
    -  my @v = split(/[\.ab]/, $version);
    
    20
    -  push @v, '0' if @v < 4;
    
    21
    -  push @v, '0' if @v < 4;
    
    22
    -  # When MOZ_BUILD_DATE was based on the firefox version, with
    
    23
    -  # Tor Browser 8.0.6 and firefox 60.5.1 it was 20190204060201
    
    24
    -  # We can remove 5 from the month, while keeping it increasing.
    
    25
    -  my $month = $v[0] - 5;
    
    26
    -  $date = 1010101 + $year * 10000000000 + $month * 100000000
    
    27
    -             + $v[1] * 1000000 + $v[2] * 10000 + $v[3];
    
    28
    -  $date += 1000000 unless $version =~ m/[ab]/;
    
    29
    -}
    
    30
    -print "export MOZ_BUILD_DATE=$date\n";

  • projects/fenix/build
    ... ... @@ -9,10 +9,6 @@ builddir=/var/tmp/build/[% project %]
    9 9
     mkdir -p $distdir/[% project %]
    
    10 10
     mkdir -p /var/tmp/build
    
    11 11
     
    
    12
    -cat > get-moz-build-date << "EOF"
    
    13
    -[% INCLUDE "get-moz-build-date" %]
    
    14
    -EOF
    
    15
    -
    
    16 12
     [% IF !c("var/fetch_gradle_dependencies") %]
    
    17 13
       tar -C $distdir -xf [% c('input_files_by_name/geckoview') %]
    
    18 14
       gradle_repo=$rootdir/[% c('input_files_by_name/gradle-dependencies') %]
    
    ... ... @@ -71,12 +67,7 @@ v=[% c("variant") %]
    71 67
       export LANG=C.UTF-8
    
    72 68
       patch -p1 < $rootdir/mavenLocal.patch
    
    73 69
     
    
    74
    -  eval $(perl $rootdir/get-moz-build-date [% c("var/copyright_year") %] [% c("var/torbrowser_version") %])
    
    75
    -  if [ -z $MOZ_BUILD_DATE ]
    
    76
    -  then
    
    77
    -    echo "MOZ_BUILD_DATE is not set"
    
    78
    -    exit 1
    
    79
    -  fi
    
    70
    +  [% c("var/set_MOZ_BUILD_DATE") %]
    
    80 71
     
    
    81 72
       # Bug 40485: Inject deterministic build date into Glean.
    
    82 73
       echo "ext.gleanBuildDate = \"0\"" >> app/build.gradle
    

  • projects/firefox/build
    ... ... @@ -70,12 +70,7 @@ MOZCONFIG_EOF
    70 70
       export ASAN_OPTIONS="detect_leaks=0"
    
    71 71
     [% END -%]
    
    72 72
     
    
    73
    -eval $(perl $rootdir/get-moz-build-date [% c("var/copyright_year") %] [% c("var/torbrowser_version") %])
    
    74
    -if [ -z $MOZ_BUILD_DATE ]
    
    75
    -then
    
    76
    -    echo "MOZ_BUILD_DATE is not set"
    
    77
    -    exit 1
    
    78
    -fi
    
    73
    +[% c("var/set_MOZ_BUILD_DATE") %]
    
    79 74
     
    
    80 75
     [% IF c("var/windows") %]
    
    81 76
       # Make sure widl is not inserting random timestamps, see #21837.
    

  • projects/firefox/config
    ... ... @@ -153,7 +153,6 @@ input_files:
    153 153
       - project: container-image
    
    154 154
       - name: '[% c("var/compiler") %]'
    
    155 155
         project: '[% c("var/compiler") %]'
    
    156
    -  - filename: get-moz-build-date
    
    157 156
       - project: binutils
    
    158 157
         name: binutils
    
    159 158
         enable: '[% c("var/linux") %]'
    

  • projects/firefox/get-moz-build-date deleted
    1
    -#!/usr/bin/perl -w
    
    2
    -# Generate a MOZ_BUILD_DATE based on Tor Browser version number
    
    3
    -
    
    4
    -use strict;
    
    5
    -
    
    6
    -die "wrong number of arguments" unless @ARGV == 2;
    
    7
    -my ($year, $version) = @ARGV;
    
    8
    -my $date;
    
    9
    -if ($version =~ m/^tbb-nightly\.([^\.]+)\.([^\.]+)\.([^\.]+)$/) {
    
    10
    -  $date = sprintf("%d%02d%02d010101", $1, $2, $3);
    
    11
    -} elsif ($version eq 'testbuild') {
    
    12
    -  # There is no need for an increasing build date in test builds. Just hardcode
    
    13
    -  # it.
    
    14
    -  $date = 20010101010101;
    
    15
    -} else {
    
    16
    -  my @v = split(/[\.ab]/, $version);
    
    17
    -  push @v, '0' if @v < 4;
    
    18
    -  push @v, '0' if @v < 4;
    
    19
    -  # When MOZ_BUILD_DATE was based on the firefox version, with
    
    20
    -  # Tor Browser 8.0.6 and firefox 60.5.1 it was 20190204060201
    
    21
    -  # We can remove 5 from the month, while keeping it increasing.
    
    22
    -  my $month = $v[0] - 5;
    
    23
    -  $date = 1010101 + $year * 10000000000 + $month * 100000000
    
    24
    -             + $v[1] * 1000000 + $v[2] * 10000 + $v[3];
    
    25
    -  $date += 1000000 unless $version =~ m/[ab]/;
    
    26
    -}
    
    27
    -print "export MOZ_BUILD_DATE=$date\n";

  • projects/geckoview/build
    ... ... @@ -8,13 +8,6 @@ distdir=/var/tmp/dist
    8 8
     mkdir -p /var/tmp/build
    
    9 9
     mkdir -p $distdir/[% project %]
    
    10 10
     
    
    11
    -# We need to have the get-moz-build-date script available in the container
    
    12
    -# but we can't include it via input_files as it is a script shared between
    
    13
    -# projects.
    
    14
    -cat > get-moz-build-date << "EOF"
    
    15
    -[% INCLUDE "get-moz-build-date" %]
    
    16
    -EOF
    
    17
    -
    
    18 11
     tar -C /var/tmp/dist -xf [% c('input_files_by_name/rust') %]
    
    19 12
     tar -C /var/tmp/dist -xf [% c('input_files_by_name/cbindgen') %]
    
    20 13
     tar -C /var/tmp/dist -xf [% c('input_files_by_name/nasm') %]
    
    ... ... @@ -49,12 +42,7 @@ export MOZ_SOURCE_REPO="[% c('var/gitlab_project') %]"
    49 42
     export MOZ_SOURCE_CHANGESET=[% c("var/git_commit") %]
    
    50 43
     MOZCONFIG_EOF
    
    51 44
     
    
    52
    -eval $(perl $rootdir/get-moz-build-date [% c("var/copyright_year") %] [% c("var/torbrowser_version") %])
    
    53
    -if [ -z $MOZ_BUILD_DATE ]
    
    54
    -then
    
    55
    -    echo "MOZ_BUILD_DATE is not set"
    
    56
    -    exit 1
    
    57
    -fi
    
    45
    +[% c("var/set_MOZ_BUILD_DATE") %]
    
    58 46
     
    
    59 47
     export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
    
    60 48
     gradle_repo=/var/tmp/dist/gradle-dependencies
    

  • projects/geckoview/config
    ... ... @@ -48,10 +48,6 @@ steps:
    48 48
           mkdir -p /var/tmp/build
    
    49 49
           mkdir -p $distdir/[% project %]
    
    50 50
     
    
    51
    -      cat > get-moz-build-date << "EOF"
    
    52
    -      [% INCLUDE "get-moz-build-date" %]
    
    53
    -      EOF
    
    54
    -
    
    55 51
           tar -C $distdir -xf [% c('input_files_by_name/node') %]
    
    56 52
           export PATH="/var/tmp/dist/node/bin:$PATH"
    
    57 53
     
    
    ... ... @@ -73,12 +69,7 @@ steps:
    73 69
           ln -s mozconfig-android-all .mozconfig
    
    74 70
           echo 'mk_add_options MOZ_PARALLEL_BUILD=[% c("num_procs") %]' >> .mozconfig
    
    75 71
     
    
    76
    -      eval $(perl $rootdir/get-moz-build-date [% c("var/copyright_year") %] [% c("var/torbrowser_version") %])
    
    77
    -      if [ -z $MOZ_BUILD_DATE ]
    
    78
    -      then
    
    79
    -          echo "MOZ_BUILD_DATE is not set"
    
    80
    -          exit 1
    
    81
    -      fi
    
    72
    +      [% c("var/set_MOZ_BUILD_DATE") %]
    
    82 73
     
    
    83 74
           export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
    
    84 75
           gradle_repo=/var/tmp/dist/gradle-dependencies
    

  • rbm.conf
    ... ... @@ -218,6 +218,7 @@ var:
    218 218
         [% END -%]
    
    219 219
     
    
    220 220
       DOCSDIR_project: '[% project %]'
    
    221
    +  set_MOZ_BUILD_DATE: 'export MOZ_BUILD_DATE=[% c("var_p/MOZ_BUILD_DATE") %]'
    
    221 222
     
    
    222 223
     targets:
    
    223 224
       notarget: linux-x86_64
    
    ... ... @@ -717,5 +718,31 @@ gpg_allow_expired_keys: 1
    717 718
             }
    
    718 719
             return [@res];
    
    719 720
           },
    
    721
    +      MOZ_BUILD_DATE => sub {
    
    722
    +        use POSIX qw(strftime);
    
    723
    +        my ($project, $options) = @_;
    
    724
    +        my $nightly = project_config($project, 'var/nightly', $options);
    
    725
    +        my $testbuild = project_config($project, 'var/testbuild', $options);
    
    726
    +
    
    727
    +        if ($nightly && !$testbuild) {
    
    728
    +          my $torbrowser_version = project_config($project, 'var/torbrowser_version', $options);
    
    729
    +          return sprintf("%d%02d%02d000001", $1, $2, $3)
    
    730
    +            if $torbrowser_version =~ m/^tbb-nightly\.([^\.]+)\.([^\.]+)\.([^\.]+)$/;
    
    731
    +          return strftime("%Y%m%d000001", gmtime);
    
    732
    +        }
    
    733
    +
    
    734
    +        my $timestamp = project_config($project, 'timestamp', $options);
    
    735
    +        if (!$nightly) {
    
    736
    +          my $torbrowser_version = project_config($project, 'var/torbrowser_version', $options);
    
    737
    +          my @n = reverse split /[\.\D]/, $torbrowser_version;
    
    738
    +          my $i = 1;
    
    739
    +          unshift @n, 0 if @n < 3;
    
    740
    +          for my $n (@n) {
    
    741
    +            $timestamp += $n * $i;
    
    742
    +            $i = $i * 10;
    
    743
    +          }
    
    744
    +        }
    
    745
    +        return strftime "%Y%m%d%H%M%S", gmtime($timestamp);
    
    746
    +      },
    
    720 747
         },
    
    721 748
       )