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

Issue 812982 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocked on:
issue 812979



Sign in to add a comment

media-libs/arc-mesa-9999 does not build locally

Project Member Reported by tfiga@chromium.org, Feb 16 2018

Issue description

Looks like arc-mesa-9999 stopped building locally. I'm getting a number of errors like following:

/build/soraka/tmp/portage/media-libs/arc-mesa-9999/work/arc-mesa-9999/src/intel/vulkan/genX_state.c:34:10: fatal error: 'genxml/genX_pack.h' file not found
#include "genxml/genX_pack.h"
         ^
1 error generated.

Interestingly enough, src/intel/genxml/genX_pack.h is present in source tree, but it doesn't get copied to the work directory.

I've managed to track this down to src/intel/genxml/.gitignore having and entry for gen*_pack.h

https://cs.corp.google.com/chromeos_public/src/third_party/arc-mesa/src/intel/genxml/.gitignore

and cros-workon.eclass excluding files based on .gitignore:

https://cs.corp.google.com/chromeos_public/src/third_party/chromiumos-overlay/eclass/cros-workon.eclass?rcl=ea13ddceecf743dd3af966a1d13ca3e99d8d80bd&l=300

I'd say this is an upstream bug, because .gitignore should not include files checked in. Tried asking on #dri-devel, but no response yet.

I tried to fix it by adding "!genX_pack.h" to .gitignore after the offending pattern, but it doesn't work, because of  issue 812979 .
 

Comment 2 Deleted

Comment 3 by vapier@chromium.org, Feb 16 2018

i agree it's an upstream bug and we should deploy some change to mesa directly while we independently figure out the cros-workon/rsync behavior

Comment 4 by tfiga@chromium.org, Feb 19 2018

Blockedon: 812979

Comment 5 by tfiga@chromium.org, Feb 19 2018

Owner: tfiga@chromium.org
Status: Started (was: Untriaged)
Project Member

Comment 7 by bugdroid1@chromium.org, Feb 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/b6f21b6b6e9164cfdd1d37fa9290592ee762a3d2

commit b6f21b6b6e9164cfdd1d37fa9290592ee762a3d2
Author: Tomasz Figa <tfiga@chromium.org>
Date: Wed Feb 21 12:27:06 2018

cros-workon: Use git ls-files for excluding files from copying

The --filter=":- <file>" switch of rsync, used currently, does not fully
handle .gitignore syntax and would behave incorrectly at least in
following two example cases:

a) negative matches

  gen*_pack.h
  !genX_pack.h

anything matching the first pattern, except anything matching the second
one too, should be ignored, but rsync reads the exclamation mark as a
part of file name pattern.

b) files checked in, but present in .gitignore - even though it's
questionable whether this is a correct repository setup, the affected
files are there in the checkout and so should be also included in the
source tree used for compilation.

Use git ls-files to query the list of ignored files instead and use the
output with --exclude-from rsync switch. This ensures that file
exclusion works exactly the same way as in git.

BUG= chromium:812979 
BUG= chromium:812982 
TEST=Create following directory stucture in src/third_party/arc-mesa
   x/y/ignored
   x/y/not_ignored
   y/ignored
   y/not_ignored
   y/.gitignore
 and put following contents in y/.gitignore
   ignored
 emerge-soraka arc-mesa copies all files except y/ignored.

Change-Id: I459a066c41f8effb2f7d655f324ab7af645bcd2e
Reviewed-on: https://chromium-review.googlesource.com/925222
Commit-Ready: Tomasz Figa <tfiga@chromium.org>
Tested-by: Tomasz Figa <tfiga@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/b6f21b6b6e9164cfdd1d37fa9290592ee762a3d2/eclass/cros-workon.eclass

Comment 8 by tfiga@chromium.org, Feb 21 2018

Status: Fixed (was: Started)

Sign in to add a comment