[libc++abi] Introduce a LIBCXXABI_LIBRARY_VERSION option
authorLouis Dionne <ldionne@apple.com>
Mon, 7 Oct 2019 19:22:04 +0000 (19:22 +0000)
committerLouis Dionne <ldionne@apple.com>
Mon, 7 Oct 2019 19:22:04 +0000 (19:22 +0000)
That option controls the 'VERSION' attribute of the libc++abi shared
library, which in turn controls the name of the actual dylib being
produced.

llvm-svn: 373949

libcxxabi/CMakeLists.txt
libcxxabi/src/CMakeLists.txt

index 8ca1690..fafb777 100644 (file)
@@ -77,6 +77,11 @@ set(LIBCXXABI_TARGET_TRIPLE "" CACHE STRING "Target triple for cross compiling."
 set(LIBCXXABI_GCC_TOOLCHAIN "" CACHE PATH "GCC toolchain for cross compiling.")
 set(LIBCXXABI_SYSROOT "" CACHE PATH "Sysroot for cross compiling.")
 set(LIBCXXABI_LIBCXX_LIBRARY_PATH "" CACHE PATH "The path to libc++ library.")
+set(LIBCXXABI_LIBRARY_VERSION "1.0" CACHE STRING
+"Version of libc++abi. This will be reflected in the name of the shared \
+library produced. For example, -DLIBCXXABI_LIBRARY_VERSION=x.y will \
+result in the library being named libc++abi.x.y.dylib, along with the \
+usual symlinks pointing to that.")
 
 # Default to building a shared library so that the default options still test
 # the libc++abi that is being built. There are two problems with testing a
index 0bb164d..b38973b 100644 (file)
@@ -176,7 +176,7 @@ if (LIBCXXABI_ENABLE_SHARED)
                           SOVERSION
                             "1"
                           VERSION
-                            "1.0"
+                            "${LIBCXXABI_LIBRARY_VERSION}"
                           DEFINE_SYMBOL
                             "")