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-ia64-devel

RE: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?

To: "Tian, Kevin" <kevin.tian@xxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?
From: "Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@xxxxxx>
Date: Wed, 24 Aug 2005 09:09:35 -0700
Delivery-date: Wed, 24 Aug 2005 16:08:03 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: DIscussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcWoO0MmewKqoSDyTgm0Dn/KLNCw2QAc32mQAARhhfAAAMtokAAAaUHw
Thread-topic: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?
Yes the build breaks very quickly when XEN_PATH doesn't
exist.  However as I said the error messages are not
at all clear, nor is the fix.  Since we would like
our bits to be used by more users/developers, we should
try to find common build-error problems as, if someone
can't even build Xen/ia64, they certainly aren't going
to try to use it.

My situation was complicated because I manually specified
XEN_PATH and it *did* exist and the symbolic link was
created (as shown by "ls include/asm/xen/asm-xsi-offsets.h").
But I didn't understand the problem until I did
"ls -l include/asm/xen/asm-xsi-offsets.h" (fortunately
with colorls) and saw that the link was broken.  And
even then the problem was not clear as the file the
link was made to *did* exist... just not from the
context of gcc when it was building.

In any case, yes it was my pilot error, but it is
likely to be a common error (at least as common as
was forgetting to run mkbuildtree... and I know we all
have done that a few times) and so the build scripts
could/should be made more user-friendly.

Dan

> -----Original Message-----
> From: Tian, Kevin [mailto:kevin.tian@xxxxxxxxx] 
> Sent: Wednesday, August 24, 2005 9:57 AM
> To: Magenheimer, Dan (HP Labs Fort Collins); 
> xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: RE: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?
> 
> >From: Magenheimer, Dan (HP Labs Fort Collins)
> >
> >Thanks, this looks like a good addition.  However my
> >problem was different... I neglected to specify a
> >fully-qualified pathname for XEN_PATH so the resulting
> >output and softlinks were very confused.
> 
> If the designated pathname by XEN_PATH doesn't exist, it's 
> easy to find such problem by simply make which should fail 
> immediately since required header files don't exist by 
> following wrong symbolic link. Then you can easily "make 
> clean" again and then "make XEN_PATH=right_path_name" to try 
> it out finally. In this special case here, even compiling 
> first *.c file will give you error since asm-xsi-offsets.h is 
> required as a fundamental header file. ;-)
> 
> Thanks,
> Kevin
> >
> >Perhaps the following from xenlinux/arch/ia64/Makefile:
> >
> >        [ -e include/asm-xen/asm ] \
> >         || ln -s asm-ia64 include/asm-xen/asm
> >        [ -e include/asm-xen/xen-public ] \
> >         || ln -s $(XEN_PATH)/xen/include/public \
> >                include/asm-xen/xen-public
> >        [ -e include/asm-ia64/xen/asm-xsi-offsets.h ] \
> >         || ln -s 
> $(XEN_PATH)/xen/include/asm-ia64/asm-xsi-offsets.h \
> >                include/asm-ia64/xen/asm-xsi-offsets.h
> >
> >should instead be moved into a xenlinux/arch/ia64/xen/mkprep
> >script which could be made more robust, e.g. should check
> >that the links are made to real files.  I can imagine
> >that with this new interdependency between the xenlinux
> >directory and the xen directory, not having the directories
> >in the right places (relative to each other) would be a
> >very common error and -- speaking from experience -- the
> >fix is not at all obvious.
> >
> >In fact, the execution of mkprep probably should be done
> >in xenlinux/arch/ia64/xen/Makefile.  (And can the
> >CLEAN_FILES addition then be moved there as well?)
> >
> >Any script/Makefile experts want to give this a shot?
> >
> >Thanks,
> >Dan
> >
> >> -----Original Message-----
> >> From: Tian, Kevin [mailto:kevin.tian@xxxxxxxxx]
> >> Sent: Wednesday, August 24, 2005 7:26 AM
> >> To: Magenheimer, Dan (HP Labs Fort Collins);
> >> xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> >> Subject: RE: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?
> >>
> >> I tried following diff, and all necessary symbol linkss 
> can be removed
> >> when "make clean". Then you can use "make XEN_PATH=..." to
> >> link new xen
> >> headerss again:
> >>
> >> --- a/arch/ia64/Makefile        Fri Aug 12 21:15:45 2005
> >> +++ b/arch/ia64/Makefile        Wed Aug 24 21:11:29 2005
> >> @@ -87,6 +87,7 @@
> >>         $(Q)$(MAKE) $(clean)=$(boot)
> >>
> >>  CLEAN_FILES += include/asm-ia64/.offsets.h.stamp vmlinux.gz
> >> bootloader
> >> +CLEAN_FILES += include/asm-xen/xen-public
> >> include/asm-ia64/xen/asm-xsi-offsets.h
> >>
> >>  MRPROPER_FILES += include/asm-ia64/offsets.h
> >>
> >> Thanks,
> >> Kevin
> >>
> >> >-----Original Message-----
> >> >From: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
> >> >[mailto:xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
> >> >Magenheimer, Dan (HP Labs Fort Collins)
> >> >Sent: Wednesday, August 24, 2005 7:35 AM
> >> >To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> >> >Subject: [Xen-ia64-devel] How to clean xenlinux-ia64-2.6.12.hg?
> >> >
> >> >Because I am trying to build xenlinux against
> >> >multiple Xen trees, I need to clean the xenlinux
> >> >tree, then rebuild.  Make clean doesn't seem
> >> >to clean everything.  Indeed, I can't seem to
> >> >(quickly) find an algorithm of which files to
> >> >delete that, when combined with "make clean"
> >> >will allow me to rebuild.
> >> >
> >> >Is the makefile code to check/ln various files
> >> >from the xen directory incorrect or incomplete?
> >> >Is there a "rm xxx yyy zzz" that will remove
> >> >all the files so that (with make clean) I
> >> >can rebuild using a different XEN_PATH?
> >> >Doing a "rm -fr *; hg co -C"
> >> >is an option (I think) but takes forever.
> >> >
> >> >Thanks,
> >> >Dan
> >> >
> >> >_______________________________________________
> >> >Xen-ia64-devel mailing list
> >> >Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> >> >http://lists.xensource.com/xen-ia64-devel
> >>
> 

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

<Prev in Thread] Current Thread [Next in Thread>