| function(set_if_arch_bitness var_name) |
| cmake_parse_arguments( |
| SIA # prefix |
| "" # options |
| "ARCH;CASE_32_BIT;CASE_64_BIT" # single-value args |
| "" # multi-value args |
| ${ARGN}) |
| |
| if("${SIA_ARCH}" STREQUAL "i386" OR |
| "${SIA_ARCH}" STREQUAL "i686" OR |
| "${SIA_ARCH}" STREQUAL "armv6" OR |
| "${SIA_ARCH}" STREQUAL "armv7" OR |
| "${SIA_ARCH}" STREQUAL "armv7k" OR |
| "${SIA_ARCH}" STREQUAL "armv7s") |
| set("${var_name}" "${SIA_CASE_32_BIT}" PARENT_SCOPE) |
| elseif("${SIA_ARCH}" STREQUAL "x86_64" OR |
| "${SIA_ARCH}" STREQUAL "arm64" OR |
| "${SIA_ARCH}" STREQUAL "aarch64" OR |
| "${SIA_ARCH}" STREQUAL "powerpc64" OR |
| "${SIA_ARCH}" STREQUAL "powerpc64le" OR |
| "${SIA_ARCH}" STREQUAL "s390x") |
| set("${var_name}" "${SIA_CASE_64_BIT}" PARENT_SCOPE) |
| else() |
| message(FATAL_ERROR "Unknown architecture: ${SIA_ARCH}") |
| endif() |
| endfunction() |
| |