Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(610)

Side by Side Diff: build/install-chroot.sh

Issue 11570071: Use dpkg --add-architecture if it's available. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: redirect last Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/bash -e 1 #!/bin/bash -e
2 2
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # This script installs Debian-derived distributions in a chroot environment. 7 # This script installs Debian-derived distributions in a chroot environment.
8 # It can for example be used to have an accurate 32bit build and test 8 # It can for example be used to have an accurate 32bit build and test
9 # environment when otherwise working on a 64bit machine. 9 # environment when otherwise working on a 64bit machine.
10 # N. B. it is unlikely that this script will ever work on anything other than a 10 # N. B. it is unlikely that this script will ever work on anything other than a
(...skipping 569 matching lines...) Expand 10 before | Expand all | Expand 10 after
580 [ -r /etc/locale.gen ] && 580 [ -r /etc/locale.gen ] &&
581 sed -i "s/^# \($l\)/\1/" /etc/locale.gen 581 sed -i "s/^# \($l\)/\1/" /etc/locale.gen
582 locale-gen $LANG en_US en_US.UTF-8' || : 582 locale-gen $LANG en_US en_US.UTF-8' || :
583 583
584 # Enable multi-arch support, if available 584 # Enable multi-arch support, if available
585 sudo "/usr/local/bin/${target%bit}" dpkg --assert-multi-arch >&/dev/null && 585 sudo "/usr/local/bin/${target%bit}" dpkg --assert-multi-arch >&/dev/null &&
586 [ -r "/var/lib/chroot/${target}/etc/apt/sources.list" ] && { 586 [ -r "/var/lib/chroot/${target}/etc/apt/sources.list" ] && {
587 sudo sed -i 's/ / [arch=amd64,i386] /' \ 587 sudo sed -i 's/ / [arch=amd64,i386] /' \
588 "/var/lib/chroot/${target}/etc/apt/sources.list" 588 "/var/lib/chroot/${target}/etc/apt/sources.list"
589 [ -d /var/lib/chroot/${target}/etc/dpkg/dpkg.cfg.d/ ] && 589 [ -d /var/lib/chroot/${target}/etc/dpkg/dpkg.cfg.d/ ] &&
590 echo foreign-architecture \ 590 sudo "/usr/local/bin/${target%bit}" dpkg --add-architecture \
591 $([ "${arch}" = "32bit" ] && echo amd64 || echo i386) | 591 $([ "${arch}" = "32bit" ] && echo amd64 || echo i386) >&/dev/null ||
592 sudo sh -c "cat >'/var/lib/chroot/${target}/etc/dpkg/dpkg.cfg.d/multiarch'" 592 echo foreign-architecture \
593 $([ "${arch}" = "32bit" ] && echo amd64 || echo i386) |
594 sudo sh -c \
595 "cat >'/var/lib/chroot/${target}/etc/dpkg/dpkg.cfg.d/multiarch'"
593 } 596 }
594 597
595 # Configure "sudo" package 598 # Configure "sudo" package
596 sudo "/usr/local/bin/${target%bit}" /bin/sh -c ' 599 sudo "/usr/local/bin/${target%bit}" /bin/sh -c '
597 egrep -qs '"'^$(id -nu) '"' /etc/sudoers || 600 egrep -qs '"'^$(id -nu) '"' /etc/sudoers ||
598 echo '"'$(id -nu) ALL=(ALL) ALL'"' >>/etc/sudoers' 601 echo '"'$(id -nu) ALL=(ALL) ALL'"' >>/etc/sudoers'
599 602
600 # Install a few more commonly used packages 603 # Install a few more commonly used packages
601 sudo "/usr/local/bin/${target%bit}" apt-get -y install \ 604 sudo "/usr/local/bin/${target%bit}" apt-get -y install \
602 autoconf automake1.9 dpkg-dev g++-multilib gcc-multilib gdb less libtool \ 605 autoconf automake1.9 dpkg-dev g++-multilib gcc-multilib gdb less libtool \
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
804 807
805 For Chrome, this probably means you want to make your "out" directory a 808 For Chrome, this probably means you want to make your "out" directory a
806 symbolic link that points somewhere inside of "${HOME}/chroot". 809 symbolic link that points somewhere inside of "${HOME}/chroot".
807 810
808 You still need to run "gclient runhooks" whenever you switch from building 811 You still need to run "gclient runhooks" whenever you switch from building
809 outside of the chroot to inside of the chroot. But you will find that you 812 outside of the chroot to inside of the chroot. But you will find that you
810 don't have to repeatedly erase and then completely rebuild all your object 813 don't have to repeatedly erase and then completely rebuild all your object
811 and binary files. 814 and binary files.
812 815
813 EOF 816 EOF
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698