• Home
  • Raw
  • Download

Lines Matching +full:- +full:multilib

4 # Use of this source code is governed by a BSD-style license that can be
23 output = subprocess.check_output(["apt-cache", "dumpavail"]).decode()
31 def package_exists(package_name: str) -> bool:
38 parser.add_argument("--syms",
42 "--no-syms",
48 "--lib32",
50 help="Enable installation of 32-bit libraries, e.g. for V8 snapshot",
53 "--android",
59 "--no-android",
65 parser.add_argument("--arm",
69 "--no-arm",
75 "--chromeos-fonts",
80 "--no-chromeos-fonts",
86 "--nacl",
91 "--no-nacl",
97 "--backwards-compatible",
104 "--no-backwards-compatible",
111 parser.add_argument("--no-prompt",
115 "--quick-check",
120 "--unsupported",
136 print("try: sudo apt-get install lsb-release", file=sys.stderr)
142 return subprocess.check_output(["lsb_release", "--codename",
143 "--short"]).decode().strip()
150 distro_id = subprocess.check_output(["lsb_release", "--id",
151 "--short"]).decode().strip()
161 "dependencies by passing the `--unsupported` parameter.",
175 architecture = subprocess.check_output(["uname", "-m"]).decode().strip()
184 print("Running as non-root user.", file=sys.stderr)
192 subprocess.check_call(["sudo", "dpkg", "--add-architecture", "i386"])
193 subprocess.check_call(["sudo", "apt-get", "update"])
204 "dbus-x11",
206 "dpkg-dev",
210 "git-core",
212 "libasound2-dev",
213 "libatspi2.0-dev",
214 "libbrlapi-dev",
215 "libbz2-dev",
216 "libc6-dev",
217 "libcairo2-dev",
218 "libcap-dev",
219 "libcups2-dev",
220 "libcurl4-gnutls-dev",
221 "libdrm-dev",
222 "libelf-dev",
223 "libevdev-dev",
224 "libffi-dev",
226 "libgbm-dev",
227 "libglib2.0-dev",
228 "libglu1-mesa-dev",
229 "libgtk-3-dev",
230 "libkrb5-dev",
231 "libnspr4-dev",
232 "libnss3-dev",
233 "libpam0g-dev",
234 "libpci-dev",
235 "libpulse-dev",
236 "libsctp-dev",
237 "libspeechd-dev",
238 "libsqlite3-dev",
239 "libssl-dev",
240 "libsystemd-dev",
241 "libudev-dev",
243 "libva-dev",
244 "libwww-perl",
245 "libxshmfence-dev",
246 "libxslt1-dev",
247 "libxss-dev",
248 "libxt-dev",
249 "libxtst-dev",
259 "uuid-dev",
261 "x11-utils",
263 "xz-utils",
269 "libbluetooth-dev",
270 "libxkbcommon-dev",
271 "mesa-common-dev",
278 if package_exists("libjpeg-dev"):
279 packages.append("libjpeg-dev")
281 packages.append("libjpeg62-dev")
292 if package_exists("libav-tools"):
293 packages.append("libav-tools")
295 if package_exists("libvulkan-dev"):
296 packages.append("libvulkan-dev")
298 if package_exists("libinput-dev"):
299 packages.append("libinput-dev")
302 if package_exists("at-spi2-core"):
303 packages.append("at-spi2-core")
305 # Cross-toolchain strip is needed for building the sysroots.
306 if package_exists("binutils-arm-linux-gnueabihf"):
307 packages.append("binutils-arm-linux-gnueabihf")
308 if package_exists("binutils-aarch64-linux-gnu"):
309 packages.append("binutils-aarch64-linux-gnu")
310 if package_exists("binutils-mipsel-linux-gnu"):
311 packages.append("binutils-mipsel-linux-gnu")
312 if package_exists("binutils-mips64el-linux-gnuabi64"):
313 packages.append("binutils-mips64el-linux-gnuabi64")
315 # 64-bit systems need a minimum set of 32-bit compat packages for the
316 # pre-built NaCl binaries.
317 if "ELF 64-bit" in subprocess.check_output(["file", "-L",
320 if package_exists("libc6-i386"):
321 packages.append("libc6-i386")
325 # lib32gcc-s1 used to be called lib32gcc1 in older distros.
326 if package_exists("lib32gcc-s1"):
327 packages.append("lib32gcc-s1")
334 # List of required run-time libraries
337 "libatk1.0-0",
338 "libatspi2.0-0",
342 "libcgi-session-perl",
351 "libglib2.0-0",
353 "libgtk-3-0",
355 "libpango-1.0-0",
356 "libpangocairo-1.0-0",
359 "libpixman-1-0",
362 "libsqlite3-0",
364 "libwayland-egl1",
365 "libwayland-egl1-mesa",
366 "libx11-6",
367 "libx11-xcb1",
381 "x11-utils",
382 "x11-xserver-utils",
383 "xserver-xorg-core",
384 "xserver-xorg-video-dummy",
389 # Run-time libraries required by chromeos only
392 "libbz2-1.0",
406 if package_exists("libpng16-16t64"):
407 packages.append("libpng16-16t64")
408 elif package_exists("libpng16-16"):
409 packages.append("libpng16-16")
411 packages.append("libpng12-0")
416 packages.extend(["libnspr4-0d", "libnss3-1d"])
418 if package_exists("appmenu-gtk"):
419 packages.append("appmenu-gtk")
420 if package_exists("libgnome-keyring0"):
421 packages.append("libgnome-keyring0")
422 if package_exists("libgnome-keyring-dev"):
423 packages.append("libgnome-keyring-dev")
439 # Run-time packages required by interactive_ui_tests on mutter
440 if package_exists("libgraphene-1.0-0"):
441 packages.append("libgraphene-1.0-0")
442 if package_exists("mutter-common"):
443 packages.append("mutter-common")
450 print("Skipping 32-bit libraries.", file=sys.stderr)
452 print("Including 32-bit libraries.", file=sys.stderr)
455 # 32-bit libraries needed for a 32-bit build
456 # includes some 32-bit libraries required by the Android SDK
459 "libatk-bridge2.0-0:i386",
460 "libatk1.0-0:i386",
461 "libatspi2.0-0:i386",
462 "libdbus-1-3:i386",
465 "libglib2.0-0:i386",
467 "libpango-1.0-0:i386",
468 "libpangocairo-1.0-0:i386",
470 "libwayland-egl1:i386",
471 "libx11-xcb1:i386",
478 # 32-bit libraries needed e.g. to compile V8 snapshot for Android or armhf
479 "linux-libc-dev:i386",
484 # When cross building for arm/Android on 64-bit systems the host binaries
485 # that are part of v8 need to be compiled with -m32 which means
486 # that basic multilib support is needed.
487 if "ELF 64-bit" in subprocess.check_output(["file", "-L",
489 # gcc-multilib conflicts with the arm cross compiler but
490 # g++-X.Y-multilib gives us the 32-bit support that we need. Find out the
492 # distribution's g++-multilib package depends on.
494 ["apt-cache", "depends", "g++-multilib", "--important"]).decode()
495 pattern = re.compile(r"g\+\+-[0-9.]+-multilib")
517 "fonts-indic",
518 "fonts-ipafont",
519 "fonts-stix",
520 "fonts-thai-tlwg",
521 "fonts-tlwg-garuda",
523 "g++-4.8-multilib-arm-linux-gnueabihf",
524 "gcc-4.8-multilib-arm-linux-gnueabihf",
525 "g++-9-multilib-arm-linux-gnueabihf",
526 "gcc-9-multilib-arm-linux-gnueabihf",
527 "gcc-arm-linux-gnueabihf",
528 "g++-10-multilib-arm-linux-gnueabihf",
529 "gcc-10-multilib-arm-linux-gnueabihf",
530 "g++-10-arm-linux-gnueabihf",
531 "gcc-10-arm-linux-gnueabihf",
532 "git-svn",
533 "language-pack-da",
534 "language-pack-fr",
535 "language-pack-he",
536 "language-pack-zh-hant",
537 "libappindicator-dev",
539 "libappindicator3-1",
540 "libappindicator3-dev",
541 "libdconf-dev",
544 "libexif-dev",
547 "libgbm-dev",
548 "libgbm-dev-lts-trusty",
549 "libgbm-dev-lts-xenial",
550 "libgconf-2-4:i386",
551 "libgconf2-dev",
552 "libgl1-mesa-dev",
553 "libgl1-mesa-dev-lts-trusty",
554 "libgl1-mesa-dev-lts-xenial",
555 "libgl1-mesa-glx:i386",
556 "libgl1-mesa-glx-lts-trusty:i386",
557 "libgl1-mesa-glx-lts-xenial:i386",
558 "libgles2-mesa-dev",
559 "libgles2-mesa-dev-lts-trusty",
560 "libgles2-mesa-dev-lts-xenial",
561 "libgtk-3-0:i386",
562 "libgtk2.0-0",
563 "libgtk2.0-0:i386",
564 "libgtk2.0-dev",
565 "mesa-common-dev",
566 "mesa-common-dev-lts-trusty",
567 "mesa-common-dev-lts-xenial",
569 "python-dev",
570 "python-setuptools",
572 "ttf-dejavu-core",
573 "ttf-indic-fonts",
574 "ttf-kochi-gothic",
575 "ttf-kochi-mincho",
576 "ttf-mscorefonts-installer",
577 "xfonts-mathml",
580 if package_exists("python-is-python2"):
581 packages.extend(["python-is-python2", "python2-dev"])
585 if package_exists("python-crypto"):
586 packages.append("python-crypto")
588 if package_exists("python-numpy"):
589 packages.append("python-numpy")
591 if package_exists("python-openssl"):
592 packages.append("python-openssl")
594 if package_exists("python-psutil"):
595 packages.append("python-psutil")
597 if package_exists("python-yaml"):
598 packages.append("python-yaml")
600 if package_exists("apache2.2-bin"):
601 packages.append("apache2.2-bin")
603 packages.append("apache2-bin")
606 ("php8.1-cgi", "libapache2-mod-php8.1"),
607 ("php8.0-cgi", "libapache2-mod-php8.0"),
608 ("php7.4-cgi", "libapache2-mod-php7.4"),
609 ("php7.3-cgi", "libapache2-mod-php7.3"),
610 ("php7.2-cgi", "libapache2-mod-php7.2"),
611 ("php7.1-cgi", "libapache2-mod-php7.1"),
612 ("php7.0-cgi", "libapache2-mod-php7.0"),
613 ("php5-cgi", "libapache2-mod-php5"),
632 "g++-arm-linux-gnueabihf",
633 "gcc-arm-linux-gnueabihf",
634 "libc6-dev-armhf-cross",
635 "linux-libc-dev-armhf-cross",
643 "g++-10-multilib-arm-linux-gnueabihf",
644 "gcc-10-multilib-arm-linux-gnueabihf",
648 "g++-11-arm-linux-gnueabihf",
649 "gcc-11-arm-linux-gnueabihf",
662 "g++-mingw-w64-i686",
663 "lib32z1-dev",
666 "libelf-dev:i386",
668 "libglib2.0-0:i386",
672 "libpango-1.0-0:i386",
673 "libssl-dev:i386",
674 "libtinfo-dev",
675 "libtinfo-dev:i386",
696 "xutils-dev",
710 # Prefer lib32ncurses5-dev to match libncurses5:i386 if it exists.
711 # In some Ubuntu releases, lib32ncurses5-dev is a transition package to
712 # lib32ncurses-dev, so use that as a fallback.
713 if package_exists("lib32ncurses5-dev"):
714 packages.append("lib32ncurses5-dev")
716 packages.append("lib32ncurses-dev")
730 # have the -dbgsym suffix (https://wiki.debian.org/AutomaticDebugPackages).
731 # Untransitioned packages have the -dbg suffix. And on some systems, neither
735 if package_exists(package + "-dbgsym"):
736 return [package + "-dbgsym"]
737 if package_exists(package + "-dbg"):
738 return [package + "-dbg"]
756 if package_exists("libstdc++6-%s-dbg" % version):
757 packages.append("libstdc++6-%s-dbg" % version)
760 if not dbg_package_name("libatk1.0-0"):
763 if not dbg_package_name("libpango-1.0-0"):
764 packages.extend(dbg_package_name("libpango1.0-dev"))
775 # Sort all the :i386 packages to the front, to avoid confusing dpkg-query
783 ["dpkg-query", "-W", "-f", " "] + packages,
790 line.split(" ")[-1] for line in e.stderr.decode().strip().splitlines()
795 result = subprocess.run(["apt-cache", "show", package], capture_output=True)
822 print("(maybe missing a repo or need to 'sudo apt-get update'):",
836 query_cmd = ["apt-get", "--just-print", "install"] + packages
860 quiet = ["-qq", "--assume-yes"] if options.no_prompt else []
861 subprocess.check_call(["sudo", "apt-get", "install"] + quiet + packages)
868 # An apt-get exit status of 100 indicates that a real error has occurred.
869 print("`apt-get --just-print install ...` failed", file=sys.stderr)
879 # apt-get, since install-chromeos-fonts depends on curl.
891 os.path.join(dir, "linux", "install-chromeos-fonts.py")])
896 ["stat", "-f", "-c", "%T", dir], ).decode().startswith("nfs")):
909 print("the command line option: --no-chromeos-fonts.", file=sys.stderr)
916 "da_DK.UTF-8", "en_US.UTF-8", "fr_FR.UTF-8", "he_IL.UTF-8", "zh_TW.UTF-8"
923 ["sudo", "sed", "-i",
929 subprocess.check_call(["sudo", "locale-gen"])
931 print("Locales already up-to-date.", file=sys.stderr)
934 subprocess.check_call(["sudo", "locale-gen", locale])