I tried this approach first.  I wasn't able to make that configuration
available in CTestCustom.cmake when I tried last.  However, I don't think I
tried repeating the find_package logic directly in the custom.cmake file,
which I will do.

On Thu, May 26, 2016 at 9:21 AM, Andrew Stitcher <[email protected]>
wrote:

> On Mon, 2016-05-23 at 05:52 -0700, Justin Ross wrote:
> > ...
> > > 2) Python scripts can be executed on Linux without adding "python"
> > > prior
> > > to the script name because it is detected from the first line in
> > > the script
> > > (#!/usr/bin/env python). This doesn't work on Windows unless "py"
> > > extension
> > > files are associated with python. To do this, all python scripts
> > > must end
> > > with .py which is not the case for a lot of the scripts such as the
> > > qpidd
> > > management tools (qpid-python-test, qpid-config, ...)
> > >
>
> There is a simple solution for this issue (which is what we do with the
> proton tests) I'm a little surprised we don't use it here:
>
> find_package(Python ...)
>
> - I'm pretty sure this is already in the Qpid Cmake build somewhere
> - This sets up a bunch of useful variables if it finds python including
> PYTHON_EXECUTABLE.
>
> Followed by:
>
> add_test(... ${PYTHON_EXECUTABLE} python_script ...)
>
> If you want to call a python script directly there is no need for an
> intermediate shell/cmd/powershell script - this is why we were moving
> Qpid testing over to being driven by python scripts.
>
> > The tests wrt Windows have long been a problem.  I started working on
> > improving them a couple months ago.  One of the things I did was add
> > batch
> > files for all the command line tools so that the test scripts could
> > more
> > easily use them.
>
> If the scripts are to be used inside other test scripts this is more of
> a problem, but I'd suggest the more canonical Windows solution would be
> to create .py files as well as unadorned names (either copies or
> links). This way there is no extra script just the original one with a
> slightly different name.
>
> Equally, given these are our own test scripts, we can amend them to add
> the implied invocation of python, remembering that we will need to
> allow python to be in an arbitrary place, so we need to use
> ${PYTHON_EXECUTABLE} and set it up for the tests.
>
> Andrew
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to