xkaraman left a comment (kamailio/kamailio#4516)

OK i can think i understand why it not builds.

So `futex` locking is available on `armv6|7` OR `arm` arch but only if `NOSMP` 
is defined.

Old Makefiles defined both `USE_FUTEX` and `USE_FASTLOCK`, but defined also 
`NOSMP` when setting `use_fast_lock`. I can't be sure which is actually used 
tbh. I am probably guessing it is `futex` since `NOSMP` is also defined and it 
has priority in the `lock_ops.h`.

Now, with the current changes on `cmake`, we detected it's `arm` (even if its 
arm7 as discussed in previous issues) and we accept that it has `futex` 
capabilities but we do not provide the `NOSMP` definition in this case only in 
when `fast_lock` is used.

Before the changes, we just used `fast_lock` detection as you can see in this 
build 
https://github.com/sergey-safarov/kamailio/actions/runs/20122466906/job/57745456690#step:8:136.

For the fix, 2 cases i can think of (i couldn't verify as docker arm32v7 ubuntu 
image had some troubles installing packages for me)

1. Define `NOSMP` for the `futex` so it can compile

2. Remove `futex` support for arm and use `fast_lock` as before.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4516#issuecomment-3645885149
You are receiving this because you are subscribed to this thread.

Message ID: <kamailio/kamailio/issues/4516/[email protected]>
_______________________________________________
Kamailio - Development Mailing List -- [email protected]
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!

Reply via email to