未验证 提交 f7747808 编写于 作者: R RedContritio 提交者: GitHub

【第三方库离线编译】add submodule pocketfft and xbyak (#54344)

* add submodule pocketfft

* add submodule xbyak

* remove shallow_copy arg
上级 d9aa85de
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
path = third_party/protobuf path = third_party/protobuf
url = https://github.com/protocolbuffers/protobuf.git url = https://github.com/protocolbuffers/protobuf.git
ignore = dirty ignore = dirty
[submodule "third_party/pocketfft"]
path = third_party/pocketfft
url = https://gitlab.mpcdf.mpg.de/mtr/pocketfft.git
ignore = dirty
[submodule "third_party/gflags"] [submodule "third_party/gflags"]
path = third_party/gflags path = third_party/gflags
url = https://github.com/gflags/gflags.git url = https://github.com/gflags/gflags.git
...@@ -62,6 +66,10 @@ ...@@ -62,6 +66,10 @@
path = third_party/cutlass path = third_party/cutlass
url = https://github.com/NVIDIA/cutlass.git url = https://github.com/NVIDIA/cutlass.git
ignore = dirty ignore = dirty
[submodule "third_party/xbyak"]
path = third_party/xbyak
url = https://github.com/herumi/xbyak.git
ignore = dirty
[submodule "third_party/mkldnn"] [submodule "third_party/mkldnn"]
path = third_party/mkldnn path = third_party/mkldnn
url = https://github.com/oneapi-src/oneDNN.git url = https://github.com/oneapi-src/oneDNN.git
......
...@@ -19,32 +19,36 @@ set(POCKETFFT_PATH ...@@ -19,32 +19,36 @@ set(POCKETFFT_PATH
CACHE STRING "A path setting for external_pocketfft path.") CACHE STRING "A path setting for external_pocketfft path.")
set(POCKETFFT_PREFIX_DIR ${POCKETFFT_PATH}) set(POCKETFFT_PREFIX_DIR ${POCKETFFT_PATH})
set(POCKETFFT_REPOSITORY https://gitlab.mpcdf.mpg.de/mtr/pocketfft.git)
set(POCKETFFT_TAG release_for_eigen)
set(POCKETFFT_INCLUDE_DIR ${POCKETFFT_PREFIX_DIR}/src) set(POCKETFFT_INCLUDE_DIR ${POCKETFFT_PREFIX_DIR}/src)
set(POCKETFFT_SOURCE_DIR ${POCKETFFT_PREFIX_DIR}/src/extern_pocketfft)
message("POCKETFFT_INCLUDE_DIR is ${POCKETFFT_INCLUDE_DIR}") message("POCKETFFT_INCLUDE_DIR is ${POCKETFFT_INCLUDE_DIR}")
include_directories(${POCKETFFT_INCLUDE_DIR}) include_directories(${POCKETFFT_INCLUDE_DIR})
set(POCKETFFT_TAG release_for_eigen)
set(SOURCE_DIR ${PADDLE_SOURCE_DIR}/third_party/pocketfft)
if(APPLE) if(APPLE)
file(TO_NATIVE_PATH file(TO_NATIVE_PATH
${PADDLE_SOURCE_DIR}/patches/pocketfft/pocketfft_hdronly.h.patch ${PADDLE_SOURCE_DIR}/patches/pocketfft/pocketfft_hdronly.h.patch
native_dst) native_dst)
set(POCKETFFT_PATCH_COMMAND set(POCKETFFT_PATCH_COMMAND
git checkout -- . && git checkout ${GLOO_TAG} && patch -Nd git checkout -- . && git checkout ${POCKETFFT_TAG} && patch -Nd
${POCKETFFT_INCLUDE_DIR}/extern_pocketfft < ${native_dst}) ${SOURCE_DIR} < ${native_dst})
endif() endif()
ExternalProject_Add( ExternalProject_Add(
extern_pocketfft extern_pocketfft
${EXTERNAL_PROJECT_LOG_ARGS} ${SHALLOW_CLONE} ${EXTERNAL_PROJECT_LOG_ARGS}
GIT_REPOSITORY ${POCKETFFT_REPOSITORY} SOURCE_DIR ${SOURCE_DIR}
GIT_TAG ${POCKETFFT_TAG}
PREFIX ${POCKETFFT_PREFIX_DIR} PREFIX ${POCKETFFT_PREFIX_DIR}
PATCH_COMMAND ${POCKETFFT_PATCH_COMMAND} PATCH_COMMAND ${POCKETFFT_PATCH_COMMAND}
UPDATE_COMMAND "" UPDATE_COMMAND ""
CONFIGURE_COMMAND "" CONFIGURE_COMMAND ""
BUILD_COMMAND "" BUILD_COMMAND
COMMAND ${CMAKE_COMMAND} -E remove_directory ${POCKETFFT_SOURCE_DIR}
COMMAND ${CMAKE_COMMAND} -E make_directory ${POCKETFFT_SOURCE_DIR}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SOURCE_DIR}
${POCKETFFT_SOURCE_DIR}
INSTALL_COMMAND "" INSTALL_COMMAND ""
TEST_COMMAND "") TEST_COMMAND "")
......
...@@ -20,6 +20,7 @@ set(XBYAK_INSTALL_ROOT ${THIRD_PARTY_PATH}/install/xbyak) ...@@ -20,6 +20,7 @@ set(XBYAK_INSTALL_ROOT ${THIRD_PARTY_PATH}/install/xbyak)
set(XBYAK_INC_DIR ${XBYAK_INSTALL_ROOT}/include) set(XBYAK_INC_DIR ${XBYAK_INSTALL_ROOT}/include)
set(XBYAK_REPOSITORY ${GIT_URL}/herumi/xbyak.git) set(XBYAK_REPOSITORY ${GIT_URL}/herumi/xbyak.git)
set(XBYAK_TAG v5.81) # Dec 19, 2019 set(XBYAK_TAG v5.81) # Dec 19, 2019
set(SOURCE_DIR ${PADDLE_SOURCE_DIR}/third_party/xbyak)
include_directories(${XBYAK_INC_DIR}) include_directories(${XBYAK_INC_DIR})
include_directories(${XBYAK_INC_DIR}/xbyak) include_directories(${XBYAK_INC_DIR}/xbyak)
...@@ -33,8 +34,7 @@ add_definitions(-DXBYAK_NO_OP_NAMES) ...@@ -33,8 +34,7 @@ add_definitions(-DXBYAK_NO_OP_NAMES)
ExternalProject_Add( ExternalProject_Add(
${XBYAK_PROJECT} ${XBYAK_PROJECT}
${EXTERNAL_PROJECT_LOG_ARGS} ${SHALLOW_CLONE} ${EXTERNAL_PROJECT_LOG_ARGS} ${SHALLOW_CLONE}
GIT_REPOSITORY ${XBYAK_REPOSITORY} SOURCE_DIR ${SOURCE_DIR}
GIT_TAG ${XBYAK_TAG}
DEPENDS "" DEPENDS ""
PREFIX ${XBYAK_PREFIX_DIR} PREFIX ${XBYAK_PREFIX_DIR}
UPDATE_COMMAND "" UPDATE_COMMAND ""
......
...@@ -441,7 +441,7 @@ if(WITH_DISTRIBUTE ...@@ -441,7 +441,7 @@ if(WITH_DISTRIBUTE
endif() endif()
if(WITH_XBYAK) if(WITH_XBYAK)
include(external/xbyak) # download, build, install xbyak include(external/xbyak) # prepare submodule xbyak
list(APPEND third_party_deps extern_xbyak) list(APPEND third_party_deps extern_xbyak)
endif() endif()
......
pocketfft @ ea778e37
Subproject commit ea778e37710c07723435b1be58235996d1d43a5a
Subproject commit 4ca0434b4e78c05e3f3e68bda70e8713668e87d3
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册