[libcxx-dev] new format and LIBCXX*_EXECUTOR, LIBCXX_TARGET_INFO

Louis Dionne via libcxx-dev libcxx-dev at lists.llvm.org
Mon May 11 11:47:29 PDT 2020


Hi,

We’ll need to add a mechanism for arbitrary executors to be specified in the new format. Basically, the old format of specifying the executor as a Python string that gets eval’d won’t work anymore — instead you’ll specify the script to run directly.

I’ll work on a fix tomorrow.

Louis

> On May 11, 2020, at 13:30, Brian Cain <bcain at codeaurora.org> wrote:
> 
> Louis,
>  
> When the switch to the new test format landed on our downstream repo, it seemed as if the LIBCXX_EXECUTOR and LIBCXX_TARGET_INFO cmake arguments were being ignored.  I can see a couple of apply/reverts and some fixes to executor behavior, so I expect that in general the use case for executors is  already considered.  But maybe not being set via cmake?  That said, our downstream system that takes upstream commits will consider applying them out-of-order, so I’m not certain I have all of the fixes yet.  I’ll continue to dig deeper, but I just wanted to take a step back and try to understand if the new format is intended to work like this or if there’s another way.
>  
> The local config generated by cmake looks like this:
>  
> projects/libcxx/test/lit.site.cfg
> 30:config.executor                 = "PrefixExecutor([\"/bin/bash\", \"/path/to/target/test/wrapper.sh\"],LocalExecutor())"
> projects/libcxx/test/lit.site.cfg
> 25:config.target_info              = "libcxx.quic.custom_target_info.CustomTargetInfo"
>  
> … and the comment still gets emitted:
>  
> llvm-lit: /local/mnt/workspace/mc/llvm-project/libcxx/utils/libcxx/test/config.py:193: note: Using executor: 'PrefixExecutor(["/bin/bash", "/path/to/target/test/wrapper.sh"],LocalExecutor())'
>  
> … but then I see
>  
> : 'EXECUTED AS';  /usr/bin/python /src/llvm-project/libcxx/utils/run.py --codesign_identity "" --dependencies /build/projects/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/Output/random_shuffle.cxx1z.pass.cpp.tmp.exe --env LIBCXX_SRC_ROOT=/src/llvm-project/libcxx --execdir /build/projects/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/Output/random_shuffle.cxx1z.pass.cpp.tmp.execdir --  /build/projects/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/Output/random_shuffle.cxx1z.pass.cpp.tmp.exe
>  
> If it’s just an oversight, I can provide a fix once I figure it out.  I just wanted to double check whether or not we want these cmake definitions to work in the future.
>  
> -Brian

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/libcxx-dev/attachments/20200511/1fcb7ed3/attachment.html>


More information about the libcxx-dev mailing list