Re: [libcxx] r313643 - Resubmit "Fix llvm-lit script generation in libcxx."

2017-11-16 Thread Don Hinton via cfe-commits
Hi Zachery:

I'm seeing a breakage when cross-compiling and including libcxx in the
runtimes directory.

The problem is that `include(AddLLVM)`, guarded by LIBCXX_INCLUDE_TESTS, comes
after your change to call `configure_lit_site_cfg`.

I've fixed this locally by adding `include(AddLLVM)`  to the top of
libcxx/test/CMakeLists.txt, but don't believe this is the correct fix.

Could you take a look?

thanks...
don

On Tue, Sep 19, 2017 at 10:19 AM, Zachary Turner via cfe-commits <
cfe-commits@lists.llvm.org> wrote:

> Author: zturner
> Date: Tue Sep 19 10:19:10 2017
> New Revision: 313643
>
> URL: http://llvm.org/viewvc/llvm-project?rev=313643&view=rev
> Log:
> Resubmit "Fix llvm-lit script generation in libcxx."
>
> After speaking with the libcxx owners, they agreed that this is
> a bug in the bot that needs to be fixed by the bot owners, and
> the CMake changes are correct.
>
> Modified:
> libcxx/trunk/CMakeLists.txt
> libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake
> libcxx/trunk/test/CMakeLists.txt
>
> Modified: libcxx/trunk/CMakeLists.txt
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/
> CMakeLists.txt?rev=313643&r1=313642&r2=313643&view=diff
> 
> ==
> --- libcxx/trunk/CMakeLists.txt (original)
> +++ libcxx/trunk/CMakeLists.txt Tue Sep 19 10:19:10 2017
> @@ -653,6 +653,7 @@ endif()
>  #
>  # However, since some submission systems strip test/ subdirectories,
> check for
>  # it before adding it.
> +
>  if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/test")
>add_subdirectory(test)
>  endif()
> @@ -660,6 +661,15 @@ if (LIBCXX_INCLUDE_TESTS)
>add_subdirectory(lib/abi)
>  endif()
>
> +if (LIBCXX_STANDALONE_BUILD AND EXISTS "${LLVM_MAIN_SRC_DIR}/utils/
> llvm-lit")
> +  # Make sure the llvm-lit script is generated into the bin directory,
> and do
> +  # it after adding all tests, since the generated script will only work
> +  # correctly discovered tests against test locations from the source
> tree that
> +  # have already been discovered.
> +  add_subdirectory(${LLVM_MAIN_SRC_DIR}/utils/llvm-lit
> +   ${CMAKE_CURRENT_BINARY_DIR}/llvm-lit)
> +endif()
> +
>  if (LIBCXX_INCLUDE_DOCS)
>add_subdirectory(docs)
>  endif()
>
> Modified: libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/cmake/
> Modules/HandleOutOfTreeLLVM.cmake?rev=313643&r1=313642&r2=313643&view=diff
> 
> ==
> --- libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake (original)
> +++ libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake Tue Sep 19
> 10:19:10 2017
> @@ -106,6 +106,11 @@ macro(configure_out_of_tree_llvm)
>  set(LLVM_ENABLE_SPHINX OFF)
>endif()
>
> +  # In a standalone build, we don't have llvm to automatically generate
> the
> +  # llvm-lit script for us.  So we need to provide an explicit directory
> that
> +  # the configurator should write the script into.
> +  set(LLVM_LIT_OUTPUT_DIR "${libcxx_BINARY_DIR}/bin")
> +
># Required LIT Configuration --
> --
># Define the default arguments to use with 'lit', and an option for the
> user
># to override.
>
> Modified: libcxx/trunk/test/CMakeLists.txt
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/
> CMakeLists.txt?rev=313643&r1=313642&r2=313643&view=diff
> 
> ==
> --- libcxx/trunk/test/CMakeLists.txt (original)
> +++ libcxx/trunk/test/CMakeLists.txt Tue Sep 19 10:19:10 2017
> @@ -49,10 +49,9 @@ set(LIBCXX_EXECUTOR "None" CACHE STRING
>
>  set(AUTO_GEN_COMMENT "## Autogenerated by libcxx configuration.\n# Do not
> edit!")
>
> -configure_file(
> +configure_lit_site_cfg(
>${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
> -  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
> -  @ONLY)
> +  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg)
>
>  set(LIBCXX_TEST_DEPS "")
>
>
>
> ___
> cfe-commits mailing list
> cfe-commits@lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[libcxx] r313643 - Resubmit "Fix llvm-lit script generation in libcxx."

2017-09-19 Thread Zachary Turner via cfe-commits
Author: zturner
Date: Tue Sep 19 10:19:10 2017
New Revision: 313643

URL: http://llvm.org/viewvc/llvm-project?rev=313643&view=rev
Log:
Resubmit "Fix llvm-lit script generation in libcxx."

After speaking with the libcxx owners, they agreed that this is
a bug in the bot that needs to be fixed by the bot owners, and
the CMake changes are correct.

Modified:
libcxx/trunk/CMakeLists.txt
libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake
libcxx/trunk/test/CMakeLists.txt

Modified: libcxx/trunk/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/CMakeLists.txt?rev=313643&r1=313642&r2=313643&view=diff
==
--- libcxx/trunk/CMakeLists.txt (original)
+++ libcxx/trunk/CMakeLists.txt Tue Sep 19 10:19:10 2017
@@ -653,6 +653,7 @@ endif()
 #
 # However, since some submission systems strip test/ subdirectories, check for
 # it before adding it.
+
 if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/test")
   add_subdirectory(test)
 endif()
@@ -660,6 +661,15 @@ if (LIBCXX_INCLUDE_TESTS)
   add_subdirectory(lib/abi)
 endif()
 
+if (LIBCXX_STANDALONE_BUILD AND EXISTS "${LLVM_MAIN_SRC_DIR}/utils/llvm-lit")
+  # Make sure the llvm-lit script is generated into the bin directory, and do
+  # it after adding all tests, since the generated script will only work
+  # correctly discovered tests against test locations from the source tree that
+  # have already been discovered.
+  add_subdirectory(${LLVM_MAIN_SRC_DIR}/utils/llvm-lit
+   ${CMAKE_CURRENT_BINARY_DIR}/llvm-lit)
+endif()
+
 if (LIBCXX_INCLUDE_DOCS)
   add_subdirectory(docs)
 endif()

Modified: libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake?rev=313643&r1=313642&r2=313643&view=diff
==
--- libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake (original)
+++ libcxx/trunk/cmake/Modules/HandleOutOfTreeLLVM.cmake Tue Sep 19 10:19:10 
2017
@@ -106,6 +106,11 @@ macro(configure_out_of_tree_llvm)
 set(LLVM_ENABLE_SPHINX OFF)
   endif()
 
+  # In a standalone build, we don't have llvm to automatically generate the
+  # llvm-lit script for us.  So we need to provide an explicit directory that
+  # the configurator should write the script into.
+  set(LLVM_LIT_OUTPUT_DIR "${libcxx_BINARY_DIR}/bin")
+
   # Required LIT Configuration 
   # Define the default arguments to use with 'lit', and an option for the user
   # to override.

Modified: libcxx/trunk/test/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/CMakeLists.txt?rev=313643&r1=313642&r2=313643&view=diff
==
--- libcxx/trunk/test/CMakeLists.txt (original)
+++ libcxx/trunk/test/CMakeLists.txt Tue Sep 19 10:19:10 2017
@@ -49,10 +49,9 @@ set(LIBCXX_EXECUTOR "None" CACHE STRING
 
 set(AUTO_GEN_COMMENT "## Autogenerated by libcxx configuration.\n# Do not 
edit!")
 
-configure_file(
+configure_lit_site_cfg(
   ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
-  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
-  @ONLY)
+  ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg)
 
 set(LIBCXX_TEST_DEPS "")
 


___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits