Lines Matching +full:libc6 +full:- +full:dbg

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",
339 "libc6",
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")
444 print("Skipping 32-bit libraries.", file=sys.stderr)
446 print("Including 32-bit libraries.", file=sys.stderr)
449 # 32-bit libraries needed for a 32-bit build
450 # includes some 32-bit libraries required by the Android SDK
453 "libatk-bridge2.0-0:i386",
454 "libatk1.0-0:i386",
455 "libatspi2.0-0:i386",
456 "libdbus-1-3:i386",
459 "libglib2.0-0:i386",
461 "libpango-1.0-0:i386",
462 "libpangocairo-1.0-0:i386",
464 "libwayland-egl1:i386",
465 "libx11-xcb1:i386",
472 # 32-bit libraries needed e.g. to compile V8 snapshot for Android or armhf
473 "linux-libc-dev:i386",
478 # When cross building for arm/Android on 64-bit systems the host binaries
479 # that are part of v8 need to be compiled with -m32 which means
481 if "ELF 64-bit" in subprocess.check_output(["file", "-L",
483 # gcc-multilib conflicts with the arm cross compiler but
484 # g++-X.Y-multilib gives us the 32-bit support that we need. Find out the
486 # distribution's g++-multilib package depends on.
488 ["apt-cache", "depends", "g++-multilib", "--important"]).decode()
489 pattern = re.compile(r"g\+\+-[0-9.]+-multilib")
511 "fonts-indic",
512 "fonts-ipafont",
513 "fonts-stix",
514 "fonts-thai-tlwg",
515 "fonts-tlwg-garuda",
517 "g++-4.8-multilib-arm-linux-gnueabihf",
518 "gcc-4.8-multilib-arm-linux-gnueabihf",
519 "g++-9-multilib-arm-linux-gnueabihf",
520 "gcc-9-multilib-arm-linux-gnueabihf",
521 "gcc-arm-linux-gnueabihf",
522 "g++-10-multilib-arm-linux-gnueabihf",
523 "gcc-10-multilib-arm-linux-gnueabihf",
524 "g++-10-arm-linux-gnueabihf",
525 "gcc-10-arm-linux-gnueabihf",
526 "git-svn",
527 "language-pack-da",
528 "language-pack-fr",
529 "language-pack-he",
530 "language-pack-zh-hant",
531 "libappindicator-dev",
533 "libappindicator3-1",
534 "libappindicator3-dev",
535 "libdconf-dev",
538 "libexif-dev",
541 "libgbm-dev",
542 "libgbm-dev-lts-trusty",
543 "libgbm-dev-lts-xenial",
544 "libgconf-2-4:i386",
545 "libgconf2-dev",
546 "libgl1-mesa-dev",
547 "libgl1-mesa-dev-lts-trusty",
548 "libgl1-mesa-dev-lts-xenial",
549 "libgl1-mesa-glx:i386",
550 "libgl1-mesa-glx-lts-trusty:i386",
551 "libgl1-mesa-glx-lts-xenial:i386",
552 "libgles2-mesa-dev",
553 "libgles2-mesa-dev-lts-trusty",
554 "libgles2-mesa-dev-lts-xenial",
555 "libgtk-3-0:i386",
556 "libgtk2.0-0",
557 "libgtk2.0-0:i386",
558 "libgtk2.0-dev",
559 "mesa-common-dev",
560 "mesa-common-dev-lts-trusty",
561 "mesa-common-dev-lts-xenial",
563 "python-dev",
564 "python-setuptools",
566 "ttf-dejavu-core",
567 "ttf-indic-fonts",
568 "ttf-kochi-gothic",
569 "ttf-kochi-mincho",
570 "ttf-mscorefonts-installer",
571 "xfonts-mathml",
574 if package_exists("python-is-python2"):
575 packages.extend(["python-is-python2", "python2-dev"])
579 if package_exists("python-crypto"):
580 packages.append("python-crypto")
582 if package_exists("python-numpy"):
583 packages.append("python-numpy")
585 if package_exists("python-openssl"):
586 packages.append("python-openssl")
588 if package_exists("python-psutil"):
589 packages.append("python-psutil")
591 if package_exists("python-yaml"):
592 packages.append("python-yaml")
594 if package_exists("apache2.2-bin"):
595 packages.append("apache2.2-bin")
597 packages.append("apache2-bin")
600 ("php8.1-cgi", "libapache2-mod-php8.1"),
601 ("php8.0-cgi", "libapache2-mod-php8.0"),
602 ("php7.4-cgi", "libapache2-mod-php7.4"),
603 ("php7.3-cgi", "libapache2-mod-php7.3"),
604 ("php7.2-cgi", "libapache2-mod-php7.2"),
605 ("php7.1-cgi", "libapache2-mod-php7.1"),
606 ("php7.0-cgi", "libapache2-mod-php7.0"),
607 ("php5-cgi", "libapache2-mod-php5"),
626 "g++-arm-linux-gnueabihf",
627 "gcc-arm-linux-gnueabihf",
628 "libc6-dev-armhf-cross",
629 "linux-libc-dev-armhf-cross",
637 "g++-10-multilib-arm-linux-gnueabihf",
638 "gcc-10-multilib-arm-linux-gnueabihf",
642 "g++-11-arm-linux-gnueabihf",
643 "gcc-11-arm-linux-gnueabihf",
656 "g++-mingw-w64-i686",
657 "lib32z1-dev",
660 "libelf-dev:i386",
662 "libglib2.0-0:i386",
666 "libpango-1.0-0:i386",
667 "libssl-dev:i386",
668 "libtinfo-dev",
669 "libtinfo-dev:i386",
690 "xutils-dev",
704 # Prefer lib32ncurses5-dev to match libncurses5:i386 if it exists.
705 # In some Ubuntu releases, lib32ncurses5-dev is a transition package to
706 # lib32ncurses-dev, so use that as a fallback.
707 if package_exists("lib32ncurses5-dev"):
708 packages.append("lib32ncurses5-dev")
710 packages.append("lib32ncurses-dev")
724 # have the -dbgsym suffix (https://wiki.debian.org/AutomaticDebugPackages).
725 # Untransitioned packages have the -dbg suffix. And on some systems, neither
729 if package_exists(package + "-dbgsym"):
730 return [package + "-dbgsym"]
731 if package_exists(package + "-dbg"):
732 return [package + "-dbg"]
750 if package_exists("libstdc++6-%s-dbg" % version):
751 packages.append("libstdc++6-%s-dbg" % version)
754 if not dbg_package_name("libatk1.0-0"):
757 if not dbg_package_name("libpango-1.0-0"):
758 packages.extend(dbg_package_name("libpango1.0-dev"))
769 # Sort all the :i386 packages to the front, to avoid confusing dpkg-query
777 ["dpkg-query", "-W", "-f", " "] + packages,
784 line.split(" ")[-1] for line in e.stderr.decode().strip().splitlines()
789 result = subprocess.run(["apt-cache", "show", package], capture_output=True)
816 print("(maybe missing a repo or need to 'sudo apt-get update'):",
830 query_cmd = ["apt-get", "--just-print", "install"] + packages
854 quiet = ["-qq", "--assume-yes"] if options.no_prompt else []
855 subprocess.check_call(["sudo", "apt-get", "install"] + quiet + packages)
862 # An apt-get exit status of 100 indicates that a real error has occurred.
863 print("`apt-get --just-print install ...` failed", file=sys.stderr)
873 # apt-get, since install-chromeos-fonts depends on curl.
885 os.path.join(dir, "linux", "install-chromeos-fonts.py")])
890 ["stat", "-f", "-c", "%T", dir], ).decode().startswith("nfs")):
903 print("the command line option: --no-chromeos-fonts.", file=sys.stderr)
910 "da_DK.UTF-8", "en_US.UTF-8", "fr_FR.UTF-8", "he_IL.UTF-8", "zh_TW.UTF-8"
917 ["sudo", "sed", "-i",
923 subprocess.check_call(["sudo", "locale-gen"])
925 print("Locales already up-to-date.", file=sys.stderr)
928 subprocess.check_call(["sudo", "locale-gen", locale])