It seems that the maes flag is automatically added if the ARM_TARGET
CMake var is not set, which happens in cmake/cpu.cmake. The first thing
I saw when I opened that file looked promising:

    if (CMAKE_SIZEOF_VOID_P EQUAL 8)
        set(XMRIG_64_BIT ON)
        add_definitions(-DXMRIG_64_BIT)
    else()
        set(XMRIG_64_BIT OFF)
    endif()

I figured that maybe SIZEOF_VOID_P changed with the t64 transition and
this caused it to get confused and think that we are building on x86_64.
Then I looked closer at the buildd log and saw that XMRIG_64_BIT was
(correctly) set to OFF, which means that this could not be the issue.

The next lines of interest are here:

    if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm64|armv8-a)$")
        set(ARM_TARGET 8)
    elseif (CMAKE_SYSTEM_PROCESSOR MATCHES 
"^(armv7|armv7f|armv7s|armv7k|armv7-a|armv7l|armv7ve)$")
        set(ARM_TARGET 7)
    endif()

There are no other functions modifying the ARM_TARGET other than the
option to override this value by manually setting the ARM_V7 variable.
This means that CMAKE_SYSTEM_PROCESSOR must not be matching one of the
armv7* values on buildd and your machine, but does on all of mine. The
build could be fixed by setting ARM_V7 in d/rules on armhf, but I would
prefer properly resolving this issue instead of just working around it.

--
Ben Westover

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to