Skip to content

Commit e2c0b6e

Browse files
ggerganovdanbev
andauthored
cmake : handle whitepsaces in path during metal build (#14126)
* cmake : handle whitepsaces in path during metal build ggml-ci * cont : proper fix ggml-ci --------- Co-authored-by: Daniel Bevenius <[email protected]>
1 parent 9596506 commit e2c0b6e

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

ggml/src/ggml-metal/CMakeLists.txt

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,22 @@ if (GGML_METAL_EMBED_LIBRARY)
4444
set(METALLIB_SOURCE_EMBED_TMP "${CMAKE_BINARY_DIR}/autogenerated/ggml-metal-embed.metal.tmp")
4545

4646
add_custom_command(
47-
OUTPUT ${METALLIB_EMBED_ASM}
47+
OUTPUT "${METALLIB_EMBED_ASM}"
4848
COMMAND echo "Embedding Metal library"
49-
COMMAND sed -e '/__embed_ggml-common.h__/r ${METALLIB_COMMON}' -e '/__embed_ggml-common.h__/d' < ${METALLIB_SOURCE} > ${METALLIB_SOURCE_EMBED_TMP}
50-
COMMAND sed -e '/\#include \"ggml-metal-impl.h\"/r ${METALLIB_IMPL}' -e '/\#include \"ggml-metal-impl.h\"/d' < ${METALLIB_SOURCE_EMBED_TMP} > ${METALLIB_SOURCE_EMBED}
51-
COMMAND echo ".section __DATA,__ggml_metallib" > ${METALLIB_EMBED_ASM}
52-
COMMAND echo ".globl _ggml_metallib_start" >> ${METALLIB_EMBED_ASM}
53-
COMMAND echo "_ggml_metallib_start:" >> ${METALLIB_EMBED_ASM}
54-
COMMAND echo ".incbin \\\"${METALLIB_SOURCE_EMBED}\\\"" >> ${METALLIB_EMBED_ASM}
55-
COMMAND echo ".globl _ggml_metallib_end" >> ${METALLIB_EMBED_ASM}
56-
COMMAND echo "_ggml_metallib_end:" >> ${METALLIB_EMBED_ASM}
49+
COMMAND sed -e "/__embed_ggml-common.h__/r ${METALLIB_COMMON}" -e "/__embed_ggml-common.h__/d" < "${METALLIB_SOURCE}" > "${METALLIB_SOURCE_EMBED_TMP}"
50+
COMMAND sed -e "/\#include \"ggml-metal-impl.h\"/r ${METALLIB_IMPL}" -e "/\#include \"ggml-metal-impl.h\"/d" < "${METALLIB_SOURCE_EMBED_TMP}" > "${METALLIB_SOURCE_EMBED}"
51+
COMMAND echo ".section __DATA,__ggml_metallib" > "${METALLIB_EMBED_ASM}"
52+
COMMAND echo ".globl _ggml_metallib_start" >> "${METALLIB_EMBED_ASM}"
53+
COMMAND echo "_ggml_metallib_start:" >> "${METALLIB_EMBED_ASM}"
54+
COMMAND echo .incbin "\"${METALLIB_SOURCE_EMBED}\"" >> "${METALLIB_EMBED_ASM}"
55+
COMMAND echo ".globl _ggml_metallib_end" >> "${METALLIB_EMBED_ASM}"
56+
COMMAND echo "_ggml_metallib_end:" >> "${METALLIB_EMBED_ASM}"
5757
DEPENDS ../ggml-common.h ggml-metal.metal ggml-metal-impl.h
5858
COMMENT "Generate assembly for embedded Metal library"
59+
VERBATIM
5960
)
6061

61-
target_sources(ggml-metal PRIVATE ${METALLIB_EMBED_ASM})
62+
target_sources(ggml-metal PRIVATE "${METALLIB_EMBED_ASM}")
6263
else()
6364
if (GGML_METAL_SHADER_DEBUG)
6465
# custom command to do the following:

0 commit comments

Comments
 (0)