New issue
Advanced search Search tips

Issue 758654 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug

Blocked on:
issue 764571
issue 765684

Blocking:
issue 751812



Sign in to add a comment

Replace Linux expected deps files with a list of package versions for supported distros

Project Member Reported by thomasanderson@chromium.org, Aug 24 2017

Issue description

Blocking: 751812
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/db2c080f98ef73f441c11ab9144fd8a337496c68

commit db2c080f98ef73f441c11ab9144fd8a337496c68
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Wed Aug 30 23:52:25 2017

Linux: Add debian-based distro package version list

This CL is the initial step toward removing the "expected deps" files
related to Linux packaging.

The intent is that dpkg-shlibdeps will return a list of dependencies
which we will cross-reference against every distro in the
dist-package-versions.json file that this CL adds.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ied39549c9c982572f9b874642d8d3e695c523bc5
Reviewed-on: https://chromium-review.googlesource.com/633894
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#498673}
[add] https://crrev.com/db2c080f98ef73f441c11ab9144fd8a337496c68/chrome/installer/linux/debian/dist-package-versions.json
[add] https://crrev.com/db2c080f98ef73f441c11ab9144fd8a337496c68/chrome/installer/linux/debian/download-repo-signing-keys.sh
[add] https://crrev.com/db2c080f98ef73f441c11ab9144fd8a337496c68/chrome/installer/linux/debian/repo_signing_keys.gpg
[add] https://crrev.com/db2c080f98ef73f441c11ab9144fd8a337496c68/chrome/installer/linux/debian/update-dist-package-versions.py

Project Member

Comment 3 by bugdroid1@chromium.org, Aug 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/775bdd929a7d0a3f19bfd3300c578d7f4e6357e8

commit 775bdd929a7d0a3f19bfd3300c578d7f4e6357e8
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Thu Aug 31 00:11:54 2017

Add RPM package provides list

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ia2be115f49536bf68c991aada4bf81dab344404a
Reviewed-on: https://chromium-review.googlesource.com/641781
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#498686}
[add] https://crrev.com/775bdd929a7d0a3f19bfd3300c578d7f4e6357e8/chrome/installer/linux/rpm/dist-package-provides.json
[add] https://crrev.com/775bdd929a7d0a3f19bfd3300c578d7f4e6357e8/chrome/installer/linux/rpm/update-package-provides.py

Project Member

Comment 4 by bugdroid1@chromium.org, Aug 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/46b0cef005b1550b148ae854d06350183cd2f923

commit 46b0cef005b1550b148ae854d06350183cd2f923
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Thu Aug 31 21:38:33 2017

Fix gn reference to RPM package name

The RPM gn target had a typo in the package output name.  This meant
the package still built fine, but ninja wouldn't see that the .rpm was
actually build and would always rebuild the .rpm when building "all".
We just didn't notice until now since the only bot that builds the
packages is the linux official builder, which doesn't run the "compile
confirm no-op" step.

BUG= 758654 
R=thestig@chromium.org

Change-Id: I3601fd975985f597ebd2f61b04a1107ffedd046c
Reviewed-on: https://chromium-review.googlesource.com/646385
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499013}
[modify] https://crrev.com/46b0cef005b1550b148ae854d06350183cd2f923/chrome/installer/linux/BUILD.gn

Project Member

Comment 6 by bugdroid1@chromium.org, Sep 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2094ddf5e416799a602bf12fc19fa008917276a3

commit 2094ddf5e416799a602bf12fc19fa008917276a3
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 01 00:54:48 2017

Move Linux package staging dirs into out directory

According to flock_make_package.py, Linux package builds were
serialized because the bots were running out of /tmp space.  This is
no surprise since the staging dirs necessary for Chrome can be very
large.  This CL moves the temp file storage into the user's out
directory instead.

BUG= 758654 

Change-Id: Ia5d0ca37a57c4a8ef2ba860fb81ce4b0379bdded
Reviewed-on: https://chromium-review.googlesource.com/646637
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499086}
[modify] https://crrev.com/2094ddf5e416799a602bf12fc19fa008917276a3/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/2094ddf5e416799a602bf12fc19fa008917276a3/chrome/installer/linux/rpm/build.sh

Project Member

Comment 7 by bugdroid1@chromium.org, Sep 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cae008e359c7e4d00f8369c3bb12ebcf7851758b

commit cae008e359c7e4d00f8369c3bb12ebcf7851758b
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 01 01:47:35 2017

Don't compress Linux packages when is_official_build=false

The deb and rpm packages used to always use xz9 compression, which can
be quite slow.  This CL conditions using compression on
is_official_build, similar to how allow_posix_link_time_opt is
conditioned on it.  According to the documentation for the flag, "This
has nothing to do with branding, but enables an additional level of
optimization above release (!is_debug). This might be better expressed
as a tri-state (debug, release, official) but for historical reasons
there are two separate flags."

On my system, for non-official builds, this reduces the time of
dpkg-deb from 1m45s to 0.7s, and reduces rpmbuild from 1m41s to 2.2s.

BUG= 758654 

Change-Id: I9a14b1d974a75d4c715c2912f9fb2710641fa024
Reviewed-on: https://chromium-review.googlesource.com/646234
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499108}
[modify] https://crrev.com/cae008e359c7e4d00f8369c3bb12ebcf7851758b/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/cae008e359c7e4d00f8369c3bb12ebcf7851758b/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/cae008e359c7e4d00f8369c3bb12ebcf7851758b/chrome/installer/linux/rpm/build.sh

Project Member

Comment 8 by bugdroid1@chromium.org, Sep 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e068dcb58ce9d3d0f6c5e5b31cccea64bdd6d826

commit e068dcb58ce9d3d0f6c5e5b31cccea64bdd6d826
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 01 18:31:21 2017

Add //chrome/installer/linux:check_package_dependencies target

This CL adds a new target that checks if debian package dependencies
are satisfiable on all supported debian-based distros.

Unlike the current dpkg-shlibdeps check, this check runs on all
binaries that go into the package.

Bug= 758654 
R=thestig@chromium.org
NOTRY=true

Change-Id: I39d654ba0eda2e5ffaf7831dad4ac8a75b3a4822
Bug: 
Reviewed-on: https://chromium-review.googlesource.com/636477
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499238}
[modify] https://crrev.com/e068dcb58ce9d3d0f6c5e5b31cccea64bdd6d826/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/e068dcb58ce9d3d0f6c5e5b31cccea64bdd6d826/chrome/installer/linux/debian/check-package-constraints-satisfied.py

Project Member

Comment 9 by bugdroid1@chromium.org, Sep 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce16a0cb3f3d19613c3a6e2e513e10e7bb478df5

commit ce16a0cb3f3d19613c3a6e2e513e10e7bb478df5
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Sat Sep 02 00:27:51 2017

Add strip_chrome_binary target and make it a dep of linux_package

This CL is a prerequisite to enabling parallel Linux package builds by
default.

There was a part of installer.include that created, modified, and
deleted the same file.  This CL adds a new target that generates
chrome.debug and chrome.stripped to avoid generating these multiple
times and to fix the race condition.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Idcdfa1354388a1a7c25294f1eb7ec1b4f53dcca6
Reviewed-on: https://chromium-review.googlesource.com/646804
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499356}
[modify] https://crrev.com/ce16a0cb3f3d19613c3a6e2e513e10e7bb478df5/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/ce16a0cb3f3d19613c3a6e2e513e10e7bb478df5/chrome/installer/linux/common/installer.include
[add] https://crrev.com/ce16a0cb3f3d19613c3a6e2e513e10e7bb478df5/chrome/installer/linux/strip-chrome-binary.py

Project Member

Comment 10 by bugdroid1@chromium.org, Sep 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1d582484d16f68d6f32f1323f1b3068be60330cd

commit 1d582484d16f68d6f32f1323f1b3068be60330cd
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Tue Sep 05 20:41:28 2017

Remove unused trunk and asan linux packages

Now that we're planning on building the linux packages on the CQ, it's
best to have only 6 packages built instead of 10.  This CL removes the
"trunk" and "asan" packages, which are currently unused.  Code search
shows no results for "linux:trunk", "linux:asan", "trunk*deb",
"asan*deb", "trunk*rpm", or "asan*rpm".

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ibc620f766b6aae0f6b62872df79e949a2221d155
Reviewed-on: https://chromium-review.googlesource.com/646432
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Alexander Potapenko <glider@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499744}
[modify] https://crrev.com/1d582484d16f68d6f32f1323f1b3068be60330cd/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/1d582484d16f68d6f32f1323f1b3068be60330cd/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/1d582484d16f68d6f32f1323f1b3068be60330cd/chrome/installer/linux/rpm/build.sh

Project Member

Comment 11 by bugdroid1@chromium.org, Sep 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1be0f55ff135f4ac783756f1d551fdd25ca12f26

commit 1be0f55ff135f4ac783756f1d551fdd25ca12f26
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Thu Sep 07 00:05:06 2017

Add debian/package_version_interval.py

This CL refactors the version constraint check that used to live in
check-package-constraints-satisfied.py and moves it into class
PackageVersionInterval.

This new class is necessary because the final package has multiple
binaries, each with different dependencies, and the sets of packages
required by each binary must be intersected to arrive at the real set
of dependencies.  For example, if binary_a requires libc (> 2.10) and
binary_b requires libc (< 2.22), both constraints will need to be
added to the package dependencies.  Or (the more common case), if
binary_a requires libc (> 2.10) and binary_b requires libc (> 2.12),
these constraints will be merged into a single libc (> 2.12).

Currently, both the deb and rpm packages don't require libstdc++
(because it is not required by chrome), even though libclearkeycdm.so
requires it.

BUG= 758654 
R=thestig@chromium.org
NOTRY=true

Change-Id: I53d80828138428fd72dfd5711ab509a76273e064
Reviewed-on: https://chromium-review.googlesource.com/651630
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500148}
[modify] https://crrev.com/1be0f55ff135f4ac783756f1d551fdd25ca12f26/chrome/installer/linux/debian/check-package-constraints-satisfied.py
[add] https://crrev.com/1be0f55ff135f4ac783756f1d551fdd25ca12f26/chrome/installer/linux/debian/package_version_interval.py
[add] https://crrev.com/1be0f55ff135f4ac783756f1d551fdd25ca12f26/chrome/installer/linux/debian/package_version_interval_test.py

Project Member

Comment 12 by bugdroid1@chromium.org, Sep 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a80a9b46708681f4bcf09d7e45129c5ca4698256

commit a80a9b46708681f4bcf09d7e45129c5ca4698256
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Thu Sep 07 02:35:33 2017

Add merge_deb_dependencies target

This CL adds a script to merge dependency lists and an associated
target to merge all automatically genreated debian deps.

Redording the deps into a file and merging them is preferred to
recalculating and merging because running dpkg-shlibdeps is expensive
(can take ~2s for the chrome binary).

BUG= 758654 
R=thestig@chromium.org

Change-Id: I196c0e8df6540dba126069bade992a832085d9f3
Reviewed-on: https://chromium-review.googlesource.com/651427
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500191}
[modify] https://crrev.com/a80a9b46708681f4bcf09d7e45129c5ca4698256/chrome/installer/linux/BUILD.gn
[rename] https://crrev.com/a80a9b46708681f4bcf09d7e45129c5ca4698256/chrome/installer/linux/debian/calculate_package_deps.py
[modify] https://crrev.com/a80a9b46708681f4bcf09d7e45129c5ca4698256/chrome/installer/linux/debian/deb_version.py
[add] https://crrev.com/a80a9b46708681f4bcf09d7e45129c5ca4698256/chrome/installer/linux/debian/merge_package_versions.py

Project Member

Comment 14 by bugdroid1@chromium.org, Sep 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2b50d4264706eb14f1193bf6080c60dc07d4d4ae

commit 2b50d4264706eb14f1193bf6080c60dc07d4d4ae
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 08 00:42:38 2017

Add script to calculate and verify RPM dependencies

BUG= 758654 
R=thestig@chromium.org
NOTRY=true

Change-Id: Ibc62c593a9e29425ef7f0c5f42b1cc95f998b1ed
Reviewed-on: https://chromium-review.googlesource.com/653722
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500455}
[add] https://crrev.com/2b50d4264706eb14f1193bf6080c60dc07d4d4ae/chrome/installer/linux/rpm/calculate_package_deps.py

Project Member

Comment 15 by bugdroid1@chromium.org, Sep 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7f6acf6f4b30fa7863dbfef64596dc308a50a267

commit 7f6acf6f4b30fa7863dbfef64596dc308a50a267
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 08 03:13:09 2017

Add targets for calculating and merging RPM dependencies

BUG= 758654 
R=thestig@chromium.org

Change-Id: I10e73a52d0a7db2ead7ad1c5eb15712353c5ea73
Reviewed-on: https://chromium-review.googlesource.com/655857
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#500494}
[modify] https://crrev.com/7f6acf6f4b30fa7863dbfef64596dc308a50a267/chrome/installer/linux/BUILD.gn
[add] https://crrev.com/7f6acf6f4b30fa7863dbfef64596dc308a50a267/chrome/installer/linux/rpm/merge_package_deps.py

Project Member

Comment 17 by bugdroid1@chromium.org, Sep 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0e2fc3a0b945320fb73188181858661f545af9f3

commit 0e2fc3a0b945320fb73188181858661f545af9f3
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Mon Sep 11 21:47:30 2017

Enable parallel Linux package builds

r499086 switched the Linux packaging staging dirs from /tmp to the out
directory.  This means it's no longer necessary to serialize package
builds.

BUG= 758654 
R=thestig@chromium.org
TBR=rdevlin.cronin@chromium.org

Change-Id: I2ef5d9903aa2a590aa9571dfb7ab23af22c1e1bf
Reviewed-on: https://chromium-review.googlesource.com/645831
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501051}
[modify] https://crrev.com/0e2fc3a0b945320fb73188181858661f545af9f3/chrome/installer/linux/BUILD.gn
[delete] https://crrev.com/96d60e0816282d87c6b644329ec88e06dee0fd7a/chrome/installer/linux/flock_make_package.py
[add] https://crrev.com/0e2fc3a0b945320fb73188181858661f545af9f3/chrome/installer/linux/make_package.py
[modify] https://crrev.com/0e2fc3a0b945320fb73188181858661f545af9f3/extensions/shell/installer/linux/BUILD.gn

Project Member

Comment 18 by bugdroid1@chromium.org, Sep 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/06b02e60ced3920a19bba3981d6de81e35c6e412

commit 06b02e60ced3920a19bba3981d6de81e35c6e412
Author: Thomas Anderson <thomasanderson@chromium.org>
Date: Mon Sep 11 22:25:18 2017

Revert "Enable parallel Linux package builds"

This reverts commit 0e2fc3a0b945320fb73188181858661f545af9f3.

Reason for revert: https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20Linux%20x64/builds/21223 "Google Chrome Linux x64"

Original change's description:
> Enable parallel Linux package builds
> 
> r499086 switched the Linux packaging staging dirs from /tmp to the out
> directory.  This means it's no longer necessary to serialize package
> builds.
> 
> BUG= 758654 
> R=​thestig@chromium.org
> TBR=rdevlin.cronin@chromium.org
> 
> Change-Id: I2ef5d9903aa2a590aa9571dfb7ab23af22c1e1bf
> Reviewed-on: https://chromium-review.googlesource.com/645831
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#501051}

TBR=thestig@chromium.org,rdevlin.cronin@chromium.org,thomasanderson@chromium.org

Change-Id: I3616d9c1ee2fd449ea843556b40078cf37c65b19
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  758654 
Reviewed-on: https://chromium-review.googlesource.com/661658
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501061}
[modify] https://crrev.com/06b02e60ced3920a19bba3981d6de81e35c6e412/chrome/installer/linux/BUILD.gn
[add] https://crrev.com/06b02e60ced3920a19bba3981d6de81e35c6e412/chrome/installer/linux/flock_make_package.py
[delete] https://crrev.com/0fc0c41c701aecd6c10a16927f4706beae7a50f8/chrome/installer/linux/make_package.py
[modify] https://crrev.com/06b02e60ced3920a19bba3981d6de81e35c6e412/extensions/shell/installer/linux/BUILD.gn

Project Member

Comment 20 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/29332fddb1b9cbdd8167d0f2ebd3d6df94f5737e

commit 29332fddb1b9cbdd8167d0f2ebd3d6df94f5737e
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Tue Sep 12 00:18:34 2017

Reland of: Enable parallel Linux package builds

r499086 switched the Linux packaging staging dirs from /tmp to the out
directory.  This means it's no longer necessary to serialize package
builds.

The original CL passed argv[2:] to bash instead of argv[1:].

BUG= 758654 
R=thestig@chromium.org
TBR=rdevlin.cronin@chromium.org

Change-Id: If6dc9c35edeb60337b944a2a4350875274241747
Reviewed-on: https://chromium-review.googlesource.com/661780
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501111}
[modify] https://crrev.com/29332fddb1b9cbdd8167d0f2ebd3d6df94f5737e/chrome/installer/linux/BUILD.gn
[delete] https://crrev.com/012701d414f852b182e4900029561d0a27f62a6d/chrome/installer/linux/flock_make_package.py
[add] https://crrev.com/29332fddb1b9cbdd8167d0f2ebd3d6df94f5737e/chrome/installer/linux/make_package.py
[modify] https://crrev.com/29332fddb1b9cbdd8167d0f2ebd3d6df94f5737e/extensions/shell/installer/linux/BUILD.gn

Project Member

Comment 21 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f068f5d9531f7cf3bb2c88db13c2eca884ba59f7

commit f068f5d9531f7cf3bb2c88db13c2eca884ba59f7
Author: Ben Wells <benwells@chromium.org>
Date: Tue Sep 12 01:14:00 2017

Revert "Switch RPM packager to use new dependency system"

This reverts commit 54a27d88a945c54a832872e124971175e8ccdf82.

Reason for revert: Caused compile failure.

Original change's description:
> Switch RPM packager to use new dependency system
> 
> BUG= 758654 
> R=​thestig@chromium.org
> 
> Change-Id: Ib64eb4ace73d7803b083f4d40795193dedc288f7
> Reviewed-on: https://chromium-review.googlesource.com/655943
> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#501104}

TBR=thestig@chromium.org,thomasanderson@chromium.org

Change-Id: I3d625e3098e7b60ca173b51c8616c8d34c58a5a1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  758654 
Reviewed-on: https://chromium-review.googlesource.com/662477
Reviewed-by: Ben Wells <benwells@chromium.org>
Commit-Queue: Ben Wells <benwells@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501134}
[modify] https://crrev.com/f068f5d9531f7cf3bb2c88db13c2eca884ba59f7/chrome/installer/linux/BUILD.gn
[delete] https://crrev.com/8b63476e1d8e78b51d978bfc17b80cba58171885/chrome/installer/linux/rpm/additional_deps
[modify] https://crrev.com/f068f5d9531f7cf3bb2c88db13c2eca884ba59f7/chrome/installer/linux/rpm/build.sh
[modify] https://crrev.com/f068f5d9531f7cf3bb2c88db13c2eca884ba59f7/chrome/installer/linux/rpm/calculate_package_deps.py
[add] https://crrev.com/f068f5d9531f7cf3bb2c88db13c2eca884ba59f7/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member

Comment 22 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/844842b939cfd0451e3e318ddd5fca4f29e313c5

commit 844842b939cfd0451e3e318ddd5fca4f29e313c5
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Tue Sep 12 19:09:36 2017

Add libstdc++.so to list of allowed RPM dependencies

Running RPM find-requires on libwidevinecdm.so on Debian Testing
reports no libstdc++ dependency, but running it on Ubuntu Trusty does.
This CL explicitly allows libstdc++.so as an RPM dependency -- this is
a requirement to reland r501104.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ie008e51184b92cf891b4f74c1a432b771adfec5d
Reviewed-on: https://chromium-review.googlesource.com/662401
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501349}
[modify] https://crrev.com/844842b939cfd0451e3e318ddd5fca4f29e313c5/chrome/installer/linux/rpm/dist-package-provides.json
[modify] https://crrev.com/844842b939cfd0451e3e318ddd5fca4f29e313c5/chrome/installer/linux/rpm/update-package-provides.py

Project Member

Comment 23 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3a3c5886c183c612ff37af7ff3558f9fd1f2b916

commit 3a3c5886c183c612ff37af7ff3558f9fd1f2b916
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Tue Sep 12 21:16:24 2017

Reland "Switch RPM packager to use new dependency system"

This is a reland of 54a27d88a945c54a832872e124971175e8ccdf82
Original change's description:
> Switch RPM packager to use new dependency system
> 
> BUG= 758654 
> R=thestig@chromium.org
> 
> Change-Id: Ib64eb4ace73d7803b083f4d40795193dedc288f7
> Reviewed-on: https://chromium-review.googlesource.com/655943
> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#501104}

Bug:  758654 
Change-Id: I120e58c8535e86b1504422af3847cdc899e3110a
Reviewed-on: https://chromium-review.googlesource.com/663567
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501399}
[modify] https://crrev.com/3a3c5886c183c612ff37af7ff3558f9fd1f2b916/chrome/installer/linux/BUILD.gn
[add] https://crrev.com/3a3c5886c183c612ff37af7ff3558f9fd1f2b916/chrome/installer/linux/rpm/additional_deps
[modify] https://crrev.com/3a3c5886c183c612ff37af7ff3558f9fd1f2b916/chrome/installer/linux/rpm/build.sh
[modify] https://crrev.com/3a3c5886c183c612ff37af7ff3558f9fd1f2b916/chrome/installer/linux/rpm/calculate_package_deps.py
[delete] https://crrev.com/5163dd7b1c9832e636f4730ea533316eee666dac/chrome/installer/linux/rpm/expected_deps_x86_64

Project Member

Comment 24 by bugdroid1@chromium.org, Sep 12 2017

Labels: merge-merged-3213
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2155b1a83f1f4928e0f6f5d433e24b35f5957f0c

commit 2155b1a83f1f4928e0f6f5d433e24b35f5957f0c
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Tue Sep 12 21:18:26 2017

[Merge to M63] Revert "Switch RPM packager to use new dependency system"

> This reverts commit 54a27d88a945c54a832872e124971175e8ccdf82.
>
> Reason for revert: Caused compile failure.
>
> Original change's description:
> > Switch RPM packager to use new dependency system
> >
> > BUG= 758654 
> > R=​thestig@chromium.org
> >
> > Change-Id: Ib64eb4ace73d7803b083f4d40795193dedc288f7
> > Reviewed-on: https://chromium-review.googlesource.com/655943
> > Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> > Reviewed-by: Lei Zhang <thestig@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#501104}
>
> TBR=thestig@chromium.org,thomasanderson@chromium.org
>
> Change-Id: I3d625e3098e7b60ca173b51c8616c8d34c58a5a1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug:  758654 
> Reviewed-on: https://chromium-review.googlesource.com/662477
> Reviewed-by: Ben Wells <benwells@chromium.org>
> Commit-Queue: Ben Wells <benwells@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#501134}
>

NOPRESUBMIT=true
NOTRY=true
NOTREECHECKS=true
TBR=thestig@chromium.org
CC=govind@chromium.org

Change-Id: I0f5a2c9f67c5bf0442129a0bbbf9ba9959eb3afd
Reviewed-on: https://chromium-review.googlesource.com/663850
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/branch-heads/3213@{#3}
Cr-Branched-From: 58ee71082b735f6dae76665b444d534d9832b45c-refs/heads/master@{#501132}
[modify] https://crrev.com/2155b1a83f1f4928e0f6f5d433e24b35f5957f0c/chrome/installer/linux/BUILD.gn
[delete] https://crrev.com/6fa45caf46eabb74fa54b6bd1552c175bd3dd549/chrome/installer/linux/rpm/additional_deps
[modify] https://crrev.com/2155b1a83f1f4928e0f6f5d433e24b35f5957f0c/chrome/installer/linux/rpm/build.sh
[modify] https://crrev.com/2155b1a83f1f4928e0f6f5d433e24b35f5957f0c/chrome/installer/linux/rpm/calculate_package_deps.py
[add] https://crrev.com/2155b1a83f1f4928e0f6f5d433e24b35f5957f0c/chrome/installer/linux/rpm/expected_deps_x86_64

Blockedon: 764571
Project Member

Comment 26 by bugdroid1@chromium.org, Sep 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e3b5543f0dfc6585ad06aa2c2235a3a813438cd

commit 8e3b5543f0dfc6585ad06aa2c2235a3a813438cd
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Wed Sep 13 02:13:53 2017

Don't spam console when building Linux packages

Now that the Linux packages are going to be built on all of the linux
CQ bots, we shouldn't spam the console with miscellaneous info.  This
CL guards all of the logging behing the VERBOSE flag, but still prints
command stdout and stderr when the return code is nonzero.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ia037371b836cbf059d37131a602037c5b972c182
Reviewed-on: https://chromium-review.googlesource.com/656566
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501520}
[modify] https://crrev.com/8e3b5543f0dfc6585ad06aa2c2235a3a813438cd/chrome/installer/linux/common/installer.include
[modify] https://crrev.com/8e3b5543f0dfc6585ad06aa2c2235a3a813438cd/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/8e3b5543f0dfc6585ad06aa2c2235a3a813438cd/chrome/installer/linux/rpm/build.sh

Blockedon: 765684
Project Member

Comment 30 by bugdroid1@chromium.org, Sep 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fa4860c2b5f7e18782ee1a039bca9b620f13bfeb

commit fa4860c2b5f7e18782ee1a039bca9b620f13bfeb
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 15 23:23:40 2017

Fixes necessary for enabling linux packages when is_chrome_branded=false

This CL:
* Checks for ANGLE library existence before including them in the
  package.
* Fixes gn action output name for Chromium-branded packages.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Iaed84183bbaf8f7efc229bd3e8ea3e20e39222dd
Reviewed-on: https://chromium-review.googlesource.com/667862
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502435}
[modify] https://crrev.com/fa4860c2b5f7e18782ee1a039bca9b620f13bfeb/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/fa4860c2b5f7e18782ee1a039bca9b620f13bfeb/chrome/installer/linux/common/installer.include

Project Member

Comment 31 by bugdroid1@chromium.org, Sep 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3a68c5ba93aa98f326f293f43bddf91d45649250

commit 3a68c5ba93aa98f326f293f43bddf91d45649250
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Fri Sep 15 23:36:45 2017

Change shared library permission bits in Linux packages

This CL:
* Adds a check in our RPM dependency checker to ensure an executable
  bit is set.  This is required for /usr/lib/rpm/elfdeps to include
  the dependencies.
* Changes the executable bits for shared libraries in the RPM package
  to 755.  Those in the debian package remain 644.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ib5843bd95479d5900350060aa28886870d9928ff
Reviewed-on: https://chromium-review.googlesource.com/668120
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502441}
[modify] https://crrev.com/3a68c5ba93aa98f326f293f43bddf91d45649250/chrome/installer/linux/common/installer.include
[modify] https://crrev.com/3a68c5ba93aa98f326f293f43bddf91d45649250/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/3a68c5ba93aa98f326f293f43bddf91d45649250/chrome/installer/linux/rpm/build.sh
[modify] https://crrev.com/3a68c5ba93aa98f326f293f43bddf91d45649250/chrome/installer/linux/rpm/calculate_package_deps.py

Project Member

Comment 32 by bugdroid1@chromium.org, Sep 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/932daf23526ea6072c05bb822c85d569f91556ab

commit 932daf23526ea6072c05bb822c85d569f91556ab
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Sat Sep 16 01:56:56 2017

Enable linux package builds when is_chrome_branded=false

This CL adds //chrome/installer/linux to gn_all when
is_chrome_branded=false.  This will cause all packages
to be built on most Linux CQ and main waterfall bots.

BUG= 758654 
R=thestig@chromium.org

Change-Id: Ifeb0da2480947de5ea3535282857093b8c861583
Reviewed-on: https://chromium-review.googlesource.com/657601
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502470}
[modify] https://crrev.com/932daf23526ea6072c05bb822c85d569f91556ab/chrome/installer/BUILD.gn

Status: Fixed (was: Started)
Project Member

Comment 34 by bugdroid1@chromium.org, Sep 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/79cd919891958c00e8d8b87b504d478cc0eb437b

commit 79cd919891958c00e8d8b87b504d478cc0eb437b
Author: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Date: Mon Sep 18 18:57:57 2017

Make Linux package builds depend on |use_sysroot|.

The recent changes to the build system done as part of  bug 758654  assume
|use_sysroot| is true and reference the |sysroot| variable in different
targets and actions.

https://chromium-review.googlesource.com/c/chromium/src/+/657601 then made
|enable_linux_installer| in more cases, including non-component builds that
do not use Chromium's sysroot(s).

That's how most downstream packagers build Chromium, so make sure
|use_sysroot| is on when enabling |enable_linux_installer|.

Bug:  758654 
Change-Id: I6d402cb92ea5096910c52b7aad74bbe5351c6952
Reviewed-on: https://chromium-review.googlesource.com/670745
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#502628}
[modify] https://crrev.com/79cd919891958c00e8d8b87b504d478cc0eb437b/chrome/installer/BUILD.gn

Project Member

Comment 35 by bugdroid1@chromium.org, Sep 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/be8536ed6db356edbf7cdbd069f89059d0227791

commit be8536ed6db356edbf7cdbd069f89059d0227791
Author: Hans Wennborg <hans@chromium.org>
Date: Tue Sep 19 18:01:15 2017

Don't do linux package builds when using sanitizers

The dependency checks on the installer packages won't pass.

BUG= 758654 , 766710 

Change-Id: Ib0e71970fc59828d92bc0c61925a31b483b96dce
Reviewed-on: https://chromium-review.googlesource.com/673086
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#502892}
[modify] https://crrev.com/be8536ed6db356edbf7cdbd069f89059d0227791/chrome/installer/BUILD.gn

Comment 36 by sl1pk...@gmail.com, Sep 19 2017

 #c32 failed hard if the build system is not debian(deb) or fedora(rpm)

Defining target //components/tracing:unit_tests(//build/toolchain/linux/unbundle:default)
ERROR at //chrome/installer/linux/BUILD.gn:79:17: Empty directory path.
    rebase_path(sysroot, root_build_dir),
                ^------
You can't use empty strings as directories. That's just wrong.
See //chrome/installer/BUILD.gn:15:7: which caused the file to be included.
      "//chrome/installer/linux",
      ^-------------------------


add again '&& is_chrome_branded' fix the problem
c#36: the cl in c#34 should fix that.  Please let me know if it doesn't

Comment 38 Deleted

Comment 39 by sl1pk...@gmail.com, Sep 19 2017

i mean fail with released 63.0.3218.0 dev channel

probably c#34 fix the issue, let me check

Comment 40 by sl1pk...@gmail.com, Sep 19 2017

yep. c#34 fix the issue. 

greetings!
Project Member

Comment 41 by bugdroid1@chromium.org, Oct 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0f74ee85e796989d024e1543f001033efcac37d3

commit 0f74ee85e796989d024e1543f001033efcac37d3
Author: Milko Leporis <milko.leporis@imgtec.com>
Date: Mon Oct 02 22:37:07 2017

Support linux package builds for MIPSEL

This CL adds missing MIPSEL support for creating .deb/.rpm packages.
Also fixes issue with crosscompile and calling "install -s".

BUG= 758654 

Change-Id: I1fee33fab48db644e3ff9870bd315e9c8f134877
Reviewed-on: https://chromium-review.googlesource.com/674872
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#505820}
[modify] https://crrev.com/0f74ee85e796989d024e1543f001033efcac37d3/chrome/installer/linux/BUILD.gn
[modify] https://crrev.com/0f74ee85e796989d024e1543f001033efcac37d3/chrome/installer/linux/common/installer.include
[modify] https://crrev.com/0f74ee85e796989d024e1543f001033efcac37d3/chrome/installer/linux/debian/build.sh
[modify] https://crrev.com/0f74ee85e796989d024e1543f001033efcac37d3/chrome/installer/linux/debian/calculate_package_deps.py
[modify] https://crrev.com/0f74ee85e796989d024e1543f001033efcac37d3/chrome/installer/linux/rpm/build.sh

Project Member

Comment 42 by bugdroid1@chromium.org, Oct 4 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cedcf796e1544e0e28f9090f307a590f0e374c76

commit cedcf796e1544e0e28f9090f307a590f0e374c76
Author: Tom Anderson <thomasanderson@chromium.org>
Date: Wed Oct 04 00:29:55 2017

Only enable distro package check on x86_64

CL [1] is trying to enable MIPS package builds, but is running into
some trouble with the distro dependency check.  The package manifests
for the distro check are only downloaded for x86_64, so it's
unexpected to work on any other arch anyway.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/674872

BUG= 758654 
R=mmoss@chromium.org

Change-Id: Ibd3257b325cab22b3c8c9524272024649072f09a
Reviewed-on: https://chromium-review.googlesource.com/692564
Reviewed-by: Michael Moss <mmoss@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#506242}
[modify] https://crrev.com/cedcf796e1544e0e28f9090f307a590f0e374c76/chrome/installer/linux/BUILD.gn

Sign in to add a comment