--- a/tools/llvm-shlib/Makefile +++ b/tools/llvm-shlib/Makefile @@ -67,7 +67,7 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), DragonFly Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. - LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions + LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions endif ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) --- a/tools/llvm-shlib/CMakeLists.txt +++ b/tools/llvm-shlib/CMakeLists.txt @@ -39,6 +39,7 @@ endif() add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES}) +set_property(TARGET LLVM PROPERTY VERSION "1") # Append .1 to SONAME list(REMOVE_DUPLICATES LIB_NAMES) if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf" --- a/clang/tools/libclang/CMakeLists.txt +++ b/clang/tools/libclang/CMakeLists.txt @@ -82,7 +82,7 @@ set(output_name "clang") endif() -add_clang_library(libclang ${ENABLE_SHARED} ${ENABLE_STATIC} +add_clang_library(libclang ${ENABLE_SHARED} ${ENABLE_STATIC} SONAME OUTPUT_NAME ${output_name} ${SOURCES} DEPENDS clang-headers