summaryrefslogtreecommitdiffstats
path: root/third_party/instrumented_libraries
diff options
context:
space:
mode:
authorearthdok <earthdok@chromium.org>2014-11-13 08:41:29 -0800
committerCommit bot <commit-bot@chromium.org>2014-11-13 16:42:15 +0000
commitbc43b72491b590d59870970dd5191aaff20e1afc (patch)
tree6341a1546793c3ddc33bd4a7e4e38a4c37fc4b2b /third_party/instrumented_libraries
parentf9d1558ef8f702e94548f2dfac858fd8fc342d51 (diff)
downloadchromium_src-bc43b72491b590d59870970dd5191aaff20e1afc.zip
chromium_src-bc43b72491b590d59870970dd5191aaff20e1afc.tar.gz
chromium_src-bc43b72491b590d59870970dd5191aaff20e1afc.tar.bz2
Instrumented libraries: fix libpci3 build on Trusty.
BUG=414189 TBR=glider@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/726443003 Cr-Commit-Position: refs/heads/master@{#304035}
Diffstat (limited to 'third_party/instrumented_libraries')
-rwxr-xr-xthird_party/instrumented_libraries/download_build_install.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/third_party/instrumented_libraries/download_build_install.py b/third_party/instrumented_libraries/download_build_install.py
index 620d2dcc..d6637a5 100755
--- a/third_party/instrumented_libraries/download_build_install.py
+++ b/third_party/instrumented_libraries/download_build_install.py
@@ -8,6 +8,7 @@
import argparse
import os
import platform
+import re
import shlex
import shutil
import subprocess
@@ -169,6 +170,14 @@ def libpci3_make_install(parsed_arguments, environment, install_prefix):
# pciutils doesn't have a configure script
# This build script follows debian/rules.
+ # Find out the package version. We'll use this when creating symlinks.
+ dir_name = os.path.split(os.getcwd())[-1]
+ match = re.match('pciutils-(\d+\.\d+\.\d+)', dir_name)
+ if match is None:
+ raise Exception(
+ 'Unable to guess libpci3 version from directory name: %s' % dir_name)
+ version = match.group(1)
+
# `make install' will create a "$(DESTDIR)-udeb" directory alongside destdir.
# We don't want that in our product dir, so we use an intermediate directory.
destdir = '%s/debian/pciutils' % os.getcwd()
@@ -176,6 +185,10 @@ def libpci3_make_install(parsed_arguments, environment, install_prefix):
'%s="%s"' % (name, environment[name])
for name in['CC', 'CXX', 'CFLAGS', 'CXXFLAGS', 'LDFLAGS']]
make_args.append('SHARED=yes')
+ # pciutils-3.2.1 (Trusty) fails to build due to unresolved libkmod symbols.
+ # The binary package has no dependencies on libkmod, so it looks like it was
+ # actually built without libkmod support.
+ make_args.append('LIBKMOD=no')
paths = [
'LIBDIR=/lib/',
'PREFIX=/usr',
@@ -194,7 +207,7 @@ def libpci3_make_install(parsed_arguments, environment, install_prefix):
run_shell_commands([
'cp %s/* %s/ -rd' % (destdir, install_prefix),
'install -m 644 lib/libpci.so* %s/lib/' % install_prefix,
- 'ln -sf libpci.so.3.1.8 %s/lib/libpci.so.3' % install_prefix],
+ 'ln -sf libpci.so.%s %s/lib/libpci.so.3' % (version, install_prefix)],
parsed_arguments.verbose, environment)