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

Re: [Xen-devel] xen-unstable: build fails

To: Keir Fraser <keir.xen@xxxxxxxxx>
Subject: Re: [Xen-devel] xen-unstable: build fails
From: Juergen Gross <juergen.gross@xxxxxxxxxxxxxx>
Date: Thu, 17 Mar 2011 06:52:55 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 16 Mar 2011 22:53:32 -0700
Dkim-signature: v=1; a=rsa-sha256; c=simple/simple; d=ts.fujitsu.com; i=juergen.gross@xxxxxxxxxxxxxx; q=dns/txt; s=s1536b; t=1300341178; x=1331877178; h=message-id:date:from:mime-version:to:cc:subject: references:in-reply-to:content-transfer-encoding; bh=Ep0BVL9nG3IgFuL2LmtTHFYdmVlW0vZsFQc5dJawuig=; b=NaVepWkUVRbbqe/CiXeE5ux7FCjLqX0iQe0PSGiNOlxYGVmubOKDEXLJ IFXm/Mh7qD88b0Uo8xGxx6uZgAJtM2HNMgXkPGQOTR16UonNruwNKLZ4n Plwz4qxD0f9re+vnA2rLPVIhWpVFX621uziGqMVfDxj8BOopCGSpcMF5M ANiiIrJmOHjLfF0xGbl7vHK+ZTQHI+PyIN98eywFMmLxFacBGy8zzCToW KoQoYkdD1vAQYs9pMhXrI69V1erxt;
Domainkey-signature: s=s1536a; d=ts.fujitsu.com; c=nofws; q=dns; h=X-SBRSScore:X-IronPort-AV:Received:X-IronPort-AV: Received:Received:Message-ID:Date:From:Organization: User-Agent:MIME-Version:To:CC:Subject:References: In-Reply-To:Content-Type:Content-Transfer-Encoding; b=TAVeSsOZkn4eKVnqHf18JHUi37hzJ0ZDvKvXLGFzcUi9YH2yogvLjeNi 8T8TCtUeGPsEkAExXUMHZ0wfucPEpvfIPwBXdNTBAKNAs7SWd07Q9YnB/ kZYVeALHw9JMlMxqWtqmHhW4WyEDJOn6OWtsHM1nscYt8f5N4Nu9EM4Gr Epw2hvEYze11VmF6SDogz/ntx7+7eXVKtp4upCKh1Aabbw7fyGP89K07U oSo5YiAWZ5a/CHKaQZPaedKqT6eHe;
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C9A69AD8.14E9A%keir.xen@xxxxxxxxx>
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>
Organization: Fujitsu Technology Solutions
References: <C9A69AD8.14E9A%keir.xen@xxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.16) Gecko/20101226 Iceowl/1.0b1 Icedove/3.0.11
On 03/16/11 17:50, Keir Fraser wrote:
On 16/03/2011 13:50, "Juergen Gross"<juergen.gross@xxxxxxxxxxxxxx>  wrote:

Hi,

I've just set up a machine with OpenSuse 11.4 and tried to build Xen.

Under root I did:

hg clone http://xenbits.xensource.com/xen-unstable.hg
cd xen-unstable.hg
make xen

The make failed with:

make[4]: Entering directory `/root/xen-unstable.hg/xen/arch/x86/boot'
RELOC=0x7c000 make -f build32.mk reloc.S
make[5]: Entering directory `/root/xen-unstable.hg/xen/arch/x86/boot'
make[5]: *** ../../../../.config: Is a directory.  Stop.

Seems to me that /root/xen-unstable.hg/xen/arch/x86/boot/../../../../.config
resolves to /root/xen-unstable.hg/.config. Which is what is intended. Also I
tried creating a .config dir just outside my own xen-unstable repo, and
rebuoilding the hypervisor, and it works okay for me.

Okay, I checked it.
My build environment is under /root/xen-unstable.hg
I have .config directories in / and in /root
I created .config files on another machine without those directories in / and
in /root with a make error statement indicating which file is used:

make[4]: Entering directory `/root/xen-unstable.hg/xen/arch/x86/boot'
RELOC=0x7c000 make -f build32.mk reloc.S
make[5]: Entering directory `/root/xen-unstable.hg/xen/arch/x86/boot'
../../../../.config:1: *** error form /.config.  Stop.
make[5]: Leaving directory `/root/xen-unstable.hg/xen/arch/x86/boot'
make[4]: *** [reloc.S] Error 2
make[4]: Leaving directory `/root/xen-unstable.hg/xen/arch/x86/boot'
make[3]: *** [/root/xen-unstable.hg/xen/arch/x86/boot/built_in.o] Error 2
make[3]: Leaving directory `/root/xen-unstable.hg/xen/arch/x86'
make[2]: *** [/root/xen-unstable.hg/xen/xen] Error 2
make[2]: Leaving directory `/root/xen-unstable.hg/xen'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/root/xen-unstable.hg/xen'
make: *** [install-xen] Error 2


The reason is clear: XEN_ROOT is set to a *relative* path. And when make is
including a Makefile, it switches the working directory to the directory of
the included Makefile. Including another Makefile via XEN_ROOT then is the
problem...


The reason seems to be a directory /root/.config which isn't present on my
other machines.

We shouldn't be referring outside the repository. AFAICS the above logging
doesn't indicate that we are. I don't understand why you are getting that
error. I haven't been able to reproduce it.

I have :-(


fails in a similar way. Many Makefiles seem to contain lines like:

XEN_ROOT=../..

which is a really bad idea in my opinion. XEN_ROOT should only be set, if it
is not yet defined.

Why? It's private to our build system. We don't want the user screwing with
it. I also don't see why relative paths within our repository should be
avoided, as you try to do in your alternative formulation.

You have to avoid relative paths in make variables used in different directory
levels.


Juergen

--
Juergen Gross                 Principal Developer Operating Systems
TSP ES&S SWE OS6                       Telephone: +49 (0) 89 3222 2967
Fujitsu Technology Solutions              e-mail: juergen.gross@xxxxxxxxxxxxxx
Domagkstr. 28                           Internet: ts.fujitsu.com
D-80807 Muenchen                 Company details: ts.fujitsu.com/imprint.html

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