message: Improve libswiftReflection Linking on Linux
  Using CMAKE_SYSTEM_PROCESSOR is a good first step, but for platforms where it maps to something different (say, armv7l to armv7), then you need more complete logic. Ideally, we would want Swift itself to tell us what to link against, but this change is still an improvement.
diff: @@ -4,7 +4,32 @@ set(REFLECTION_LIB "swiftReflection")
  if(CMAKE_SYSTEM_NAME MATCHES "Linux")
  # CMAKE_SYSTEM_PROCESSOR is equivalent to `uname -p` on Linux.
  - set(REFLECTION_LIB "swiftReflection-linux-${CMAKE_SYSTEM_PROCESSOR}")
  + if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64")
  + set(ARCH "x86_64")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "aarch64")
  + set(ARCH "aarch64")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "ppc64")
  + set(ARCH "powerpc64")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "ppc64le")
  + set(ARCH "powerpc64le")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "s390x")
  + set(ARCH "s390x")
  + # FIXME: Only matches v6l/v7l - by far the most common variants
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "armv6l")
  + set(ARCH "armv6")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "armv7l")
  + set(ARCH "armv7")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64")
  + set(ARCH "x86_64")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "IA64")
  + set(ARCH "itanium")
  + elseif("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "(x86|i686)")
  + set(ARCH "i686")
  + else()
  + message(FATAL_ERROR "Unrecognized architecture on host system: ${CMAKE_SYSTEM_PROCESSOR}")
  + endif()
  +
  + set(REFLECTION_LIB "swiftReflection-linux-${ARCH}")
  endif()
  if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
  