Patchwork [1/2] runqemu: Fix running qemu when build without gl

login
register
mail settings
Submitter Khem Raj
Date July 10, 2012, 5:07 p.m.
Message ID <1341940070-27715-1-git-send-email-raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/31695/
State Accepted
Commit 6612873dc59054e6d37fa7488226218bfb759127
Headers show

Comments

Khem Raj - July 10, 2012, 5:07 p.m.
When gl is disabled in PACKAGECONFIG then we dont need
to check for supporting libs to be present before running
qemu.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 scripts/runqemu          |   14 --------------
 scripts/runqemu-internal |   17 +++++++++++++++++
 2 files changed, 17 insertions(+), 14 deletions(-)
Saul Wold - July 17, 2012, 4:03 p.m.
On 07/10/2012 10:07 AM, Khem Raj wrote:
> When gl is disabled in PACKAGECONFIG then we dont need
> to check for supporting libs to be present before running
> qemu.
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   scripts/runqemu          |   14 --------------
>   scripts/runqemu-internal |   17 +++++++++++++++++
>   2 files changed, 17 insertions(+), 14 deletions(-)
>
> diff --git a/scripts/runqemu b/scripts/runqemu
> index 8d149a2..0b547f2 100755
> --- a/scripts/runqemu
> +++ b/scripts/runqemu
> @@ -384,20 +384,6 @@ echo "FSTYPE: [$FSTYPE]"
>   setup_sysroot
>   # OECORE_NATIVE_SYSROOT is now set for all cases
>
> -# We can't run without a libGL.so
> -libgl='no'
> -
> -[ -e /usr/lib/libGL.so -a -e /usr/lib/libGLU.so ] && libgl='yes'
> -[ -e /usr/lib64/libGL.so -a -e /usr/lib64/libGLU.so ] && libgl='yes'
> -[ -e /usr/lib/*-linux-gnu/libGL.so -a -e /usr/lib/*-linux-gnu/libGLU.so ] && libgl='yes'
> -
> -if [ "$libgl" != 'yes' ]; then
> -    echo "You need libGL.so and libGLU.so to exist in your library path to run the QEMU emulator.
> -    Ubuntu package names are: libgl1-mesa-dev and libglu1-mesa-dev.
> -    Fedora package names are: mesa-libGL-devel mesa-libGLU-devel."
> -    exit 1;
> -fi
> -
>   INTERNAL_SCRIPT="$0-internal"
>   if [ ! -f "$INTERNAL_SCRIPT" -o ! -r "$INTERNAL_SCRIPT" ]; then
>   INTERNAL_SCRIPT=`which runqemu-internal`
> diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
> index 041464d..2598800 100755
> --- a/scripts/runqemu-internal
> +++ b/scripts/runqemu-internal
> @@ -467,6 +467,23 @@ if [ ! -x "$QEMUBIN" ]; then
>       return
>   fi
>
> +NEED_GL=`ldd $QEMUBIN/$QEMU 2>&1 | grep libGLU`
> +# We can't run without a libGL.so
> +if [ "$NEED_GL" != "" ]; then
> +    libgl='no'
> +
> +    [ -e /usr/lib/libGL.so -a -e /usr/lib/libGLU.so ] && libgl='yes'
> +    [ -e /usr/lib64/libGL.so -a -e /usr/lib64/libGLU.so ] && libgl='yes'
> +    [ -e /usr/lib/*-linux-gnu/libGL.so -a -e /usr/lib/*-linux-gnu/libGLU.so ] && libgl='yes'
> +
> +    if [ "$libgl" != 'yes' ]; then
> +        echo "You need libGL.so and libGLU.so to exist in your library path to run the QEMU emulator.
> +        Ubuntu package names are: libgl1-mesa-dev and libglu1-mesa-dev.
> +        Fedora package names are: mesa-libGL-devel mesa-libGLU-devel."
> +        exit 1;
> +    fi
> +fi
> +
>   do_quit() {
>       if [ -n "$PIDFILE" ]; then
>           #echo kill `cat $PIDFILE`
>

Merged this patch into OE-Core

Thanks
	Sau!

Patch

diff --git a/scripts/runqemu b/scripts/runqemu
index 8d149a2..0b547f2 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -384,20 +384,6 @@  echo "FSTYPE: [$FSTYPE]"
 setup_sysroot
 # OECORE_NATIVE_SYSROOT is now set for all cases
 
-# We can't run without a libGL.so
-libgl='no'
-
-[ -e /usr/lib/libGL.so -a -e /usr/lib/libGLU.so ] && libgl='yes'
-[ -e /usr/lib64/libGL.so -a -e /usr/lib64/libGLU.so ] && libgl='yes'
-[ -e /usr/lib/*-linux-gnu/libGL.so -a -e /usr/lib/*-linux-gnu/libGLU.so ] && libgl='yes'
-
-if [ "$libgl" != 'yes' ]; then
-    echo "You need libGL.so and libGLU.so to exist in your library path to run the QEMU emulator.
-    Ubuntu package names are: libgl1-mesa-dev and libglu1-mesa-dev.
-    Fedora package names are: mesa-libGL-devel mesa-libGLU-devel."
-    exit 1;
-fi
-
 INTERNAL_SCRIPT="$0-internal"
 if [ ! -f "$INTERNAL_SCRIPT" -o ! -r "$INTERNAL_SCRIPT" ]; then
 INTERNAL_SCRIPT=`which runqemu-internal`
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 041464d..2598800 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -467,6 +467,23 @@  if [ ! -x "$QEMUBIN" ]; then
     return
 fi
 
+NEED_GL=`ldd $QEMUBIN/$QEMU 2>&1 | grep libGLU`
+# We can't run without a libGL.so
+if [ "$NEED_GL" != "" ]; then
+    libgl='no'
+
+    [ -e /usr/lib/libGL.so -a -e /usr/lib/libGLU.so ] && libgl='yes'
+    [ -e /usr/lib64/libGL.so -a -e /usr/lib64/libGLU.so ] && libgl='yes'
+    [ -e /usr/lib/*-linux-gnu/libGL.so -a -e /usr/lib/*-linux-gnu/libGLU.so ] && libgl='yes'
+
+    if [ "$libgl" != 'yes' ]; then
+        echo "You need libGL.so and libGLU.so to exist in your library path to run the QEMU emulator.
+        Ubuntu package names are: libgl1-mesa-dev and libglu1-mesa-dev.
+        Fedora package names are: mesa-libGL-devel mesa-libGLU-devel."
+        exit 1;
+    fi
+fi
+
 do_quit() {
     if [ -n "$PIDFILE" ]; then
         #echo kill `cat $PIDFILE`