[winswitch] Build-base override not working for build_conf

Antoine Martin antoine at nagafix.co.uk
Fri Aug 29 17:00:43 BST 2014


On 29/08/14 22:37, Tim Vail wrote:
> Antoine,
>
> Nope, that change doesn't work because self.build_base is already set at
> that point to the incorrect, default directory.
Ah, my bad, from reading your original email I thought that the
build_base was not set at all on Gentoo.
It's a bit strange to see it set but to the wrong value.
> Do other distributions actually override the build directory in their
> packaging?  Try something like 
> setup.py build -b ../xpra-build 
Yes, I believe so.
> And the current effect for that with python 2.7.7 is that everything
> gets built to ../xpra-build *except* the xpra.conf file, which gets put
> in build directory within the source tree.  Is this just Gentoo or do
> other python 2.7 environments exhibit the same behavior?
I haven't bothered trying anything yet. Hence the conservative approach
to the change...

I will take a look when I get a chance.
But this will need to be verified on win32 (with py2exe and cx_freeze),
on osx (with both distutils and py2app), and on a bunch of Linuxes..
The alternative is to commit your change and wait to see which builds do
blow up..

Cheers
Antoine

>
> -Tim
>
> On Fri, 29 Aug 2014 22:02:58 +0700
> Antoine Martin <antoine at nagafix.co.uk> wrote:
>
>> On 29/08/14 20:52, Tim Vail wrote:
>>> I guess it got scrubbed.  Here is the text for it:
>>>
>>> ---- begin patch ----
>>> diff -urB xpra-0.14.4.orig/setup.py xpra-0.14.4/setup.py
>>> --- xpra-0.14.4.orig/setup.py	2014-08-28 00:09:37.000000000
>>> -0400 +++ xpra-0.14.4/setup.py	2014-08-29 08:38:31.779275727
>>> -0400 @@ -1426,7 +1426,7 @@
>>>  
>>>      class build_conf(build):
>>>          def run(self):
>>> -            build_xpra_conf(self.build_base)
>>> +
>>> build_xpra_conf(self.distribution.command_obj['build'].build_base) 
>>>      class install_data_override(install_data):
>>>          def run(self):
>>> ---- end patch ----
>> Would something like this work for you:
>> @@ -1410,7 +1410,7 @@
>>  
>>      class build_conf(build):
>>          def run(self):
>> -            build_xpra_conf(self.build_base)
>> +            build_xpra_conf(self.build_base or
>> self.distribution.command_obj['build'].build_base)
>>  
>>      class install_data_override(install_data):
>>          def run(self):
>>
>> I would prefer not having to change the current behaviour, which works
>> fine on many platforms, and only use the "build" lookup as a fallback.
>>
>> Cheers
>> Antoine
>>
>>
>>
>>> On Fri, 29 Aug 2014 20:49:10 +0700
>>> Antoine Martin <antoine at nagafix.co.uk> wrote:
>>>
>>>> Hi,
>>>>
>>>> Unless it's been scrubbed somewhere, I don't see the patch..
>>>>
>>>> Cheers
>>>> Antoine
>>>>
>>>> On 29/08/14 20:38, Tim Vail wrote:
>>>>> Hey,
>>>>>
>>>>> At least in Gentoo, the python does not copy the value of
>>>>> build_base into all the commands.  It seems like the command that
>>>>> has a valid build_base is the 'build' command.  I found that
>>>>> changing the build_xpra_conf call from the build_conf command
>>>>> override to use the build_base from the build command fixes it.
>>>>> Patch attached. Alternatively, I suppose you could look into why
>>>>> build_base isn't propagated to build_conf command.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> -Tim
>>>>> _______________________________________________
>>>>> shifter-users mailing list
>>>>> shifter-users at lists.devloop.org.uk
>>>>> http://lists.devloop.org.uk/mailman/listinfo/shifter-users




More information about the shifter-users mailing list