File tree Expand file tree Collapse file tree 5 files changed +11
-6
lines changed Expand file tree Collapse file tree 5 files changed +11
-6
lines changed Original file line number Diff line number Diff line change @@ -750,7 +750,7 @@ function(llvm_add_library name)
750
750
set(library_name ${output_name}-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
751
751
set(api_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
752
752
set_target_properties(${name} PROPERTIES OUTPUT_NAME ${library_name})
753
- if(UNIX)
753
+ if(UNIX AND NOT CYGWIN )
754
754
llvm_install_library_symlink(${api_name} ${library_name} SHARED
755
755
COMPONENT ${name})
756
756
llvm_install_library_symlink(${output_name} ${library_name} SHARED
@@ -2259,7 +2259,7 @@ function(llvm_install_library_symlink name dest type)
2259
2259
endif()
2260
2260
2261
2261
set(output_dir lib${LLVM_LIBDIR_SUFFIX})
2262
- if(WIN32 AND "${type}" STREQUAL "SHARED")
2262
+ if(( WIN32 OR CYGWIN) AND "${type}" STREQUAL "SHARED")
2263
2263
set(output_dir "${CMAKE_INSTALL_BINDIR}")
2264
2264
endif()
2265
2265
Original file line number Diff line number Diff line change 35
35
#define LLVM_DYLIB_COMPONENTS "@LLVM_DYLIB_COMPONENTS_expanded@"
36
36
#define LLVM_DYLIB_VERSION "@LLVM_DYLIB_VERSION@"
37
37
#define LLVM_TOOLS_INSTALL_DIR "@LLVM_TOOLS_INSTALL_DIR@"
38
+ #define LLVM_SHARED_LIBRARY_PREFIX "@LLVM_SHARED_LIBRARY_PREFIX@"
Original file line number Diff line number Diff line change @@ -65,6 +65,7 @@ set(LLVM_CXXFLAGS "${CMAKE_CXX${CMAKE_CXX_STANDARD}_STANDARD_COMPILE_OPTION} ${L
65
65
set(LLVM_BUILD_SYSTEM cmake)
66
66
set(LLVM_HAS_RTTI ${LLVM_CONFIG_HAS_RTTI})
67
67
set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}")
68
+ set(LLVM_SHARED_LIBRARY_PREFIX "${CMAKE_SHARED_LIBRARY_PREFIX}")
68
69
69
70
# Use the C++ link flags, since they should be a superset of C link flags.
70
71
set(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) {
390
390
SharedExt = "dll";
391
391
SharedVersionedExt = LLVM_DYLIB_VERSION ".dll";
392
392
if (HostTriple.isOSCygMing()) {
393
- SharedPrefix = "lib" ;
393
+ SharedPrefix = LLVM_SHARED_LIBRARY_PREFIX ;
394
394
StaticExt = "a";
395
395
StaticPrefix = "lib";
396
396
} else {
@@ -454,7 +454,7 @@ int main(int argc, char **argv) {
454
454
/// extension. Returns true if Lib is in a recognized format.
455
455
auto GetComponentLibraryNameSlice = [&](const StringRef &Lib,
456
456
StringRef &Out) {
457
- if (Lib.starts_with("lib" )) {
457
+ if (Lib.starts_with(StaticPrefix) || Lib.starts_with(SharedPrefix )) {
458
458
unsigned FromEnd;
459
459
if (Lib.ends_with(StaticExt)) {
460
460
FromEnd = StaticExt.size() + 1;
@@ -465,7 +465,10 @@ int main(int argc, char **argv) {
465
465
}
466
466
467
467
if (FromEnd != 0) {
468
- Out = Lib.slice(3, Lib.size() - FromEnd);
468
+ unsigned FromStart = Lib.starts_with(SharedPrefix)
469
+ ? SharedPrefix.size()
470
+ : StaticPrefix.size();
471
+ Out = Lib.slice(FromStart, Lib.size() - FromEnd);
469
472
return true;
470
473
}
471
474
}
Original file line number Diff line number Diff line change @@ -33,7 +33,7 @@ if(LLVM_BUILD_LLVM_DYLIB)
33
33
if (LLVM_LINK_LLVM_DYLIB)
34
34
set(INSTALL_WITH_TOOLCHAIN INSTALL_WITH_TOOLCHAIN)
35
35
endif()
36
- if (WIN32)
36
+ if (WIN32 OR CYGWIN )
37
37
add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${INSTALL_WITH_TOOLCHAIN} ${SOURCES})
38
38
else()
39
39
add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB OUTPUT_NAME LLVM ${INSTALL_WITH_TOOLCHAIN} ${SOURCES})
You can’t perform that action at this time.
0 commit comments