diff options
Diffstat (limited to 'scripts/poky-env-internal')
| -rwxr-xr-x | scripts/poky-env-internal | 49 |
1 files changed, 31 insertions, 18 deletions
diff --git a/scripts/poky-env-internal b/scripts/poky-env-internal index 54b6ee8964..862ce7aec2 100755 --- a/scripts/poky-env-internal +++ b/scripts/poky-env-internal | |||
| @@ -19,19 +19,30 @@ | |||
| 19 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 19 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| 20 | 20 | ||
| 21 | 21 | ||
| 22 | # Change this to the location of this file. | 22 | # scripts/ is a sub-directory of OEROOT, we use readlink to get the full path |
| 23 | # Also update the locations at the top of conf/local.conf | 23 | SCRIPTPATH=`readlink -f "$BASH_SOURCE"` |
| 24 | OEROOT="`dirname $SCRIPTPATH`/../" | ||
| 24 | 25 | ||
| 25 | OEROOT=`pwd` | ||
| 26 | if [ "x$BDIR" = "x" ]; then | 26 | if [ "x$BDIR" = "x" ]; then |
| 27 | if [ "x$1" = "x" ]; then | 27 | if [ "x$1" = "x" ]; then |
| 28 | BDIR="build" | 28 | BDIR="build" |
| 29 | else | 29 | else |
| 30 | BDIR="$1" | 30 | BDIR=`readlink -f "$1"` |
| 31 | fi | 31 | fi |
| 32 | fi | ||
| 33 | if [[ "$BDIR" = /* ]] ; then | ||
| 34 | BUILDDIR="$BDIR" | ||
| 35 | else | ||
| 36 | BUILDDIR="`pwd`/$BDIR" | ||
| 32 | fi | 37 | fi |
| 33 | BUILDDIR="$OEROOT/$BDIR/" | ||
| 34 | unset BDIR | 38 | unset BDIR |
| 39 | |||
| 40 | mkdir -p $BUILDDIR/conf | ||
| 41 | if ! (test -w "$BUILDDIR"); then | ||
| 42 | echo >&2 "Error: Cannot write to $BUILDDIR, perhaps try sourcing with a writable path? i.e. . poky-init-build-env ~/my-build" | ||
| 43 | return | ||
| 44 | fi | ||
| 45 | |||
| 35 | BITBAKEDIR="$OEROOT/bitbake$BBEXTRA/" | 46 | BITBAKEDIR="$OEROOT/bitbake$BBEXTRA/" |
| 36 | PKGDIR="$OEROOT/meta/" | 47 | PKGDIR="$OEROOT/meta/" |
| 37 | BBPATH="$BITBAKEDIR $PKGDIR" | 48 | BBPATH="$BITBAKEDIR $PKGDIR" |
| @@ -51,9 +62,8 @@ do | |||
| 51 | continue | 62 | continue |
| 52 | fi | 63 | fi |
| 53 | if [ -e $OEROOT/$repo/poky-extra-environment ]; then | 64 | if [ -e $OEROOT/$repo/poky-extra-environment ]; then |
| 54 | . $OEROOT/$repo/poky-extra-environment | 65 | . $OEROOT/$repo/poky-extra-environment |
| 55 | fi | 66 | fi |
| 56 | BBPATH=" $BBPATH $OEROOT/$repo" | ||
| 57 | done | 67 | done |
| 58 | 68 | ||
| 59 | BBPATH="$BBPATH $HOME/.oe $HOME/.poky $BUILDDIR" | 69 | BBPATH="$BBPATH $HOME/.oe $HOME/.poky $BUILDDIR" |
| @@ -78,12 +88,13 @@ BUILD_SYS="$BUILD_ARCH-$BUILD_OS" | |||
| 78 | 88 | ||
| 79 | PATH="$BITBAKEDIR/bin/:$OEROOT/scripts:$PATH" | 89 | PATH="$BITBAKEDIR/bin/:$OEROOT/scripts:$PATH" |
| 80 | 90 | ||
| 81 | cd "$BUILDDIR" | ||
| 82 | |||
| 83 | # Remove any symlinks from paths | 91 | # Remove any symlinks from paths |
| 84 | BITBAKEDIR=`readlink -f "$BITBAKEDIR"` | 92 | BITBAKEDIR=`readlink -f "$BITBAKEDIR"` |
| 85 | PKGDIR=`readlink -f "$PKGDIR"` | 93 | PKGDIR=`readlink -f "$PKGDIR"` |
| 86 | BUILDDIR=`readlink -f "$BUILDDIR"` | 94 | BUILDDIR=`readlink -f "$BUILDDIR"` |
| 95 | OEROOT=`readlink -f "$OEROOT"` | ||
| 96 | |||
| 97 | cd "$BUILDDIR" | ||
| 87 | 98 | ||
| 88 | if ! (test -d "$BITBAKEDIR" && test -d "$PKGDIR" && test -d "$BUILDDIR"); then | 99 | if ! (test -d "$BITBAKEDIR" && test -d "$PKGDIR" && test -d "$BUILDDIR"); then |
| 89 | echo >&2 "Error: Not all directories exist! Did you run this script in poky directory?" | 100 | echo >&2 "Error: Not all directories exist! Did you run this script in poky directory?" |
| @@ -91,7 +102,7 @@ if ! (test -d "$BITBAKEDIR" && test -d "$PKGDIR" && test -d "$BUILDDIR"); then | |||
| 91 | fi | 102 | fi |
| 92 | 103 | ||
| 93 | if [ "x" = "x$POKYLOCALCONF" ]; then | 104 | if [ "x" = "x$POKYLOCALCONF" ]; then |
| 94 | POKYLOCALCONF="$BUILDDIR/conf/local.conf.sample" | 105 | POKYLOCALCONF="$OEROOT/build/conf/local.conf.sample" |
| 95 | fi | 106 | fi |
| 96 | if ! (test -r "$BUILDDIR/conf/local.conf"); then | 107 | if ! (test -r "$BUILDDIR/conf/local.conf"); then |
| 97 | echo "You had no conf/local.conf file. Poky has created this configuration file for you" | 108 | echo "You had no conf/local.conf file. Poky has created this configuration file for you" |
| @@ -105,17 +116,19 @@ if ! (test -r "$BUILDDIR/conf/local.conf"); then | |||
| 105 | fi | 116 | fi |
| 106 | 117 | ||
| 107 | if [ "x" = "x$POKYLAYERCONF" ]; then | 118 | if [ "x" = "x$POKYLAYERCONF" ]; then |
| 108 | POKYLAYERCONF="$BUILDDIR/conf/bblayers.conf.sample" | 119 | POKYLAYERCONF="$OEROOT/build/conf/bblayers.conf.sample" |
| 109 | fi | 120 | fi |
| 110 | if ! (test -r "$BUILDDIR/conf/bblayers.conf"); then | 121 | if ! (test -r "$BUILDDIR/conf/bblayers.conf"); then |
| 111 | cp -f $POKYLAYERCONF $BUILDDIR/conf/bblayers.conf | 122 | # Put the abosolute path to the layers in bblayers.conf so we can run |
| 123 | # bitbake without the init script after the first run | ||
| 124 | sed "s|##POKYBASE##|$OEROOT|g" $POKYLAYERCONF > $BUILDDIR/conf/bblayers.conf | ||
| 112 | fi | 125 | fi |
| 113 | 126 | ||
| 114 | # Prevent disturbing a new GIT clone in same console | 127 | # Prevent disturbing a new GIT clone in same console |
| 115 | unset POKYLOCALCONF | 128 | unset POKYLOCALCONF |
| 116 | unset POKYLAYERCONF | 129 | unset POKYLAYERCONF |
| 117 | 130 | ||
| 118 | export BBPATH OEROOT BUILD_SYS BUILDDIR | 131 | export BBPATH BUILD_SYS BUILDDIR |
| 119 | 132 | ||
| 120 | # Kill off the TERMINFO variable, as glibc will grab its contents in its 'make | 133 | # Kill off the TERMINFO variable, as glibc will grab its contents in its 'make |
| 121 | # install' if set | 134 | # install' if set |
| @@ -141,4 +154,4 @@ echo "Common targets are poky-image-minimal, poky-image-sato, meta-toolchain or | |||
| 141 | echo | 154 | echo |
| 142 | echo "You can also run generated qemu images with a command like 'runqemu qemux86'" | 155 | echo "You can also run generated qemu images with a command like 'runqemu qemux86'" |
| 143 | 156 | ||
| 144 | export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC OEROOT http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS" | 157 | export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS" |
