[PATCH] D89009: Add version to libLLVM also on non-UNIX

Mateusz MikuĊ‚a via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 23 09:20:46 PDT 2021


mati865 updated this revision to Diff 361256.
mati865 added a comment.

Building only `X86` target did the trick and it looks good:

  $ ls bin/ | rg libLLVM.*dll
  libLLVM-13git.dll
  
  $ ls lib/ | rg libLLVM.*dll
  libLLVM-13git.dll.a
  
  $ bin/llvm-config --libs
  -lLLVM-13git

Example:

  $ cat llvm.cpp
  #include <llvm/Target/TargetOptions.h>
  
  void foo() {
      llvm::TargetOptions();
  }
  
  $ PATH=/e/tmp/build/bin:$PATH
  
  $ clang++ -shared $(llvm-config --cxxflags --ldflags --libs) llvm.cpp -o llvm.dll
  
  $ ntldd llvm.dll
          libLLVM-13git.dll => E:\tmp\build\bin\libLLVM-13git.dll (0x0000000000830000)
          libc++.dll => D:\msys64\clang64\bin\libc++.dll (0x0000000005b80000)
          KERNEL32.dll => C:\Windows\SYSTEM32\KERNEL32.dll (0x00000000062d0000)


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D89009/new/

https://reviews.llvm.org/D89009

Files:
  llvm/cmake/modules/AddLLVM.cmake


Index: llvm/cmake/modules/AddLLVM.cmake
===================================================================
--- llvm/cmake/modules/AddLLVM.cmake
+++ llvm/cmake/modules/AddLLVM.cmake
@@ -606,7 +606,7 @@
     endif()
   endif()
 
-  if(ARG_SHARED AND UNIX)
+  if(ARG_SHARED)
     if(NOT APPLE AND ARG_SONAME)
       get_target_property(output_name ${name} OUTPUT_NAME)
       if(${output_name} STREQUAL "output_name-NOTFOUND")
@@ -615,10 +615,12 @@
       set(library_name ${output_name}-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
       set(api_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
       set_target_properties(${name} PROPERTIES OUTPUT_NAME ${library_name})
-      llvm_install_library_symlink(${api_name} ${library_name} SHARED
-        COMPONENT ${name})
-      llvm_install_library_symlink(${output_name} ${library_name} SHARED
-        COMPONENT ${name})
+      if(UNIX)
+        llvm_install_library_symlink(${api_name} ${library_name} SHARED
+          COMPONENT ${name})
+        llvm_install_library_symlink(${output_name} ${library_name} SHARED
+          COMPONENT ${name})
+      endif()
     endif()
   endif()
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89009.361256.patch
Type: text/x-patch
Size: 1199 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210723/5d1efd06/attachment.bin>


More information about the llvm-commits mailing list