diff --git a/VERSION b/VERSION new file mode 100644 index 00000000000..bafa37066b1 --- /dev/null +++ b/VERSION @@ -0,0 +1,5 @@ +VERSION_MAJOR = 1 +VERSION_MINOR = 9 +PATCHLEVEL = 99 +VERSION_TWEAK = 0 +EXTRAVERSION = diff --git a/cmake/hex.cmake b/cmake/hex.cmake new file mode 100644 index 00000000000..012172431a5 --- /dev/null +++ b/cmake/hex.cmake @@ -0,0 +1,54 @@ +# from https://gist.github.com/korzo89/71a6de0f388f7cf8b349101b0134060c +function(from_hex HEX DEC) + string(SUBSTRING "${HEX}" 2 -1 HEX) + string(TOUPPER "${HEX}" HEX) + set(_res 0) + string(LENGTH "${HEX}" _strlen) + + while(_strlen GREATER 0) + math(EXPR _res "${_res} * 16") + string(SUBSTRING "${HEX}" 0 1 NIBBLE) + string(SUBSTRING "${HEX}" 1 -1 HEX) + if(NIBBLE STREQUAL "A") + math(EXPR _res "${_res} + 10") + elseif(NIBBLE STREQUAL "B") + math(EXPR _res "${_res} + 11") + elseif(NIBBLE STREQUAL "C") + math(EXPR _res "${_res} + 12") + elseif(NIBBLE STREQUAL "D") + math(EXPR _res "${_res} + 13") + elseif(NIBBLE STREQUAL "E") + math(EXPR _res "${_res} + 14") + elseif(NIBBLE STREQUAL "F") + math(EXPR _res "${_res} + 15") + else() + math(EXPR _res "${_res} + ${NIBBLE}") + endif() + + string(LENGTH "${HEX}" _strlen) + endwhile() + + set(${DEC} ${_res} PARENT_SCOPE) +endfunction() + +function(to_hex DEC HEX) + while(DEC GREATER 0) + math(EXPR _val "${DEC} % 16") + math(EXPR DEC "${DEC} / 16") + if(_val EQUAL 10) + set(_val "A") + elseif(_val EQUAL 11) + set(_val "B") + elseif(_val EQUAL 12) + set(_val "C") + elseif(_val EQUAL 13) + set(_val "D") + elseif(_val EQUAL 14) + set(_val "E") + elseif(_val EQUAL 15) + set(_val "F") + endif() + set(_res "${_val}${_res}") + endwhile() + set(${HEX} "0x${_res}" PARENT_SCOPE) +endfunction()