x
This commit is contained in:
+11
-7
@@ -112,7 +112,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
hipblas-dev hiprand-dev hipsparse-dev hipsparselt-dev \
|
hipblas-dev hiprand-dev hipsparse-dev hipsparselt-dev \
|
||||||
hipsolver-dev hipcub-dev rocprim-dev rocthrust-dev \
|
hipsolver-dev hipcub-dev rocprim-dev rocthrust-dev \
|
||||||
rocblas-dev rocrand-dev hipfft-dev hipblaslt-dev \
|
rocblas-dev rocrand-dev hipfft-dev hipblaslt-dev \
|
||||||
rocsolver-dev rocm-cmake rocm-core && \
|
rocsolver-dev rocfft-dev rocsparse-dev rocm-cmake rocm-core && \
|
||||||
apt-get clean && rm -rf /var/lib/apt/lists/*
|
apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# ===========================================================================
|
# ===========================================================================
|
||||||
@@ -161,15 +161,19 @@ RUN set -ex && \
|
|||||||
mkdir -p /opt/rocm/lib/cmake/hipblas && \
|
mkdir -p /opt/rocm/lib/cmake/hipblas && \
|
||||||
printf 'include(/opt/rocm/lib/cmake/rocblas/rocblas-config.cmake)\nif(TARGET roc::rocblas AND NOT TARGET hip::hipblas)\n add_library(hip::hipblas ALIAS roc::rocblas)\nendif()\n' \
|
printf 'include(/opt/rocm/lib/cmake/rocblas/rocblas-config.cmake)\nif(TARGET roc::rocblas AND NOT TARGET hip::hipblas)\n add_library(hip::hipblas ALIAS roc::rocblas)\nendif()\n' \
|
||||||
> /opt/rocm/lib/cmake/hipblas/hipblas-config.cmake && \
|
> /opt/rocm/lib/cmake/hipblas/hipblas-config.cmake && \
|
||||||
# 批量创建 hip→roc 别名 cmake config(强制覆盖,防止残留破损 config)
|
# 批量创建 hip→roc 别名 cmake config(仅原生 config 缺失时创建)
|
||||||
for pair in "hipcub:rocprim" "hipsolver:rocsolver" "hipsparse:rocsparse" "hipfft:rocfft"; do \
|
for pair in "hipcub:rocprim" "hipsolver:rocsolver" "hipsparse:rocsparse" "hipfft:rocfft"; do \
|
||||||
hip_pkg="${pair%%:*}"; roc_pkg="${pair#*:}"; \
|
hip_pkg="${pair%%:*}"; roc_pkg="${pair#*:}"; \
|
||||||
cfg_dir="/opt/rocm/lib/cmake/${hip_pkg}"; \
|
cfg_dir="/opt/rocm/lib/cmake/${hip_pkg}"; \
|
||||||
mkdir -p "${cfg_dir}" && \
|
if [ ! -f "${cfg_dir}/${hip_pkg}-config.cmake" ]; then \
|
||||||
printf 'include(/opt/rocm/lib/cmake/%s/%s-config.cmake)\nif(TARGET roc::%s AND NOT TARGET hip::%s)\n add_library(hip::%s ALIAS roc::%s)\nendif()\n' \
|
mkdir -p "${cfg_dir}" && \
|
||||||
"${roc_pkg}" "${roc_pkg}" "${roc_pkg}" "${hip_pkg}" "${hip_pkg}" "${roc_pkg}" \
|
printf 'include(/opt/rocm/lib/cmake/%s/%s-config.cmake)\nif(TARGET roc::%s AND NOT TARGET hip::%s)\n add_library(hip::%s ALIAS roc::%s)\nendif()\n' \
|
||||||
> "${cfg_dir}/${hip_pkg}-config.cmake" && \
|
"${roc_pkg}" "${roc_pkg}" "${roc_pkg}" "${hip_pkg}" "${hip_pkg}" "${roc_pkg}" \
|
||||||
echo "${hip_pkg}-config.cmake created (alias to ${roc_pkg})."; \
|
> "${cfg_dir}/${hip_pkg}-config.cmake" && \
|
||||||
|
echo "${hip_pkg}-config.cmake created (alias to ${roc_pkg})."; \
|
||||||
|
else \
|
||||||
|
echo "${hip_pkg}-config.cmake already exists, skipping."; \
|
||||||
|
fi; \
|
||||||
done && \
|
done && \
|
||||||
# 无 roc 对应物的 hip 包,创建 minimal cmake config(强制覆盖)
|
# 无 roc 对应物的 hip 包,创建 minimal cmake config(强制覆盖)
|
||||||
for pkg in hipblaslt hiprtc; do \
|
for pkg in hipblaslt hiprtc; do \
|
||||||
|
|||||||
Reference in New Issue
Block a user