]> code.ossystems Code Review - openembedded-core.git/commitdiff
scripts: add qemux86-64 support to the qemu scripts
authorJoshua Lock <josh@linux.intel.com>
Mon, 2 Aug 2010 16:54:03 +0000 (17:54 +0100)
committerJoshua Lock <josh@linux.intel.com>
Mon, 2 Aug 2010 16:54:20 +0000 (17:54 +0100)
Signed-off-by: Joshua Lock <josh@linux.intel.com>
scripts/poky-qemu-internal
scripts/runqemu

index 6c49ddeaf994f2123285a3b280528e072a02ad19..62c64727c0d0d9b8f455f0fe85377bc9cf484e4e 100755 (executable)
@@ -35,6 +35,9 @@ if [ -z "$QEMU_MEMORY" ]; then
                "qemux86")
                        QEMU_MEMORY="128M"
                        ;;
+               "qemux86-64")
+                       QEMU_MEMORY="128M"
+                       ;;
                "qemumips")
                        QEMU_MEMORY="128M"
                        ;;
@@ -68,6 +71,7 @@ case "$MACHINE" in
        "qemuarmv6") ;;
        "qemuarmv7") ;;
        "qemux86") ;;
+        "qemux86-64") ;;
        "akita") ;;
        "spitz") ;;
        "nokia800") ;;
@@ -136,6 +140,26 @@ if [ "$MACHINE" = "qemux86" ]; then
     fi
 fi
 
+if [ "$MACHINE" = "qemux86-64" ]; then
+    QEMU=qemu-system-x86_64
+    QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -vga vmware -enable-gl"
+    if [ "$TYPE" = "ext3" ]; then
+        KERNCMDLINE="vga=0 root=/dev/hda mem=$QEMU_MEMORY $KERNEL_NETWORK_CMD"
+        QEMUOPTIONS="$QEMU_NETWORK_CMD -hda $HDIMAGE $QEMU_UI_OPTIONS"
+    fi
+    if [ "$TYPE" = "nfs" ]; then
+        if [ "x$HDIMAGE" = "x" ]; then
+            HDIMAGE=/srv/nfs/qemux86-64
+        fi
+        if [ ! -d "$HDIMAGE" ]; then
+            echo "Error: NFS mount point $HDIMAGE doesn't exist."
+            return
+        fi
+        KERNCMDLINE="root=/dev/nfs nfsroot=192.168.7.1:$HDIMAGE rw $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+        QEMUOPTIONS="$QEMU_NETWORK_CMD $QEMU_UI_OPTIONS"
+    fi
+fi
+
 if [ "$MACHINE" = "spitz" ]; then
     QEMU=qemu-system-arm
     if [ "$TYPE" = "ext3" ]; then
@@ -231,14 +255,19 @@ if [ "x$QEMUOPTIONS" = "x" ]; then
     return
 fi
 
-SDKDIR="/usr/local/poky/eabi-glibc"
+SDKDIR="/opt/poky/sysroots"
 if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "spitz" -o "$MACHINE" = "borzoi" -o "$MACHINE" = "akita" -o "$MACHINE" = "nokia800" ]; then
-    SDKPATH="$SDKDIR/arm/arm-poky-linux-gnueabi/bin:$SDKDIR/arm/bin"
+    SDKPATH="$SDKDIR/arm-poky-linux-gnueabi/bin"
 fi
 
 if [ "$MACHINE" = "qemux86" ]; then
-    SDKPATH="$SDKDIR/i586/i586-poky-linux/bin:$SDKDIR/i586/bin"
+    SDKPATH="$SDKDIR/i586-poky-linux/bin"
 fi
+
+if [ "$MACHINE" = "qemux86-64" ]; then
+    SDKPATH="$SDKDIR/x86_64-poky-linux/bin"
+fi
+
 PATH=$CROSSPATH:$SDKPATH:$PATH
 
 QEMUBIN=`which $QEMU`
index c45b2a1c86fcc5bf7824327d55d604a4e6d95cd2..53ef5a5efb28221ea55957f571e701aab4c69135 100755 (executable)
@@ -85,7 +85,7 @@ if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "spitz" -o "$MACHINE" = "borzoi" -o
     if [ "x$ZIMAGE" = "x" ]; then
         ZIMAGE=$TMPDIR/deploy/images/zImage-$MACHINE.bin
     fi
-    CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/arm-poky-linux-gnueabi/bin
+    CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/bin
 fi
 
 function findimage {
@@ -182,22 +182,37 @@ if [ "$MACHINE" = "qemux86" ]; then
     CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/usr
 fi
 
+if [ "$MACHINE" = "qemux86-64" ]; then
+    if [ "x$ZIMAGE" = "x" ]; then
+        ZIMAGE=$TMPDIR/deploy/images/bzImage-$MACHINE.bin
+    fi
+    if [ "$TYPE" = "ext3" ]; then
+        if [ "x$HDIMAGE" = "x" ]; then
+            T=$TMPDIR/deploy/images
+            findimage $T qemux86-64 ext3 "moblin-image-sdk moblin-image-netbook poky-image-sdk poky-image-sato poky-image-minimal"
+        fi
+    fi
+    CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/usr
+fi
+
 if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "spitz" -o "$MACHINE" = "borzoi" -o "$MACHINE" = "akita" -o "$MACHINE" = "nokia800" ]; then
     TARGET_SYS="arm-poky-linux"
 elif [ "$MACHINE" = "qemux86" ]; then
     TARGET_SYS="i586-poky-linux"
+elif [ "$MACHINE" = "qemux86-64" ]; then
+    TARGET_SYS="x86_64-poky-linux"
 elif [ "$MACHINE" = "qemumips" ]; then
     TARGET_SYS="mips-poky-linux"
 fi
 
-if [ ! -e $CROSSPATH/$TARGET_SYS/bin/cc ]; then
-   ln -s $CROSSPATH/bin/$TARGET_SYS-gcc $CROSSPATH/$TARGET_SYS/bin/cc
+if [ ! -e $CROSSPATH/bin/cc ]; then
+   ln -s $CROSSPATH/bin/$TARGET_SYS-gcc $CROSSPATH/bin/cc
 fi
 
-if [ ! -e $CROSSPATH/$TARGET_SYS/bin/gcc ]; then
-   ln -s $CROSSPATH/bin/$TARGET_SYS-gcc $CROSSPATH/$TARGET_SYS/bin/gcc
+if [ ! -e $CROSSPATH/bin/gcc ]; then
+   ln -s $CROSSPATH/bin/$TARGET_SYS-gcc $CROSSPATH/bin/gcc
 fi
 
-CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/usr/bin:$CROSSPATH:$TMPDIR/cross/bin
+CROSSPATH=$TMPDIR/sysroots/$BUILD_SYS/usr/bin:$CROSSPATH
 
 . $INTERNAL_SCRIPT