Skip to content

Commit 2cc64ec

Browse files
author
Saurav Agarwal
committed
Update setup for torch
1 parent c453ec0 commit 2cc64ec

5 files changed

Lines changed: 70 additions & 43 deletions

File tree

cppsrc/main/CMakeLists.txt

Lines changed: 33 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,13 @@ find_package(GeographicLib REQUIRED)
1515
find_package(CGAL REQUIRED)
1616
find_package(yaml-cpp REQUIRED)
1717
find_package(CoverageControlCore REQUIRED)
18-
find_package(CoverageControlTorch REQUIRED)
19-
find_package(TorchScatter REQUIRED)
20-
find_package(TorchSparse REQUIRED)
18+
19+
if(NOT DEFINED WITH_TORCH)
20+
set(WITH_TORCH OFF)
21+
endif()
22+
if(WITH_TORCH)
23+
find_package(CoverageControlTorch REQUIRED)
24+
endif()
2125

2226

2327
#################
@@ -34,18 +38,32 @@ target_compile_options(compiler_flags INTERFACE
3438
"$<${msvc_cxx}:$<BUILD_INTERFACE:-W3>>"
3539
)
3640

37-
add_executable(data_generation data_generation.cpp)
38-
target_link_libraries(data_generation PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
39-
install(TARGETS data_generation DESTINATION ${CMAKE_INSTALL_BINDIR})
41+
add_executable(coverage_algorithm coverage_algorithm.cpp)
42+
target_link_libraries(coverage_algorithm PRIVATE CoverageControlCore)
43+
install(TARGETS coverage_algorithm DESTINATION ${CMAKE_INSTALL_BINDIR})
44+
45+
# add_executable(data_generation data_generation.cpp)
46+
# target_link_libraries(data_generation PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
47+
# install(TARGETS data_generation DESTINATION ${CMAKE_INSTALL_BINDIR})
48+
49+
# add_executable(train_cnn train_cnn.cpp)
50+
# target_link_libraries(train_cnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
51+
# install(TARGETS train_cnn DESTINATION ${CMAKE_INSTALL_BINDIR})
52+
53+
# add_executable(test_cnn test_cnn.cpp)
54+
# target_link_libraries(test_cnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
55+
# install(TARGETS test_cnn DESTINATION ${CMAKE_INSTALL_BINDIR})
4056

41-
add_executable(train_cnn train_cnn.cpp)
42-
target_link_libraries(train_cnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
43-
install(TARGETS train_cnn DESTINATION ${CMAKE_INSTALL_BINDIR})
57+
# add_executable(train_gnn train_gnn.cpp)
58+
# target_link_libraries(train_gnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch ${CUDA_cusparse_LIBRARY})
59+
# install(TARGETS train_gnn DESTINATION ${CMAKE_INSTALL_BINDIR})
4460

45-
add_executable(test_cnn test_cnn.cpp)
46-
target_link_libraries(test_cnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch)
47-
install(TARGETS test_cnn DESTINATION ${CMAKE_INSTALL_BINDIR})
61+
# add_executable(eval_gnn eval_gnn.cpp)
62+
# target_link_libraries(eval_gnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch ${CUDA_cusparse_LIBRARY})
63+
# install(TARGETS eval_gnn DESTINATION ${CMAKE_INSTALL_BINDIR})
4864

49-
add_executable(train_gnn train_gnn.cpp)
50-
target_link_libraries(train_gnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch TorchScatter::TorchScatter TorchSparse::TorchSparse ${CUDA_cusparse_LIBRARY})
51-
install(TARGETS train_gnn DESTINATION ${CMAKE_INSTALL_BINDIR})
65+
if(WITH_TORCH)
66+
add_executable(eval_dist_gnn eval_dist_gnn.cpp)
67+
target_link_libraries(eval_dist_gnn PRIVATE compiler_flags CoverageControlCore CoverageControlTorch ${CUDA_cusparse_LIBRARY})
68+
install(TARGETS eval_dist_gnn DESTINATION ${CMAKE_INSTALL_BINDIR})
69+
endif()

cppsrc/setup.sh

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ while getopts 'ictp' flag; do
88
case "${flag}" in
99
i) INSTALL=true;;
1010
c) CLEAN=true;;
11-
t) WITH_TORCH=true;;
11+
t) WITH_TORCH=ON;;
1212
p) WITH_PYTHON=true;;
1313
*) print_usage
1414
exit 1 ;;
@@ -73,7 +73,7 @@ InstallCoverageControlTests () {
7373
}
7474

7575
InstallCoverageControlMain () {
76-
cmake -S ${COVERAGECONTROL_WS}/src/CoverageControl/cppsrc/main -B ${BUILD_DIR}/CoverageControlMain ${CMAKE_END_FLAGS} -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}
76+
cmake -S ${COVERAGECONTROL_WS}/src/CoverageControl/cppsrc/main -B ${BUILD_DIR}/CoverageControlMain ${CMAKE_END_FLAGS} -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -DWITH_TORCH=${WITH_TORCH}
7777
cmake --build ${BUILD_DIR}/CoverageControlMain -j$(nproc)
7878
if [ $? -ne 0 ]; then
7979
echo "CoverageControlMain build failed"
@@ -90,11 +90,11 @@ InstallCoverageControlMain () {
9090
if [[ ${INSTALL} ]]
9191
then
9292
InstallCoverageControlCore
93-
if [[ ${WITH_TORCH} == 1 ]]
93+
InstallCoverageControlMain
94+
InstallCoverageControlTests
95+
if [[ ${WITH_TORCH} == "ON" ]]
9496
then
9597
InstallCoverageControlTorch
96-
InstallCoverageControlTests
97-
InstallCoverageControlMain
9898
fi
9999
fi
100100

cppsrc/tests/CMakeLists.txt

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -15,47 +15,50 @@ find_package(GeographicLib REQUIRED)
1515
find_package(CGAL REQUIRED)
1616
find_package(yaml-cpp REQUIRED)
1717
find_package(CoverageControlCore REQUIRED)
18-
find_package(CoverageControlTorch REQUIRED)
18+
19+
if(NOT DEFINED WITH_TORCH)
20+
set(WITH_TORCH OFF)
21+
endif()
22+
if(WITH_TORCH)
23+
find_package(CoverageControlTorch REQUIRED)
24+
endif()
1925

2026
###########
2127
## Tests ##
2228
###########
2329

2430
add_executable(system_map system_map.cpp)
25-
target_link_libraries(system_map PUBLIC CoverageControlTorch)
31+
target_link_libraries(system_map PUBLIC CoverageControlCore)
2632
install(TARGETS system_map DESTINATION ${CMAKE_INSTALL_BINDIR})
2733

28-
add_executable(coverage_algorithm coverage_algorithm.cpp)
29-
target_link_libraries(coverage_algorithm PRIVATE CoverageControlTorch)
30-
install(TARGETS coverage_algorithm DESTINATION ${CMAKE_INSTALL_BINDIR})
31-
3234
# add_executable(geo_transforms ${PROJECT_SOURCE_DIR}/test/geo_transforms.cpp)
3335
# target_include_directories(geo_transforms PRIVATE ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/extern)
3436
# target_link_libraries(geo_transforms PRIVATE Eigen3::Eigen CoverageControlTorch yaml-cpp OpenMP::OpenMP_CXX ${GeographicLib_LIBRARIES})
3537
# install(TARGETS geo_transforms DESTINATION ${CMAKE_INSTALL_BINDIR})
3638

37-
add_executable(map_generation map_generation.cpp)
38-
target_link_libraries(map_generation PRIVATE CoverageControlTorch)
39-
install(TARGETS map_generation DESTINATION ${CMAKE_INSTALL_BINDIR})
40-
41-
add_executable(torch_test torch_test.cpp)
42-
target_link_libraries(torch_test PRIVATE CoverageControlTorch)
43-
install(TARGETS torch_test DESTINATION ${CMAKE_INSTALL_BINDIR})
44-
4539
# add_executable(robot_map ${PROJECT_SOURCE_DIR}/test/robot_map.cpp)
4640
# target_include_directories(robot_map PRIVATE ${PROJECT_SOURCE_DIR}/include)
4741
# target_link_libraries(robot_map PRIVATE Eigen3::Eigen CoverageControlTorch)
4842
# install(TARGETS robot_map DESTINATION ${CMAKE_INSTALL_BINDIR})
4943

50-
add_executable(torch_map_conversion torch_map_conversion.cpp)
51-
target_link_libraries(torch_map_conversion PRIVATE CoverageControlTorch)
52-
install(TARGETS torch_map_conversion DESTINATION ${CMAKE_INSTALL_BINDIR})
44+
if(WITH_TORCH)
45+
add_executable(map_generation map_generation.cpp)
46+
target_link_libraries(map_generation PRIVATE CoverageControlTorch)
47+
install(TARGETS map_generation DESTINATION ${CMAKE_INSTALL_BINDIR})
48+
49+
add_executable(torch_test torch_test.cpp)
50+
target_link_libraries(torch_test PRIVATE CoverageControlTorch)
51+
install(TARGETS torch_test DESTINATION ${CMAKE_INSTALL_BINDIR})
5352

54-
add_executable(test_maps test_maps.cpp)
55-
target_link_libraries(test_maps PRIVATE CoverageControlTorch)
56-
install(TARGETS test_maps DESTINATION ${CMAKE_INSTALL_BINDIR})
53+
add_executable(torch_map_conversion torch_map_conversion.cpp)
54+
target_link_libraries(torch_map_conversion PRIVATE CoverageControlTorch)
55+
install(TARGETS torch_map_conversion DESTINATION ${CMAKE_INSTALL_BINDIR})
5756

58-
add_executable(torch_data_loader torch_data_loader.cpp)
59-
target_link_libraries(torch_data_loader PRIVATE CoverageControlTorch)
60-
install(TARGETS torch_data_loader DESTINATION ${CMAKE_INSTALL_BINDIR})
57+
add_executable(test_maps test_maps.cpp)
58+
target_link_libraries(test_maps PRIVATE CoverageControlTorch)
59+
install(TARGETS test_maps DESTINATION ${CMAKE_INSTALL_BINDIR})
6160

61+
add_executable(torch_data_loader torch_data_loader.cpp)
62+
target_link_libraries(torch_data_loader PRIVATE CoverageControlTorch)
63+
install(TARGETS torch_data_loader DESTINATION ${CMAKE_INSTALL_BINDIR})
64+
endif()

setup.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@ then
3838
exit 1
3939
fi
4040
fi
41+
if [[ ${CLEAN} ]]
42+
then
43+
echo "Cleaning python bindings"
44+
pip uninstall -y pyCoverageControl
45+
pip uninstall -y CoverageControlTorch
46+
fi
4147
# cd ../../torch/python_bindings/
4248
# pip install .
4349
# if [ $? -ne 0 ]; then

0 commit comments

Comments
 (0)