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" |