Skip to content

Commit c1dba41

Browse files
authored
Add linux-musl entry for FALLBACK_HOST_RID (#65339)
* Add linux-musl entry for FALLBACK_HOST_RID * Stay consistent about host vs. target * Classify linux-musl agnostic of distro
1 parent 5dc2868 commit c1dba41

File tree

4 files changed

+23
-6
lines changed

4 files changed

+23
-6
lines changed

eng/native/configurecompiler.cmake

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -493,10 +493,16 @@ if(CLR_CMAKE_TARGET_UNIX)
493493
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_ANDROID>)
494494
elseif(CLR_CMAKE_TARGET_LINUX)
495495
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_LINUX>)
496+
if(CLR_CMAKE_TARGET_LINUX_MUSL)
497+
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_LINUX_MUSL>)
498+
endif()
496499
elseif(CLR_CMAKE_TARGET_NETBSD)
497500
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_NETBSD>)
498501
elseif(CLR_CMAKE_TARGET_SUNOS)
499502
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_SUNOS>)
503+
if(CLR_CMAKE_TARGET_OS_ILLUMOS)
504+
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_ILLUMOS>)
505+
endif()
500506
endif()
501507
else(CLR_CMAKE_TARGET_UNIX)
502508
add_compile_definitions($<$<NOT:$<BOOL:$<TARGET_PROPERTY:IGNORE_DEFAULT_TARGET_OS>>>:TARGET_WINDOWS>)

eng/native/configureplatform.cmake

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,11 @@ if(CLR_CMAKE_HOST_OS STREQUAL Linux)
7070
COMMAND bash -c "source ${LINUX_ID_FILE} && echo \$ID"
7171
OUTPUT_VARIABLE CLR_CMAKE_LINUX_ID
7272
OUTPUT_STRIP_TRAILING_WHITESPACE)
73+
74+
execute_process(
75+
COMMAND bash -c "if strings \"${CMAKE_SYSROOT}/usr/bin/ldd\" 2>&1 | grep -q musl; then echo musl; fi"
76+
OUTPUT_VARIABLE CLR_CMAKE_LINUX_MUSL
77+
OUTPUT_STRIP_TRAILING_WHITESPACE)
7378
endif()
7479

7580
if(DEFINED CLR_CMAKE_LINUX_ID)
@@ -80,6 +85,10 @@ if(CLR_CMAKE_HOST_OS STREQUAL Linux)
8085
set(CLR_CMAKE_HOST_ALPINE_LINUX 1)
8186
set(CLR_CMAKE_HOST_OS ${CLR_CMAKE_LINUX_ID})
8287
endif()
88+
89+
if(CLR_CMAKE_LINUX_MUSL STREQUAL musl)
90+
set(CLR_CMAKE_HOST_LINUX_MUSL 1)
91+
endif()
8392
endif(DEFINED CLR_CMAKE_LINUX_ID)
8493
endif(CLR_CMAKE_HOST_OS STREQUAL Linux)
8594

@@ -314,6 +323,10 @@ if(CLR_CMAKE_TARGET_OS STREQUAL Linux)
314323
set(CLR_CMAKE_TARGET_LINUX 1)
315324
endif(CLR_CMAKE_TARGET_OS STREQUAL Linux)
316325

326+
if(CLR_CMAKE_HOST_LINUX_MUSL)
327+
set(CLR_CMAKE_TARGET_LINUX_MUSL 1)
328+
endif(CLR_CMAKE_HOST_LINUX_MUSL)
329+
317330
if(CLR_CMAKE_TARGET_OS STREQUAL tizen)
318331
set(CLR_CMAKE_TARGET_UNIX 1)
319332
set(CLR_CMAKE_TARGET_LINUX 1)

src/native/corehost/hostmisc/hostmisc.cmake

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ include(${CMAKE_CURRENT_LIST_DIR}/configure.cmake)
55
include_directories(${CMAKE_CURRENT_BINARY_DIR})
66
include_directories("${CLR_SRC_NATIVE_DIR}")
77

8-
if(CLR_CMAKE_TARGET_OS_ILLUMOS)
9-
add_definitions(-DTARGET_ILLUMOS)
10-
endif()
11-
128
# CMake does not recommend using globbing since it messes with the freshness checks
139
list(APPEND SOURCES
1410
${CMAKE_CURRENT_LIST_DIR}/trace.cpp

src/native/corehost/hostmisc/pal.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
// degree of compat across their respective releases is usually high.
6565
//
6666
// We cannot maintain the same (compat) invariant for linux and thus, we will fallback to using lowest RID-Plaform.
67-
#if defined(_WIN32)
67+
#if defined(TARGET_WINDOWS)
6868
#define LIB_PREFIX
6969
#define MAKE_LIBNAME(NAME) (_X(NAME) _X(".dll"))
7070
#define FALLBACK_HOST_RID _X("win10")
@@ -79,8 +79,10 @@
7979
#define FALLBACK_HOST_RID _X("freebsd")
8080
#elif defined(TARGET_ILLUMOS)
8181
#define FALLBACK_HOST_RID _X("illumos")
82-
#elif defined(__sun)
82+
#elif defined(TARGET_SUNOS)
8383
#define FALLBACK_HOST_RID _X("solaris")
84+
#elif defined(TARGET_LINUX_MUSL)
85+
#define FALLBACK_HOST_RID _X("linux-musl")
8486
#else
8587
#define FALLBACK_HOST_RID _X("linux")
8688
#endif

0 commit comments

Comments
 (0)