New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 743366 link

Starred by 1 user

Issue metadata

Status: Archived
Owner:
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

pkg-config: Host's paths pulled into build in sysroots with multilib variables set

Project Member Reported by tfiga@chromium.org, Jul 15 2017

Issue description

Chrome Version: (copy from chrome://version)
OS: (e.g. Win7, OSX 10.9.5, etc...)

What steps will reproduce the problem?
(1) Get a ChromiumOS chroot
(2) chmod a-r /usr/lib64/pkgconfig/dbus-1.pc
(3) build chromeos-chrome for a board with multilib-aware ARCH (e.g. reef or any other amd64 one)

What is the expected result?

The build succeeds.

What happens instead?

The build fails due to /usr/lib64/pkgconfig/dbus-1.pc being inaccessible, even though it's a host's file and should not have any impact on the build.

Please use labels and text to provide additional information.


For graphics-related bugs, please copy/paste the contents of the about:gpu
page at the end of this report.

Setting to P1, as it's blocking other critical work needed for M-61.
 
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 16 2017

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

commit cf2215de682de4fc2c80ccc54fe0b21df1dcc275
Author: Tomasz Figa <tfiga@chromium.org>
Date: Sun Jul 16 04:12:59 2017

Always honor pkg-config command coming from the user

When building from within a ChromiumOS chroot (and any other
Gentoo-base system), the right command to call pkg-config is specified
up front and needs to be honored. However currently Chromium build
system always calls 'pkg-config' directly if --sysroot is given to the
build. This ignores any necessary setup done by the board sysroot
pkg-config wrapper used on ChromiumOS and causes host's paths being
pulled into the build. Precisely, PKG_CONFIG_PATH is not being unset and
PKG_CONFIG_SYSROOT_DIR is not being set to the sysroot path.

Fix this by always using the specified pkg-config binary, even if
sysroot is given. Even though, the problem could be fixed up by adding
necessary setup to Chromium's pkg-config wrapper, it is not the right
solution, as the setup is inherently sysroot specific and only the
external build system is aware of necessary configuration to be done.

Bug:  743366 
Test: Build chromeos-chrome with host's /usr/lib64/pkgconfig/dbus-1.pc chmodded to a-r.
Change-Id: I6e80dbaa94510e31aa5000c6cc31ca32b5e5cbe4
Reviewed-on: https://chromium-review.googlesource.com/572666
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Tomasz Figa <tfiga@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487005}
[modify] https://crrev.com/cf2215de682de4fc2c80ccc54fe0b21df1dcc275/build/config/linux/pkg-config.py
[modify] https://crrev.com/cf2215de682de4fc2c80ccc54fe0b21df1dcc275/build/config/linux/pkg_config.gni

Comment 3 by tfiga@chromium.org, Jul 16 2017

Cc: dpranke@chromium.org
Owner: tfiga@chromium.org
Status: Fixed (was: Assigned)

Comment 4 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment