File tree Expand file tree Collapse file tree 3 files changed +15
-4
lines changed Expand file tree Collapse file tree 3 files changed +15
-4
lines changed Original file line number Diff line number Diff line change 3535#define LLVM_DYLIB_COMPONENTS " @LLVM_DYLIB_COMPONENTS_expanded@"
3636#define LLVM_DYLIB_VERSION " @LLVM_DYLIB_VERSION@"
3737#define LLVM_TOOLS_INSTALL_DIR " @LLVM_TOOLS_INSTALL_DIR@"
38+ #define LLVM_SHARED_LIBRARY_PREFIX " @CMAKE_SHARED_LIBRARY_PREFIX@"
Original file line number Diff line number Diff line change @@ -64,7 +64,11 @@ set(LLVM_CFLAGS "${LLVM_C_STD_FLAG} ${LLVM_DEFINITIONS}")
6464set (LLVM_CXXFLAGS "${CMAKE_CXX${CMAKE_CXX_STANDARD} _STANDARD_COMPILE_OPTION} ${LLVM_CXX_STDLIB_FLAG} ${COMPILE_FLAGS} ${LLVM_DEFINITIONS} " )
6565set (LLVM_BUILD_SYSTEM cmake)
6666set (LLVM_HAS_RTTI ${LLVM_CONFIG_HAS_RTTI} )
67- set (LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} " )
67+ if (CYGWIN )
68+ set (LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR} .${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX} " )
69+ else ()
70+ set (LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} " )
71+ endif ()
6872
6973# Use the C++ link flags, since they should be a superset of C link flags.
7074set (LLVM_LDFLAGS "${CMAKE_CXX_LINK_FLAGS} " )
Original file line number Diff line number Diff line change @@ -390,7 +390,7 @@ int main(int argc, char **argv) {
390390 SharedExt = " dll" ;
391391 SharedVersionedExt = LLVM_DYLIB_VERSION " .dll" ;
392392 if (HostTriple.isOSCygMing ()) {
393- SharedPrefix = " lib " ;
393+ SharedPrefix = LLVM_SHARED_LIBRARY_PREFIX ;
394394 StaticExt = " a" ;
395395 StaticPrefix = " lib" ;
396396 } else {
@@ -454,18 +454,24 @@ int main(int argc, char **argv) {
454454 // / extension. Returns true if Lib is in a recognized format.
455455 auto GetComponentLibraryNameSlice = [&](const StringRef &Lib,
456456 StringRef &Out) {
457- if (Lib.starts_with (" lib " )) {
457+ if (Lib.starts_with (StaticPrefix) || Lib. starts_with (SharedPrefix )) {
458458 unsigned FromEnd;
459459 if (Lib.ends_with (StaticExt)) {
460460 FromEnd = StaticExt.size () + 1 ;
461+ } else if (HostTriple.isWindowsCygwinEnvironment () &&
462+ Lib.ends_with (SharedVersionedExt)) {
463+ FromEnd = SharedVersionedExt.size () + 1 ;
461464 } else if (Lib.ends_with (SharedExt)) {
462465 FromEnd = SharedExt.size () + 1 ;
463466 } else {
464467 FromEnd = 0 ;
465468 }
466469
467470 if (FromEnd != 0 ) {
468- Out = Lib.slice (3 , Lib.size () - FromEnd);
471+ unsigned FromStart = Lib.starts_with (SharedPrefix)
472+ ? SharedPrefix.size ()
473+ : StaticPrefix.size ();
474+ Out = Lib.slice (FromStart, Lib.size () - FromEnd);
469475 return true ;
470476 }
471477 }
You can’t perform that action at this time.
0 commit comments