All of lore.kernel.org
 help / color / mirror / Atom feed
From: Roger Pau Monne <roger.pau@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Christoph Egger <Christoph.Egger@amd.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [PATCH v2 3/4] python: set absolute path to libxl.h on _pyxl_types.c
Date: Thu, 17 May 2012 15:02:28 +0100	[thread overview]
Message-ID: <4FB504F4.5050408@citrix.com> (raw)
In-Reply-To: <1337261146.7781.75.camel@zakaz.uk.xensource.com>

Ian Campbell wrote:
> On Thu, 2012-05-17 at 13:16 +0100, Roger Pau Monne wrote:
>> genwrap.py generates _pyxl_types.c, which includes libxl.h, but if
>> libxl.h is already present in the include search path, the old one was
>> included instead of the new one, giving compilation errors. Since
>> _pyxl_types.c is generated at compilation time, we can safely set
>> the path to libxl.h include.
>>
>> I've only experienced this problem when compiling Xen on NetBSD with
>> old header files in the include path, Linux seems to not have this
>> problem.
>
> Should this be include<>  and not "", since libxl.h isn't in the current
> dir in this case?
>
> Is the right fix to make sure that the in-tree -I lines come first?
> Ian.

Actually I'm not sure if it's possible to make sure the in-tree -I lines 
come first, because the gcc options are automatically generated by 
python build tools (distutils & friends...), so we cannot touch much of 
this (I've looked at distutils.core options, and it seems to be no way 
of setting an order on compiler options, but I'm no expert on python C 
extensions building), so unless we craft our own makefile to build this 
python stuff I think we are stuck with something like this.

>
>> Cc: Ian Jackson<ian.jackson@citrix.com>
>> Cc: Christoph Egger<Christoph.Egger@amd.com>
>> Signed-off-by: Roger Pau Monne<roger.pau@citrix.com>
>> ---
>>   tools/python/genwrap.py |    6 ++++--
>>   1 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/python/genwrap.py b/tools/python/genwrap.py
>> index af8a5e9..0d7cc98 100644
>> --- a/tools/python/genwrap.py
>> +++ b/tools/python/genwrap.py
>> @@ -309,10 +309,12 @@ _hidden int genwrap__defbool_set(PyObject *v, libxl_defbool *db);
>>   #include<stdint.h>
>>   #include<stdlib.h>
>>   #include<stdio.h>
>> -#include "libxl.h" /* gah */
>> +#include "%s" /* gah */
>>   #include "%s"
>>
>> -""" % tuple((' '.join(sys.argv),) + (os.path.split(decls)[-1:]),))
>> +""" % tuple((' '.join(sys.argv),) +
>> +            (os.path.dirname(sys.argv[1]) + "/libxl.h",) +
>> +            (os.path.split(decls)[-1:]),))
>>       for ty in types:
>>           if ty.private:
>>               continue
>
>

  reply	other threads:[~2012-05-17 14:02 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-17 12:16 [PATCH v2 1/4] build/tools: disable libvchan build on NetBSD Roger Pau Monne
2012-05-17 12:16 ` [PATCH v2 2/4] autoconf: correctly parse *_INCLUDES and *_LIB env vars Roger Pau Monne
2012-05-17 12:16 ` [PATCH v2 3/4] python: set absolute path to libxl.h on _pyxl_types.c Roger Pau Monne
2012-05-17 13:25   ` Ian Campbell
2012-05-17 14:02     ` Roger Pau Monne [this message]
2012-05-17 14:38       ` Ian Campbell
2012-05-17 15:10         ` Roger Pau Monne
2012-05-17 15:14           ` Ian Campbell
2012-05-18  8:37             ` Christoph Egger
2012-05-18  8:41               ` Ian Campbell
2012-05-18  8:44               ` Roger Pau Monne
2012-05-18  8:41             ` Roger Pau Monne
2012-05-18  8:52               ` Ian Campbell
2012-05-18  9:14                 ` Roger Pau Monne
2012-05-18  9:25                   ` Ian Campbell
2012-05-18 11:13   ` Ian Jackson
2012-05-18 11:17     ` Roger Pau Monne
2012-05-17 12:16 ` [PATCH v2 4/4] tools/build: change order of config/Tools.mk inclusion Roger Pau Monne
2012-05-18 11:17   ` Ian Jackson
2012-05-18 11:29     ` Roger Pau Monne
2012-05-18 11:46       ` Ian Jackson
2012-05-18 11:52         ` Christoph Egger
2012-05-18 11:59         ` Roger Pau Monne
2012-05-18 13:30           ` Ian Jackson
2012-05-18 14:08             ` Christoph Egger
2012-05-22 14:48               ` Roger Pau Monne
2012-05-17 13:22 ` [PATCH v2 1/4] build/tools: disable libvchan build on NetBSD Ian Campbell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FB504F4.5050408@citrix.com \
    --to=roger.pau@citrix.com \
    --cc=Christoph.Egger@amd.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.