Skip to content

Commit 542f8ae

Browse files
committed
improve compilation time
1 parent a2521e7 commit 542f8ae

2 files changed

Lines changed: 28 additions & 11 deletions

File tree

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,42 @@
11
set(3RD_PARTY_DIR ${CMAKE_CURRENT_SOURCE_DIR})
22

33
set(KAHIP_LIB "${CMAKE_INSTALL_PREFIX}/lib/libkahip.a")
4+
set(SBG_LIB "${CMAKE_INSTALL_PREFIX}/lib/libsbgraph.a")
5+
6+
option(BUILD_KAHIP_LIB "Build KaHIP Library" OFF)
7+
8+
if (BUILD_KAHIP_LIB)
9+
add_custom_command(
10+
OUTPUT ${KAHIP_LIB}
11+
COMMAND ${CMAKE_COMMAND} -E echo "Building KaHIP."
12+
COMMAND ${CMAKE_COMMAND} -E tar xvzf ${3RD_PARTY_DIR}/KaHIP/KaHIP-3.16.tar.gz
13+
COMMAND cd ${CMAKE_CURRENT_BINARY_DIR}/KaHIP-3.16 && ./compile_withcmake.sh
14+
15+
COMMAND ${CMAKE_COMMAND} -E echo "Installing KaHIP."
16+
COMMAND ${CMAKE_COMMAND} -E rm -rf ${3RD_PARTY_DIR}/KaHIP/deploy
17+
COMMAND mv ${CMAKE_CURRENT_BINARY_DIR}/KaHIP-3.16/deploy ${3RD_PARTY_DIR}/KaHIP/
18+
)
19+
else()
20+
add_custom_command(
21+
OUTPUT ${KAHIP_LIB}
22+
COMMAND ${CMAKE_COMMAND} -E echo "Skipping KaHIP installation."
23+
)
24+
25+
endif()
426

527
add_custom_command(
6-
OUTPUT ${KAHIP_LIB}
7-
COMMAND ${CMAKE_COMMAND} -E echo "Building KaHIP."
8-
COMMAND ${CMAKE_COMMAND} -E tar xvzf ${3RD_PARTY_DIR}/KaHIP/KaHIP-3.16.tar.gz
9-
COMMAND cd ${CMAKE_CURRENT_BINARY_DIR}/KaHIP-3.16 && ./compile_withcmake.sh
10-
COMMAND ${CMAKE_COMMAND} -E echo "Installing KaHIP."
11-
COMMAND ${CMAKE_COMMAND} -E rm -rf ${3RD_PARTY_DIR}/KaHIP/deploy
12-
COMMAND mv ${CMAKE_CURRENT_BINARY_DIR}/KaHIP-3.16/deploy ${3RD_PARTY_DIR}/KaHIP/
13-
14-
COMMAND ${CMAKE_COMMAND} -E echo "Installing SBG Library."
28+
OUTPUT ${SBG_LIB}
29+
COMMAND ${CMAKE_COMMAND} -E echo "Installing SBG Library. ${3RD_PARTY_DIR}/sbg"
1530
COMMAND ${CMAKE_COMMAND} -E rm -rf ${3RD_PARTY_DIR}/sbg
1631
COMMAND mkdir -p ${3RD_PARTY_DIR}/sbg
1732
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/../../../../install/lib/* ${3RD_PARTY_DIR}/sbg
1833
)
1934

35+
2036
add_custom_target(
2137
3rd-party-libs
2238
DEPENDS ${KAHIP_LIB}
39+
DEPENDS ${SBG_LIB}
2340
)
2441

2542
add_dependencies(graph-partitioner 3rd-party-libs)

test/partitioner/external_tools/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ add_library(graph-partitioner STATIC)
1717

1818
set_target_properties(graph-partitioner PROPERTIES DEBUG_POSTFIX "d")
1919

20-
target_include_directories(graph-partitioner PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
20+
target_include_directories(graph-partitioner PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/../../../)
2121

22-
target_include_directories(graph-partitioner PRIVATE 3rd-party/KaHIP/deploy ${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/../../../)
22+
target_include_directories(graph-partitioner PRIVATE 3rd-party/KaHIP/deploy ${PROJECT_SOURCE_DIR})
2323

2424
target_sources(
2525
graph-partitioner

0 commit comments

Comments
 (0)