@@ -208,9 +208,11 @@ endif()
208208# -----------------------------------------------------------------------------
209209
210210if (MI_INSTALL_TOPLEVEL)
211- set (mi_install_dir "" )
211+ set (mi_install_dir "" )
212+ set (mi_install_libdir "lib" )
212213else ()
213- set (mi_install_dir "lib/mimalloc-${mi_version} " )
214+ set (mi_install_dir "lib/mimalloc-${mi_version} " )
215+ set (mi_install_libdir "${mi_install_dir} " )
214216endif ()
215217
216218if (MI_SECURE)
@@ -277,14 +279,7 @@ if(MI_BUILD_SHARED)
277279 COMMENT "Copy mimalloc-redirect${MIMALLOC_REDIRECT_SUFFIX} .dll to output directory" )
278280 endif ()
279281
280- if (MI_INSTALL_TOPLEVEL MATCHES "ON" )
281- install (TARGETS mimalloc EXPORT mimalloc LIBRARY
282- RUNTIME DESTINATION bin
283- LIBRARY DESTINATION lib
284- ARCHIVE DESTINATION lib)
285- else ()
286- install (TARGETS mimalloc EXPORT mimalloc DESTINATION ${mi_install_dir} LIBRARY)
287- endif ()
282+ install (TARGETS mimalloc EXPORT mimalloc DESTINATION ${mi_install_libdir} LIBRARY)
288283 install (EXPORT mimalloc DESTINATION ${mi_install_dir} /cmake)
289284endif ()
290285
@@ -308,7 +303,7 @@ if (MI_BUILD_STATIC)
308303 set_target_properties (mimalloc-static PROPERTIES OUTPUT_NAME ${mi_basename} )
309304 endif ()
310305
311- install (TARGETS mimalloc-static EXPORT mimalloc DESTINATION ${mi_install_dir} )
306+ install (TARGETS mimalloc-static EXPORT mimalloc DESTINATION ${mi_install_libdir} LIBRARY )
312307endif ()
313308
314309# install include files
@@ -322,8 +317,8 @@ if(NOT WIN32 AND MI_BUILD_SHARED AND NOT MI_INSTALL_TOPLEVEL)
322317 # install a symlink in the /usr/local/lib to the versioned library
323318 set (mi_symlink "${CMAKE_SHARED_MODULE_PREFIX}${mi_basename}${CMAKE_SHARED_LIBRARY_SUFFIX} " )
324319 set (mi_soname "mimalloc-${mi_version} /${mi_symlink} .${mi_version} " )
325- install (CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${mi_soname} ${mi_symlink} WORKING_DIRECTORY ${mi_install_dir} /.. )" )
326- install (CODE "MESSAGE(\" -- Symbolic link: ${CMAKE_INSTALL_PREFIX} /lib/${mi_symlink} -> ${mi_soname} \" )" )
320+ install (CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${mi_soname} ${mi_symlink} WORKING_DIRECTORY \$ {CMAKE_INSTALL_PREFIX}/lib )" )
321+ install (CODE "MESSAGE(\" -- Symbolic link: \ $ {CMAKE_INSTALL_PREFIX}/lib/${mi_symlink} -> ${mi_soname} \" )" )
327322endif ()
328323
329324# single object file for more predictable static overriding
@@ -343,7 +338,7 @@ if (MI_BUILD_OBJECT)
343338 # the FILES expression can also be: $<TARGET_OBJECTS:mimalloc-obj>
344339 # but that fails cmake versions less than 3.10 so we leave it as is for now
345340 install (FILES ${CMAKE_CURRENT_BINARY_DIR} /CMakeFiles/mimalloc-obj.dir/src/static .c${CMAKE_C_OUTPUT_EXTENSION}
346- DESTINATION ${mi_install_dir }
341+ DESTINATION ${mi_install_libdir }
347342 RENAME ${mi_basename}${CMAKE_C_OUTPUT_EXTENSION} )
348343endif ()
349344
0 commit comments