This check is backwards:
ifeq (,$(filter $(DEB_HOST_ARCH),aarch64))
The way it is written, it is checking to see if $(DEB_HOST_ARCH) is *not* in the string "aarch64". We want to this to be true if it is. It's working for you because the $(DEB_HOST_ARCH) and $(DEB_TARGET_ARCH_CPU) will be "arm64", not "aarch64", on an arm64 host so, in fact, arm64 != aarch64. However, neither is amd64, ppc64el, etc - end result is that --enable-arm will be set on every architecture.
btw, the 'filter' function is for searching for a string in a list of words. aarch64 is just one word, so filter is overkill here. I think it'd be easier to understand to just say:
ifeq ($(DEB_HOST_ARCH),arm64)
Also, the ifeq section is currently between a comment and the code it describes - mind moving that up? Thanks! Looking forward to the next version..
Thanks Manoj. Some feedback...
This check is backwards: ARCH),aarch64) )
ifeq (,$(filter $(DEB_HOST_
The way it is written, it is checking to see if $(DEB_HOST_ARCH) is *not* in the string "aarch64". We want to this to be true if it is. It's working for you because the $(DEB_HOST_ARCH) and $(DEB_TARGET_ ARCH_CPU) will be "arm64", not "aarch64", on an arm64 host so, in fact, arm64 != aarch64. However, neither is amd64, ppc64el, etc - end result is that --enable-arm will be set on every architecture.
btw, the 'filter' function is for searching for a string in a list of words. aarch64 is just one word, so filter is overkill here. I think it'd be easier to understand to just say: HOST_ARCH) ,arm64)
ifeq ($(DEB_
Also, the ifeq section is currently between a comment and the code it describes - mind moving that up? Thanks! Looking forward to the next version..