diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-0.0.1-r516.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-0.0.1-r516.ebuild index 5a71aad1e9..03da6da232 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-0.0.1-r516.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-0.0.1-r516.ebuild @@ -17,7 +17,7 @@ SLOT="0" KEYWORDS="amd64 arm x86" IUSE="cros_host test" -RDEPEND="cros_host? ( app-emulation/qemu-kvm ) +RDEPEND="cros_host? ( app-emulation/qemu ) app-portage/gentoolkit cros_host? ( app-shells/bash ) !cros_host? ( !chromeos-base/gmerge ) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-9999.ebuild index 615c42ad0e..8a67fd6674 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-devutils/cros-devutils-9999.ebuild @@ -15,7 +15,7 @@ SLOT="0" KEYWORDS="~amd64 ~arm ~x86" IUSE="cros_host test" -RDEPEND="cros_host? ( app-emulation/qemu-kvm ) +RDEPEND="cros_host? ( app-emulation/qemu ) app-portage/gentoolkit cros_host? ( app-shells/bash ) !cros_host? ( !chromeos-base/gmerge ) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-0.0.1-r96.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-0.0.1-r96.ebuild new file mode 100644 index 0000000000..416af3b23c --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-0.0.1-r96.ebuild @@ -0,0 +1,36 @@ +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# TODO(jsalz): Remove this ebuild; it's no longer used. + +EAPI="4" +CROS_WORKON_COMMIT="c759366a1dd3d733b12bb2edc3bae9868d38ee5b" +CROS_WORKON_TREE="46e050754b5a2f5392223d734036b7b51dde5b5b" +CROS_WORKON_PROJECT="chromiumos/platform/factory-utils" + +inherit cros-workon + +DESCRIPTION="Factory development utilities for ChromiumOS" +HOMEPAGE="http://www.chromium.org/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm x86" +IUSE="cros_factory_bundle" + +CROS_WORKON_LOCALNAME="factory-utils" +RDEPEND="" + +# coreos-installer for solving "lib/coreos-common.sh" symlink. +# vboot_reference for binary programs (ex, cgpt). +# TODO: coreos-base/coreos-installer[cros_host] +DEPEND=" + coreos-base/vboot_reference" + +src_compile() { + true +} + +src_install() { + true +} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-9999.ebuild new file mode 100644 index 0000000000..afa2175654 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-factoryutils/cros-factoryutils-9999.ebuild @@ -0,0 +1,33 @@ +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# TODO(jsalz): Remove this ebuild; it's no longer used. + +EAPI="4" +CROS_WORKON_PROJECT="chromiumos/platform/factory-utils" + +inherit cros-workon + +DESCRIPTION="Factory development utilities for ChromiumOS" +HOMEPAGE="http://www.chromium.org/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="cros_factory_bundle" + +CROS_WORKON_LOCALNAME="factory-utils" +RDEPEND="" + +# chromeos-installer for solving "lib/chromeos-common.sh" symlink. +# vboot_reference for binary programs (ex, cgpt). +DEPEND="chromeos-base/chromeos-installer[cros_host] + chromeos-base/vboot_reference" + +src_compile() { + true +} + +src_install() { + true +} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-0.0.1-r210.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-0.0.1-r210.ebuild index 8bd7e697c3..ab7027f0e4 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-0.0.1-r210.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-0.0.1-r210.ebuild @@ -18,10 +18,10 @@ KEYWORDS="amd64 arm x86" CROS_WORKON_LOCALNAME="crostestutils" -RDEPEND="app-emulation/qemu-kvm +RDEPEND="app-emulation/qemu app-portage/gentoolkit app-shells/bash - chromeos-base/cros-devutils + coreos-base/cros-devutils dev-util/crosutils " diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-9999.ebuild index 54dcfc6bed..d932786448 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/cros-testutils/cros-testutils-9999.ebuild @@ -16,10 +16,10 @@ KEYWORDS="~amd64 ~arm ~x86" CROS_WORKON_LOCALNAME="crostestutils" -RDEPEND="app-emulation/qemu-kvm +RDEPEND="app-emulation/qemu app-portage/gentoolkit app-shells/bash - chromeos-base/cros-devutils + coreos-base/cros-devutils dev-util/crosutils " diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild index db5972c870..ded0bfc52a 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/hard-host-depends/hard-host-depends-0.0.1.ebuild @@ -22,13 +22,10 @@ RDEPEND="${RDEPEND} app-arch/lzop app-arch/pigz app-admin/sudo - dev-embedded/cbootimage - dev-embedded/tegrarcm dev-embedded/u-boot-tools dev-util/ccache dev-util/crosutils >=sys-apps/dtc-1.3.0-r5 - sys-boot/bootstub sys-boot/grub sys-boot/syslinux sys-devel/crossdev @@ -38,16 +35,14 @@ RDEPEND="${RDEPEND} # Host dependencies for building cross-compiled packages. # TODO: chromeos-base/chromeos-installer RDEPEND="${RDEPEND} - app-admin/eselect-opengl - app-admin/eselect-mesa app-arch/cabextract >=app-arch/pbzip2-1.1.1-r1 app-arch/rpm2targz app-arch/sharutils app-arch/unzip - app-crypt/nss - app-emulation/qemu-kvm - !app-emulation/qemu-user + sys-libs/nss-db + dev-libs/nss + app-emulation/qemu app-i18n/ibus app-text/texi2html coreos-base/google-breakpad @@ -78,7 +73,6 @@ RDEPEND="${RDEPEND} dev-python/mako dev-python/netifaces dev-python/pygobject - dev-python/pygtk dev-python/pyinotify dev-python/pyopenssl dev-python/python-daemon @@ -91,14 +85,12 @@ RDEPEND="${RDEPEND} dev-util/gdbus-codegen dev-util/gperf dev-util/gtk-doc - dev-util/hdctools >=dev-util/gtk-doc-am-1.13 >=dev-util/intltool-0.30 dev-util/scons >=dev-vcs/git-1.7.2 dev-vcs/subversion[-dso] >=media-libs/freetype-2.2.1 - media-libs/mesa net-misc/gsutil sys-apps/usbutils !sys-apps/nih-dbus-tool @@ -140,10 +132,9 @@ RDEPEND="${RDEPEND} " # Host dependencies that are needed to create and sign images +# TODO: sys-apps/mosys RDEPEND="${RDEPEND} - >=coreos-base/vboot_reference-1.0-r174 coreos-base/verity - sys-apps/mosys sys-fs/libfat " @@ -153,8 +144,8 @@ RDEPEND="${RDEPEND} " # Host dependencies that are needed for delta_generator. +# TODO: coreos-base/update_engine RDEPEND="${RDEPEND} - coreos-base/update_engine " # Host dependencies to run unit tests within the chroot diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild new file mode 100644 index 0000000000..4e737b916b --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference-config/vboot_reference-config-0.0.1-r2.ebuild @@ -0,0 +1,55 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 +# +# Determine which systems must use the old (v2) preamble header format, and +# create a config file forcing that format for those systems. +# +# This is only needed to provide backward compatibility for already-shipping +# systems. + +EAPI="4" + +inherit cros-board + +DESCRIPTION="Chrome OS verified boot tools config" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm x86" + +# These are the ONLY systems that should require v2. All others should adapt +# to the new format. +OLD_BOARDS=( + lumpy + lumpy64 + stumpy + stumpy64 + tegra2 + x86-alex + x86-alex32 + x86-mario + x86-mario64 + x86-zgb + x86-zgb32 +) + +S=${WORKDIR} + +src_compile() { + local b + + b=$(get_current_board_no_variant) + mkdir -p "config" + if has "${b}" "${OLD_BOARDS[@]}" ; then + fmt=2 + else + fmt=3 + fi + printf -- '--format\n%s\n' "${fmt}" > "config/vbutil_firmware.options" + printf -- '--format\n%s\n' "${fmt}" > "config/vbutil_kernel.options" +} + +src_install() { + insinto /usr/share/vboot/config + doins config/vbutil_{firmware,kernel}.options +} diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference/vboot_reference-1.0-r825.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference/vboot_reference-1.0-r825.ebuild index 7c089eb09b..e7e7a95d3c 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference/vboot_reference-1.0-r825.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/vboot_reference/vboot_reference-1.0-r825.ebuild @@ -17,8 +17,8 @@ IUSE="32bit_au minimal rbtest tpmtests cros_host" LIBCHROME_VERS="125070" +# TODO: chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] RDEPEND="app-crypt/trousers - chromeos-base/libchrome:${LIBCHROME_VERS}[cros-debug=] !minimal? ( dev-libs/libyaml ) dev-libs/glib dev-libs/openssl @@ -30,7 +30,7 @@ DEPEND="${RDEPEND} # We need the config in place before we run, but don't need to rebuild this # package every time. RDEPEND="${RDEPEND} - !cros_host? ( chromeos-base/vboot_reference-config )" + !cros_host? ( coreos-base/vboot_reference-config )" _src_compile_main() { mkdir "${S}"/build-main diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-0.0.1-r1289.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-0.0.1-r1289.ebuild new file mode 100644 index 0000000000..65901a69f7 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-0.0.1-r1289.ebuild @@ -0,0 +1,38 @@ +# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +EAPI=2 +CROS_WORKON_COMMIT="c1fd42203b778dc7a4950a4422a01f839b84bc04" +CROS_WORKON_TREE="fac7e77188abf62a8c29d1aab875e6bc72d892b2" +CROS_WORKON_PROJECT="chromiumos/platform/crosutils" +CROS_WORKON_LOCALNAME="../scripts/" + +inherit python cros-workon + +DESCRIPTION="Chromium OS build utilities" +HOMEPAGE="http://www.chromium.org/chromium-os" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64" +IUSE="" + +src_configure() { + find . -type l -exec rm {} \; && + rm -fr WATCHLISTS inherit-review-settings-ok lib/shflags || + die "Couldn't clean directory." +} + +src_install() { + # Install package files + exeinto /usr/lib/crosutils + doexe * || die "Could not install shared files." + + insinto "$(python_get_sitedir)" + doins lib/*.py || die "Could not install python files." + rm -f lib/*.py + + # Install libraries + insinto /usr/lib/crosutils/lib + doins lib/* || die "Could not install library files" +} diff --git a/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-9999.ebuild new file mode 100644 index 0000000000..4d9a3cf7ed --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/dev-util/crosutils/crosutils-9999.ebuild @@ -0,0 +1,36 @@ +# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +EAPI=2 +CROS_WORKON_PROJECT="chromiumos/platform/crosutils" +CROS_WORKON_LOCALNAME="../scripts/" + +inherit python cros-workon + +DESCRIPTION="Chromium OS build utilities" +HOMEPAGE="http://www.chromium.org/chromium-os" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +src_configure() { + find . -type l -exec rm {} \; && + rm -fr WATCHLISTS inherit-review-settings-ok lib/shflags || + die "Couldn't clean directory." +} + +src_install() { + # Install package files + exeinto /usr/lib/crosutils + doexe * || die "Could not install shared files." + + insinto "$(python_get_sitedir)" + doins lib/*.py || die "Could not install python files." + rm -f lib/*.py + + # Install libraries + insinto /usr/lib/crosutils/lib + doins lib/* || die "Could not install library files" +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/appid.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/appid.eclass new file mode 100644 index 0000000000..bb05f957c2 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/appid.eclass @@ -0,0 +1,43 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# $Header: $ + +# @ECLASS: appid.eclass +# @MAINTAINER: +# ChromiumOS Build Team +# @BUGREPORTS: +# Please report bugs via http://crosbug.com/new (with label Area-Build) +# @VCSURL: http://git.chromium.org/gitweb/?p=chromiumos/overlays/chromiumos-overlay.git;a=blob;f=eclass/@ECLASS@ +# @BLURB: Eclass for setting up the omaha appid field in /etc/lsb-release + +# @FUNCTION: doappid +# @USAGE: +# @DESCRIPTION: +# Initializes /etc/lsb-release with the appid. Note that appid is really +# just a UUID in the canonical {8-4-4-4-12} format (all uppercase). e.g. +# {01234567-89AB-CDEF-0123-456789ABCDEF} +doappid() { + [[ $# -eq 1 && -n $1 ]] || die "Usage: ${FUNCNAME} " + local appid=$1 + + # Validate the UUID is formatted correctly. Except for mario -- + # it was created before we had strict rules, and so it violates :(. + if [[ ${appid} != '{87efface-864d-49a5-9bb3-4b050a7c227a}' ]] ; then + local uuid_regex='[{][0-9A-F]{8}-([0-9A-F]{4}-){3}[0-9A-F]{12}[}]' + local filtered_appid=$(echo "${appid}" | LC_ALL=C sed -r "s:${uuid_regex}::") + if [[ -n ${filtered_appid} ]] ; then + eerror "Invalid appid: ${appid} -> ${filtered_appid}" + eerror " - must start with '{' and end with '}'" + eerror " - must be all upper case" + eerror " - be a valid UUID (8-4-4-4-12 hex digits)" + die "invalid appid: ${appid}" + fi + fi + + dodir /etc + + local lsb="${D}/etc/lsb-release" + [[ -e ${lsb} ]] && die "${lsb} already exists!" + echo "CHROMEOS_RELEASE_APPID=${appid}" > "${lsb}" || die "creating ${lsb} failed!" +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/autotest-deponly.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/autotest-deponly.eclass new file mode 100644 index 0000000000..1cae0d30db --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/autotest-deponly.eclass @@ -0,0 +1,56 @@ +# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Eclass for handling autotest deps packages +# + +EAPI=2 + +inherit autotest + + +AUTOTEST_CONFIG_LIST="" +AUTOTEST_DEPS_LIST="" +AUTOTEST_PROFILERS_LIST="" + +# +# In order to build only deps (call their setup function), we need to have +# a test that calls their setup() in its own setup(). This is done by +# creating a "fake" test, prebuilding it, and then deleting it after install. +# + +AUTOTEST_FORCE_TEST_LIST="myfaketest" + +autotest-deponly_src_prepare() { + autotest_src_prepare + + pushd "${AUTOTEST_WORKDIR}/client/site_tests/" 1> /dev/null || die + mkdir myfaketest + cd myfaketest + + # NOTE: Here we create a fake test case, that does not do anything except for + # setup of all deps. +cat << ENDL > myfaketest.py +from autotest_lib.client.bin import test, utils + +class myfaketest(test.test): + def setup(self): +ENDL + + for item in ${AUTOTEST_DEPS_LIST}; do +echo " self.job.setup_dep(['${item}'])" >> myfaketest.py + done + + chmod a+x myfaketest.py + popd 1> /dev/null +} + +autotest-deponly_src_install() { + autotest_src_install + + rm -rf ${D}/usr/local/autotest/client/site_tests/myfaketest || die +} + +EXPORT_FUNCTIONS src_prepare src_install diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/autotest.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/autotest.eclass new file mode 100644 index 0000000000..6d835cf0f7 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/autotest.eclass @@ -0,0 +1,443 @@ +# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Eclass for handling autotest test packages +# + +RDEPEND="( autotest? ( >=chromeos-base/autotest-0.0.1-r3 ) )" + +IUSE="+buildcheck autotest opengles" + +# Ensure the configures run by autotest pick up the right config.site +export CONFIG_SITE="/usr/share/config.site" +export AUTOTEST_WORKDIR="${WORKDIR}/autotest-work" + +# @ECLASS-VARIABLE: AUTOTEST_CLIENT_* +# @DESCRIPTION: +# Location of the appropriate test directory inside ${S} +: ${AUTOTEST_CLIENT_TESTS:=client/tests} +: ${AUTOTEST_CLIENT_SITE_TESTS:=client/site_tests} +: ${AUTOTEST_CONFIG:=client/config} +: ${AUTOTEST_DEPS:=client/deps} +: ${AUTOTEST_PROFILERS:=client/profilers} + +# @ECLASS-VARIABLE: AUTOTEST_*_LIST +# @DESCRIPTION: +# The list of deps/configs/profilers provided with this package +: ${AUTOTEST_CONFIG_LIST:=} +: ${AUTOTEST_DEPS_LIST:=} +: ${AUTOTEST_PROFILERS_LIST:=} + +# @ECLASS-VARIABLE: AUTOTEST_FORCE_LIST +# @DESCRIPTION: +# Sometimes we just want to forget about useflags and build what's inside +: ${AUTOTEST_FORCE_TEST_LIST:=} + +# @ECLASS-VARIABLE: AUTOTEST_FILE_MASK +# @DESCRIPTION: +# The list of 'find' expressions to find in the resulting image and delete +: ${AUTOTEST_FILE_MASK:=} + +fast_cp() { + cp -l "$@" || cp "$@" +} + +get_test_list() { + if [ -n "${AUTOTEST_FORCE_TEST_LIST}" ]; then + # list forced + echo "${AUTOTEST_FORCE_TEST_LIST}" + return + fi + + # we cache the result of this operation in AUTOTEST_TESTS, + # because it's expensive and does not change over the course of one ebuild run + local result="${IUSE_TESTS[*]//[+-]tests_/}" + result="${result//tests_/}" + + result=$(for test in ${result}; do use tests_${test} && echo -n "${test} "; done) + echo "${result}" +} + +# Pythonify the list of packages by doing the equivalent of ','.join(args) +pythonify_test_list() { + local result=$(printf '%s,' "$@") + echo ${result%,} +} + +# Create python package init files for top level test case dirs. +touch_init_py() { + local dirs=${1} + for base_dir in $dirs + do + local sub_dirs="$(find ${base_dir} -maxdepth 1 -type d)" + for sub_dir in ${sub_dirs} + do + touch ${sub_dir}/__init__.py + done + touch ${base_dir}/__init__.py + done +} + +# Exports a CROS_WORKON_SUBDIRS_TO_COPY variable to ensure that only the +# necessary files will be copied. This cannot be applied globally, as some +# ebuilds may not have tests only. +autotest_restrict_workon_subdirs() { + CROS_WORKON_SUBDIRS_TO_COPY=() + local var + for var in AUTOTEST_{CLIENT,SERVER}_{TESTS,SITE_TESTS} \ + AUTOTEST_{CONFIG,DEPS,PROFILERS}; do + CROS_WORKON_SUBDIRS_TO_COPY+=( ${!var} ) + done +} + +setup_cross_toolchain() { + tc-export CC CXX AR RANLIB LD NM STRIP PKG_CONFIG + export CCFLAGS="$CFLAGS" + + # TODO(fes): Check for /etc/hardened for now instead of the hardened + # use flag because we aren't enabling hardened on the target board. + # Rather, right now we're using hardened only during toolchain compile. + # Various tests/etc. use %ebx in here, so we have to turn off PIE when + # using the hardened compiler + if use x86 ; then + if use hardened ; then + #CC="${CC} -nopie" + append-flags -nopie + fi + fi +} + +create_autotest_workdir() { + local dst=${1} + + # create a working enviroment for pre-building + ln -sf "${SYSROOT}"/usr/local/autotest/{conmux,tko,global_config.ini,shadow_config.ini} "${dst}"/ + + # NOTE: in order to make autotest not notice it's running from /usr/local/, we need + # to make sure the binaries are real, because they do the path magic + local root_path base_path + for base_path in utils server; do + root_path="${SYSROOT}/usr/local/autotest/${base_path}" + mkdir -p "${dst}/${base_path}" + for entry in $(ls "${root_path}"); do + # Take all important binaries from SYSROOT install, make a copy. + if [ -d "${root_path}/${entry}" ]; then + # Ignore anything that has already been put in place by + # something else. This will typically be server/{site_tests,tests}. + if ! [ -e "${dst}/${base_path}/${entry}" ]; then + ln -sf "${root_path}/${entry}" "${dst}/${base_path}/" + fi + else + cp -f ${root_path}/${entry} ${dst}/${base_path}/ + fi + done + done + for base_path in client client/bin; do + root_path="${SYSROOT}/usr/local/autotest/${base_path}" + mkdir -p "${dst}/${base_path}" + + # Skip bin, because it is processed separately, and test-provided dirs + # Also don't symlink to packages, because that kills the build + for entry in $(ls "${root_path}" | \ + grep -v "\(bin\|tests\|site_tests\|config\|deps\|profilers\|packages\)$"); do + ln -sf "${root_path}/${entry}" "${dst}/${base_path}/" + done + done + # replace the important binaries with real copies + for base_path in autotest autotest_client; do + root_path="${SYSROOT}/usr/local/autotest/client/bin/${base_path}" + rm "${dst}/client/bin/${base_path}" + cp -f ${root_path} "${dst}/client/bin/${base_path}" + done + + # Selectively pull in deps that are not provided by the current test package + for base_path in config deps profilers; do + for dir in "${SYSROOT}/usr/local/autotest/client/${base_path}"/*; do + if [ -d "${dir}" ] && \ + ! [ -d "${AUTOTEST_WORKDIR}/client/${base_path}/$(basename ${dir})" ]; then + # directory does not exist, create a symlink + ln -sf "${dir}" "${AUTOTEST_WORKDIR}/client/${base_path}/$(basename ${dir})" + fi + done + done +} + +print_test_dirs() { + local testroot="${1}" + local ignore_test_contents="${2}" + + pushd "${testroot}" 1> /dev/null + for test in *; do + if [ -d "${test}" ] && [ -n "${ignore_test_contents}" -o \ + -f "${test}/${test}".py ]; then + echo "${test}" + fi + done + popd 1> /dev/null +} + +# checks IUSE_TESTS and sees if at least one of these is enabled +are_we_used() { + if ! use autotest; then + # unused + return 1 + fi + + [ -n "$(get_test_list)" ] && return 0 + + # unused + return 1 +} + +autotest_src_prepare() { + are_we_used || return 0 + einfo "Preparing tests" + + # FIXME: These directories are needed, autotest quietly dies if + # they don't even exist. They may, however, stay empty. + mkdir -p "${AUTOTEST_WORKDIR}"/client/tests + mkdir -p "${AUTOTEST_WORKDIR}"/client/site_tests + mkdir -p "${AUTOTEST_WORKDIR}"/client/config + mkdir -p "${AUTOTEST_WORKDIR}"/client/deps + mkdir -p "${AUTOTEST_WORKDIR}"/client/profilers + + TEST_LIST=$(get_test_list) + + # Pull in the individual test cases. + for l1 in client server; do + for l2 in site_tests tests; do + # pick up the indicated location of test sources + eval srcdir=${WORKDIR}/${P}/\${AUTOTEST_${l1^^*}_${l2^^*}} + + # test does have this directory + for test in ${TEST_LIST}; do + if [ -d "${srcdir}/${test}" ]; then + fast_cp -fpr "${srcdir}/${test}" "${AUTOTEST_WORKDIR}/${l1}/${l2}"/ || die + fi + done + done + done + + # Pull in all the deps provided by this package, selectively. + for l2 in config deps profilers; do + # pick up the indicated location of test sources + eval srcdir=${WORKDIR}/${P}/\${AUTOTEST_${l2^^*}} + + if [ -d "${srcdir}" ]; then # test does have this directory + pushd "${srcdir}" 1> /dev/null + eval deplist=\${AUTOTEST_${l2^^*}_LIST} + + if [ "${deplist}" = "*" ]; then + fast_cp -fpr * "${AUTOTEST_WORKDIR}/client/${l2}" + else + for dir in ${deplist}; do + fast_cp -fpr "${dir}" "${AUTOTEST_WORKDIR}/client/${l2}"/ || die + done + fi + popd 1> /dev/null + fi + done + + # FIXME: We'd like if this were not necessary, and autotest supported out-of-tree build + create_autotest_workdir "${AUTOTEST_WORKDIR}" + + # Each test directory needs to be visited and have an __init__.py created. + # However, that only applies to the directories which have a main .py file. + pushd "${AUTOTEST_WORKDIR}" > /dev/null || die "AUTOTEST_WORKDIR does not exist?!" + for dir in client/tests client/site_tests; do + pushd "${dir}" > /dev/null || continue + for sub in *; do + [ -f "${sub}/${sub}.py" ] || continue + + touch_init_py ${sub} + done + popd > /dev/null + done + popd > /dev/null + + # Cleanup checked-in binaries that don't support the target architecture + [[ ${E_MACHINE} == "" ]] && return 0; + rm -fv $( scanelf -RmyBF%a "${AUTOTEST_WORKDIR}" | grep -v -e ^${E_MACHINE} ) +} + +autotest_src_compile() { + if ! are_we_used; then + ewarn "***************************************************************" + ewarn "* Not building any tests, because the requested list is empty *" + ewarn "***************************************************************" + return 0 + fi + einfo "Compiling tests" + + pushd "${AUTOTEST_WORKDIR}" 1> /dev/null + + setup_cross_toolchain + + if use opengles ; then + graphics_backend=OPENGLES + else + graphics_backend=OPENGL + fi + + # HACK: Some of the autotests depend on SYSROOT being defined, and die + # a gruesome death if it isn't. But SYSROOT does not need to exist, for + # example on the host, it doesn't. Let's define a compatible variable + # here in case we have none. + export SYSROOT=${SYSROOT:-"/"} + + # This only prints the tests that have the associated .py + # (and therefore a setup function) + local prebuild_test_dirs=" + client/tests client/site_tests" + TESTS=$(\ + for dir in ${prebuild_test_dirs}; do + print_test_dirs "${AUTOTEST_WORKDIR}/${dir}" + done | sort -u) + NR_TESTS=$(echo ${TESTS}|wc -w) + if ! [ "${NR_TESTS}" = "0" ]; then + einfo "Building tests (${NR_TESTS}):" + einfo "${TESTS}" + + NORMAL=$(echo -e "\e[0m") + GREEN=$(echo -e "\e[1;32m") + RED=$(echo -e "\e[1;31m") + + # Call autotest to prebuild all test cases. + # Parse output through a colorifying sed script + ( GRAPHICS_BACKEND="$graphics_backend" LOGNAME=${SUDO_USER} \ + client/bin/autotest_client --quiet \ + --client_test_setup=$(pythonify_test_list ${TESTS}) \ + || ! use buildcheck || die "Tests failed to build." + ) | sed -e "s/\(INFO:root:setup\)/${GREEN}* \1${NORMAL}/" \ + -e "s/\(ERROR:root:\[.*\]\)/${RED}\1${NORMAL}/" + else + einfo "No tests to prebuild, skipping" + fi + + # Cleanup some temp files after compiling + for mask in '*.[do]' '*.pyc' ${AUTOTEST_FILE_MASK}; do + einfo "Purging ${mask}" + find . -name "${mask}" -delete + done + + popd 1> /dev/null +} + +autotest_src_install() { + are_we_used || return 0 + einfo "Installing tests" + + # Install all test cases, after setup has been called on them. + # We install everything, because nothing else is copied into the + # testcase directories besides what this package provides. + local instdirs=" + client/tests + client/site_tests" + + for dir in ${instdirs}; do + [ -d "${AUTOTEST_WORKDIR}/${dir}" ] || continue + + insinto /usr/local/autotest/$(dirname ${dir}) + doins -r "${AUTOTEST_WORKDIR}/${dir}" + done + + # Install the deps, configs, profilers. + # Difference from above is, we don't install the whole thing, just + # the stuff provided by this package, by looking at AUTOTEST_*_LIST. + instdirs=" + config + deps + profilers" + + for dir in ${instdirs}; do + [ -d "${AUTOTEST_WORKDIR}/client/${dir}" ] || continue + + insinto /usr/local/autotest/client/${dir} + + eval provided=\${AUTOTEST_${dir^^*}_LIST} + # * means provided all, figure out the list from ${S} + if [ "${provided}" = "*" ]; then + if eval pushd "${WORKDIR}/${P}/\${AUTOTEST_${dir^^*}}" &> /dev/null; then + provided=$(ls) + popd 1> /dev/null + else + provided="" + fi + fi + + for item in ${provided}; do + doins -r "${AUTOTEST_WORKDIR}/client/${dir}/${item}" + done + done + + # TODO: Not all needs to be executable, but it's hard to pick selectively. + # The source repo should already contain stuff with the right permissions. + chmod -R a+x "${D}"/usr/local/autotest/* +} + +autotest_pkg_postinst() { + are_we_used || return 0 + local root_autotest_dir="${ROOT}/usr/local/autotest" + local path_to_image="${D}/usr/local/autotest" + # Should only happen when running emerge on a DUT. + if [ ! -d "${root_autotest_dir}" ]; then + einfo "Skipping packaging as no autotest installation detected." + return 0 + fi + + # Gather the artifacts we want autotest to package. + local test_opt dep_opt prof_opt + + # Only client tests can be packaged. + local tests_to_package_dirs="client/tests client/site_tests" + local client_tests=$(\ + for dir in ${tests_to_package_dirs}; do + print_test_dirs "${path_to_image}/${dir}" yes + done | sort -u) + + if [ -n "${client_tests}" ] && [ "${client_tests}" != "myfaketest" ]; then + # Check for test_count. The packager performs poorly when + # too many arguments are specified vs. --all. This should be fixed in + # autotest (crosbug.com/28173). + test_count=$(echo ${client_tests} | wc -w) + if [ ${test_count} -gt 10 ]; then + test_opt="--all" + else + test_opt="--test=$(pythonify_test_list ${client_tests})" + fi + fi + + if [ "{test_opt}" != "--all" ]; then + if [ -n "${AUTOTEST_DEPS_LIST}" ]; then + dep_opt="--dep=$(pythonify_test_list ${AUTOTEST_DEPS_LIST})" + fi + + # For *, we must generate the list of profilers. + if [ "${AUTOTEST_PROFILERS_LIST}" = "*" ]; then + AUTOTEST_PROFILERS_LIST=$(\ + print_test_dirs "${path_to_image}/client/profilers" yes | sort -u) + prof_opt="--profiler=$(pythonify_test_list ${AUTOTEST_PROFILERS_LIST})" + fi + fi + + if [ -n "${test_opt}" -o -n "${dep_opt}" -o -n "${prof_opt}" ]; then + einfo "Running packager with options ${test_opt} ${dep_opt} ${prof_opt}" + flock "${root_autotest_dir}/packages" \ + -c "python -B ${root_autotest_dir}/utils/packager.py \ + -r ${root_autotest_dir}/packages \ + ${test_opt} ${dep_opt} ${prof_opt} upload" + else + einfo "Packager not run as nothing was found to package." + fi +} + +if [[ "${CROS_WORKON_PROJECT}" == "chromiumos/third_party/autotest" ]]; then + # Using main autotest repo. Automatically restricting checkout. + # Note that this does not happen if the inherit is done prior to setting + # CROS_WORKON_* variables. + autotest_restrict_workon_subdirs +fi + +EXPORT_FUNCTIONS src_compile src_prepare src_install pkg_postinst diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/binutils-funcs.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/binutils-funcs.eclass new file mode 100644 index 0000000000..32c32d1c21 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/binutils-funcs.eclass @@ -0,0 +1,22 @@ +# Copyright (c) 2011 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# $Header: + +# @ECLASS: binutils-funcs.eclass +# @MAINTAINER: +# Raymes Khoury +# @DESCRIPTION: +# Functions to get the paths to binutils installations for gold and for GNU ld. + +inherit toolchain-funcs + +get_binutils_path_ld() { + local ld_path=$(readlink -f $(type -p $(tc-getLD ${1}))) + local binutils_dir=$(dirname ${ld_path}) + echo ${binutils_dir} +} + +get_binutils_path_gold() { + echo $(get_binutils_path_ld ${1})-gold +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/conflict.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/conflict.eclass new file mode 100644 index 0000000000..516939f3c0 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/conflict.eclass @@ -0,0 +1,17 @@ +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# @ECLASS-VARIABLE: CONFLICT_LIST +# @DESCRIPTION: +# Atoms mentioned in CONFLICT_LIST need to either be unmerged or upgraded +# prior to this package being installed, but we don't want to have an explicit +# dependency on that package. So instead, we do the following: +# 1. When we are installed, ensure that the old version is not installed. +# 2. If old version is installed, ask emerge to consider upgrading it. +# This consideration is listed as PDEPEND so that we don't add an +# explicit dependency on the other package. +for atom in $CONFLICT_LIST; do + DEPEND="$DEPEND !!<=$atom" + RDEPEND="$RDEPEND !!<=$atom" + PDEPEND="$PDEPEND || ( >$atom !!<=$atom )" +done diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-au.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-au.eclass new file mode 100644 index 0000000000..75f52085cf --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-au.eclass @@ -0,0 +1,47 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Library for handling packages that are part of Auto Update. +# + +inherit flag-o-matic + +# Some boards started out 32bit (user/kernel) and then migrated to 64bit +# (user/kernel). Since we need to auto-update (AU) from the 32bit to +# 64bit, and the old 32bit kernels can't execte 64bit code, we need to +# always build the AU code as 32bit. +# +# Setup the build env to create 32bit objects. +board_setup_32bit_au_env() +{ + [[ $# -eq 0 ]] || die "${FUNCNAME}: takes no arguments" + + __AU_OLD_ARCH=${ARCH} + __AU_OLD_ABI=${ABI} + __AU_OLD_LIBDIR_x86=${LIBDIR_x86} + export ARCH=x86 ABI=x86 LIBDIR_x86="lib" + __AU_OLD_CHOST=${CHOST} + export CHOST=i686-pc-linux-gnu + __AU_OLD_SYSROOT=${SYSROOT} + export SYSROOT=/usr/${CHOST} + append-ldflags -L"${__AU_OLD_SYSROOT}"/usr/lib + append-cxxflags -isystem "${__AU_OLD_SYSROOT}"/usr/include +} + +# undo what we did in the above function +board_teardown_32bit_au_env() +{ + [[ $# -eq 0 ]] || die "${FUNCNAME}: takes no arguments" + [ -z "${__AU_OLD_SYSROOT}" ] && \ + die "board_setup_32bit_au_env must be called first" + + filter-ldflags -L"${__AU_OLD_SYSROOT}"/usr/lib + filter-flags -isystem "${__AU_OLD_SYSROOT}"/usr/include + export SYSROOT=${__AU_OLD_SYSROOT} + export CHOST=${__AU_OLD_CHOST} + export LIBDIR_x86=${__AU_OLD_LIBDIR_x86} + export ABI=${__AU_OLD_ABI} + export ARCH=${__AU_OLD_ARCH} +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-binary.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-binary.eclass new file mode 100644 index 0000000000..8790e3a7c5 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-binary.eclass @@ -0,0 +1,148 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Install binary packages for Chromium OS +# + +# @ECLASS-VARIABLE: CROS_BINARY_STORE_DIR +# @DESCRIPTION: +# Storage directory for Chrome OS Binaries +: ${CROS_BINARY_STORE_DIR:=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/cros-binary} + +# @ECLASS-VARIABLE: CROS_BINARY_URI +# @DESCRIPTION: +# URI for the binary may be one of: +# http:// +# https:// +# ssh:// +# file:// (file is relative to the files directory) +# TODO: Add "->" support if we get file collisions +: ${CROS_BINARY_URI:=} + +# @ECLASS-VARIABLE: CROS_BINARY_SUM +# @DESCRIPTION: +# Optional SHA-1 sum of the file to be fetched +: ${CROS_BINARY_SUM:=} + +# @ECLASS-VARIABLE: CROS_BINARY_INSTALL_FLAGS +# @DESCRIPTION: +# Optional Flags to use while installing the binary +: ${CROS_BINARY_INSTALL_FLAGS:=} + +# @ECLASS-VARIABLE: CROS_BINARY_LOCAL_URI_BASE +# @DESCRIPTION: +# Optional URI to override CROS_BINARY_URI location. If this variable +# is used the filename from CROS_BINARY_URI will be used, but the path +# to the binary will be changed. +: ${CROS_BINARY_LOCAL_URI_BASE:=} + +# Check for EAPI 2+ +case "${EAPI:-0}" in + 4|3|2) ;; + *) die "unsupported EAPI" ;; +esac + +cros-binary_check_file() { + local target="${CROS_BINARY_STORE_DIR}/${CROS_BINARY_URI##*/}" + elog "Checking for cached $target" + if [[ -z "${CROS_BINARY_SUM}" ]]; then + return 1 + else + echo "${CROS_BINARY_SUM} ${target}" | + sha1sum -c --quiet >/dev/null 2>&1 + return + fi +} + +cros-binary_fetch() { + local uri=${CROS_BINARY_URI} + if [[ ! -z "${CROS_BINARY_LOCAL_URI_BASE}" ]]; then + uri="${CROS_BINARY_LOCAL_URI_BASE}/${CROS_BINARY_URI##*/}" + fi + + local scheme="${uri%%://*}" + local non_scheme=${uri#*://} + local netloc=${non_scheme%%/*} + local server=${netloc%%:*} + local port=${netloc##*:} + local path=${non_scheme#*/} + + if [[ -z "${port}" ]]; then + port="22" + fi + + local scp_args="-qo BatchMode=yes -oCheckHostIP=no -P ${port}" + local target="${CROS_BINARY_STORE_DIR}/${uri##*/}" + + addwrite "${CROS_BINARY_STORE_DIR}" + if [[ ! -d "${CROS_BINARY_STORE_DIR}" ]]; then + mkdir -p "${CROS_BINARY_STORE_DIR}" || + die "Failed to mkdir ${CROS_BINARY_STORE_DIR}" + fi + + if ! cros-binary_check_file; then + rm -f "${target}" + case "${scheme}" in + http|https) + wget "${uri}" -O "${target}" -nv -nc || + rm -f "${target}" + ;; + + ssh) + elog "Running: scp ${scp_args} ${server}:/${path} ${target}" + scp ${scp_args} "${server}:/${path}" "${target}" || + rm -f "${target}" + ;; + + file) + if [[ "${non_scheme:0:1}" == "/" ]]; then + cp "${non_scheme}" "${target}" || rm -f "${target}" + else + cp "${FILESDIR}/${non_scheme}" "${target}" || + rm -f "${target}" + fi + ;; + + *) + die "Protocol for '${uri}' is unsupported." + ;; + esac + + # if no checksum, generate a new one + if [[ -z "${CROS_BINARY_SUM}" ]]; then + local sha1=( $(sha1sum "${target}") ) + elog "cros-binary ${target} is not checksummed. Use:" + elog "CROS_BINARY_SUM=\"${sha1[0]}\"" + CROS_BINARY_SUM="${sha1[0]}" + fi + else + elog "Not downloading, cached copy available in ${target}" + fi + + cros-binary_check_file || die "Failed to fetch ${uri}." +} + +cros-binary_src_unpack() { + cros-binary_fetch +} + +cros-binary_src_install() { + local target="${CROS_BINARY_STORE_DIR}/${CROS_BINARY_URI##*/}" + + local extension="${CROS_BINARY_URI##*.}" + local flags + + case "${CROS_BINARY_URI##*.}" in + gz|tgz) flags="z";; + bz2|tbz2) flags="j";; + *) die "Unsupported binary file format ${CROS_BINARY_URI##*.}" + esac + + cd "${D}" || die + tar "${flags}xpf" "${target}" ${CROS_BINARY_INSTALL_FLAGS} || die "Failed to unpack" +} + +EXPORT_FUNCTIONS src_unpack src_install + diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-board.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-board.eclass new file mode 100644 index 0000000000..6e0d186fda --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-board.eclass @@ -0,0 +1,126 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Library for handling building of ChromiumOS packages +# +# +# This class sets the BOARD environment variable. It is intended to +# be used by ebuild packages that need to have the board information +# for various reasons -- for example, to differentiate various +# hardware attributes at build time; see 'adhd' for an example of +# this. +# +# When set, the BOARD environment variable should conform to the +# syntax used by the CROS utilities. +# +# If an unknown board is encountered, this class deliberately fails +# the build; this provides an easy method of identifying a change to +# the build which might affect inheriting packages. +# +# For example, the ADHD (Google A/V daemon) package relies on the +# BOARD variable to determine which hardware should be monitored at +# runtime. If the BOARD variable is not set, the daemon will not +# monitor any specific hardware; thus, when a new board is added, the +# ADHD project must be updated. +# +[[ ${EAPI} != "4" ]] && die "Only EAPI=4 is supported" + +BOARD_USE_PREFIX="board_use_" +ALL_BOARDS=( + amd64-generic + amd64-corei7 + amd64-drm + amd64-host + aries + arm-generic + beaglebone + butterfly + chronos + daisy + daisy-drm + daisy_spring + daisy_snow + emeraldlake2 + eureka + fb1 + haswell + haswell_baskingridge + haswell_wtm1 + haswell_wtm2 + ironhide + kiev + klang + link + lumpy + panda + parrot + puppy + raspberrypi + stout + stumpy + tegra2 + tegra2_aebl + tegra2_arthur + tegra2_asymptote + tegra2_dev-board + tegra2_dev-board-opengl + tegra2_kaen + tegra2_seaboard + tegra2_wario + tegra3-generic + waluigi + cardhu + x32-generic + x86-agz + x86-alex + x86-alex_he + x86-alex_hubble + x86-alex32 + x86-alex32_he + x86-dogfood + x86-drm + x86-fruitloop + x86-generic + x86-mario + x86-mario64 + x86-pineview + x86-wayland + x86-zgb + x86-zgb_he + x86-zgb32 + x86-zgb32_he +) + +# Add BOARD_USE_PREFIX to each board in ALL_BOARDS to create IUSE. +# Also add cros_host so that we can inherit this eclass in ebuilds +# that get emerged both in the cros-sdk and for target boards. +# See REQUIRED_USE below. +IUSE="${ALL_BOARDS[@]/#/${BOARD_USE_PREFIX}} cros_host" + +# Require one, and only one, of the board_use flags to be set if this eclass +# is used. This effectively makes any ebuild that inherits this eclass require +# a known valid board to be set. +REQUIRED_USE="^^ ( ${IUSE} )" + +# Echo the current board, with variant. +get_current_board_with_variant() +{ + local b + + for b in "${ALL_BOARDS[@]}"; do + if use ${BOARD_USE_PREFIX}${b}; then + echo ${b} + return + fi + done + + die "Unable to determine current board (with variant)." +} + +# Echo the current board, without variant. +get_current_board_no_variant() +{ + get_current_board_with_variant | cut -d '_' -f 1 +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-coreboot.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-coreboot.eclass new file mode 100644 index 0000000000..99e8b551da --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-coreboot.eclass @@ -0,0 +1,92 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# @ECLASS: cros-coreboot.eclass +# @MAINTAINER: +# The Chromium OS Authors +# @BLURB: Unifies logic for building coreboot images for Chromium OS. + +[[ ${EAPI} != "4" ]] && die "Only EAPI=4 is supported" + +inherit toolchain-funcs + +DESCRIPTION="coreboot x86 firmware" +HOMEPAGE="http://www.coreboot.org" +LICENSE="GPL-2" +SLOT="0" +IUSE="em100-mode" + + +RDEPEND="!sys-boot/chromeos-coreboot" + +DEPEND="sys-power/iasl + sys-apps/coreboot-utils + sys-boot/chromeos-mrc + " + +# @ECLASS-VARIABLE: COREBOOT_BOARD +# @DESCRIPTION: +# Coreboot Configuration name. +: ${COREBOOT_BOARD:=} + +# @ECLASS-VARIABLE: COREBOOT_BUILD_ROOT +# @DESCRIPTION: +# Build directory root +: ${COREBOOT_BUILD_ROOT:=} + +[[ -z ${COREBOOT_BOARD} ]] && die "COREBOOT_BOARD must be set" +[[ -z ${COREBOOT_BUILD_ROOT} ]] && die "COREBOOT_BUILD_ROOT must be set" + +cros-coreboot_pre_src_prepare() { + cp configs/config.${COREBOOT_BOARD} .config +} + +cros-coreboot_src_compile() { + tc-export CC + local board="${COREBOOT_BOARD}" + local build_root="${COREBOOT_BUILD_ROOT}" + + # Set KERNELREVISION (really coreboot revision) to the ebuild revision + # number followed by a dot and the first seven characters of the git + # hash. The name is confusing but consistent with the coreboot + # Makefile. + local sha1v="${VCSID/*-/}" + export KERNELREVISION=".${PV}.${sha1v:0:7}" + + # Firmware related binaries are compiled with a 32-bit toolchain + # on 64-bit platforms + if use amd64 ; then + export CROSS_COMPILE="i686-pc-linux-gnu-" + export CC="${CROSS_COMPILE}-gcc" + else + export CROSS_COMPILE=${CHOST}- + fi + + elog "Toolchain:\n$(sh util/xcompile/xcompile)\n" + emake obj="${build_root}" oldconfig + emake obj="${build_root}" + + # Modify firmware descriptor if building for the EM100 emulator. + if use em100-mode; then + ifdtool --em100 "${build_root}/coreboot.rom" || die + mv "${build_root}/coreboot.rom"{.new,} || die + fi + + # Build cbmem for the target + cd util/cbmem + emake clean + CROSS_COMPILE="${CHOST}-" emake +} + +cros-coreboot_src_install() { + dobin util/cbmem/cbmem + insinto /firmware + newins "${COREBOOT_BUILD_ROOT}/coreboot.rom" coreboot.rom + OPROM=$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_FILE=/ { print $2 }' \ + configs/config.${COREBOOT_BOARD} ) + CBFSOPROM=pci$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_ID=/ { print $2 }' \ + configs/config.${COREBOOT_BOARD} ).rom + newins ${OPROM} ${CBFSOPROM} +} + +EXPORT_FUNCTIONS src_compile src_install pre_src_prepare diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-debug.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-debug.eclass new file mode 100644 index 0000000000..04e48f1b9a --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-debug.eclass @@ -0,0 +1,15 @@ +# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +# +# Original Author: The Chromium OS Authors +# Purpose: Set -DNDEBUG if the cros-debug USE flag is not defined. +# + +inherit flag-o-matic + +IUSE="cros-debug" + +cros-debug-add-NDEBUG() { + use cros-debug || append-flags -DNDEBUG +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-firmware.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-firmware.eclass new file mode 100644 index 0000000000..b28b0958cb --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-firmware.eclass @@ -0,0 +1,371 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 +# +# Original Author: The Chromium OS Authors +# Purpose: Generate shell script containing firmware update bundle. +# + +inherit cros-workon cros-binary + +# @ECLASS-VARIABLE: CROS_FIRMWARE_BCS_USER_NAME +# @DESCRIPTION: (Optional) Name of user on BCS server +: ${CROS_FIRMWARE_BCS_USER_NAME:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_BCS_OVERLAY_NAME +# @DESCRIPTION: (Optional) Name of the ebuild overlay. +: ${CROS_FIRMWARE_BCS_OVERLAY_NAME:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_MAIN_IMAGE +# @DESCRIPTION: (Optional) Location of system firmware (BIOS) image +: ${CROS_FIRMWARE_MAIN_IMAGE:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_MAIN_RW_IMAGE +# @DESCRIPTION: (Optional) Location of RW system firmware image +: ${CROS_FIRMWARE_MAIN_RW_IMAGE:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_EC_IMAGE +# @DESCRIPTION: (Optional) Location of EC firmware image +: ${CROS_FIRMWARE_EC_IMAGE:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_EC_VERSION +# @DESCRIPTION: (Optional) Version name of EC firmware +: ${CROS_FIRMWARE_EC_VERSION:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_MAIN_SUM +# @DESCRIPTION: (Optional) SHA-1 checksum of system firmware (BIOS) image +: ${CROS_FIRMWARE_MAIN_SUM:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_MAIN_RW_SUM +# @DESCRIPTION: (Optional) SHA-1 checksum of RW system firmware image +: ${CROS_FIRMWARE_MAIN_RW_SUM:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_EC_SUM +# @DESCRIPTION: (Optional) SHA-1 checksum of EC firmware image on BCS +: ${CROS_FIRMWARE_EC_SUM:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_PLATFORM +# @DESCRIPTION: (Optional) Platform name of firmware +: ${CROS_FIRMWARE_PLATFORM:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_SCRIPT +# @DESCRIPTION: (Optional) Entry script file name of updater +: ${CROS_FIRMWARE_SCRIPT:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_UNSTABLE +# @DESCRIPTION: (Optional) Mark firmrware as unstable (always RO+RW update) +: ${CROS_FIRMWARE_UNSTABLE:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_BINARY +# @DESCRIPTION: (Optional) location of custom flashrom tool +: ${CROS_FIRMWARE_FLASHROM_BINARY:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_EXTRA_LIST +# @DESCRIPTION: (Optional) Semi-colon separated list of additional resources +: ${CROS_FIRMWARE_EXTRA_LIST:=} + +# @ECLASS-VARIABLE: CROS_FIRMWARE_FORCE_UPDATE +# @DESCRIPTION: (Optional) Always add "force update firmware" tag. +: ${CROS_FIRMWARE_FORCE_UPDATE:=} + +# TODO(hungte) Support "local_mainfw" and "local_ecfw". +# $board-overlay/make.conf may contain these flags to always create "firmware +# from source". +IUSE="bootimage cros_ec" + +# Some tools (flashrom, iotools, mosys, ...) were bundled in the updater so we +# don't write RDEPEND=$DEPEND. RDEPEND should have an explicit list of what it +# needs to extract and execute the updater. +DEPEND=" + coreos-base/vpd + dev-util/shflags + >=sys-apps/flashrom-0.9.3-r36 + sys-apps/mosys + " + +# Build firmware from source. +DEPEND="$DEPEND + bootimage? ( sys-boot/coreos-bootimage ) + cros_ec? ( coreos-base/coreos-ec ) + " + +# Maintenance note: The factory install shim downloads and executes +# the firmware updater. Consequently, runtime dependencies for the +# updater are also runtime dependencies for the install shim. +# +# The contents of RDEPEND below must also be present in the +# chromeos-base/chromeos-factoryinstall ebuild in PROVIDED_DEPEND. +# If you make any change to the list below, you may need to make a +# matching change in the factory install ebuild. +# +# TODO(hungte) remove gzip/tar if we have busybox +RDEPEND=" + app-arch/gzip + app-arch/sharutils + app-arch/tar + sys-apps/util-linux" + +# Check for EAPI 2+ +case "${EAPI:-0}" in + 4|3|2) ;; + *) die "unsupported EAPI" ;; +esac + +UPDATE_SCRIPT="coreos-firmwareupdate" +FW_IMAGE_LOCATION="" +FW_RW_IMAGE_LOCATION="" +EC_IMAGE_LOCATION="" +EXTRA_LOCATIONS="" + +# Returns true (0) if parameter starts with "bcs://" +_is_on_bcs() { + [[ "${1%%://*}" = "bcs" ]] +} + +# Returns true (0) if parameter starts with "file://" +_is_in_files() { + [[ "${1%%://*}" = "file" ]] +} + +# Fetch a file from the Binary Component Server +# Parameters: URI of file "bcs://filename.tbz2", checksum of file. +# Returns: Nothing +_bcs_fetch() { + local filename="${1##*://}" + local checksum="$2" + + local bcs_host="git.chromium.org:6222" + local bcs_user="${CROS_FIRMWARE_BCS_USER_NAME}" + local bcs_pkgdir="${CATEGORY}/${PN}" + local bcs_root="$CROS_FIRMWARE_BCS_OVERLAY_NAME" + + # Support both old and new locations for BCS binaries. + # TODO(dparker@chromium.org): Remove after all binaries are using the + # new location. crosbug.com/22789 + [ -z "$bcs_root" ] && bcs_root="home/$CROS_FIRMWARE_BCS_USER_NAME" + + URI_BASE="ssh://$bcs_user@$bcs_host/$bcs_root/$bcs_pkgdir" + CROS_BINARY_URI="${URI_BASE}/${filename}" + CROS_BINARY_SUM="${checksum}" + cros-binary_fetch +} + +# Unpack a tbz2 firmware archive to ${S} +# Parameters: Location of archived firmware +# Returns: Location of unpacked firmware as $RETURN_VALUE +_src_unpack() { + local filepath="${1}" + local filename="$(basename ${filepath})" + mkdir -p "${S}" || die "Not able to create ${S}" + cp "${filepath}" "${S}" || die "Can't copy ${filepath} to ${S}" + cd "${S}" || die "Can't change directory to ${S}" + tar -axpf "${filename}" || + die "Failed to unpack ${filename}" + local contents="$(tar -atf "${filename}")" + if [ "$(echo "$contents" | wc -l)" -gt 1 ]; then + # Currently we can only serve one file (or directory). + ewarn "WARNING: package $filename contains multiple files." + contents="$(echo "$contents" | head -n 1)" + fi + RETURN_VALUE="${S}/$contents" +} + +# Unpack a tbz2 archive fetched from the BCS to ${S} +# Parameters: URI of file. Example: "bcs://filename.tbz2" +# Returns: Location of unpacked firmware as $RETURN_VALUE +_bcs_src_unpack() { + local filename="${1##*://}" + _src_unpack "${CROS_BINARY_STORE_DIR}/${filename}" + RETURN_VALUE="${RETURN_VALUE}" +} + +# Provides the location of a firmware image given a URI. +# Unpacks the firmware image if necessary. +# Parameters: URI of file. +# Example: "file://filename.ext" or an absolute filepath. +# Returns the absolute filepath of the unpacked firmware as $RETURN_VALUE +_firmware_image_location() { + local source_uri=$1 + if _is_in_files "${source_uri}"; then + local image_location="${FILESDIR}/${source_uri#*://}" + else + local image_location="${source_uri}" + fi + [[ -f "${image_location}" ]] || die "File not found: ${image_location}" + case "${image_location}" in + *.tbz2 | *.tbz | *.tar.bz2 | *.tgz | *.tar.gz ) + _src_unpack "${image_location}" + RETURN_VALUE="${RETURN_VALUE}" + ;; + * ) + RETURN_VALUE="${image_location}" + esac +} + +cros-firmware_src_unpack() { + cros-workon_src_unpack + + # Backwards compatibility with the older naming convention. + if [[ -n "${CROS_FIRMWARE_BIOS_ARCHIVE}" ]]; then + CROS_FIRMWARE_MAIN_IMAGE="bcs://${CROS_FIRMWARE_BIOS_ARCHIVE}" + fi + if [[ -n "${CROS_FIRMWARE_EC_ARCHIVE}" ]]; then + CROS_FIRMWARE_EC_IMAGE="bcs://${CROS_FIRMWARE_EC_ARCHIVE}" + fi + + # Fetch and unpack the system firmware image + if [[ -n "${CROS_FIRMWARE_MAIN_IMAGE}" ]]; then + if _is_on_bcs "${CROS_FIRMWARE_MAIN_IMAGE}"; then + _bcs_fetch "${CROS_FIRMWARE_MAIN_IMAGE}" \ + "${CROS_FIRMWARE_MAIN_SUM}" + _bcs_src_unpack "${CROS_FIRMWARE_MAIN_IMAGE}" + FW_IMAGE_LOCATION="${RETURN_VALUE}" + else + _firmware_image_location "${CROS_FIRMWARE_MAIN_IMAGE}" + FW_IMAGE_LOCATION="${RETURN_VALUE}" + fi + fi + + # Fetch and unpack the system RW firmware image + if [[ -n "${CROS_FIRMWARE_MAIN_RW_IMAGE}" ]]; then + if _is_on_bcs "${CROS_FIRMWARE_MAIN_RW_IMAGE}"; then + _bcs_fetch "${CROS_FIRMWARE_MAIN_RW_IMAGE}" \ + "${CROS_FIRMWARE_MAIN_RW_SUM}" + _bcs_src_unpack "${CROS_FIRMWARE_MAIN_RW_IMAGE}" + FW_RW_IMAGE_LOCATION="${RETURN_VALUE}" + else + _firmware_image_location "${CROS_FIRMWARE_MAIN_RW_IMAGE}" + FW_RW_IMAGE_LOCATION="${RETURN_VALUE}" + fi + fi + + # Fetch and unpack the EC image + if [[ -n "${CROS_FIRMWARE_EC_IMAGE}" ]]; then + if _is_on_bcs "${CROS_FIRMWARE_EC_IMAGE}"; then + _bcs_fetch "${CROS_FIRMWARE_EC_IMAGE}"\ + "${CROS_FIRMWARE_EC_SUM}" + _bcs_src_unpack "${CROS_FIRMWARE_EC_IMAGE}" + EC_IMAGE_LOCATION="${RETURN_VALUE}" + else + _firmware_image_location "${CROS_FIRMWARE_EC_IMAGE}" + EC_IMAGE_LOCATION="${RETURN_VALUE}" + fi + fi + + # Fetch and unpack BCS resources in CROS_FIRMWARE_EXTRA_LIST + local extra extra_list + # For backward compatibility, ':' is still supported if there's no + # special URL (bcs://, file://). + local tr_source=';:' tr_target='\n\n' + if echo "${CROS_FIRMWARE_EXTRA_LIST}" | grep -q '://'; then + tr_source=';' + tr_target='\n' + fi + extra_list="$(echo "${CROS_FIRMWARE_EXTRA_LIST}" | + tr "$tr_source" "$tr_target")" + for extra in $extra_list; do + if _is_on_bcs "${extra}"; then + _bcs_fetch "${extra}" "" + _bcs_src_unpack "${extra}" + RETURN_VALUE="${RETURN_VALUE}" + else + RETURN_VALUE="${extra}" + fi + EXTRA_LOCATIONS="${EXTRA_LOCATIONS}:${RETURN_VALUE}" + done + EXTRA_LOCATIONS="${EXTRA_LOCATIONS#:}" +} + +_add_param() { + local prefix="$1" + local value="$2" + + if [[ -n "$value" ]]; then + echo "$prefix '$value' " + fi +} + +_add_bool_param() { + local prefix="$1" + local value="$2" + + if [[ -n "$value" ]]; then + echo "$prefix " + fi +} + +cros-firmware_src_compile() { + local image_cmd="" ext_cmd="" local_image_cmd="" + local root="${ROOT%/}" + + # Prepare images + image_cmd+="$(_add_param -b "${FW_IMAGE_LOCATION}")" + image_cmd+="$(_add_param -e "${EC_IMAGE_LOCATION}")" + image_cmd+="$(_add_param -w "${FW_RW_IMAGE_LOCATION}")" + image_cmd+="$(_add_param --ec_version "${CROS_FIRMWARE_EC_VERSION}")" + + # Prepare extra commands + ext_cmd+="$(_add_bool_param --unstable "${CROS_FIRMWARE_UNSTABLE}")" + ext_cmd+="$(_add_param --extra "${EXTRA_LOCATIONS}")" + ext_cmd+="$(_add_param --script "${CROS_FIRMWARE_SCRIPT}")" + ext_cmd+="$(_add_param --platform "${CROS_FIRMWARE_PLATFORM}")" + ext_cmd+="$(_add_param --flashrom "${CROS_FIRMWARE_FLASHROM_BINARY}")" + ext_cmd+="$(_add_param --tool_base \ + "$root/firmware/utils:$root/usr/sbin:$root/usr/bin")" + + # Pack firmware update script! + if [ -z "$image_cmd" ]; then + # Create an empty update script for the generic case + # (no need to update) + einfo "Building empty firmware update script" + echo -n > ${UPDATE_SCRIPT} + else + # create a new script + einfo "Building ${BOARD} firmware updater: $image_cmd $ext_cmd" + ./pack_firmware.sh $image_cmd $ext_cmd -o $UPDATE_SCRIPT || + die "Cannot pack firmware." + fi + + # Create local updaters + local local_image_cmd="" output_bom output_file + if use cros_ec; then + local_image_cmd+="-e $root/firmware/ec.bin " + fi + if use bootimage; then + for fw_file in $root/firmware/image-*.bin; do + einfo "Updater for local fw - $fw_file" + output_bom=${fw_file##*/image-} + output_bom=${output_bom%%.bin} + output_file=updater-$output_bom.sh + ./pack_firmware.sh -b $fw_file -o $output_file \ + $local_image_cmd $ext_cmd || + die "Cannot pack local firmware." + done + elif use cros_ec; then + # TODO(hungte) Deal with a platform that has only EC and no + # BIOS, which is usually incorrect configuration. + die "Sorry, platform without local BIOS EC is not supported." + fi +} + +cros-firmware_src_install() { + # install the main updater program + dosbin $UPDATE_SCRIPT || die "Failed to install update script." + + # install factory wipe script + dosbin firmware-factory-wipe + + # install updaters for firmware-from-source archive. + if use bootimage; then + exeinto /firmware + doexe updater-*.sh + fi + + # The "force_update_firmware" tag file is used by chromeos-installer. + if [ -n "$CROS_FIRMWARE_FORCE_UPDATE" ]; then + insinto /root + touch .force_update_firmware + doins .force_update_firmware + fi +} + +EXPORT_FUNCTIONS src_unpack src_compile src_install diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel-info.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel-info.eclass new file mode 100644 index 0000000000..8f2774b693 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel-info.eclass @@ -0,0 +1,18 @@ +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +inherit linux-info + +# @FUNCTION: create_temp_build_dir +# @DESCRIPTION: +# Creates a local copy of the kernel build tree. This allows the package to +# rebuild host-specific parts of the tree without violating the sandbox. +create_temp_build_dir() { + get_version || die "Failed to find kernel tree" + + local dst_build=${1:-${T}/kernel-build} + cp -pPR "$(readlink -e "${KV_OUT_DIR}")" "${dst_build}" || + die "Failed to copy kernel tree" + + echo "${dst_build}" +} diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/exynos5_defconfig b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/exynos5_defconfig new file mode 100644 index 0000000000..8e47aed194 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/exynos5_defconfig @@ -0,0 +1,369 @@ +CONFIG_EXPERIMENTAL=y +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_DEFAULT_HOSTNAME="localhost" +CONFIG_SYSVIPC=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_IKCONFIG=m +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_CGROUPS=y +CONFIG_CGROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_NAMESPACES=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_RD_XZ=y +CONFIG_CC_OPTIMIZE_FOR_SIZE=y +CONFIG_EMBEDDED=y +# CONFIG_COMPAT_BRK is not set +CONFIG_PROFILING=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_EFI_PARTITION=y +CONFIG_ARCH_EXYNOS=y +CONFIG_S3C_LOWLEVEL_UART_PORT=3 +CONFIG_S3C_ADC=y +CONFIG_S3C24XX_PWM=y +CONFIG_ARCH_EXYNOS5=y +CONFIG_MACH_EXYNOS4_DT=y +CONFIG_MACH_EXYNOS5_DT=y +CONFIG_ARM_THUMBEE=y +CONFIG_SMP=y +CONFIG_VMSPLIT_2G=y +CONFIG_NR_CPUS=2 +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_AEABI=y +CONFIG_HIGHMEM=y +# CONFIG_COMPACTION is not set +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 +CONFIG_SECCOMP=y +CONFIG_CC_STACKPROTECTOR=y +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBOOT_ROM_BSS=0x0 +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ARM_ATAG_DTB_COMPAT=y +CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC3,115200 init=/linuxrc mem=256M" +CONFIG_VFP=y +CONFIG_NEON=y +CONFIG_PM_RUNTIME=y +CONFIG_PM_DEBUG=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_XFRM_USER=m +CONFIG_NET_KEY=m +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_MROUTE=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_PRIVACY=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_IPV6_SIT=m +CONFIG_NETWORK_SECMARK=y +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_ADVANCED is not set +CONFIG_NF_CONNTRACK=y +# CONFIG_NF_CONNTRACK_SECMARK is not set +# CONFIG_NF_CONNTRACK_FTP is not set +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_SIP is not set +CONFIG_NF_CT_NETLINK=y +# CONFIG_NETFILTER_XT_TARGET_LOG is not set +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_SECMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +CONFIG_NETFILTER_XT_MATCH_POLICY=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_ULOG=y +CONFIG_IP_NF_MANGLE=y +CONFIG_NET_SCHED=y +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_HIDP=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_CFG80211=m +CONFIG_NL80211_TESTMODE=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_CFG80211_WEXT=y +CONFIG_MAC80211=m +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_DEBUGFS=y +CONFIG_MAC80211_DEBUG_MENU=y +CONFIG_MAC80211_VERBOSE_DEBUG=y +CONFIG_RFKILL=y +CONFIG_RFKILL_GPIO=m +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEBUG_DEVRES=y +CONFIG_CONNECTOR=y +CONFIG_PROC_DEVICETREE=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_SCSI=y +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=m +CONFIG_SCSI_MULTI_LUN=y +CONFIG_SCSI_SPI_ATTRS=y +CONFIG_MD=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_CRYPT=y +CONFIG_DM_VERITY=y +CONFIG_NETDEVICES=y +CONFIG_TUN=m +CONFIG_VETH=m +CONFIG_SMC911X=y +CONFIG_SMSC911X=y +CONFIG_PPP=m +CONFIG_PPP_ASYNC=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +# CONFIG_USB_NET_NET1080 is not set +CONFIG_USB_NET_MCS7830=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +CONFIG_LIBERTAS_THINFIRM=m +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_MAC80211_HWSIM=m +CONFIG_ATH_COMMON=m +CONFIG_ATH_DEBUG=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +CONFIG_HOSTAP_FIRMWARE_NVRAM=y +CONFIG_RT2X00=m +CONFIG_RT2500USB=m +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_SDIO=m +CONFIG_INPUT_FF_MEMLESS=y +# CONFIG_INPUT_MOUSEDEV is not set +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_GPIO=y +# CONFIG_MOUSE_PS2 is not set +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=y +CONFIG_INPUT_MISC=y +CONFIG_INPUT_UINPUT=m +CONFIG_SERIO_SERPORT=m +CONFIG_SERIO_RAW=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_DEVKMEM is not set +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_SAMSUNG=y +CONFIG_SERIAL_SAMSUNG_CONSOLE=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_HW_RANDOM=y +CONFIG_TCG_TPM=y +CONFIG_I2C=y +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_S3C2410=y +CONFIG_I2C_STUB=m +CONFIG_SPI=y +CONFIG_SPI_BITBANG=m +CONFIG_SPI_S3C64XX=y +CONFIG_SPI_SPIDEV=m +CONFIG_DEBUG_GPIO=y +CONFIG_GPIO_SYSFS=y +CONFIG_BATTERY_SBS=m +CONFIG_CHARGER_GPIO=y +CONFIG_SENSORS_NTC_THERMISTOR=y +CONFIG_SENSORS_S3C=y +CONFIG_SENSORS_S3C_RAW=y +CONFIG_WATCHDOG=y +CONFIG_S3C2410_WATCHDOG=y +CONFIG_MFD_MAX77686=y +CONFIG_MFD_WM8994=y +CONFIG_MFD_TPS65090=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_MAX77686=y +CONFIG_REGULATOR_TPS65090=y +CONFIG_REGULATOR_WM8994=y +CONFIG_MEDIA_SUPPORT=y +CONFIG_VIDEO_FIXED_MINOR_RANGES=y +CONFIG_VIDEO_OUTPUT_CONTROL=y +CONFIG_FB=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_EXYNOS_VIDEO=y +CONFIG_EXYNOS_MIPI_DSI=y +CONFIG_EXYNOS_DP=y +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_LCD_CLASS_DEVICE=y +CONFIG_LCD_PLATFORM=y +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_PWM=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FONTS=y +CONFIG_FONT_7x14=y +CONFIG_LOGO=y +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_HRTIMER=m +CONFIG_SND_DYNAMIC_MINORS=y +# CONFIG_SND_ARM is not set +# CONFIG_SND_SPI is not set +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_SOC=y +CONFIG_SND_SOC_SAMSUNG=y +CONFIG_HIDRAW=y +CONFIG_HID_APPLE=m +CONFIG_HID_CHERRY=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_PRIMAX=m +CONFIG_HID_SONY=m +CONFIG_HID_WIIMOTE=m +CONFIG_USB_HIDDEV=y +CONFIG_USB=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_SUSPEND=y +CONFIG_USB_MON=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_S5P=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_EXYNOS=y +CONFIG_USB_ACM=y +CONFIG_USB_STORAGE=y +CONFIG_USB_SERIAL=y +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_SAMSUNG_USBPHY=y +CONFIG_MMC=y +CONFIG_MMC_UNSAFE_RESUME=y +CONFIG_MMC_BLOCK_MINORS=16 +CONFIG_MMC_SDHCI=y +CONFIG_MMC_DW=y +CONFIG_MMC_DW_IDMAC=y +CONFIG_MMC_DW_EXYNOS=y +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_S3C=y +CONFIG_AUXDISPLAY=y +CONFIG_STAGING=y +CONFIG_SENSORS_ISL29018=m +CONFIG_SENSORS_TSL2563=m +CONFIG_TSL2583=m +CONFIG_IIO=m +CONFIG_EXT2_FS=y +CONFIG_EXT2_FS_XATTR=y +CONFIG_EXT2_FS_POSIX_ACL=y +CONFIG_EXT2_FS_SECURITY=y +CONFIG_EXT3_FS=y +CONFIG_EXT3_FS_POSIX_ACL=y +CONFIG_EXT3_FS_SECURITY=y +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_DNOTIFY is not set +CONFIG_FUSE_FS=m +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_VFAT_FS=m +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_ECRYPT_FS=y +CONFIG_HFSPLUS_FS=m +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_LZO=y +CONFIG_PSTORE=y +CONFIG_PSTORE_CONSOLE=y +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=m +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=5 +CONFIG_MAGIC_SYSRQ=y +CONFIG_LOCKUP_DETECTOR=y +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y +CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y +# CONFIG_SCHED_DEBUG is not set +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +CONFIG_DEBUG_SPINLOCK=y +CONFIG_DEBUG_CREDENTIALS=y +CONFIG_FUNCTION_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_STRICT_DEVMEM=y +CONFIG_DEBUG_USER=y +CONFIG_DEBUG_LL=y +CONFIG_DEBUG_S3C_UART3=y +CONFIG_EARLY_PRINTK=y +CONFIG_KEYS=y +CONFIG_KEYS_DEBUG_PROC_KEYS=y +CONFIG_SECURITY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_YAMA=y +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_CRYPTO_AUTHENC=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRC_CCITT=y +CONFIG_CRC_T10DIF=m +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_SPARC is not set diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/i386_defconfig b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/i386_defconfig new file mode 100644 index 0000000000..02e0e482c2 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/i386_defconfig @@ -0,0 +1,450 @@ +CONFIG_EXPERIMENTAL=y +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SYSVIPC=y +CONFIG_RCU_FANOUT=32 +CONFIG_IKCONFIG=m +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_CGROUPS=y +CONFIG_CGROUP_SCHED=y +CONFIG_NAMESPACES=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_RD_XZ=y +CONFIG_CC_OPTIMIZE_FOR_SIZE=y +# CONFIG_PCSPKR_PLATFORM is not set +CONFIG_EMBEDDED=y +# CONFIG_COMPAT_BRK is not set +CONFIG_PROFILING=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_EFI_PARTITION=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_SMP=y +CONFIG_NR_CPUS=4 +CONFIG_SCHED_SMT=y +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_MCE=y +# CONFIG_X86_MCE_AMD is not set +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_X86_MSR=y +CONFIG_X86_CPUID=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_MMAP_NOEXEC_TAINT=0 +CONFIG_LOW_MEM_NOTIFY=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +# CONFIG_MTRR_SANITIZER is not set +CONFIG_EFI=y +CONFIG_CC_STACKPROTECTOR=y +CONFIG_HZ_1000=y +# CONFIG_RELOCATABLE is not set +CONFIG_PM_RUNTIME=y +CONFIG_PM_DEBUG=y +CONFIG_PM_TRACE_RTC=y +CONFIG_ACPI_PROCFS=y +CONFIG_ACPI_VIDEO=y +CONFIG_ACPI_DOCK=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCIEPORTBUS=y +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_PCI_MSI=y +CONFIG_PCI_IOAPIC=y +CONFIG_HOTPLUG_PCI=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_XFRM_USER=y +CONFIG_NET_KEY=m +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_MROUTE=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_PRIVACY=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_IPV6_SIT=m +CONFIG_NETWORK_SECMARK=y +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_ADVANCED is not set +CONFIG_NF_CONNTRACK=y +# CONFIG_NF_CONNTRACK_SECMARK is not set +# CONFIG_NF_CONNTRACK_FTP is not set +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_SIP is not set +CONFIG_NF_CT_NETLINK=y +# CONFIG_NETFILTER_XT_TARGET_LOG is not set +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_SECMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +CONFIG_NETFILTER_XT_MATCH_POLICY=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_ULOG=y +# CONFIG_NF_NAT is not set +CONFIG_IP_NF_MANGLE=y +CONFIG_NET_SCHED=y +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_HIDP=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_ATH3K=m +CONFIG_CFG80211=m +CONFIG_NL80211_TESTMODE=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +CONFIG_MAC80211_DEBUG_MENU=y +CONFIG_MAC80211_VERBOSE_DEBUG=y +CONFIG_RFKILL=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEBUG_DEVRES=y +CONFIG_CONNECTOR=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_VIRTIO_BLK=m +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_SPI_ATTRS=y +# CONFIG_SCSI_LOWLEVEL is not set +CONFIG_ATA=y +# CONFIG_SATA_PMP is not set +CONFIG_SATA_AHCI=y +CONFIG_ATA_PIIX=y +CONFIG_ATA_GENERIC=y +CONFIG_MD=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_CRYPT=y +CONFIG_DM_VERITY=y +CONFIG_DM_VERITY_CHROMEOS=y +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_TUN=m +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +CONFIG_TIGON3=m +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EXAR is not set +# CONFIG_NET_VENDOR_HP is not set +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGBVF=m +CONFIG_JME=m +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MELLANOX is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_NET_PACKET_ENGINE is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +CONFIG_R8169=m +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +CONFIG_PHYLIB=y +CONFIG_PPP=m +CONFIG_PPP_ASYNC=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_MCS7830=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +CONFIG_USB_NET_GOBI=m +CONFIG_LIBERTAS_THINFIRM=m +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_MAC80211_HWSIM=m +CONFIG_ATH_COMMON=m +CONFIG_ATH_DEBUG=y +CONFIG_ATH5K=m +CONFIG_ATH9K=m +CONFIG_ATH9K_DEBUGFS=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +CONFIG_HOSTAP_FIRMWARE_NVRAM=y +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTAP_PCI=m +CONFIG_RT2X00=m +CONFIG_RT2800PCI=m +CONFIG_RTL8192CE=m +CONFIG_INPUT_FF_MEMLESS=y +CONFIG_INPUT_POLLDEV=y +# CONFIG_INPUT_MOUSEDEV_PSAUX is not set +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_GPIO=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_CYAPA=y +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=y +CONFIG_INPUT_MISC=y +CONFIG_INPUT_UINPUT=m +CONFIG_SERIO_SERPORT=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_RAW=y +CONFIG_VT_HW_CONSOLE_BINDING=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_DEVKMEM is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_AMD is not set +# CONFIG_HW_RANDOM_VIA is not set +CONFIG_NVRAM=y +CONFIG_HPET=y +# CONFIG_HPET_MMAP is not set +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS=y +CONFIG_RAMOOPS=y +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_I801=y +CONFIG_I2C_PIIX4=m +CONFIG_I2C_STUB=m +CONFIG_SPI=y +CONFIG_SPI_BITBANG=m +CONFIG_SPI_SPIDEV=m +CONFIG_GPIOLIB=y +CONFIG_DEBUG_GPIO=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_NM10=m +CONFIG_SENSORS_CORETEMP=y +CONFIG_LPC_SCH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_VIDEO_DEV=m +# CONFIG_IR_NEC_DECODER is not set +# CONFIG_IR_RC5_DECODER is not set +# CONFIG_IR_RC6_DECODER is not set +# CONFIG_IR_JVC_DECODER is not set +# CONFIG_IR_SONY_DECODER is not set +# CONFIG_IR_RC5_SZ_DECODER is not set +# CONFIG_IR_LIRC_CODEC is not set +# CONFIG_MEDIA_TUNER_CUSTOMISE is not set +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y +CONFIG_USB_VIDEO_CLASS=m +# CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV is not set +# CONFIG_USB_GSPCA is not set +# CONFIG_RADIO_ADAPTERS is not set +CONFIG_AGP=y +CONFIG_AGP_INTEL=y +# CONFIG_VGA_ARB is not set +CONFIG_DRM=y +CONFIG_DRM_I915=y +CONFIG_DRM_I915_KMS=y +CONFIG_FB_MODE_HELPERS=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CHROMEOS_KEYBOARD=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_HRTIMER=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_POWER_SAVE=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=15 +# CONFIG_SND_SPI is not set +CONFIG_SND_USB_AUDIO=m +CONFIG_HIDRAW=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y +CONFIG_HID_APPLE=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_PRIMAX=m +CONFIG_HID_SONY=m +CONFIG_HID_WIIMOTE=m +CONFIG_USB=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_DEVICEFS=y +# CONFIG_USB_DEVICE_CLASS is not set +CONFIG_USB_SUSPEND=y +CONFIG_USB_MON=y +CONFIG_USB_XHCI_HCD=m +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_ACM=y +CONFIG_USB_STORAGE=y +CONFIG_USB_STORAGE_REALTEK=y +CONFIG_USB_LIBUSUAL=y +CONFIG_USB_SERIAL=y +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_MMC=m +CONFIG_MMC_BLOCK_MINORS=16 +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_LEDS_CLASS=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_HCTOSYS is not set +CONFIG_RTC_DRV_CMOS=m +CONFIG_VIRTIO_PCI=m +CONFIG_STAGING=y +CONFIG_IIO=m +CONFIG_SENSORS_ISL29018=m +CONFIG_SENSORS_TSL2563=m +CONFIG_TSL2583=m +CONFIG_ZRAM=m +CONFIG_DELL_WMI=m +CONFIG_HP_WMI=m +CONFIG_INTEL_MENLOW=m +CONFIG_ACPI_WMI=m +CONFIG_ACPI_CHROMEOS=y +CONFIG_CHROMEOS_LAPTOP=y +CONFIG_CHROMEOS_RAMOOPS_RAM_START=0x00f00000 +CONFIG_CHROMEOS_RAMOOPS_RAM_SIZE=0x00100000 +CONFIG_CHROMEOS_RAMOOPS_RECORD_SIZE=0x00020000 +CONFIG_CHROMEOS_RAMOOPS_DUMP_OOPS=0x1 +CONFIG_INTEL_IOMMU=y +CONFIG_GOOGLE_FIRMWARE=y +CONFIG_GOOGLE_MEMCONSOLE=m +CONFIG_EXT2_FS=y +CONFIG_EXT2_FS_XATTR=y +CONFIG_EXT2_FS_POSIX_ACL=y +CONFIG_EXT2_FS_SECURITY=y +CONFIG_EXT3_FS=y +CONFIG_EXT3_FS_POSIX_ACL=y +CONFIG_EXT3_FS_SECURITY=y +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_DNOTIFY is not set +CONFIG_FUSE_FS=m +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_VFAT_FS=m +CONFIG_PROC_KCORE=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_ECRYPT_FS=y +CONFIG_HFSPLUS_FS=m +CONFIG_PSTORE=y +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=m +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=5 +# CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_MAGIC_SYSRQ=y +# CONFIG_UNUSED_SYMBOLS is not set +CONFIG_LOCKUP_DETECTOR=y +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y +CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y +# CONFIG_SCHED_DEBUG is not set +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +CONFIG_DEBUG_SPINLOCK=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_PROVIDE_OHCI1394_DMA_INIT=y +CONFIG_STRICT_DEVMEM=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_RODATA_TEST is not set +CONFIG_DEBUG_SET_MODULE_RONX=y +CONFIG_IO_DELAY_0XED=y +CONFIG_DEBUG_BOOT_PARAMS=y +CONFIG_OPTIMIZE_INLINING=y +CONFIG_KEYS=y +CONFIG_KEYS_DEBUG_PROC_KEYS=y +CONFIG_SECURITY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_YAMA=y +CONFIG_SECURITY_CHROMIUMOS=y +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_CRYPTO_AUTHENC=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRC_CCITT=y +CONFIG_CRC_T10DIF=m +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_SPARC is not set diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_64_defconfig b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_64_defconfig new file mode 100644 index 0000000000..e18c449162 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_64_defconfig @@ -0,0 +1,464 @@ +CONFIG_EXPERIMENTAL=y +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SYSVIPC=y +CONFIG_RCU_FANOUT=32 +CONFIG_IKCONFIG=m +CONFIG_IKCONFIG_PROC=y +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_CGROUPS=y +CONFIG_CGROUP_SCHED=y +CONFIG_NAMESPACES=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_RD_XZ=y +CONFIG_CC_OPTIMIZE_FOR_SIZE=y +# CONFIG_PCSPKR_PLATFORM is not set +CONFIG_EMBEDDED=y +# CONFIG_COMPAT_BRK is not set +CONFIG_PROFILING=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_EFI_PARTITION=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_SMP=y +CONFIG_NR_CPUS=4 +CONFIG_SCHED_SMT=y +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_MCE=y +# CONFIG_X86_MCE_AMD is not set +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_X86_MSR=y +CONFIG_X86_CPUID=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_MMAP_NOEXEC_TAINT=0 +CONFIG_LOW_MEM_NOTIFY=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +# CONFIG_MTRR_SANITIZER is not set +CONFIG_EFI=y +CONFIG_CC_STACKPROTECTOR=y +CONFIG_HZ_1000=y +# CONFIG_RELOCATABLE is not set +# CONFIG_COMPAT_VDSO is not set +CONFIG_PM_RUNTIME=y +CONFIG_PM_DEBUG=y +CONFIG_PM_TRACE_RTC=y +CONFIG_ACPI_PROCFS=y +CONFIG_ACPI_VIDEO=y +CONFIG_ACPI_DOCK=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCIEPORTBUS=y +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_PCI_MSI=y +CONFIG_PCI_IOAPIC=y +CONFIG_HOTPLUG_PCI=y +CONFIG_IA32_EMULATION=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_XFRM_USER=y +CONFIG_NET_KEY=m +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_MROUTE=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_PRIVACY=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_IPV6_SIT=m +CONFIG_NETWORK_SECMARK=y +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_ADVANCED is not set +CONFIG_NF_CONNTRACK=y +# CONFIG_NF_CONNTRACK_SECMARK is not set +# CONFIG_NF_CONNTRACK_FTP is not set +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_SIP is not set +CONFIG_NF_CT_NETLINK=y +# CONFIG_NETFILTER_XT_TARGET_LOG is not set +CONFIG_NETFILTER_XT_TARGET_NFLOG=y +CONFIG_NETFILTER_XT_TARGET_SECMARK=y +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y +CONFIG_NETFILTER_XT_MATCH_POLICY=y +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_ULOG=y +# CONFIG_NF_NAT is not set +CONFIG_IP_NF_MANGLE=y +CONFIG_NET_SCHED=y +CONFIG_BT=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_HIDP=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIVHCI=m +CONFIG_BT_ATH3K=m +CONFIG_CFG80211=m +CONFIG_NL80211_TESTMODE=y +CONFIG_CFG80211_DEBUGFS=y +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +CONFIG_MAC80211_DEBUG_MENU=y +CONFIG_MAC80211_VERBOSE_DEBUG=y +CONFIG_RFKILL=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEBUG_DEVRES=y +CONFIG_CONNECTOR=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_VIRTIO_BLK=m +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_SPI_ATTRS=y +# CONFIG_SCSI_LOWLEVEL is not set +CONFIG_ATA=y +# CONFIG_SATA_PMP is not set +CONFIG_SATA_AHCI=y +CONFIG_ATA_PIIX=y +CONFIG_ATA_GENERIC=y +CONFIG_MD=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_CRYPT=y +CONFIG_DM_VERITY=y +CONFIG_DM_VERITY_CHROMEOS=y +CONFIG_NETDEVICES=y +CONFIG_MII=y +CONFIG_TUN=m +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +CONFIG_TIGON3=m +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EXAR is not set +# CONFIG_NET_VENDOR_HP is not set +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGBVF=m +CONFIG_JME=m +# CONFIG_NET_VENDOR_MARVELL is not set +# CONFIG_NET_VENDOR_MELLANOX is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MICROCHIP is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_NET_PACKET_ENGINE is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +CONFIG_R8169=m +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +CONFIG_PHYLIB=y +CONFIG_PPP=m +CONFIG_PPP_ASYNC=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_MCS7830=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +CONFIG_USB_HSO=y +CONFIG_USB_NET_GOBI=m +CONFIG_LIBERTAS_THINFIRM=m +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_MAC80211_HWSIM=m +CONFIG_ATH_COMMON=m +CONFIG_ATH_DEBUG=y +CONFIG_ATH5K=m +CONFIG_ATH9K=m +CONFIG_ATH9K_DEBUGFS=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +CONFIG_HOSTAP_FIRMWARE_NVRAM=y +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTAP_PCI=m +CONFIG_IWLWIFI=m +CONFIG_IWL4965=m +CONFIG_IWL3945=m +CONFIG_RT2X00=m +CONFIG_RT2800PCI=m +# CONFIG_RT2800PCI_RT33XX is not set +# CONFIG_RT2800PCI_RT35XX is not set +# CONFIG_RT2800PCI_RT53XX is not set +CONFIG_RTL8192CE=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_INPUT_FF_MEMLESS=y +CONFIG_INPUT_POLLDEV=y +# CONFIG_INPUT_MOUSEDEV_PSAUX is not set +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_GPIO=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_CYAPA=y +CONFIG_INPUT_JOYSTICK=y +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=y +CONFIG_INPUT_MISC=y +CONFIG_INPUT_UINPUT=m +CONFIG_SERIO_SERPORT=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_RAW=y +CONFIG_VT_HW_CONSOLE_BINDING=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_DEVKMEM is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_AMD is not set +# CONFIG_HW_RANDOM_VIA is not set +CONFIG_NVRAM=y +CONFIG_HPET=y +# CONFIG_HPET_MMAP is not set +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS=y +CONFIG_RAMOOPS=y +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_I801=y +CONFIG_I2C_PIIX4=m +CONFIG_I2C_STUB=m +CONFIG_SPI=y +CONFIG_SPI_BITBANG=m +CONFIG_SPI_SPIDEV=m +CONFIG_GPIOLIB=y +CONFIG_DEBUG_GPIO=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_NM10=m +CONFIG_SENSORS_CORETEMP=y +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +CONFIG_LPC_SCH=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_VIDEO_DEV=m +# CONFIG_IR_NEC_DECODER is not set +# CONFIG_IR_RC5_DECODER is not set +# CONFIG_IR_RC6_DECODER is not set +# CONFIG_IR_JVC_DECODER is not set +# CONFIG_IR_SONY_DECODER is not set +# CONFIG_IR_RC5_SZ_DECODER is not set +# CONFIG_IR_LIRC_CODEC is not set +# CONFIG_MEDIA_TUNER_CUSTOMISE is not set +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y +CONFIG_USB_VIDEO_CLASS=m +# CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV is not set +# CONFIG_USB_GSPCA is not set +# CONFIG_V4L_PCI_DRIVERS is not set +# CONFIG_RADIO_ADAPTERS is not set +CONFIG_AGP=y +CONFIG_AGP_INTEL=y +# CONFIG_VGA_ARB is not set +CONFIG_DRM=y +CONFIG_DRM_I915=y +CONFIG_DRM_I915_KMS=y +CONFIG_FB_MODE_HELPERS=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CHROMEOS_KEYBOARD=y +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_HRTIMER=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_POWER_SAVE=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=15 +# CONFIG_SND_SPI is not set +CONFIG_SND_USB_AUDIO=m +CONFIG_HIDRAW=y +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y +CONFIG_HID_APPLE=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_PRIMAX=m +CONFIG_HID_SONY=m +CONFIG_HID_WIIMOTE=m +CONFIG_USB=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_DEVICEFS=y +# CONFIG_USB_DEVICE_CLASS is not set +CONFIG_USB_SUSPEND=y +CONFIG_USB_MON=y +CONFIG_USB_XHCI_HCD=m +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_ACM=y +CONFIG_USB_STORAGE=y +CONFIG_USB_STORAGE_REALTEK=y +CONFIG_USB_LIBUSUAL=y +CONFIG_USB_SERIAL=y +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_MMC=m +CONFIG_MMC_BLOCK_MINORS=16 +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_LEDS_CLASS=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_HCTOSYS is not set +CONFIG_RTC_DRV_CMOS=m +CONFIG_VIRTIO_PCI=m +CONFIG_STAGING=y +CONFIG_IIO=m +CONFIG_SENSORS_ISL29018=m +CONFIG_SENSORS_TSL2563=m +CONFIG_TSL2583=m +CONFIG_ZRAM=m +CONFIG_DELL_WMI=m +CONFIG_HP_WMI=m +CONFIG_INTEL_MENLOW=m +CONFIG_ACPI_WMI=m +CONFIG_ACPI_CHROMEOS=y +CONFIG_CHROMEOS_LAPTOP=y +CONFIG_CHROMEOS_RAMOOPS_RAM_START=0x00f00000 +CONFIG_CHROMEOS_RAMOOPS_RAM_SIZE=0x00100000 +CONFIG_CHROMEOS_RAMOOPS_RECORD_SIZE=0x00020000 +CONFIG_CHROMEOS_RAMOOPS_DUMP_OOPS=0x1 +CONFIG_GOOGLE_FIRMWARE=y +CONFIG_GOOGLE_MEMCONSOLE=m +CONFIG_EXT2_FS=y +CONFIG_EXT2_FS_XATTR=y +CONFIG_EXT2_FS_POSIX_ACL=y +CONFIG_EXT2_FS_SECURITY=y +CONFIG_EXT3_FS=y +CONFIG_EXT3_FS_POSIX_ACL=y +CONFIG_EXT3_FS_SECURITY=y +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +# CONFIG_DNOTIFY is not set +CONFIG_FUSE_FS=m +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_VFAT_FS=m +CONFIG_PROC_KCORE=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_ECRYPT_FS=y +CONFIG_HFSPLUS_FS=m +CONFIG_PSTORE=y +# CONFIG_NETWORK_FILESYSTEMS is not set +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=m +CONFIG_PRINTK_TIME=y +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=5 +# CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_MAGIC_SYSRQ=y +# CONFIG_UNUSED_SYMBOLS is not set +CONFIG_LOCKUP_DETECTOR=y +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y +CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y +# CONFIG_SCHED_DEBUG is not set +CONFIG_SCHEDSTATS=y +CONFIG_TIMER_STATS=y +CONFIG_DEBUG_SPINLOCK=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_PROVIDE_OHCI1394_DMA_INIT=y +CONFIG_STRICT_DEVMEM=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_RODATA_TEST is not set +CONFIG_DEBUG_SET_MODULE_RONX=y +CONFIG_IO_DELAY_0XED=y +CONFIG_DEBUG_BOOT_PARAMS=y +CONFIG_OPTIMIZE_INLINING=y +CONFIG_KEYS=y +CONFIG_KEYS_DEBUG_PROC_KEYS=y +CONFIG_SECURITY=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_YAMA=y +CONFIG_SECURITY_CHROMIUMOS=y +CONFIG_DEFAULT_SECURITY_DAC=y +CONFIG_CRYPTO_AUTHENC=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_ARC4=y +CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_ANSI_CPRNG is not set +CONFIG_CRC_CCITT=y +CONFIG_CRC_T10DIF=m +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_SPARC is not set diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_defconfig b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_defconfig new file mode 120000 index 0000000000..4117cc58eb --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel/x86_defconfig @@ -0,0 +1 @@ +i386_defconfig \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel2.eclass b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel2.eclass new file mode 100644 index 0000000000..e20f7a0575 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/eclass/cros-kernel2.eclass @@ -0,0 +1,659 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +[[ ${EAPI} != "4" ]] && die "Only EAPI=4 is supported" + +inherit binutils-funcs cros-board toolchain-funcs + +HOMEPAGE="http://www.chromium.org/" +LICENSE="GPL-2" +SLOT="0" + +DEPEND="sys-apps/debianutils + initramfs? ( chromeos-base/chromeos-initramfs ) +" + +IUSE="-device_tree -kernel_sources" +STRIP_MASK="/usr/lib/debug/boot/vmlinux" + +# Build out-of-tree and incremental by default, but allow an ebuild inheriting +# this eclass to explicitly build in-tree. +: ${CROS_WORKON_OUTOFTREE_BUILD:=1} +: ${CROS_WORKON_INCREMENTAL_BUILD:=1} + +# Config fragments selected by USE flags +# ...fragments will have the following variables substitutions +# applied later (needs to be done later since these values +# aren't reliable when used in a global context like this): +# %ROOT% => ${ROOT} + +CONFIG_FRAGMENTS=( + blkdevram + ca0132 + cifs + debug + fbconsole + gdmwimax + gobi + highmem + i2cdev + initramfs + kvm + nfs + pcserial + qmi + realtekpstor + samsung_serial + systemtap + tpm + vfat +) + +blkdevram_desc="ram block device" +blkdevram_config=" +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=16384 +" + +ca0132_desc="CA0132 ALSA codec" +ca0132_config=" +CONFIG_SND_HDA_CODEC_CA0132=y +CONFIG_SND_HDA_DSP_LOADER=y +" + +cifs_desc="Samba/CIFS Support" +cifs_config=" +CONFIG_CIFS=m +" + +debug_desc="debug settings" +debug_config=" +CONFIG_DEBUG_INFO=y +" + +fbconsole_desc="framebuffer console" +fbconsole_config=" +CONFIG_FRAMEBUFFER_CONSOLE=y +" + +gdmwimax_desc="GCT GDM72xx WiMAX support" +gdmwimax_config=" +CONFIG_WIMAX_GDM72XX=m +CONFIG_WIMAX_GDM72XX_USB=y +CONFIG_WIMAX_GDM72XX_USB_PM=y +" + +gobi_desc="Qualcomm Gobi modem driver" +gobi_config=" +CONFIG_USB_NET_GOBI=m +" + +highmem_desc="highmem" +highmem_config=" +CONFIG_HIGHMEM64G=y +" + +i2cdev_desc="I2C device interface" +i2cdev_config=" +CONFIG_I2C_CHARDEV=y +" + +tpm_desc="TPM support" +tpm_config=" +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS=y +" + +initramfs_desc="initramfs" +initramfs_config=" +CONFIG_INITRAMFS_SOURCE=\"%ROOT%/var/lib/misc/initramfs.cpio.xz\" +CONFIG_INITRAMFS_COMPRESSION_XZ=y +" + +vfat_desc="vfat" +vfat_config=" +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ISO8859_1=y +CONFIG_FAT_FS=y +CONFIG_VFAT_FS=y +" + +kvm_desc="KVM" +kvm_config=" +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_APIC_ARCHITECTURE=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM=m +CONFIG_KVM_INTEL=m +# CONFIG_KVM_AMD is not set +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_VIRTIO=m +CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_NET=m +CONFIG_VIRTIO_CONSOLE=m +CONFIG_VIRTIO_RING=m +CONFIG_VIRTIO_PCI=m +" + +nfs_desc="NFS" +nfs_config=" +CONFIG_USB_NET_AX8817X=y +CONFIG_DNOTIFY=y +CONFIG_DNS_RESOLVER=y +CONFIG_LOCKD=y +CONFIG_LOCKD_V4=y +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFSD=m +CONFIG_NFSD_V3=y +CONFIG_NFSD_V4=y +CONFIG_NFS_COMMON=y +CONFIG_NFS_FS=y +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_V3=y +CONFIG_NFS_V4=y +CONFIG_ROOT_NFS=y +CONFIG_RPCSEC_GSS_KRB5=y +CONFIG_SUNRPC=y +CONFIG_SUNRPC_GSS=y +CONFIG_USB_USBNET=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +" + +pcserial_desc="PC serial" +pcserial_config=" +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_PARPORT=y +CONFIG_PARPORT_PC=y +CONFIG_PARPORT_SERIAL=y +" + +qmi_desc="QMI WWAN driver" +qmi_config=" +CONFIG_USB_NET_QMI_WWAN=m +" + +samsung_serial_desc="Samsung serialport" +samsung_serial_config=" +CONFIG_SERIAL_SAMSUNG=y +CONFIG_SERIAL_SAMSUNG_CONSOLE=y +" + +realtekpstor_desc="Realtek PCI card reader" +realtekpstor_config=" +CONFIG_RTS_PSTOR=m +" + +systemtap_desc="systemtap support" +systemtap_config=" +CONFIG_KPROBES=y +CONFIG_DEBUG_INFO=y +" + +# Add all config fragments as off by default +IUSE="${IUSE} ${CONFIG_FRAGMENTS[@]}" + +# If an overlay has eclass overrides, but doesn't actually override this +# eclass, we'll have ECLASSDIR pointing to the active overlay's +# eclass/ dir, but this eclass is still in the main chromiumos tree. So +# add a check to locate the cros-kernel/ regardless of what's going on. +ECLASSDIR_LOCAL=${BASH_SOURCE[0]%/*} +defconfig_dir() { + local d="${ECLASSDIR}/cros-kernel" + if [[ ! -d ${d} ]] ; then + d="${ECLASSDIR_LOCAL}/cros-kernel" + fi + echo "${d}" +} + +# @FUNCTION: kernelversion +# @DESCRIPTION: +# Returns the current compiled kernel version. +# Note: Only valid after src_configure has finished running. +kernelversion() { + kmake -s --no-print-directory kernelversion +} + +# @FUNCTION: install_kernel_sources +# @DESCRIPTION: +# Installs the kernel sources into ${D}/usr/src/${P} and fixes symlinks. +# The package must have already installed a directory under ${D}/lib/modules. +install_kernel_sources() { + local version=$(kernelversion) + local dest_modules_dir=lib/modules/${version} + local dest_source_dir=usr/src/${P} + local dest_build_dir=${dest_source_dir}/build + + # Fix symlinks in lib/modules + ln -sfvT "../../../${dest_build_dir}" \ + "${D}/${dest_modules_dir}/build" || die + ln -sfvT "../../../${dest_source_dir}" \ + "${D}/${dest_modules_dir}/source" || die + + einfo "Installing kernel source tree" + dodir "${dest_source_dir}" + local f + for f in "${S}"/*; do + [[ "$f" == "${S}/build" ]] && continue + cp -pPR "${f}" "${D}/${dest_source_dir}" || + die "Failed to copy kernel source tree" + done + + dosym "${P}" "/usr/src/linux" + + einfo "Installing kernel build tree" + dodir "${dest_build_dir}" + cp -pPR "$(cros-workon_get_build_dir)"/{.config,.version,Makefile,Module.symvers,include} \ + "${D}/${dest_build_dir}" || die + + # Modify Makefile to use the ROOT environment variable if defined. + # This path needs to be absolute so that the build directory will + # still work if copied elsewhere. + sed -i -e "s@${S}@\$(ROOT)/${dest_source_dir}@" \ + "${D}/${dest_build_dir}/Makefile" || die +} + +get_build_cfg() { + echo "$(cros-workon_get_build_dir)/.config" +} + +get_build_arch() { + if [ "${ARCH}" = "arm" ] ; then + case "${CHROMEOS_KERNEL_SPLITCONFIG}" in + *tegra*) + echo "tegra" + ;; + *exynos*) + echo "exynos5" + ;; + *) + echo "arm" + ;; + esac + else + echo $(tc-arch-kernel) + fi +} + +# @FUNCTION: cros_chkconfig_present +# @USAGE: