[PATCHv2 1-14/14] Re: Disabling Python Modules

Ian Stakenvicius axs at gentoo.org
Tue Feb 21 05:01:15 UTC 2017


On 20/02/17 10:35 PM, Amitay Isaacs wrote:
> On Sun, Feb 19, 2017 at 9:03 PM, Andrew Bartlett <abartlet at samba.org> wrote:
> 
>> On Mon, 2017-02-13 at 11:28 -0500, Ian Stakenvicius wrote:
>>>
>>> OK, what's really happening is this:
>>>
>>> ctdb, when building standalone, forces Options.options.disable_python
>>> = True in order to avoid its dependencies having to build python, as
>>> apparently it doesn't need python from them.  Immediately afterwards
>>> it checks mandatorily for python headers.  Since disable_python is
>>> now
>>> global, python's header check fails because you can't force the
>>> python
>>> headers check when you've requested python be disabled.
>>>
>>> Forcing Options.options.disable_python = True in the current module
>>> in
>>> order for submodules to "inherit" said configuration seems like a bit
>>> of a hack to me, to be honest, and so I would like to focus on
>>> changing that for the fix.  I've added a commit (see github PR#74)
>>> that just moves that particular assignment down to just before the
>>> conf.RECURSE calls, and autobuild on ctdb works just fine now, but
>>> i'm
>>> not sure if overwriting settings to the current module's
>>> Options.options object is really the right way to go to accomplish
>>> what this is meant to do?
>>
>> I'll look at this tomorrow.  I agree it sounds like a bit of a hack.
>>
>> Amitay,
>>
>> Do you have any thoughts on this?
>>
>>
> CTDB by itself does not require python for building.  However, standalone
> CTDB build requires talloc, tdb, tevent and those require some python
> environment.  So I had to add python checks for standalone CTDB.  With the
> global changes to python stuff if I can build standalone CTDB without any
> python checks, please feel free to drop those lines.
> 
> Amitay.
> 

So since python isn't actually required, something along the lines of
this should also suffice? (note, haven't tested yet)


diff --git a/ctdb/wscript b/ctdb/wscript
index 13384c8..5aac7eb 100644
--- a/ctdb/wscript
+++ b/ctdb/wscript
@@ -107,8 +107,8 @@ def configure(conf):
     if conf.env.standalone_ctdb:
         conf.SAMBA_CHECK_PERL(mandatory=True)

-        conf.SAMBA_CHECK_PYTHON(mandatory=True, version=(2,5,0))
-        conf.SAMBA_CHECK_PYTHON_HEADERS(mandatory=True)
+        conf.SAMBA_CHECK_PYTHON(mandatory=False, version=(2,5,0))
+        conf.SAMBA_CHECK_PYTHON_HEADERS(mandatory=False)

     if conf.CHECK_FOR_THIRD_PARTY():
         conf.RECURSE('third_party/popt')


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: OpenPGP digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20170221/5b531c74/signature.sig>


More information about the samba-technical mailing list