|
|
|
@ -134,27 +134,6 @@ add_subdirectory(proto)
|
|
|
|
|
# "add_subdirectory(paddle)" and "add_subdirectory(python)" should be
|
|
|
|
|
# placed after this block, because they depends on it.
|
|
|
|
|
if(WITH_GOLANG)
|
|
|
|
|
# we need to symlink Paddle directory into GOPATH. If we
|
|
|
|
|
# don't do it and we have code that depends on Paddle, go
|
|
|
|
|
# get ./... will download a new Paddle repo from Github,
|
|
|
|
|
# without the changes in our current Paddle repo that we
|
|
|
|
|
# want to build.
|
|
|
|
|
set(GOPATH "${CMAKE_CURRENT_BINARY_DIR}/go")
|
|
|
|
|
file(MAKE_DIRECTORY ${GOPATH})
|
|
|
|
|
set(PADDLE_IN_GOPATH "${GOPATH}/src/github.com/PaddlePaddle/Paddle")
|
|
|
|
|
add_custom_target(go_path)
|
|
|
|
|
add_custom_command(TARGET go_path
|
|
|
|
|
# Symlink Paddle directory into GOPATH
|
|
|
|
|
COMMAND mkdir -p ${PADDLE_IN_GOPATH}
|
|
|
|
|
COMMAND rm -rf ${PADDLE_IN_GOPATH}
|
|
|
|
|
COMMAND ln -sf ${CMAKE_SOURCE_DIR} ${PADDLE_IN_GOPATH}
|
|
|
|
|
# Automatically get all dependencies specified in the source code
|
|
|
|
|
# We can't run `go get -d ./...` for every target, because
|
|
|
|
|
# multiple `go get` can not run concurrently, but make need to be
|
|
|
|
|
# able to run with multiple jobs.
|
|
|
|
|
COMMAND env GOPATH=${GOPATH} ${CMAKE_Go_COMPILER} get -d ./go/...
|
|
|
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
|
|
|
)
|
|
|
|
|
add_subdirectory(go/master/c)
|
|
|
|
|
add_subdirectory(go/pserver/cclient)
|
|
|
|
|
endif(WITH_GOLANG)
|
|
|
|
|