[Buildroot] [PATCH v2 1/1] python-thrift: new package
Arnout Vandecappelle
arnout at mind.be
Fri Mar 15 12:33:22 UTC 2013
On 03/14/13 17:15, Tinti wrote:
> On Wed, Mar 13, 2013 at 5:35 PM, Arnout Vandecappelle <arnout at mind.be
> <mailto:arnout at mind.be>> wrote:
>
> On 03/13/13 15:43, Vinicius Tinti wrote:
[snip]
> b/package/python-thrift/python__-thrift.mk <http://python-thrift.mk>
> new file mode 100644
> index 0000000..40ae57b
> --- /dev/null
> +++ b/package/python-thrift/python__-thrift.mk
> <http://python-thrift.mk>
> @@ -0,0 +1,23 @@
> +#############################__##############################__##
> +#
> +# python-thrift
> +#
> +#############################__##############################__##
> +
> +PYTHON_THRIFT_VERSION = 0.9.0
> +PYTHON_THRIFT_SOURCE = thrift-$(PYTHON_THRIFT_VERSION).tar.gz
>
>
> This is the default, so can be removed.
>
>
> Can I keep it? I think it makes more clear.
Although I agree, the rule in buildroot is that it is removed when it
is the default. So no, you cannot keep it.
>
> +PYTHON_THRIFT_SITE =
> https://pypi.python.org/__packages/source/t/thrift/
> <https://pypi.python.org/packages/source/t/thrift/>
> +PYTHON_THRIFT_LICENSE = Apache v2.0
>
>
> We currently have Apache-v2 (ImageMagick), Apache-2.0 (lua-msgpack)
> and Apache v2.0 (zxing). I personally prefer Apache-2.0.
>
>
> Changed to Apache-2.0.
Apache-2.0 is just my personal preference, so wait a bit until some
others have voiced their opinion.
> +PYTHON_THRIFT_LICENSE_FILES = README
> +
> +PYTHON_THRIFT_DEPENDENCIES = python
> +
> +define PYTHON_THRIFT_BUILD_CMDS
> + (cd $(@D); $(HOST_DIR)/usr/bin/python setup.py build)
> +endef
> +
> +define PYTHON_THRIFT_INSTALL_TARGET___CMDS
> + (cd $(@D); $(HOST_DIR)/usr/bin/python setup.py install
> --prefix=$(TARGET_DIR)/usr)
> +endef
>
>
> Unfortunately, installation fails when host-python-distutilscross
> has been installed already (by python-protobuf or python-netifaces).
>
> ------
> running install
> Checking .pth file support in
> $(TARGET_DIR)/usr/lib/python2.__7/site-packages/
> $(HOST_DIR)/usr/bin/python -E -c pass
> TEST FAILED: $(TARGET_DIR)/usr/lib/python2.__7/site-packages/ does
> NOT support .pth files
> error: bad install directory or PYTHONPATH
>
> You are attempting to install a package to a directory that is not
> on PYTHONPATH and which Python does not read ".pth" files from. The
> installation directory you specified (via --install-dir, --prefix, or
> the distutils default setting) was:
>
> $(TARGET_DIR)/usr/lib/python2.__7/site-packages/
> ------
>
> What happens is very clear: we're installing using the host-python,
> which doesn't look at TARGET_DIR to load packages. I would expect
> that distutilscross knows how to deal with that, but haven't found how...
>
>
>
> I have used the code from python-netifaces. It builds without generating
> an error at least. Do you think it is ok?
Strange... Can you check that if you first build
host-python-distutilscross and then python-thrift, it still works for
you? So:
make python-distutilscross
make python-thrift-dirclean
make python-thrift
And a sanity check: do you use current git master as a base?
>
> +define PYTHON_THRIFT_BUILD_CMDS
> + (cd $(@D); \
> + PYTHONXCPREFIX="$(STAGING_DIR)/usr/" \
> + LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
> + $(HOST_DIR)/usr/bin/python setup.py build -x)
> +endef
> +
> +define PYTHON_THRIFT_INSTALL_TARGET_CMDS
> + (cd $(@D);
> PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages
> \
> + $(HOST_DIR)/usr/bin/python setup.py install
> --prefix=$(TARGET_DIR)/usr)
> +endef
I have no problem with this workaround, even though it is a bit ugly.
You should add a comment to explain why this is needed though (before the
define, otherwise the comment is interrupting the backslashified region).
When you send a new patch with this change, I'll test it in my environment.
Regards,
Arnout
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
More information about the buildroot
mailing list