The new version supports USE=static which we want for use outside of the
chroot.
BUG=chromium-os:32519
TEST=`cbuildbot chromiumos-sdk {amd64,arm,x86}-generic-full` worked
TEST=`emerge pigz` produced a static binary
TEST=`emerge-amd64-generic -pv pigz` showed USE=-static
Change-Id: Ic440f498506887331422314d87bb6a0db6c57c20
Reviewed-on: https://gerrit.chromium.org/gerrit/29355
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
This moves us to the new style pam virtual.
BUG=None
TEST=`cbuildbot x86-generic-full` works
Change-Id: Ia19a990aaad1d1110ee58e277bc2fd7cf08f2ee0
Reviewed-on: https://gerrit.chromium.org/gerrit/22413
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Upgraded sys-libs/pam to version 1.1.5 on amd64, arm, x86
BUG=chromium-os:21782
TEST=build_packges+build_image for x86-alex boots & can login on console
TEST=`emerge-amd64-generic pam` works
TEST=`emerge-arm-generic pam` works
Change-Id: Iee0f40ba40599996b6b3e09def3c74c96cbf3f9c
Reviewed-on: https://gerrit.chromium.org/gerrit/28497
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Make the following commands send stats to chromiumos-build-stats.appspot.com:
build_image
run_chroot_version_hooks
make_chroot
setup_board
update_chroot
BUG=chromium-os:33088
TEST=`cbuildbot --remote -p chromiumos/platform/crosutils alex-paladin`
confirm in the log that uploads succeded, and see them show up in queries
at chromiumos-build-stats.appspot.com.
Change-Id: I0280f91a3e7e0a0483c01c87072bc589003dbe95
Reviewed-on: https://gerrit.chromium.org/gerrit/28969
Tested-by: Matt Tennant <mtennant@chromium.org>
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Matt Tennant <mtennant@chromium.org>
Also move the creation of config.txt to common code and add some of the
options that both platform should use to it.
BUG=chrome-os-partner:11403
TEST=build, boot
Change-Id: I9c6eed3bf05c9f0744063c1baf321bf6d24dc9cc
Reviewed-on: https://gerrit.chromium.org/gerrit/28914
Tested-by: Olof Johansson <olofj@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Olof Johansson <olofj@chromium.org>
Valgrind 3.6 doesn't work on our targets because it doesn't support
glibc 2.15. So switch to valgrind 3.7.0.
BUG=none
TEST=by hand
Change-Id: Id7b65f76d79816508439766a386e1186ae175856
Reviewed-on: https://gerrit.chromium.org/gerrit/29005
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>
Upgraded dev-lang/swig to version 2.0.4-r1 on amd64, arm, x86
Needed for newer python (to drop virtual/python requirement).
BUG=chromium-os:31032
TEST=`cbuildbot chromiumos-sdk {amd64,arm,x86}-generic-full` worked
Change-Id: Ic411e89bee77ae3eefb92ff541967bbb1b206701
Reviewed-on: https://gerrit.chromium.org/gerrit/28862
Reviewed-by: Ryan Cui <rcui@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
We were putting 'vmalloc=234MB' in the command line of all ARM boards
even though that's really board-specific. This shell script really
can't do board-specific stuff, just architecture-specific stuff (and
it would be really hard to change that). ...so we're just going to
remove the vmalloc part and we'll have to add it back in in some other
way.
Note that the vmalloc was only there for tegra2 devices and there is
no active development going on there. See http://crosbug.com/33133
for the task to fix the regression and re-add vmalloc somehow for
tegra boards.
BUG=chromium-os:24808
TEST=Built an image and didn't see vmalloc
Change-Id: I6d45143dec5e7ae1bdd207241d275be261085f90
Reviewed-on: https://gerrit.chromium.org/gerrit/28875
Tested-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Olof Johansson <olofj@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Doug Anderson <dianders@chromium.org>
- do test for chromium/src before fixing the checkout.
- don't switch manifests for minilayout users.
BUG=chromium-os:32963
TEST=locally
Change-Id: I1d0cbfc9f4f03d85b34810cdb98d99a7a21d8adf
Reviewed-on: https://gerrit.chromium.org/gerrit/28842
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: Ryan Cui <rcui@chromium.org>
Commit-Ready: Ryan Cui <rcui@chromium.org>
BUG=chromium-os:32430
TEST=built dev & test images
Confirmed use flag not normally present, and is
added by mod-for-test to test images.
Change-Id: I1c7f7a6e2f987328c5b9348063b584ff79a3a9df
Reviewed-on: https://gerrit.chromium.org/gerrit/27326
Tested-by: Jim Hebert <jimhebert@chromium.org>
Reviewed-by: Chris Masone <cmasone@chromium.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Commit-Ready: Jim Hebert <jimhebert@chromium.org>
See the bug for details.
BUG=chromium-os:32963.
TEST=Locally, remote trybots.
Change-Id: I33f5c42b36f3e06139036c299c2fc2c2ff026411
Reviewed-on: https://gerrit.chromium.org/gerrit/28543
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Ryan Cui <rcui@chromium.org>
Tested-by: Ryan Cui <rcui@chromium.org>
Upgraded dev-python/setproctitle to version 1.1.6 on amd64, arm, x86
BUG=None
TEST=emerge on all platforms and host
Change-Id: I61370b6f2b8f02617f9883dc29a1dcb09ae3b6cc
Reviewed-on: https://gerrit.chromium.org/gerrit/28455
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Jon Salz <jsalz@chromium.org>
Tested-by: Jon Salz <jsalz@chromium.org>
Upgraded dev-util/diffstat to version 1.55 on amd64, arm, x86
Exists just for devs to manually install and use.
BUG=None
TEST=`sudo emerge diffstat` works and produces stats
Change-Id: Id312393f6cd24ace22dfd46d48694e50b59f793e
Reviewed-on: https://gerrit.chromium.org/gerrit/26107
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Upgraded net-libs/libnfsidmap to version 0.24 on amd64, arm, x86
Nothing depends on nfs-utils (it exists just for devs to play with).
BUG=None
TEST=`emerge-x86-generic nfs-utils` worked
Change-Id: Ia0d3101461b626a663d40af892e1004d02b2e3ad
Reviewed-on: https://gerrit.chromium.org/gerrit/26106
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
BUG=none
TEST=Ran script, from within chroot, with no args(prompts for password),
one password arg, and multiple args(prints usage and exits), and each time
echo'd the password before it is encrypted. Each time it is correct. From
outside chroot, it only prints an error and exits.
Change-Id: I9380511e8784e4979e664281c751fe6e6defe7ab
Reviewed-on: https://gerrit.chromium.org/gerrit/25397
Tested-by: Isaac Simha <isimha@nvidia.com>
Reviewed-by: Brian Harring <ferringb@chromium.org>
Commit-Ready: Isaac Simha <isimha@nvidia.com>
Instead of relying on having autotest tarball in image.zip, this change simply
untars the archived full autotest tarball directly.
BUG=chromium-os:32719
TEST=try job
CQ-DEPEND=I3213180a818617495b347c85b4c97900a47104a6
Change-Id: I398031a19f1291653afe94a52522f5ca79e4f3dc
Reviewed-on: https://gerrit.chromium.org/gerrit/27844
Tested-by: Yu-Ju Hong <yjhong@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Commit-Ready: Yu-Ju Hong <yjhong@chromium.org>
/root/.forget_usernames was a hack used historically to facilitate login automation
by reaching to the 'add user' screen directly in test images.
It's not necessary anymore since we can now automate OOBE.
BUG=chromium-os:31807
TEST=suite:bvt
Change-Id: I5384511c0c4630e2c5a71498228d36c151ce52e1
Reviewed-on: https://gerrit.chromium.org/gerrit/27427
Reviewed-by: Chris Masone <cmasone@chromium.org>
Commit-Ready: Nirnimesh <nirnimesh@chromium.org>
Tested-by: Nirnimesh <nirnimesh@chromium.org>
We want the new USE=utils flag.
BUG=None
TEST=`emerge elfutils` works
TEST=`emerge-amd64-generic elfutils` works
TEST=`emerge-arm-generic elfutils` works
TEST=`emerge-x86-generic elfutils` works
TEST=`cbuildbot chromiumos-sdk` works
Change-Id: Ibc560eef15c69613fde3537abc6023462d148c87
Reviewed-on: https://gerrit.chromium.org/gerrit/27648
Reviewed-by: asharif <asharif@chromium.org>
Reviewed-by: Matt Redmond <mrdmnd@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
This CL imports unrar 4.2.4 from upstream Gentoo and modifies the ebuild
to unmask amd64, arm, and x86.
BUG=none
TEST=Tested the following:
1. `emerge-{x86,amd64,arm}-generic unrar` and verify that unrar 4.2.4 is
built.
2. Open RAR files via CrOS File Manager.
Change-Id: I413479d13cd0131e6682494ff2cb1f86ff382101
Reviewed-on: https://gerrit.chromium.org/gerrit/27550
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
This CL imports avfs 1.0.1 from upstream Gentoo and modifies the ebuild
to unmask amd64, arm, and x86.
BUG=none
TEST=Tested the following:
1. `emerge-{x86,amd64,arm}-generic avfs` and verify that avfs 1.0.1 is
built.
2. Run platform_CrosDisksArchive tests.
3. Open Zip, RAR, Gzip/Bzip2 compressed tar files via CrOS File
Manager.
Change-Id: Ic0d23f8c08dc851b831a4f9c3513579d39e92fc2
Reviewed-on: https://gerrit.chromium.org/gerrit/27549
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
If the kernel panics early during reboot then
the filesystem hasn't been synced yet. This can lead
to corrupted images and other bad things.
BUG=None
TEST=Ran update_kernel, saw sync call run on device
Change-Id: Iea079ba13fef19c1fa30163935d85e4dd5b0f905
Reviewed-on: https://gerrit.chromium.org/gerrit/27288
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>
Tested-by: Jon Kliegman <kliegs@chromium.org>
Upgraded dev-libs/expat to version 2.1.0 on amd64, arm, x86.
BUG=chromium-os:32397
TEST=`emerge expat` worked
TEST=`emerge-amd64-generic expat` worked
TEST=`emerge-arm-generic expat` worked
TEST=`emerge-x86-generic expat` worked
TEST=`cbuildbot {arm,amd64,x86}-generic-full` worked
Change-Id: I1d866042c048d6a77d30f09a83c938ec8ccd4ac2
Reviewed-on: https://gerrit.chromium.org/gerrit/27507
Reviewed-by: Kees Cook <keescook@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Upgraded sys-fs/libfat to version 0.3a on amd64, arm, x86.
We already have this in chromiumos-overlay, but now we're moving to the
version committed upstream as it has a few bug fixes related to missing
dependencies (which is causing cros-sdk to go orange).
BUG=chromium-os:32365
TEST=`emerge libfat` still works
Change-Id: I78b701a754b5299e72b0e88d6e54edc07863370e
Reviewed-on: https://gerrit.chromium.org/gerrit/27502
Reviewed-by: Liam McLoughlin <lmcloughlin@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Upstream merged some fixes related to USE=static which we want.
BUG=chromium-os:32519
TEST=`emerge pbzip2` produced a static binary
TEST=`cbuildbot amd64-generic-paladin` worked
Change-Id: Id817962ccd381b848e6baa3ca0df531a32505e84
Reviewed-on: https://gerrit.chromium.org/gerrit/27512
Reviewed-by: David James <davidjames@chromium.org>
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Upgraded dev-python/netifaces to version 0.8 on amd64, arm, x86
BUG=None
TEST=emerged on all three platforms
Change-Id: Id3b41491212a78a1d728976eb203abdba4fb1d15
Reviewed-on: https://gerrit.chromium.org/gerrit/27348
Tested-by: Jon Salz <jsalz@chromium.org>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: Jon Salz <jsalz@chromium.org>
This is to transition from a 32bit to 64bit build.
BUG=chrome-os-partner:11058
TEST=build_packages for board=kiev. Verify choot upgraded.
Change-Id: I251be4eba14ba407cfbc6ecf4fb089efe7d457e8
Reviewed-on: https://gerrit.chromium.org/gerrit/26743
Reviewed-by: Dave Parker <dparker@chromium.org>
Tested-by: Dave Parker <dparker@chromium.org>
The new glibc caused a series of problems with Paygen based delta generation.
First, the new glibc is newer than what is used in workstations, or on
the Paygen servers. Since libc wasn't one of the libraries bundled up
by generate_au_zip.py, the executables bundled up (including delta_generator)
would fail because of unstatisfied library requirements at startup.
When the new libc was included by generate_au_zip.py, the delta_generator
executable started causing the dynamic loader to segfault during startup,
presumably because it was linked for a newer version. This means that
the new loader needs to be bundled and explicitly used when invoking
the new executables (thanks David James for figuring this out!).
Next, after including all of the new libraries, bash would crash at startup
with these libraries at the start of LD_LIBRARY_PATH. Since Paygen which
set LD_LIBRARY_PATH before invoking a shell script which invokes the delta
generator, this means delta generation would crash before it started.
If I modified Paygen to not set LD_LIBRARY_PATH, then older au_generator.zip
files could not be properly handled (and we do so regularly).
This change moves the required dynamic libraries into a subdir of the zip
file which will not be in Paygens LD_LIBRARY_PATH which allows bash to
operate correctly.
It also renames each dynamically linked executable from xxx to xxx.wrapped
and creates a shell script named xxx which invokes xxx.wrapped with the
new LD_LIBRARY_PATH and using ld-linux-x86-64.so.2 to do so.
This change also moves a number of constants from inline in various
functions to constants at the top of the script, and introduces a WHITE_LIST
to cause a build failure if ld-linux-x86-64.so.2 isn't present.
(Fixing chromium-os:32550 would help with that)
BUG=chromium-os:32542
TEST=Generated au_generator.zip by hand, extracted files in a test directory,
and generated a delta using Paygen's command line:
LD_LIBRARY_PATH=. PATH=.:$PATH ./cros_generate_update_payload --image ../chromiumos_test_image.bin --output fuzzy --outside_chroot
Change-Id: I90d18a6d17a8f9824b19a6ce480048e388832b56
Reviewed-on: https://gerrit.chromium.org/gerrit/27443
Reviewed-by: Jay Srinivasan <jaysri@chromium.org>
Tested-by: Don Garrett <dgarrett@chromium.org>
Commit-Ready: Don Garrett <dgarrett@chromium.org>
Upgraded app-arch/pbzip2 to version 1.1.6 on amd64
BUG=chromium-os:32593
TEST=Remote trybot runs on all architectures.
Change-Id: Ic6f0b62fa1b7a8fd9ff5bf90c39b1e975b5cc19c
Reviewed-on: https://gerrit.chromium.org/gerrit/27454
Tested-by: David James <davidjames@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: David James <davidjames@chromium.org>
Fix the blacklisting logic, and re-add the magic library linux-vdso.so.
BUG=chromium-os:32542
TEST=Run by hand, .zip contents examined by hand.
Change-Id: I94d99bf62e5eb011ac70428d7cebeaa852519a78
Reviewed-on: https://gerrit.chromium.org/gerrit/27398
Reviewed-by: Jay Srinivasan <jaysri@chromium.org>
Tested-by: Don Garrett <dgarrett@chromium.org>
Commit-Ready: Don Garrett <dgarrett@chromium.org>
Added --remote flag, and some "NonWorkon" methods that complement the "Workon"
methods.
To add a non-workon project to the local_manifest.xml, specify a remote.
The remote tag will be added as part of the new entry in local_manifest.xml.
BUG=chromium-os:32247
TEST=In conjunction with a change in cros_workon, tested that non-workon
projects can be added to the local_manifest.xml.
Change-Id: I1bc4247532647e9bc5962acef988ab57445f4b0e
Signed-off-by: Andrew Chew <achew@nvidia.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/26346
Reviewed-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: David James <davidjames@chromium.org>
When trying to cros_workon a non-workon project, supply a remote.
When a remote is supplied, we assume a non-workon project, and add the
remote tag to the local_manifest.xml.
BUG=chromium-os:32247
TEST=Tested that cros_workon start/stop still works for workon package
(I specifically tested with sys-process/ktop), and also tested that this
works with a package that does not match up with a known (i.e. in the
full manifest) package, but is present in the private-overlays. repo
sync pulls the proper source in both cases.
CQ-DEPEND=I1bc4247532647e9bc5962acef988ab57445f4b0e
Change-Id: I03bcf3d42e111e5a0e876763c99b021a14ce7e2e
Signed-off-by: Andrew Chew <achew@nvidia.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/27320
Reviewed-by: Rhyland Klein <rklein@nvidia.com>
Reviewed-by: David James <davidjames@chromium.org>
We were blacklisting some dependant libraries for the delta generator when
we bundle them all up together. When glibc in the chroot was update to be
newer than glibc on our workstations, this broke payload generation.
The real fix is to link delta_generator statically so we don't have to do
this goofy library bundling business (chromium-os:32544). In the mean time,
bundle everything up to get us working again.
BUG=chromium-os:32544
TEST=Trybot run, but not fully verified.
Change-Id: I7b7d247f4edd8ecbab772807f6d2c4e7fdfd414a
Reviewed-on: https://gerrit.chromium.org/gerrit/27327
Commit-Ready: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Tested-by: Don Garrett <dgarrett@chromium.org>
Currently, the scripts in src/scripts have multiple implementations
for handling when common.sh fails to load, some of which are buggy.
To simplify the boilerplate, these scripts now just exit if common.sh
fails to load. The shell itself will print the following message if
common.sh is not found:
/usr/lib/crosutils/common.sh: No such file or directory
BUG=chromium-os:32442
TEST=Run these scripts with and without common.sh installed.
Change-Id: Ie54420b6c649774f9cb039c14c80f4cf6c6ebc07
Reviewed-on: https://gerrit.chromium.org/gerrit/27058
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>
Commit-Ready: David James <davidjames@chromium.org>
New style virtual needed by newer glibc versions.
BUG=None
TEST=By hand
Change-Id: Ia805a32ebaae30fa2469eaaec740f600e781be5b
Reviewed-on: https://gerrit.chromium.org/gerrit/27265
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
This is necesary since a manifest may have only a subset
of groups turned on- say, minilayout, thus do the check.
BUG=chromium-os:32247,chromium-os:31867,chromium-os:9914
TEST=repo init -g minilayout <usual> && \
./setup_board --board=x86-alex && \
cros_sdk -- cros_workon start chromeos-base/chromeos-chrome
Change-Id: I5320f6419632972671f9082a18725a00517e3f80
Reviewed-on: https://gerrit.chromium.org/gerrit/27062
Commit-Ready: Brian Harring <ferringb@chromium.org>
Reviewed-by: Brian Harring <ferringb@chromium.org>
Tested-by: Brian Harring <ferringb@chromium.org>
cros_workon belongs in src/scripts because, like other build scripts,
it needs to execute prior to any packages being installed into the
chroot.
This commit imports cros_workon with history. I've also updated cros_workon
to load common.sh from the same directory as cros_workon.
BUG=chromium-os:31952
TEST=Trybot run. Example runs of the script.
Change-Id: I4b13464a1923fbbd0f93efd2356db6a3e428a6a6
Backwards compatible change, because regular variables are addressable
as arrays of up to one item.
BUG=chromium-os:25338
TEST=cros_workon --host start sys-libs/glibc (with local multi-project
mod), and observe that both projects are correctly added to
local_manifest, then repo sync.
TEST=cros_workon start number of single-project ebuilds
Change-Id: Ib3c7ebec7860f23d9331cecd55e3fc9a70709c93
Reviewed-on: https://gerrit.chromium.org/gerrit/23913
Commit-Ready: Zdenek Behan <zbehan@chromium.org>
Reviewed-by: Zdenek Behan <zbehan@chromium.org>
Tested-by: Zdenek Behan <zbehan@chromium.org>
BUG=chromium-os:30384
TEST=install it, run as root, see it fail
Change-Id: Id852af26e2985a86f02212e6c35aeff3324e8b88
Reviewed-on: https://gerrit.chromium.org/gerrit/21857
Commit-Ready: Zdenek Behan <zbehan@chromium.org>
Tested-by: Zdenek Behan <zbehan@chromium.org>
Reviewed-by: David James <davidjames@chromium.org>
Reviewed-by: Luigi Semenzato <semenzato@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
There may be multiple ebuilds associated with the same project.
We therefore should not use -u in the sort command here and
eliminate needed ebuilds from the list.
BUG=none
TEST=cros_workon --all --board=x86-generic | grep autotest
(Previously it returned 1 ebuild; now it returns them all.)
Change-Id: I2e33090e2ba06e7cfde908a7e142267fbd74198b
Reviewed-on: https://gerrit.chromium.org/gerrit/19409
Commit-Ready: David James <davidjames@chromium.org>
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>