diff --git a/src/native/libs/System.Globalization.Native/pal_icushim.c b/src/native/libs/System.Globalization.Native/pal_icushim.c index c5c3ccbcf293e4..a9388786e79460 100644 --- a/src/native/libs/System.Globalization.Native/pal_icushim.c +++ b/src/native/libs/System.Globalization.Native/pal_icushim.c @@ -294,18 +294,28 @@ static int FindLibUsingOverride(const char* versionPrefix, char* symbolName, cha char* versionOverride = getenv("CLR_ICU_VERSION_OVERRIDE"); if (versionOverride != NULL) { - int first = -1; - int second = -1; - int third = -1; - - int matches = sscanf(versionOverride, "%d.%d.%d", &first, &second, &third); - if (matches > 0) + if (strcmp(versionOverride, "build") == 0) { - if (OpenICULibraries(first, second, third, versionPrefix, symbolName, symbolVersion)) + if (OpenICULibraries(U_ICU_VERSION_MAJOR_NUM, -1, -1, versionPrefix, symbolName, symbolVersion)) { return true; } } + else + { + int first = -1; + int second = -1; + int third = -1; + + int matches = sscanf(versionOverride, "%d.%d.%d", &first, &second, &third); + if (matches > 0) + { + if (OpenICULibraries(first, second, third, versionPrefix, symbolName, symbolVersion)) + { + return true; + } + } + } } return false;