Skip to content

Commit

Permalink
ixes for win32
Browse files Browse the repository at this point in the history
  • Loading branch information
AtomXY authored and azhogin committed Feb 8, 2021
1 parent 78caeb2 commit 8cbffdd
Showing 1 changed file with 52 additions and 10 deletions.
62 changes: 52 additions & 10 deletions llvm/projects/ton-compiler/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,16 +61,58 @@ endif()

add_subdirectory(cpp-sdk)

ExternalProject_Add(tvm_linker
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/tvm_linker
BUILD_IN_SOURCE On
GIT_REPOSITORY https://github.com/tonlabs/TVM-linker/
CONFIGURE_COMMAND cd tvm_linker && cargo update
BUILD_COMMAND cd tvm_linker && cargo build --release
INSTALL_COMMAND cp tvm_linker/target/release/tvm_linker ${CMAKE_INSTALL_PREFIX}/bin
)
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs AND IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs)
if(WIN32)
message(STATUS "Build tvm-linker from preloaded sources for Win32")
ExternalProject_Add(tvm_linker
PREFIX
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker
BUILD_IN_SOURCE On
CONFIGURE_COMMAND echo %cd% && cd ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker && cargo update
BUILD_COMMAND echo %cd% && cd ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker && cargo build --release
INSTALL_COMMAND echo %cd% && ROBOCOPY "${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker/target/release" "${CMAKE_INSTALL_PREFIX}/bin" tvm_linker.exe || echo %ERRORLEVEL%
)
else()
message(STATUS "Build tvm-linker from preloaded sources for linux/darwin")
ExternalProject_Add(tvm_linker
PREFIX
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker
BUILD_IN_SOURCE On
CONFIGURE_COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker && cargo update
BUILD_COMMAND cd ${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker && cargo build --release
INSTALL_COMMAND cp "${CMAKE_CURRENT_SOURCE_DIR}/tonlabs/TVM-linker/tvm_linker/target/release/tvm_linker" "${CMAKE_INSTALL_PREFIX}/bin"
)
endif()
else()
if(WIN32)
message(STATUS "Build tvm-linker from git sources for Win32")
ExternalProject_Add(tvm_linker
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/tvm_linker
BUILD_IN_SOURCE On
GIT_REPOSITORY https://github.com/tonlabs/TVM-linker/
CONFIGURE_COMMAND cd tvm_linker && cargo update
BUILD_COMMAND cd tvm_linker && cargo build --release
INSTALL_COMMAND ROBOCOPY "tvm_linker/target/release" "${CMAKE_INSTALL_PREFIX}/bin" tvm_linker.exe || echo %ERRORLEVEL%
)
else()
message(STATUS "Build tvm-linker from git sources for linux/darwin")
ExternalProject_Add(tvm_linker
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/tvm_linker
BUILD_IN_SOURCE On
GIT_REPOSITORY https://github.com/tonlabs/TVM-linker/
CONFIGURE_COMMAND cd tvm_linker && cargo update
BUILD_COMMAND cd tvm_linker && cargo build --release
INSTALL_COMMAND cp "tvm_linker/target/release/tvm_linker" "${CMAKE_INSTALL_PREFIX}/bin"
)
endif()
endif()

if (NOT CMAKE_CONFIGURATION_TYPES)
add_custom_target(install-tvm_linker DEPENDS tvm_linker)
add_custom_target(install-tvm_linker-stripped DEPENDS install-tvm_linker)
if(WIN32)
add_custom_target(install-tvm_linker DEPENDS tvm_linker)
add_custom_target(install-tvm_linker-stripped DEPENDS install-tvm_linker)
else()
add_custom_target(install-tvm_linker DEPENDS tvm_linker)
add_custom_target(install-tvm_linker-stripped DEPENDS install-tvm_linker)
endif()
endif()

0 comments on commit 8cbffdd

Please sign in to comment.