Commits:
12 changed files:
Changes:
projects/browser/build
... |
... |
@@ -374,12 +374,12 @@ cd $distdir |
374
|
374
|
[% END -%]
|
375
|
375
|
[% c('tar', {
|
376
|
376
|
tar_src => [ '$PKG_DIR' ],
|
377
|
|
- tar_args => '-cJf $OUTDIR/' _ c("var/project-name") _ '-' _ c("var/mar_osname") _ '-' _ c("var/torbrowser_version") _ '_${PKG_LOCALE}.tar.xz',
|
|
377
|
+ tar_args => '-cJf $OUTDIR/' _ c("var/project-name") _ '-' _ c("var/osname") _ '-' _ c("var/torbrowser_version") _ '.tar.xz',
|
378
|
378
|
}) %]
|
379
|
379
|
[% ELSIF c("var/macos") %]
|
380
|
380
|
[% c('var/ddmg', {
|
381
|
381
|
dmg_src => '"$PKG_DIR"',
|
382
|
|
- dmg_out => '$OUTDIR/' _ c('var/ProjectName') _ '-' _ c("var/torbrowser_version") _ '-' _ c("var/mar_osname") _ '_${PKG_LOCALE}.dmg',
|
|
382
|
+ dmg_out => '$OUTDIR/' _ c('var/project-name') _ '-' _ c("var/mar_osname") _ '-' _ c("var/torbrowser_version") _ '.dmg',
|
383
|
383
|
}) %]
|
384
|
384
|
[% ELSIF c("var/windows") %]
|
385
|
385
|
find "$PKG_DIR" -exec [% c("touch") %] {} \;
|
... |
... |
@@ -387,11 +387,11 @@ cd $distdir |
387
|
387
|
makensis browser-portable.nsi
|
388
|
388
|
# Working around NSIS braindamage
|
389
|
389
|
python3 $rootdir/pe_checksum_fix.py browser-install.exe
|
390
|
|
- mv browser-install.exe $OUTDIR/[% c("var/projectname") %]-install[% IF c("var/windows-x86_64") %]-win64[% END %]-[% c("var/torbrowser_version") %]_${PKG_LOCALE}.exe
|
|
390
|
+ mv browser-install.exe $OUTDIR/[% c("var/project-name") %]-portable-[% c("var/osname") %]-[% c("var/torbrowser_version") %].exe
|
391
|
391
|
[% IF c('var/mullvad-browser') -%]
|
392
|
392
|
makensis browser-system.nsi
|
393
|
393
|
python3 $rootdir/pe_checksum_fix.py browser-install.exe
|
394
|
|
- mv browser-install.exe $OUTDIR/[% c("var/projectname") %]-systeminstall[% IF c("var/windows-x86_64") %]-win64[% END %]-[% c("var/torbrowser_version") %]_${PKG_LOCALE}.exe
|
|
394
|
+ mv browser-install.exe $OUTDIR/[% c("var/project-name") %]-install-[% c("var/osname") %]-[% c("var/torbrowser_version") %].exe
|
395
|
395
|
[% END -%]
|
396
|
396
|
popd
|
397
|
397
|
[% END %]
|
... |
... |
@@ -402,12 +402,12 @@ SCRIPT_EOF |
402
|
402
|
cp $rootdir/[% c('input_files_by_name/firefox') %]/mar-tools-*.zip "$OUTDIR"/
|
403
|
403
|
[% END -%]
|
404
|
404
|
[% IF c("var/linux") -%]
|
405
|
|
- cp $rootdir/[% c('input_files_by_name/firefox') %]/browser-debug.tar.xz "$OUTDIR/[% c('var/project-name') %]-[% c('var/mar_osname') %]-debug.tar.xz"
|
|
405
|
+ cp $rootdir/[% c('input_files_by_name/firefox') %]/browser-debug-symbols.tar.xz "$OUTDIR/[% c('var/project-name') %]-debug-symbols-[% c('var/mar_osname') %]-[% c('var/torbrowser_version') %].tar.xz"
|
406
|
406
|
[% IF c("var/linux-x86_64") && !c("var/asan") -%]
|
407
|
|
- cp $rootdir/[% c('input_files_by_name/firefox') %]/geckodriver.tar.xz "$OUTDIR/geckodriver-[% c('var/mar_osname') %].tar.xz"
|
|
407
|
+ cp $rootdir/[% c('input_files_by_name/firefox') %]/geckodriver.tar.xz "$OUTDIR/geckodriver-[% c('var/mar_osname') %]-[% c('var/torbrowser_version') %].tar.xz"
|
408
|
408
|
[% END -%]
|
409
|
409
|
[% ELSIF c("var/windows") -%]
|
410
|
|
- cp $rootdir/[% c('input_files_by_name/firefox') %]/browser-debug.zip "$OUTDIR/[% c('var/project-name') %]-[% c('var/mar_osname') %]-debug.zip"
|
|
410
|
+ cp $rootdir/[% c('input_files_by_name/firefox') %]/browser-debug-symbols.zip "$OUTDIR/[% c('var/project-name') %]-debug-symbols-[% c('var/mar_osname') %]-[% c('var/torbrowser_version') %].zip"
|
411
|
411
|
[% END -%]
|
412
|
412
|
[%IF c("var/tor-browser") -%]
|
413
|
413
|
tor_expert_bundle_src="[% c("input_files_by_name/tor-expert-bundle") %]"
|
projects/browser/build.android
... |
... |
@@ -6,7 +6,7 @@ tar -xf $rootdir/[% c('input_files_by_name/firefox-android') %] |
6
|
6
|
|
7
|
7
|
assets_dir=assets
|
8
|
8
|
ext_dir=$assets_dir/extensions
|
9
|
|
-qa_apk=[% dest_dir %]/[% c('filename') %]/[% c("var/project-name") %]-[% c("version") %]-[% c("var/osname") %]-multi-qa.apk
|
|
9
|
+qa_apk=[% dest_dir %]/[% c('filename') %]/[% c("var/project-name") %]-qa-[% c("var/osname") %]-[% c("version") %].apk
|
10
|
10
|
apk=$rootdir/firefox-android/*-[% c("var/abi") %]-*.apk
|
11
|
11
|
|
12
|
12
|
# tor-browser-build#40920
|
projects/browser/config
... |
... |
@@ -11,6 +11,7 @@ var: |
11
|
11
|
- libparallel-forkmanager-perl
|
12
|
12
|
- libfile-slurp-perl
|
13
|
13
|
- bzip2
|
|
14
|
+ mar_osname: '[% c("var/osname") %]'
|
14
|
15
|
|
15
|
16
|
targets:
|
16
|
17
|
linux:
|
... |
... |
@@ -20,12 +21,6 @@ targets: |
20
|
21
|
# builds (bug 29812). We don't need it in x86_64 builds, but we
|
21
|
22
|
# share the container to reduce space used.
|
22
|
23
|
- libc6-i386
|
23
|
|
- linux-i686:
|
24
|
|
- var:
|
25
|
|
- mar_osname: linux32
|
26
|
|
- linux-x86_64:
|
27
|
|
- var:
|
28
|
|
- mar_osname: linux64
|
29
|
24
|
macos:
|
30
|
25
|
var:
|
31
|
26
|
arch_deps:
|
... |
... |
@@ -37,22 +32,10 @@ targets: |
37
|
32
|
macos-universal:
|
38
|
33
|
var:
|
39
|
34
|
mar_osname: macos
|
40
|
|
- macos-aarch64:
|
41
|
|
- var:
|
42
|
|
- mar_osname: macos-aarch64
|
43
|
|
- macos-x86_64:
|
44
|
|
- var:
|
45
|
|
- mar_osname: macos-x86_64
|
46
|
35
|
windows:
|
47
|
36
|
var:
|
48
|
37
|
arch_deps:
|
49
|
38
|
- python3-pefile
|
50
|
|
- windows-i686:
|
51
|
|
- var:
|
52
|
|
- mar_osname: win32
|
53
|
|
- windows-x86_64:
|
54
|
|
- var:
|
55
|
|
- mar_osname: win64
|
56
|
39
|
android:
|
57
|
40
|
build: '[% INCLUDE build.android %]'
|
58
|
41
|
var:
|
projects/firefox/build
... |
... |
@@ -331,7 +331,7 @@ END; |
331
|
331
|
[% IF c("var/linux") -%]
|
332
|
332
|
[% c('tar', {
|
333
|
333
|
tar_src => [ 'Debug' ],
|
334
|
|
- tar_args => '-cJf ' _ dest_dir _ '/' _ c('filename') _ '/browser-debug.tar.xz',
|
|
334
|
+ tar_args => '-cJf ' _ dest_dir _ '/' _ c('filename') _ '/browser-debug-symbols.tar.xz',
|
335
|
335
|
}) %]
|
336
|
336
|
[% IF c("var/linux-x86_64") && !c("var/asan") -%]
|
337
|
337
|
[% c('tar', {
|
... |
... |
@@ -342,14 +342,14 @@ END; |
342
|
342
|
[% ELSIF c("var/windows") -%]
|
343
|
343
|
[% c('zip', {
|
344
|
344
|
zip_src => [ 'Debug' ],
|
345
|
|
- zip_args => dest_dir _ '/' _ c('filename') _ '/browser-debug.zip',
|
|
345
|
+ zip_args => dest_dir _ '/' _ c('filename') _ '/browser-debug-symbols.zip',
|
346
|
346
|
}) %]
|
347
|
347
|
[% END -%]
|
348
|
348
|
|
349
|
349
|
[% IF c("var/updater_enabled") -%]
|
350
|
350
|
[% c('zip', {
|
351
|
351
|
zip_src => [ 'mar-tools' ],
|
352
|
|
- zip_args => dest_dir _ '/' _ c('filename') _ '/' _ c('var/martools_filename'),
|
|
352
|
+ zip_args => dest_dir _ '/' _ c('filename') _ '/' _ 'mar-tools-' _ c("var/osname") _ '-' _ c("var/torbrowser_version") _ '.zip',
|
353
|
353
|
}) %]
|
354
|
354
|
[% END -%]
|
355
|
355
|
|
projects/firefox/config
... |
... |
@@ -90,7 +90,6 @@ targets: |
90
|
90
|
|
91
|
91
|
linux-x86_64:
|
92
|
92
|
var:
|
93
|
|
- martools_filename: mar-tools-linux64.zip
|
94
|
93
|
arch_deps:
|
95
|
94
|
- libgtk2.0-dev
|
96
|
95
|
- libgtk-3-dev
|
... |
... |
@@ -108,7 +107,6 @@ targets: |
108
|
107
|
|
109
|
108
|
linux-i686:
|
110
|
109
|
var:
|
111
|
|
- martools_filename: mar-tools-linux32.zip
|
112
|
110
|
sort_deps: 0
|
113
|
111
|
arch_deps:
|
114
|
112
|
- libgtk2.0-dev:i386
|
... |
... |
@@ -127,7 +125,6 @@ targets: |
127
|
125
|
|
128
|
126
|
macos:
|
129
|
127
|
var:
|
130
|
|
- martools_filename: 'mar-tools-macos-[% c("var/macos_arch") %].zip'
|
131
|
128
|
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-macos'
|
132
|
129
|
arch_deps:
|
133
|
130
|
- python3
|
... |
... |
@@ -141,14 +138,6 @@ targets: |
141
|
138
|
- python3-distutils
|
142
|
139
|
- wine
|
143
|
140
|
|
144
|
|
- windows-i686:
|
145
|
|
- var:
|
146
|
|
- martools_filename: mar-tools-win32.zip
|
147
|
|
-
|
148
|
|
- windows-x86_64:
|
149
|
|
- var:
|
150
|
|
- martools_filename: mar-tools-win64.zip
|
151
|
|
-
|
152
|
141
|
input_files:
|
153
|
142
|
- project: container-image
|
154
|
143
|
- name: '[% c("var/compiler") %]'
|
projects/release/dmg2mar
... |
... |
@@ -3,6 +3,6 @@ |
3
|
3
|
cd [% shell_quote(path(dest_dir)) %]/[% c("var/signed_status") %]/[% c("version") %]
|
4
|
4
|
|
5
|
5
|
export TOR_APPNAME_BUNDLE_OSX='[% c("var/Project_Name") -%]'
|
6
|
|
-export TOR_APPNAME_DMGFILE='[% c("var/ProjectName") -%]'
|
|
6
|
+export TOR_APPNAME_DMGFILE='[% c("var/project-name") -%]'
|
7
|
7
|
export TOR_APPNAME_MARFILE='[% c("var/project-name") -%]'
|
8
|
8
|
[% shell_quote(c("basedir")) %]/tools/dmg2mar [% c("var/mar_channel_id") %] |
projects/release/update_responses_config.yml
... |
... |
@@ -2,6 +2,7 @@ |
2
|
2
|
tmp_dir: '[% c("tmp_dir") %]'
|
3
|
3
|
create_downloads_json: 1
|
4
|
4
|
appname_marfile: '[% c("var/project-name") %]'
|
|
5
|
+appname_bundle: '[% c("var/project-name") %]'
|
5
|
6
|
appname_bundle_android: '[% c("var/project-name") %]'
|
6
|
7
|
appname_bundle_macos: '[% c("var/ProjectName") %]'
|
7
|
8
|
appname_bundle_linux: '[% c("var/project-name") %]'
|
... |
... |
@@ -20,13 +21,13 @@ download: |
20
|
21
|
mars_url: 'https://cdn.mullvad.net/browser'
|
21
|
22
|
[% END -%]
|
22
|
23
|
build_targets:
|
23
|
|
- linux32: Linux_x86-gcc3
|
24
|
|
- linux64: Linux_x86_64-gcc3
|
25
|
|
- win32:
|
|
24
|
+ linux-i686: Linux_x86-gcc3
|
|
25
|
+ linux-x86_64: Linux_x86_64-gcc3
|
|
26
|
+ windows-i686:
|
26
|
27
|
- WINNT_x86-gcc3
|
27
|
28
|
- WINNT_x86-gcc3-x86
|
28
|
29
|
- WINNT_x86-gcc3-x64
|
29
|
|
- win64: WINNT_x86_64-gcc3-x64
|
|
30
|
+ windows-x86_64: WINNT_x86_64-gcc3-x64
|
30
|
31
|
macos:
|
31
|
32
|
- Darwin_x86_64-gcc3
|
32
|
33
|
- Darwin_aarch64-gcc3
|
... |
... |
@@ -59,17 +60,17 @@ versions: |
59
|
60
|
# macOS v10.12.0
|
60
|
61
|
minSupportedOSVersion: 16.0.0
|
61
|
62
|
# minSupportedOsVersion on Windows corresponds to the operating system version ( https://docs.microsoft.com/en-us/windows/win32/sysinfo/operating-system-version )
|
62
|
|
- win32:
|
|
63
|
+ windows-i686:
|
63
|
64
|
# Windows 7
|
64
|
65
|
minSupportedOSVersion: 6.1
|
65
|
66
|
minSupportedInstructionSet: SSE2
|
66
|
|
- win64:
|
|
67
|
+ windows-x86_64:
|
67
|
68
|
# Windows 7
|
68
|
69
|
minSupportedOSVersion: 6.1
|
69
|
70
|
minSupportedInstructionSet: SSE2
|
70
|
|
- linux32:
|
|
71
|
+ linux-i686:
|
71
|
72
|
minSupportedInstructionSet: SSE2
|
72
|
|
- linux64:
|
|
73
|
+ linux-x86_64:
|
73
|
74
|
minSupportedInstructionSet: SSE2
|
74
|
75
|
mar_compression: xz
|
75
|
76
|
tag: 'tbb-[% c("var/torbrowser_version") %]-[% c("var/torbrowser_build") %]'
|
projects/tor-expert-bundle/config
1
|
1
|
# vim: filetype=yaml sw=2
|
2
|
|
-filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.gz'
|
|
2
|
+filename: '[% project %]-[% c("var/osname") %]-[% c("version") %]-[% c("var/build_id") %].tar.gz'
|
3
|
3
|
version: '[% c("var/torbrowser_version") %]'
|
4
|
4
|
|
5
|
5
|
container:
|
tools/dmg2mar
... |
... |
@@ -39,7 +39,7 @@ use Cwd; |
39
|
39
|
# set the application name in the TOR_APPNAME_BUNDLE_OSX,
|
40
|
40
|
# TOR_APPNAME_DMGFILE and TOR_APPNAME_MARFILE environment variables
|
41
|
41
|
my $appname = $ENV{TOR_APPNAME_BUNDLE_OSX} // 'Tor Browser';
|
42
|
|
-my $appname_dmg = $ENV{TOR_APPNAME_DMGFILE} // 'TorBrowser';
|
|
42
|
+my $appname_dmg = $ENV{TOR_APPNAME_DMGFILE} // 'tor-browser';
|
43
|
43
|
my $appname_mar = $ENV{TOR_APPNAME_MARFILE} // 'tor-browser';
|
44
|
44
|
|
45
|
45
|
sub exit_error {
|
... |
... |
@@ -53,10 +53,10 @@ sub osname { |
53
|
53
|
my ($arch) = capture_exec('uname', '-m');
|
54
|
54
|
chomp($osname, $arch);
|
55
|
55
|
if ($osname eq 'Linux' && $arch eq 'x86_64') {
|
56
|
|
- return 'linux64';
|
|
56
|
+ return 'linux-x86_64';
|
57
|
57
|
}
|
58
|
58
|
if ($osname eq 'Linux' && $arch =~ m/^i.86$/) {
|
59
|
|
- return 'linux32';
|
|
59
|
+ return 'linux-i686';
|
60
|
60
|
}
|
61
|
61
|
exit_error 'Unknown OS';
|
62
|
62
|
}
|
... |
... |
@@ -64,7 +64,8 @@ sub osname { |
64
|
64
|
my $martools_tmpdir;
|
65
|
65
|
sub extract_martools {
|
66
|
66
|
my $osname = osname;
|
67
|
|
- my $marzip = getcwd . "/mar-tools-$osname.zip";
|
|
67
|
+ my $marzip = glob(getcwd . "/mar-tools-$osname-*.zip");
|
|
68
|
+ exit_error "Could not find mar-tools zip" unless $marzip;
|
68
|
69
|
$martools_tmpdir = File::Temp->newdir();
|
69
|
70
|
my $old_cwd = getcwd;
|
70
|
71
|
chdir $martools_tmpdir;
|
... |
... |
@@ -97,7 +98,7 @@ sub get_dmg_files_from_sha256sums { |
97
|
98
|
my (undef, $filename) = split ' ', $line;
|
98
|
99
|
next unless $filename;
|
99
|
100
|
chomp $filename;
|
100
|
|
- next unless $filename =~ m/^$appname_dmg-(.+)-macos_(.+)\.dmg$/;
|
|
101
|
+ next unless $filename =~ m/^$appname_dmg-(.+)-macos\.dmg$/;
|
101
|
102
|
push @files, { filename => $filename, version => $1, lang => $2 };
|
102
|
103
|
}
|
103
|
104
|
return @files;
|
tools/signing/linux-signer-sign-android-apks
... |
... |
@@ -73,8 +73,8 @@ cd ~/"$SIGNING_PROJECTNAME-$tbb_version-apks" |
73
|
73
|
|
74
|
74
|
# Sign all packages
|
75
|
75
|
for arch in ${ARCHS}; do
|
76
|
|
- qa_apk=${projname}-${tbb_version}-android-${arch}-multi-qa.apk
|
77
|
|
- signed_apk=${projname}-${tbb_version}-android-${arch}-multi.apk
|
|
76
|
+ qa_apk=${projname}-qa-android-${arch}-${tbb_version}.apk
|
|
77
|
+ signed_apk=${projname}-android-${arch}-${tbb_version}.apk
|
78
|
78
|
sign_apk "$qa_apk" "$signed_apk"
|
79
|
79
|
verify_apk "$signed_apk"
|
80
|
80
|
cp -f "$signed_apk" ~/"$SIGNING_PROJECTNAME-$tbb_version"
|
tools/signing/nightly/sign-nightly
... |
... |
@@ -192,11 +192,12 @@ sub fetch_version { |
192
|
192
|
}
|
193
|
193
|
|
194
|
194
|
sub setup_martools {
|
195
|
|
- my $martools_dir = "$FindBin::Bin/mar-tools-" . get_config('martools_version');
|
|
195
|
+ my $martools_version = get_config('martools_version');
|
|
196
|
+ my $martools_dir = "$FindBin::Bin/mar-tools-" . $martools_version;
|
196
|
197
|
if (! -d $martools_dir) {
|
197
|
|
- my $file = "mar-tools-linux64.zip";
|
198
|
|
- my $url = join('/', get_config('martools_url'),
|
199
|
|
- get_config('martools_version'), $file);
|
|
198
|
+ my $martools_url = get_config('martools_url');
|
|
199
|
+ my $file = "mar-tools-linux-x86_64-$martools_version.zip";
|
|
200
|
+ my $url = "$martools_url/$martools_version/$file";
|
200
|
201
|
my $tmpdir = get_tmpdir();
|
201
|
202
|
exit_error "Error downloading $url"
|
202
|
203
|
unless getstore($url, "$tmpdir/$file") == 200;
|
tools/update-responses/update_responses
... |
... |
@@ -132,19 +132,19 @@ sub get_version_downloads { |
132
|
132
|
opendir(my $d, $vdir) or exit_error "Error opening directory $vdir";
|
133
|
133
|
foreach my $file (readdir $d) {
|
134
|
134
|
next unless -f "$vdir/$file";
|
135
|
|
- my ($os, $lang);
|
136
|
|
- if ($file =~ m/^$config->{appname_bundle_macos}-$version-macos_(.+).dmg$/) {
|
137
|
|
- ($os, $lang) = ('macos', $1);
|
138
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_linux}-(linux32|linux64)-${version}_(.+).tar.xz$/) {
|
139
|
|
- ($os, $lang) = ($1, $2);
|
140
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_win64}-${version}_(.+).exe$/) {
|
141
|
|
- ($os, $lang) = ('win64', $1);
|
142
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_win32}-${version}_(.+).exe$/) {
|
143
|
|
- ($os, $lang) = ('win32', $1);
|
|
135
|
+ my $os;
|
|
136
|
+ if ($file =~ m/^$config->{appname_bundle}-macos-$version.dmg$/) {
|
|
137
|
+ $os = 'macos';
|
|
138
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-(linux-i686|linux-x86_64)-${version}.tar.xz$/) {
|
|
139
|
+ $os = $1;
|
|
140
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-windows-x86_64-${version}.exe$/) {
|
|
141
|
+ $os = 'win64';
|
|
142
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-windows-i686-${version}.exe$/) {
|
|
143
|
+ $os = 'win32';
|
144
|
144
|
} else {
|
145
|
145
|
next;
|
146
|
146
|
}
|
147
|
|
- $downloads->{$os}{$lang} = {
|
|
147
|
+ $downloads->{$os}{ALL} = {
|
148
|
148
|
binary => "$download_url/$file",
|
149
|
149
|
sig => "$download_url/$file.asc",
|
150
|
150
|
};
|
... |
... |
@@ -162,15 +162,13 @@ sub get_perplatform_downloads { |
162
|
162
|
foreach my $file (readdir $d) {
|
163
|
163
|
next unless -f "$vdir/$file";
|
164
|
164
|
my $os;
|
165
|
|
- if ($file =~ m/^$config->{appname_bundle_macos}-$version-macos_(.+).dmg$/) {
|
|
165
|
+ if ($file =~ m/^$config->{appname_bundle}-macos-$version.dmg$/) {
|
166
|
166
|
$os = 'macos';
|
167
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_linux}-(linux32|linux64)-${version}_(.+).tar.xz$/) {
|
168
|
|
- $os = $1 eq 'linux64' ? 'linux-x86_64' : 'linux-i686';
|
169
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_win64}-${version}_(.+).exe$/) {
|
170
|
|
- $os = 'windows-x86_64';
|
171
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_win32}-${version}_(.+).exe$/) {
|
172
|
|
- $os = 'windows-i686';
|
173
|
|
- } elsif ($file =~ m/^$config->{appname_bundle_android}-${version}-(android-armv7|android-x86|android-x86_64|android-aarch64)-multi.apk$/) {
|
|
167
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-(linux-i686|linux-86_64)-${version}.tar.xz$/) {
|
|
168
|
+ $os = $1;
|
|
169
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-(windows-i686|windows-86_64)-${version}.exe$/) {
|
|
170
|
+ $os = $1;
|
|
171
|
+ } elsif ($file =~ m/^$config->{appname_bundle}-(android-armv7|android-x86|android-x86_64|android-aarch64)-${version}.apk$/) {
|
174
|
172
|
$os = $1;
|
175
|
173
|
} else {
|
176
|
174
|
next;
|
... |
... |
@@ -475,9 +473,11 @@ sub write_downloads_json { |
475
|
473
|
|
476
|
474
|
sub marzip_path {
|
477
|
475
|
my ($config, $version) = @_;
|
478
|
|
- for my $osname (qw/linux64 linux32 macos-x86_64 win64 win32/) {
|
479
|
|
- my $marzip = version_dir($config, $version) . "/mar-tools-$osname.zip";
|
480
|
|
- return $marzip if -f $marzip;
|
|
476
|
+ for my $osname (qw/linux-x86_64 linux-i686 macos-x86_64 windows-x86_64 windows-i686/) {
|
|
477
|
+ my $marzip = glob(version_dir($config, $version) . "/mar-tools-$osname-*.zip");
|
|
478
|
+ if ($marzip && -f $marzip) {
|
|
479
|
+ return $marzip;
|
|
480
|
+ }
|
481
|
481
|
}
|
482
|
482
|
exit_error 'Could not find mar-tools';
|
483
|
483
|
}
|
|