WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] tools/check: check for headers and libraries in EXTR

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] tools/check: check for headers and libraries in EXTRA_INCLUDES and EXTRA_LIB
From: Roger Pau Monne <roger.pau@xxxxxxxxxxxxx>
Date: Thu, 13 Oct 2011 15:24:35 +0200
Delivery-date: Thu, 13 Oct 2011 06:25:36 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=sender:content-type:mime-version:content-transfer-encoding:subject :x-mercurial-node:message-id:user-agent:date:from:to; bh=CGbvpcpyqRU6ADP/9wglyHrqejnNICAYhLYclJynHt0=; b=rZtkvCHrT30sq1lf1oyOMghEw+q+DjqQHTtynoBU4N1H6nMqEe2jcdepEZdEdNaNji 1lMiWJDRgFyn4xyr8RKU+ROtOmhuJbB0xKvU7xNIkKz9jqhvu2Y/U9TtnTfzXjNeyqoW u2UuwRHbsLXWg8edBTOuXmGWR9PzyANCmX3zo=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mercurial-patchbomb/1.9.2
# HG changeset patch
# User Roger Pau Monne <roger.pau@xxxxxxxxxxxxx>
# Date 1318512213 -7200
# Node ID 8fe2ca552de44aa679be3184b1f98f50a00507e2
# Parent  8d316acde60f93cc8563a3c18950e9cbc3ab7fa8
tools/check: check for headers and libraries in EXTRA_INCLUDES and EXTRA_LIB

Parse EXTRA_INCLUDES and EXTRA_LIB during checks, to search for required files.

Signed-off-by: Roger Pau Monne <roger.pau@xxxxxxxxxxxxx>

diff -r 8d316acde60f -r 8fe2ca552de4 tools/check/Makefile
--- a/tools/check/Makefile      Thu Oct 13 13:59:02 2011 +0200
+++ b/tools/check/Makefile      Thu Oct 13 15:23:33 2011 +0200
@@ -7,12 +7,12 @@ all install: check-build
 # Check this machine is OK for building on.
 .PHONY: check-build
 check-build:
-       PYTHON=$(PYTHON) LIBXENAPI_BINDINGS=$(LIBXENAPI_BINDINGS) ./chk build
+       PYTHON=$(PYTHON) LIBXENAPI_BINDINGS=$(LIBXENAPI_BINDINGS) 
EXTRA_INCLUDES=$(EXTRA_INCLUDES) EXTRA_LIB=$(EXTRA_LIB) ./chk build
 
 # Check this machine is OK for installing on.
 .PHONY: check-install
 check-install:
-       PYTHON=$(PYTHON) LIBXENAPI_BINDINGS=$(LIBXENAPI_BINDINGS) ./chk install
+       PYTHON=$(PYTHON) LIBXENAPI_BINDINGS=$(LIBXENAPI_BINDINGS) 
EXTRA_INCLUDES=$(EXTRA_INCLUDES) EXTRA_LIB=$(EXTRA_LIB) ./chk install
 
 .PHONY: clean
 clean:
diff -r 8d316acde60f -r 8fe2ca552de4 tools/check/funcs.sh
--- a/tools/check/funcs.sh      Thu Oct 13 13:59:02 2011 +0200
+++ b/tools/check/funcs.sh      Thu Oct 13 15:23:33 2011 +0200
@@ -25,15 +25,23 @@ has_or_fail() {
 }
 
 has_header() {
+       check_sys_root || return 1
+
        case $1 in
                /*) ;;
-               *) set -- "/usr/include/$1" ;;
+               *)
+               if [ -r "$CROSS_SYS_ROOT/usr/include/$1" ]; then
+                       return 0
+               fi
+               for path in ${EXTRA_INCLUDES}; do
+                       if [ -r "$CROSS_SYS_ROOT${path}/$1" ]; then
+                               return 0
+                       fi
+               done
+               ;;
        esac
 
-       check_sys_root || return 1
-
-       test -r "$CROSS_SYS_ROOT$1"
-       return $?
+       return 1
 }
 
 has_lib() {
@@ -42,6 +50,7 @@ has_lib() {
        # subshell to prevent pollution of caller's environment
        (
        PATH=/sbin:$PATH        # for ldconfig
+       LIBRARIES="$EXTRA_LIB /usr/lib"
 
        # This relatively common in a sys-root; libs are installed but
        # ldconfig hasn't run there, so ldconfig -p won't work.
@@ -49,8 +58,15 @@ has_lib() {
            echo "Please run ldconfig -r \"$CROSS_SYS_ROOT\" to generate 
ld.so.cache"
            # fall through; ldconfig test below should fail
        fi
-       ldconfig -p ${CROSS_SYS_ROOT+-r "$CROSS_SYS_ROOT"} | grep -Fq "$1"
-       return $?
+       if [ "${OS}" = "Linux" ]; then
+               ldconfig -p ${CROSS_SYS_ROOT+-r "$CROSS_SYS_ROOT"} | grep -Fq 
"$1"
+               return $?
+       fi
+       if [ "${OS}" = "NetBSD" ]; then
+               ls -1 ${LIBRARIES} | grep -Fq "$1"
+               return $?
+       fi
+       return 1
        )
 }
 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel