unitybuild_cxx_and_cuda-check.cmake 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. set(unitybuild_a_cu "${RunCMake_TEST_BINARY_DIR}/CMakeFiles/tgt.dir/Unity/unity_a_cu.cu")
  2. if(NOT EXISTS "${unitybuild_a_cu}")
  3. set(RunCMake_TEST_FAILED "Generated unity source files ${unitybuild_a_cu} does not exist.")
  4. return()
  5. else()
  6. #verify that the 4 c file is part of this grouping and therefore UNITY_BUILD_BATCH_SIZE
  7. #was ignored
  8. file(STRINGS ${unitybuild_a_cu} unitybuild_a_c_strings)
  9. string(REGEX MATCH ".*#include.*s1.cu.*#include.*s2.cu.*#include.*s3.cu.*#include.*s4.cu.*" matched_code ${unitybuild_a_c_strings})
  10. if(NOT matched_code)
  11. set(RunCMake_TEST_FAILED "Generated unity file doesn't include expected source files")
  12. return()
  13. endif()
  14. endif()
  15. set(unitybuild_b_cu "${RunCMake_TEST_BINARY_DIR}/CMakeFiles/tgt.dir/Unity/unity_b_cu.cu")
  16. if(NOT EXISTS "${unitybuild_b_cu}")
  17. set(RunCMake_TEST_FAILED "Generated unity source files ${unitybuild_b_cu} does not exist.")
  18. return()
  19. endif()
  20. set(unitybuild_a_cxx "${RunCMake_TEST_BINARY_DIR}/CMakeFiles/tgt.dir/Unity/unity_a_cxx.cxx")
  21. if(NOT EXISTS "${unitybuild_a_cxx}")
  22. set(RunCMake_TEST_FAILED "Generated unity source files ${unitybuild_a_cxx} does not exist.")
  23. return()
  24. else()
  25. #verify that the 4 cxx file are part of this grouping and therefore UNITY_BUILD_BATCH_SIZE
  26. #was ignored
  27. file(STRINGS ${unitybuild_a_cxx} unitybuild_a_cxx_strings)
  28. string(REGEX MATCH ".*#include.*s1.cxx.*#include.*s2.cxx.*#include.*s3.cxx.*#include.*s4.cxx.*" matched_code ${unitybuild_a_cxx_strings})
  29. if(NOT matched_code)
  30. set(RunCMake_TEST_FAILED "Generated unity file doesn't include expected source files")
  31. return()
  32. endif()
  33. endif()
  34. set(unitybuild_b_cxx "${RunCMake_TEST_BINARY_DIR}/CMakeFiles/tgt.dir/Unity/unity_b_cxx.cxx")
  35. if(NOT EXISTS "${unitybuild_b_cxx}")
  36. set(RunCMake_TEST_FAILED "Generated unity source files ${unitybuild_b_cxx} does not exist.")
  37. return()
  38. endif()