vcpkg/ports/mimalloc/fix-cmake.patch

60 lines
2.6 KiB
Diff
Raw Normal View History

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 37616eb..4c81e6a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -251,14 +251,28 @@ if(MI_BUILD_SHARED)
)
if(WIN32)
# On windows copy the mimalloc redirection dll too.
+ if(CMAKE_SIZEOF_VOID_P EQUAL 8)
target_link_libraries(mimalloc PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/bin/mimalloc-redirect.lib)
add_custom_command(TARGET mimalloc POST_BUILD
COMMAND "${CMAKE_COMMAND}" -E copy "${CMAKE_CURRENT_SOURCE_DIR}/bin/mimalloc-redirect.dll" $<TARGET_FILE_DIR:mimalloc>
COMMENT "Copy mimalloc-redirect.dll to output directory")
- endif()
+ install (
+ FILES $<TARGET_FILE_DIR:mimalloc>/mimalloc-redirect.dll
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
+ )
+ elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
+ target_link_libraries(mimalloc PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/bin/mimalloc-redirect32.lib)
+ add_custom_command(TARGET mimalloc POST_BUILD
+ COMMAND "${CMAKE_COMMAND}" -E copy "${CMAKE_CURRENT_SOURCE_DIR}/bin/mimalloc-redirect32.dll" $<TARGET_FILE_DIR:mimalloc>
+ COMMENT "Copy mimalloc-redirect32.dll to output directory")
+ install (
+ FILES $<TARGET_FILE_DIR:mimalloc>/mimalloc-redirect32.dll
+ DESTINATION ${CMAKE_INSTALL_BINDIR}
+ )
+ endif()
+endif()
- install(TARGETS mimalloc EXPORT mimalloc DESTINATION ${mi_install_dir} LIBRARY)
- install(EXPORT mimalloc DESTINATION ${mi_install_dir}/cmake)
+ install(TARGETS mimalloc EXPORT mimalloc ARCHIVE DESTINATION lib RUNTIME DESTINATION bin LIBRARY DESTINATION lib NAMELINK_SKIP)
endif()
# static library
@@ -281,9 +295,11 @@ if (MI_BUILD_STATIC)
set_target_properties(mimalloc-static PROPERTIES OUTPUT_NAME ${mi_basename})
endif()
- install(TARGETS mimalloc-static EXPORT mimalloc DESTINATION ${mi_install_dir})
+ install(TARGETS mimalloc-static EXPORT mimalloc DESTINATION lib)
endif()
+install(EXPORT mimalloc DESTINATION ${mi_install_dir}/cmake)
+
# install include files
install(FILES include/mimalloc.h DESTINATION ${mi_install_dir}/include)
install(FILES include/mimalloc-override.h DESTINATION ${mi_install_dir}/include)
@@ -315,9 +331,6 @@ if (MI_BUILD_OBJECT)
# the FILES expression can also be: $<TARGET_OBJECTS:mimalloc-obj>
# but that fails cmake versions less than 3.10 so we leave it as is for now
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/mimalloc-obj.dir/src/static.c${CMAKE_C_OUTPUT_EXTENSION}
- DESTINATION ${mi_install_dir}
- RENAME ${mi_basename}${CMAKE_C_OUTPUT_EXTENSION} )
endif()
# -----------------------------------------------------------------------------