From 419a9a64b69f1d113c28d1e78c7117adf510aa95 Mon Sep 17 00:00:00 2001 From: "primiano@chromium.org" Date: Thu, 19 Jun 2014 18:26:18 +0000 Subject: Fix installation of libgbm-dev package in install-build-deps.sh crrev.com/106633002 has recently introduced a dependency on libgbm-dev. Unfortunatelly, this package is a bit more trickier to install, for the following reason: it depends on mesa-glx and, conversely to most of the other packages, only one version of mesa (w.r.t backports) can exist in the system. Google's workstations are configured to use the -lts-saucy version of mesa. The right package in this case is libgbm-dev-lts-saucy and attempting to install just libgbm-dev ends up in a failure. This change fixes install-build-deps.sh, installing the matching version of libgbm-dev (w.r.t libgl1-mesa-glx), falling back to libgbm-dev. BUG= NOTRY=true Review URL: https://codereview.chromium.org/344623002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278433 0039d316-1c4b-4281-b951-d872f2087c98 --- build/install-build-deps.sh | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) (limited to 'build/install-build-deps.sh') diff --git a/build/install-build-deps.sh b/build/install-build-deps.sh index 3b4dcf4..5cb2522 100755 --- a/build/install-build-deps.sh +++ b/build/install-build-deps.sh @@ -99,15 +99,15 @@ dev_list="apache2.2-bin bison curl dpkg-dev elfutils devscripts fakeroot flex language-pack-he language-pack-zh-hant libapache2-mod-php5 libasound2-dev libbrlapi-dev libbz2-dev libcairo2-dev libcap-dev libcups2-dev libcurl4-gnutls-dev libdrm-dev libelf-dev libexif-dev - libgbm-dev libgconf2-dev libgl1-mesa-dev libglib2.0-dev - libglu1-mesa-dev libgnome-keyring-dev libgtk2.0-dev libkrb5-dev - libnspr4-dev libnss3-dev libpam0g-dev libpci-dev libpulse-dev - libsctp-dev libspeechd-dev libsqlite3-dev libssl-dev libudev-dev - libwww-perl libxslt1-dev libxss-dev libxt-dev libxtst-dev - mesa-common-dev openbox patch perl php5-cgi pkg-config python - python-cherrypy3 python-dev python-psutil rpm ruby subversion - ttf-dejavu-core ttf-indic-fonts ttf-kochi-gothic ttf-kochi-mincho - wdiff xfonts-mathml zip $chromeos_dev_list" + libgconf2-dev libgl1-mesa-dev libglib2.0-dev libglu1-mesa-dev + libgnome-keyring-dev libgtk2.0-dev libkrb5-dev libnspr4-dev + libnss3-dev libpam0g-dev libpci-dev libpulse-dev libsctp-dev + libspeechd-dev libsqlite3-dev libssl-dev libudev-dev libwww-perl + libxslt1-dev libxss-dev libxt-dev libxtst-dev mesa-common-dev openbox + patch perl php5-cgi pkg-config python python-cherrypy3 python-dev + python-psutil rpm ruby subversion ttf-dejavu-core ttf-indic-fonts + ttf-kochi-gothic ttf-kochi-mincho wdiff xfonts-mathml zip + $chromeos_dev_list" # 64-bit systems need a minimum set of 32-bit compat packages for the pre-built # NaCl binaries. These are always needed, regardless of whether or not we want @@ -145,12 +145,24 @@ arm_list="libc6-dev-armhf-cross # Packages to build NaCl, its toolchains, and its ports. nacl_list="autoconf bison cmake g++-mingw-w64-i686 gawk lib32z1-dev libasound2:i386 libcap2:i386 libelf-dev:i386 libexif12:i386 - libfontconfig1:i386 libgconf-2-4:i386 libgl1-mesa-glx:i386 - libglib2.0-0:i386 libgpm2:i386 libgtk2.0-0:i386 libncurses5:i386 - libnss3:i386 libpango1.0-0:i386 libssl0.9.8:i386 libtinfo-dev - libtinfo-dev:i386 libtool libxcomposite1:i386 libxcursor1:i386 - libxdamage1:i386 libxi6:i386 libxrandr2:i386 libxss1:i386 - libxtst6:i386 texinfo xvfb" + libfontconfig1:i386 libgconf-2-4:i386 libglib2.0-0:i386 libgpm2:i386 + libgtk2.0-0:i386 libncurses5:i386 libnss3:i386 libpango1.0-0:i386 + libssl0.9.8:i386 libtinfo-dev libtinfo-dev:i386 libtool + libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxi6:i386 + libxrandr2:i386 libxss1:i386 libxtst6:i386 texinfo xvfb" + +# Find the proper version of libgbm-dev. We can't just install libgbm-dev as +# it depends on mesa, and only one version of mesa can exists on the system. +# Hence we must match the same version or this entire script will fail. +mesa_variant="" +for variant in "-lts-quantal" "-lts-raring" "-lts-saucy"; do + if $(dpkg-query -Wf'${Status}' libgl1-mesa-glx${variant} | \ + grep -q " ok installed"); then + mesa_variant="${variant}" + fi +done +dev_list="${dev_list} libgbm-dev${mesa_variant}" +nacl_list="${nacl_list} libgl1-mesa-glx${mesa_variant}:i386" # Some package names have changed over time if package_exists ttf-mscorefonts-installer; then -- cgit v1.1