| # Copyright (c) 2009 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. |
| |
| # NOTE: This assumes that the following have already been defined: |
| # { ROOT, ARCH, CHOST, [BOARD_OVERLAY] } |
| |
| # TODO: This will have to come from somewhere else when we support a 32-bit |
| # build host environment. |
| CBUILD=x86_64-pc-linux-gnu |
| HOSTCC=x86_64-pc-linux-gnu-gcc |
| |
| LDFLAGS="-Wl,-O2 -Wl,--as-needed" |
| |
| ACCEPT_KEYWORDS="${ARCH}" |
| USE="${ARCH} zlib bindist cros-debug -introspection platform2" |
| |
| # Be sure we don't overwrite pkgs from another sysroot. |
| PKGDIR=${ROOT}packages/ |
| PORTAGE_TMPDIR=${ROOT}tmp/ |
| |
| PORT_LOGDIR=${ROOT}tmp/portage/logs/ |
| |
| FEATURES="allow-missing-manifests buildpkg clean-logs -collision-protect |
| -ebuild-locks force-mirror nodoc noinfo noman -merge-sync |
| parallel-install -preserve-libs sandbox splitdebug -strict userfetch |
| userpriv usersandbox -unknown-features-warn" |
| |
| PORTAGE_WORKDIR_MODE="0755" |
| PKG_CONFIG_PATH="${ROOT}usr/lib/pkgconfig/:${ROOT}usr/share/pkgconfig/" |
| ELIBC="glibc" |
| |
| PORTDIR="/usr/local/portage/stable" |
| |
| PORTDIR_OVERLAY=" |
| /usr/local/portage/chromiumos |
| ${BOARD_OVERLAY} |
| " |
| |
| # Adding packages to the @world set causes people more trouble than it's |
| # worth in our setup -- we rarely have people add custom packages outside |
| # of the ChromiumOS set. You can use "--select" to override this. |
| EMERGE_DEFAULT_OPTS="--oneshot" |
| |
| # Use parallel bzip2 for portage if available |
| PORTAGE_BZIP2_COMMAND="pbzip2" |
| PORTAGE_BUNZIP2_COMMAND="pbunzip2 --ignore-trailing-garbage=1" |
| |
| FETCHCOMMAND_GS="bash -c 'BOTO_CONFIG=/home/\${PORTAGE_USERNAME}/.boto /mnt/host/source/chromite/bin/gs_fetch_binpkg \"${URI}\" \"${DISTDIR}/${FILE}\"'" |
| RESUMECOMMAND_GS="${FETCHCOMMAND_GS}" |
| |
| FETCHCOMMAND='curl --ipv4 -y 30 -f --retry 9 -L --output \${DISTDIR}/\${FILE} \${URI}' |
| RESUMECOMMAND='curl --ipv4 -y 30 -f -C - --retry 9 -L --output \${DISTDIR}/\${FILE} \${URI}' |
| |
| # Print a checkpoint message every 10MB while archiving. |
| PORTAGE_BINPKG_TAR_OPTS="--checkpoint=1000" |
| |
| # Since our portage comes from version control, we redirect distfiles. |
| DISTDIR="/var/lib/portage/distfiles-target" |
| |
| # Our chromium mirror should be more stable since we won't discard packages. |
| GENTOO_MIRRORS="https://commondatastorage.googleapis.com/chromeos-localmirror" |
| GENTOO_MIRRORS="$GENTOO_MIRRORS https://commondatastorage.googleapis.com/chromeos-mirror/gentoo" |
| |
| # Username and home directory of the shared user. |
| SHARED_USER_NAME="chronos" |
| SHARED_USER_HOME="/home/chronos/user" |
| SHARED_USER_PASSWD_FILE="/etc/shared_user_passwd.txt" |
| |
| # the AC_FUNC_WAIT3 macro uses runtime-checks for the function, which |
| # doesn't work when cross-compiling; we know that our targets have it, |
| # so let's tell about it to autoconf. — Flameeyes |
| ac_cv_func_wait3_rusage=yes |
| |
| # When building packages for the target, we need to search the target's |
| # sysroot for additional m4 files. The autotools.eclass uses this. |
| AT_SYS_M4DIR="\${SYSROOT}/usr/share/aclocal" |
| |
| # Native language support is handled inside Chrome itself. |
| LINGUAS="en" |
| |
| # Remove all .la files for non-plugin libraries. |
| # Remove Gentoo init files since we use upstart. |
| # Remove logrotate.d files since we don't use logrotate. |
| # Remove sandbox files since we don't use that in the sysroot. |
| # Remove bash-completion files as we don't install bash-completion. |
| INSTALL_MASK=" |
| /usr/lib*/*.la |
| /etc/init.d /etc/conf.d |
| /etc/logrotate.d |
| /etc/sandbox.d |
| /usr/share/bash-completion |
| " |
| PKG_INSTALL_MASK="${INSTALL_MASK}" |