[libcxx] r300817 - Rename the static version of libc++ on Windows.

Eric Fiselier via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 19 21:19:02 PDT 2017


Author: ericwf
Date: Wed Apr 19 23:19:02 2017
New Revision: 300817

URL: http://llvm.org/viewvc/llvm-project?rev=300817&view=rev
Log:
Rename the static version of libc++ on Windows.

Previously both the static version of libc++ and the
import library for the DLL had the same name, 'c++.lib'.

This patch renames the static library on Windows to be `libc++.lib`
so it no longer conflicts. This naming convention is consistent with
other windows libraries.

Modified:
    libcxx/trunk/lib/CMakeLists.txt
    libcxx/trunk/utils/libcxx/test/config.py

Modified: libcxx/trunk/lib/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/lib/CMakeLists.txt?rev=300817&r1=300816&r2=300817&view=diff
==============================================================================
--- libcxx/trunk/lib/CMakeLists.txt (original)
+++ libcxx/trunk/lib/CMakeLists.txt Wed Apr 19 23:19:02 2017
@@ -241,11 +241,16 @@ endif()
 if (LIBCXX_ENABLE_STATIC)
   add_library(cxx_static STATIC $<TARGET_OBJECTS:cxx_objects>)
   target_link_libraries(cxx_static ${LIBCXX_LIBRARIES})
+  set(STATIC_OUTPUT_NAME "c++")
+  if (WIN32)
+    set(STATIC_OUTPUT_NAME "libc++")
+  endif()
   set_target_properties(cxx_static
     PROPERTIES
       LINK_FLAGS    "${LIBCXX_LINK_FLAGS}"
-      OUTPUT_NAME   "c++"
+      OUTPUT_NAME   "${STATIC_OUTPUT_NAME}"
   )
+
   list(APPEND LIBCXX_TARGETS "cxx_static")
   # Attempt to merge the libc++.a archive and the ABI library archive into one.
   if (LIBCXX_ENABLE_STATIC_ABI_LIBRARY)

Modified: libcxx/trunk/utils/libcxx/test/config.py
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/utils/libcxx/test/config.py?rev=300817&r1=300816&r2=300817&view=diff
==============================================================================
--- libcxx/trunk/utils/libcxx/test/config.py (original)
+++ libcxx/trunk/utils/libcxx/test/config.py Wed Apr 19 23:19:02 2017
@@ -111,7 +111,8 @@ class Configuration(object):
     def make_static_lib_name(self, name):
         """Return the full filename for the specified library name"""
         if self.is_windows:
-            return name + '.lib'
+            assert name == 'c++'  # Only allow libc++ to use this function for now.
+            return 'lib' + name + '.lib'
         else:
             return 'lib' + name + '.a'
 
@@ -412,6 +413,9 @@ class Configuration(object):
 
         if self.is_windows:
             self.config.available_features.add('windows')
+            if self.cxx_stdlib_under_test == 'libc++':
+                # LIBCXX-WINDOWS-FIXME is a
+                self.config.available_features.add('LIBCXX-WINDOWS-FIXME')
 
         # Attempt to detect the glibc version by querying for __GLIBC__
         # in 'features.h'.




More information about the cfe-commits mailing list