New issue
Advanced search Search tips

Issue 847656 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

pdfium_test compile fails with enable_callgrind=true

Project Member Reported by szager@chromium.org, May 29 2018

Issue description

If my args.gn contains:

enable_callgrind=true

... the pdfium_test.cc compile fails, because it can't find <valgrind/callgrind.h> as referenced here:

https://cs.chromium.org/chromium/src/third_party/pdfium/samples/pdfium_test.cc?rcl=ac8357b3ec7e1fe4000ebcae5ce65a38bfeb5cb1&l=47

I wouldn't ordinarily care about this, except that 'ninja' without arguments builds pdfium_test by default, so I hit this issue regularly.

I was able to hack around it by doing this:

$ cp -r /usr/include/valgrind \ 
    chromium/src/build/linux/debian_sid_amd64-sysroot/usr/include/

... which suggests to me that the valgrind headers should be included in the sysroot bundles installed via:

src/build/linux/sysroot_scripts/install-sysroot.py

On the basis of the git log for that script, I'm assigning this to you, Mr. Anderson.

Thanks!
 
Cc: thestig@chromium.org
+thestig do we still support callgrind?
Cc: hnakashima@chromium.org
Labels: Needs-Feedback
Owner: hnakashima@chromium.org
Status: Assigned (was: Untriaged)
Callgrind is used for SafetyNet - https://cs.chromium.org/chromium/src/third_party/pdfium/testing/tools/safetynet_compare.py

You could simply set enable_callgrind to false. It's only there to measure performance with safetynet_compare.py.
Owner: szager@chromium.org
So, does something prevent you from setting enable_callgrind=false? I'd like to close this bug if there is nothing to do.
Owner: hnakashima@chromium.org
The thing that prevents me from setting enable_callgrind=false is that I'd like to get call graph information when generating a profile.

As I said, I wouldn't care about this except that pdfium_test is one of the default targets that gets built when I run 'ninja' without arguments, so I do stumble over this fairly regularly.

The description of my hack-fix in comment #0 should, I think, point to a pretty straightforward fix.
This is building inside a Chromium checkout, right? In my standalone PDFium checkout (from "fetch pdfium") it works fine.
Oh, I have use_sysroot = false set. That's one way to avoid having to add Valgrind headers to the sysroot.
Owner: ----
Status: Available (was: Assigned)

Sign in to add a comment