mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
Fix some CMake issues (#153686)
These issues were discovered when trying CMake 3.27: 1. set C++ language on HIP sources. 2. add missing link to gtest_main. Pull Request resolved: https://github.com/pytorch/pytorch/pull/153686 Approved by: https://github.com/Skylion007
This commit is contained in:
@ -17,10 +17,13 @@ if(BUILD_TEST)
|
||||
if(WIN32 AND test_src MATCHES "^.*\.hip$")
|
||||
set_source_files_properties(${test_src} PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
|
||||
hip_add_executable(${test_name} "${test_src}")
|
||||
set_target_properties(${test_name} PROPERTIES LINKER_LANGUAGE CXX HIP_ARCHITECTURES ${PYTORCH_ROCM_ARCH})
|
||||
set_target_properties(${test_name} PROPERTIES HIP_ARCHITECTURES ${PYTORCH_ROCM_ARCH})
|
||||
else()
|
||||
add_executable(${test_name} "${test_src}")
|
||||
endif()
|
||||
if(test_src MATCHES "^.*\.hip$")
|
||||
set_target_properties(${test_name} PROPERTIES LINKER_LANGUAGE CXX)
|
||||
endif()
|
||||
target_link_libraries(${test_name} ${C10_CUDA_LIB} ${C10_LIB} gmock gtest gtest_main)
|
||||
add_test(NAME ${test_name} COMMAND $<TARGET_FILE:${test_name}>)
|
||||
if(INSTALL_TEST)
|
||||
|
@ -1939,10 +1939,13 @@ if(BUILD_TEST)
|
||||
set(HIP_HIPCC_FLAGS ${BASE_HIPCC_FLAGS})
|
||||
set_source_files_properties(${test_src} PROPERTIES HIP_SOURCE_PROPERTY_FORMAT 1)
|
||||
hip_add_executable(${test_name} "${test_src}")
|
||||
set_target_properties(${test_name} PROPERTIES LINKER_LANGUAGE CXX HIP_ARCHITECTURES ${PYTORCH_ROCM_ARCH})
|
||||
set_target_properties(${test_name} PROPERTIES HIP_ARCHITECTURES ${PYTORCH_ROCM_ARCH})
|
||||
else()
|
||||
add_executable(${test_name} "${test_src}")
|
||||
endif()
|
||||
if(test_src MATCHES "^.*\.hip$")
|
||||
set_target_properties(${test_name} PROPERTIES LINKER_LANGUAGE CXX)
|
||||
endif()
|
||||
target_link_libraries(${test_name} torch_library gtest_main)
|
||||
target_include_directories(${test_name} PRIVATE $<INSTALL_INTERFACE:include>)
|
||||
target_include_directories(${test_name} PRIVATE ${Caffe2_CPU_INCLUDE} ${Caffe2_HIP_INCLUDE})
|
||||
|
@ -19,7 +19,7 @@ target_compile_definitions(test_aoti_abi_check PRIVATE USE_GTEST)
|
||||
|
||||
# WARNING: DO NOT LINK torch!!!
|
||||
# The purpose is to check if the used aten/c10 headers are writtern in a header-only way
|
||||
target_link_libraries(test_aoti_abi_check PRIVATE gtest)
|
||||
target_link_libraries(test_aoti_abi_check PRIVATE gtest_main)
|
||||
target_include_directories(test_aoti_abi_check PRIVATE ${ATen_CPU_INCLUDE})
|
||||
|
||||
if(INSTALL_TEST)
|
||||
|
@ -55,7 +55,7 @@ add_custom_command(
|
||||
|
||||
target_link_libraries(test_aoti_inference PRIVATE
|
||||
torch
|
||||
gtest
|
||||
gtest_main
|
||||
-Wl,--no-as-needed aoti_custom_class
|
||||
)
|
||||
|
||||
|
@ -50,7 +50,7 @@ endif()
|
||||
|
||||
add_executable(test_api ${TORCH_API_TEST_SOURCES})
|
||||
target_include_directories(test_api PRIVATE ${ATen_CPU_INCLUDE})
|
||||
target_link_libraries(test_api PRIVATE torch gtest gmock)
|
||||
target_link_libraries(test_api PRIVATE torch gtest_main gmock)
|
||||
|
||||
if(USE_CUDA)
|
||||
target_compile_definitions(test_api PRIVATE "USE_CUDA")
|
||||
|
@ -7,7 +7,7 @@ if(USE_DISTRIBUTED AND NOT WIN32)
|
||||
|
||||
add_executable(test_dist_autograd ${DIST_AUTOGRAD_TEST_SOURCES})
|
||||
target_include_directories(test_dist_autograd PRIVATE ${ATen_CPU_INCLUDE})
|
||||
target_link_libraries(test_dist_autograd PRIVATE torch gtest)
|
||||
target_link_libraries(test_dist_autograd PRIVATE torch gtest_main)
|
||||
|
||||
if(USE_CUDA)
|
||||
target_compile_definitions(test_dist_autograd PRIVATE "USE_CUDA")
|
||||
|
@ -125,7 +125,7 @@ if(USE_MKLDNN)
|
||||
target_link_libraries(test_jit PRIVATE caffe2::mkldnn)
|
||||
endif()
|
||||
|
||||
set(JIT_TEST_DEPENDENCIES torch gtest jitbackend_test backend_with_compiler gmock)
|
||||
set(JIT_TEST_DEPENDENCIES torch gtest_main jitbackend_test backend_with_compiler gmock)
|
||||
|
||||
if(MSVC)
|
||||
list(APPEND JIT_TEST_DEPENDENCIES onnx_library)
|
||||
|
@ -28,7 +28,7 @@ add_executable(test_lazy
|
||||
# TODO temporary until we can delete the old gtest polyfills.
|
||||
target_compile_definitions(test_lazy PRIVATE USE_GTEST)
|
||||
|
||||
set(LAZY_TEST_DEPENDENCIES torch gtest)
|
||||
set(LAZY_TEST_DEPENDENCIES torch gtest_main)
|
||||
|
||||
target_link_libraries(test_lazy PRIVATE ${LAZY_TEST_DEPENDENCIES})
|
||||
target_include_directories(test_lazy PRIVATE ${ATen_CPU_INCLUDE})
|
||||
|
@ -21,7 +21,7 @@ target_include_directories(
|
||||
${ATen_CPU_INCLUDE}
|
||||
)
|
||||
|
||||
target_link_libraries(test_lite_interpreter_runtime PRIVATE torch gtest backend_with_compiler_runtime)
|
||||
target_link_libraries(test_lite_interpreter_runtime PRIVATE torch gtest_main backend_with_compiler_runtime)
|
||||
|
||||
if(LINUX)
|
||||
target_link_libraries(test_lite_interpreter_runtime PRIVATE "-Wl,--no-as-needed,$<TARGET_FILE:backend_with_compiler_runtime>,--as-needed")
|
||||
|
@ -17,7 +17,7 @@ add_executable(test_nativert
|
||||
# TODO temporary until we can delete the old gtest polyfills.
|
||||
target_compile_definitions(test_nativert PRIVATE USE_GTEST)
|
||||
|
||||
set(NATIVERT_TEST_DEPENDENCIES torch gtest)
|
||||
set(NATIVERT_TEST_DEPENDENCIES torch gtest_main)
|
||||
|
||||
target_link_libraries(test_nativert PRIVATE ${NATIVERT_TEST_DEPENDENCIES})
|
||||
target_link_libraries(test_nativert PRIVATE fmt::fmt-header-only)
|
||||
|
@ -5,7 +5,7 @@ set(TORCH_RPC_TEST_SOURCES
|
||||
${TORCH_RPC_TEST_DIR}/test_wire_serialization.cpp
|
||||
)
|
||||
set(TORCH_RPC_TEST_DEPENDENCY_LIBS
|
||||
torch gtest
|
||||
torch gtest_main
|
||||
)
|
||||
|
||||
if(USE_GLOO)
|
||||
|
@ -39,7 +39,7 @@ add_executable(test_tensorexpr
|
||||
${TENSOREXPR_TEST_ROOT}/padded_buffer.cpp
|
||||
${TENSOREXPR_TEST_SRCS})
|
||||
|
||||
target_link_libraries(test_tensorexpr PRIVATE torch gtest)
|
||||
target_link_libraries(test_tensorexpr PRIVATE torch gtest_main)
|
||||
target_include_directories(test_tensorexpr PRIVATE ${ATen_CPU_INCLUDE})
|
||||
target_compile_definitions(test_tensorexpr PRIVATE USE_GTEST)
|
||||
|
||||
|
@ -9,7 +9,7 @@ append_cxx_flag_if_supported("-Wno-unused-private-field" CMAKE_CXX_FLAGS)
|
||||
|
||||
# Generate unboxing kernels
|
||||
set(GEN_COMMAND
|
||||
"${Python_EXECUTABLE}" -m torchgen.gen_executorch
|
||||
Python::Interpreter -m torchgen.gen_executorch
|
||||
--source-path=${TEST_ROOT}
|
||||
--install-dir=${OUTPUT_DIRECTORY}
|
||||
--tags-path=${TORCH_ROOT}/aten/src/ATen/native/tags.yaml
|
||||
@ -58,11 +58,7 @@ add_executable(test_edge_op_registration
|
||||
|
||||
target_compile_definitions(test_edge_op_registration PRIVATE USE_GTEST)
|
||||
|
||||
set(TEST_DEPENDENCIES gtest unbox_lib)
|
||||
|
||||
target_link_libraries(test_edge_op_registration PRIVATE
|
||||
${TEST_DEPENDENCIES}
|
||||
)
|
||||
target_link_libraries(test_edge_op_registration PRIVATE gtest_main unbox_lib)
|
||||
if((CMAKE_CXX_COMPILER_ID MATCHES "AppleClang") OR (APPLE AND CMAKE_CXX_COMPILER_ID MATCHES "Clang"))
|
||||
target_link_options(test_edge_op_registration PRIVATE
|
||||
"-Wl,-force_load,$<TARGET_FILE:unbox_lib>"
|
||||
|
@ -43,5 +43,5 @@ FetchContent_MakeAvailable(googletest)
|
||||
# TODO(voz): This is a little assumptive of just this one test, rewrite with real dir includes
|
||||
include_directories(${ATEN_INCLUDE})
|
||||
add_executable(test_cpp_prefix test_cpp_prefix.cpp ../../torchinductor/codegen/cpp_prefix.h)
|
||||
target_link_libraries(test_cpp_prefix gtest gtest_main)
|
||||
target_link_libraries(test_cpp_prefix gtest_main)
|
||||
add_test(NAME test_cpp_prefix COMMAND test_cpp_prefix)
|
||||
|
@ -12,7 +12,7 @@ target_include_directories(test_codegen_unboxing PRIVATE ${ATen_CPU_INCLUDE})
|
||||
|
||||
target_compile_definitions(test_codegen_unboxing PRIVATE USE_GTEST)
|
||||
|
||||
set(TEST_UNBOXING_DEPENDENCIES torch gtest)
|
||||
set(TEST_UNBOXING_DEPENDENCIES torch gtest_main)
|
||||
|
||||
target_link_libraries(test_codegen_unboxing PRIVATE
|
||||
${TEST_UNBOXING_DEPENDENCIES}
|
||||
|
@ -11,7 +11,7 @@ add_executable(test_mobile_nnc
|
||||
${MOBILE_NNC_TEST_SRCS}
|
||||
)
|
||||
|
||||
target_link_libraries(test_mobile_nnc PRIVATE torch gtest)
|
||||
target_link_libraries(test_mobile_nnc PRIVATE torch gtest_main)
|
||||
target_include_directories(test_mobile_nnc PRIVATE ${ATen_CPU_INCLUDE})
|
||||
target_compile_definitions(test_mobile_nnc PRIVATE USE_GTEST)
|
||||
|
||||
|
Reference in New Issue
Block a user